From 1702d987bf01a33252fcd3922f18c29644df95cb Mon Sep 17 00:00:00 2001 From: owenwahlgren Date: Wed, 8 Jan 2025 16:42:02 -0600 Subject: [PATCH 01/15] doc autogen --- .github/scripts/cli_scraper.py | 257 ++++++++++++++++++++++++++ .github/workflows/update-markdown.yml | 43 +++++ 2 files changed, 300 insertions(+) create mode 100644 .github/scripts/cli_scraper.py create mode 100644 .github/workflows/update-markdown.yml diff --git a/.github/scripts/cli_scraper.py b/.github/scripts/cli_scraper.py new file mode 100644 index 000000000..b119495c1 --- /dev/null +++ b/.github/scripts/cli_scraper.py @@ -0,0 +1,257 @@ +import subprocess +import json +import re + +def replace_angle_brackets(text): + """ + Replace any text within angle brackets with backticks to prevent Markdown rendering issues. + Example: "" becomes "`snapshotName`" + """ + return re.sub(r'<(.*?)>', r'`\1`', text) + +def generate_anchor_id(cli_tool, command_chain): + """ + Generate a unique anchor ID based on the entire command chain. + + Example: + cli_tool = "avalanche" + command_chain = ["blockchain", "create"] + -> anchor_id = "avalanche-blockchain-create" + """ + full_chain = [cli_tool] + command_chain + anchor_str = '-'.join(full_chain) + # Remove invalid characters for anchors, and lowercase + anchor_str = re.sub(r'[^\w\-]', '', anchor_str.lower()) + return anchor_str + +def get_command_structure(cli_tool, command_chain=None, max_depth=10, current_depth=0, processed_commands=None): + """ + Recursively get a dictionary of commands, subcommands, flags (with descriptions), + and descriptions for a given CLI tool by parsing its --help output. + """ + if command_chain is None: + command_chain = [] + if processed_commands is None: + processed_commands = {} + + current_command = [cli_tool] + command_chain + command_key = ' '.join(current_command) + + # Prevent re-processing of the same command + if command_key in processed_commands: + return processed_commands[command_key] + + # Prevent going too deep + if current_depth > max_depth: + return None + + command_structure = { + "description": "", + "flags": [], + "subcommands": {} + } + + print(f"Processing command: {' '.join(current_command)}") + + # Run ` --help` + try: + help_output = subprocess.run( + current_command + ["--help"], + stdout=subprocess.PIPE, + stderr=subprocess.STDOUT, + text=True, + timeout=10, + stdin=subprocess.DEVNULL + ) + output = help_output.stdout + # Some CLIs return a non-zero exit code but still provide help text, so no strict check here + except subprocess.TimeoutExpired: + print(f"[ERROR] Timeout expired for command: {' '.join(current_command)}") + return None + except Exception as e: + print(f"[ERROR] Exception while running: {' '.join(current_command)} -> {e}") + return None + + if not output.strip(): + print(f"[WARNING] No output for command: {' '.join(current_command)}") + return None + + # --- Extract Description ------------------------------------------------------ + description_match = re.search(r"(?s)^\s*(.*?)\n\s*Usage:", output) + if description_match: + description = description_match.group(1).strip() + command_structure['description'] = replace_angle_brackets(description) + + # --- Extract Flags (including Global Flags) ----------------------------------- + flags = [] + # "Flags:" section + flags_match = re.search(r"(?sm)^Flags:\n(.*?)(?:\n\n|^\S|\Z)", output) + if flags_match: + flags_text = flags_match.group(1) + flags.extend(re.findall( + r"^\s+(-{1,2}[^\s,]+(?:,\s*-{1,2}[^\s,]+)*)\s+(.*)$", + flags_text, + re.MULTILINE + )) + + # "Global Flags:" section + global_flags_match = re.search(r"(?sm)^Global Flags:\n(.*?)(?:\n\n|^\S|\Z)", output) + if global_flags_match: + global_flags_text = global_flags_match.group(1) + flags.extend(re.findall( + r"^\s+(-{1,2}[^\s,]+(?:,\s*-{1,2}[^\s,]+)*)\s+(.*)$", + global_flags_text, + re.MULTILINE + )) + + if flags: + command_structure["flags"] = [ + { + "flag": f[0].strip(), + "description": replace_angle_brackets(f[1].strip()) + } + for f in flags + ] + + # --- Extract Subcommands ------------------------------------------------------ + subcommands_match = re.search( + r"(?sm)(?:^Available Commands?:\n|^Commands?:\n)(.*?)(?:\n\n|^\S|\Z)", + output + ) + if subcommands_match: + subcommands_text = subcommands_match.group(1) + # Lines like: " create Create a new something" + subcommand_lines = re.findall(r"^\s+([^\s]+)\s+(.*)$", subcommands_text, re.MULTILINE) + + for subcmd, sub_desc in sorted(set(subcommand_lines)): + sub_desc_clean = replace_angle_brackets(sub_desc.strip()) + sub_structure = get_command_structure( + cli_tool, + command_chain + [subcmd], + max_depth, + current_depth + 1, + processed_commands + ) + if sub_structure is not None: + if not sub_structure.get('description'): + sub_structure['description'] = sub_desc_clean + command_structure["subcommands"][subcmd] = sub_structure + else: + command_structure["subcommands"][subcmd] = { + "description": sub_desc_clean, + "flags": [], + "subcommands": {} + } + + processed_commands[command_key] = command_structure + return command_structure + +def generate_markdown(cli_structure, cli_tool, file_path): + """ + Generate a Markdown file from the CLI structure JSON object in a developer-friendly format. + No top-level subcommand bullet list. + """ + def write_section(structure, file, command_chain=None): + if command_chain is None: + command_chain = [] + + # If at root level, do not print a heading or bullet list, just go straight + # to recursing through subcommands. + if command_chain: + # Determine heading level (but max out at H6) + heading_level = min(1 + len(command_chain), 6) + + # Build heading text: + if len(command_chain) == 1: + heading_text = f"{cli_tool} {command_chain[0]}" + else: + heading_text = ' '.join(command_chain[1:]) + + # Insert a single anchor before writing the heading + anchor = generate_anchor_id(cli_tool, command_chain) + file.write(f'\n') + file.write(f"{'#' * heading_level} {heading_text}\n\n") + + # Write description + if structure.get('description'): + file.write(f"{structure['description']}\n\n") + + # Write usage + full_command = f"{cli_tool} {' '.join(command_chain)}" + file.write("**Usage:**\n") + file.write(f"```bash\n{full_command} [subcommand] [flags]\n```\n\n") + + # If there are subcommands, list them only if we're not at the root + # (which we aren't, because command_chain is non-empty). + subcommands = structure.get('subcommands', {}) + if subcommands: + file.write("**Subcommands:**\n\n") + # Index of subcommands + for subcmd in sorted(subcommands.keys()): + sub_desc = subcommands[subcmd].get('description', '') + sub_anchor = generate_anchor_id(cli_tool, command_chain + [subcmd]) + file.write(f"- [`{subcmd}`](#{sub_anchor}): {sub_desc}\n") + file.write("\n") + else: + # Root level: do NOT print bullet list or heading. + subcommands = structure.get('subcommands', {}) + + # Flags (only if we have a command chain) + if command_chain and structure.get('flags'): + file.write("**Flags:**\n\n") + flag_lines = [] + for flag_dict in structure['flags']: + flag_names = flag_dict['flag'] + description = flag_dict['description'] + + # Attempt to parse a type from the first word if present + desc_match = re.match(r'^(\w+)\s+(.*)', description) + if desc_match: + flag_type = desc_match.group(1) + flag_desc = desc_match.group(2) + else: + flag_type = '' + flag_desc = description + + if flag_type: + flag_line = f"{flag_names} {flag_type}" + else: + flag_line = flag_names + + flag_lines.append((flag_line, flag_desc)) + + max_len = max(len(f[0]) for f in flag_lines) if flag_lines else 0 + file.write("```bash\n") + for fl, fd in flag_lines: + file.write(f"{fl.ljust(max_len)} {fd}\n") + file.write("```\n\n") + + # Recurse into subcommands (so their headings will appear) + subcommands = structure.get('subcommands', {}) + for subcmd in sorted(subcommands.keys()): + write_section(subcommands[subcmd], file, command_chain + [subcmd]) + + with open(file_path, "w", encoding="utf-8") as f: + write_section(cli_structure, f) + +def main(): + cli_tool = "avalanche" # Adjust if needed + max_depth = 10 + + # Build the nested command structure + cli_structure = get_command_structure(cli_tool, max_depth=max_depth) + if cli_structure: + # Save JSON + with open("cli_structure.json", "w", encoding="utf-8") as json_file: + json.dump(cli_structure, json_file, indent=4) + print("CLI structure saved to cli_structure.json") + + # Generate Markdown + generate_markdown(cli_structure, cli_tool, "cli_structure.md") + print("Markdown documentation saved to cli_structure.md") + else: + print("[ERROR] Failed to retrieve CLI structure") + +if __name__ == "__main__": + main() + diff --git a/.github/workflows/update-markdown.yml b/.github/workflows/update-markdown.yml new file mode 100644 index 000000000..b9424c754 --- /dev/null +++ b/.github/workflows/update-markdown.yml @@ -0,0 +1,43 @@ +name: Update Markdown + +on: + push: + branches: + - main + +jobs: + update-md: + runs-on: ubuntu-latest + + steps: + - name: Check out the repo + uses: actions/checkout@v3 + + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: "3.9" + + - name: Install dependencies + run: | + pip install --upgrade pip + # If you need additional dependencies, install them here + # pip install -r requirements.txt + + - name: Generate MD + run: | + python ../scripts/cli_scraper.py + + - name: Commit changes + run: | + git config user.name "github-actions" + git config user.email "github-actions@github.com" + + if [ -n "$(git status --porcelain)" ]; then + git add . + git commit -m "chore: Update MD file [skip ci]" + git push + else + echo "No changes to commit." + fi + From ae3053343bff8d77ccaad859a79a4d92a728e619 Mon Sep 17 00:00:00 2001 From: owenwahlgren Date: Wed, 8 Jan 2025 16:44:41 -0600 Subject: [PATCH 02/15] update on PR --- .github/workflows/update-markdown.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/update-markdown.yml b/.github/workflows/update-markdown.yml index b9424c754..d87811c92 100644 --- a/.github/workflows/update-markdown.yml +++ b/.github/workflows/update-markdown.yml @@ -4,7 +4,9 @@ on: push: branches: - main - + pull_request: + branches: + - main jobs: update-md: runs-on: ubuntu-latest From b5c73706e5d30354d8d9f886570fe23f288126f7 Mon Sep 17 00:00:00 2001 From: owenwahlgren Date: Wed, 8 Jan 2025 16:48:11 -0600 Subject: [PATCH 03/15] update script path --- .github/workflows/update-markdown.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/update-markdown.yml b/.github/workflows/update-markdown.yml index d87811c92..6ce8fcc64 100644 --- a/.github/workflows/update-markdown.yml +++ b/.github/workflows/update-markdown.yml @@ -28,7 +28,7 @@ jobs: - name: Generate MD run: | - python ../scripts/cli_scraper.py + python .github/scripts/cli_scraper.py - name: Commit changes run: | From c27db7d226b7c8693f5d5606219b2ceec0df7168 Mon Sep 17 00:00:00 2001 From: owenwahlgren Date: Wed, 8 Jan 2025 16:57:47 -0600 Subject: [PATCH 04/15] update yml --- .github/workflows/update-markdown.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/.github/workflows/update-markdown.yml b/.github/workflows/update-markdown.yml index 6ce8fcc64..6223db5a9 100644 --- a/.github/workflows/update-markdown.yml +++ b/.github/workflows/update-markdown.yml @@ -15,6 +15,19 @@ jobs: - name: Check out the repo uses: actions/checkout@v3 + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: '1.21' + + - name: Build avalanche-cli + run: | + chmod +x ./scripts/build.sh + ./scripts/build.sh + + - name: Add avalanche to PATH + run: echo "${{ github.workspace }}/bin" >> $GITHUB_PATH + - name: Set up Python uses: actions/setup-python@v4 with: From f499ed1810363d597bba0a645e644231aafcf25f Mon Sep 17 00:00:00 2001 From: owenwahlgren Date: Wed, 8 Jan 2025 17:05:47 -0600 Subject: [PATCH 05/15] checkout branch before building --- .github/workflows/update-markdown.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/update-markdown.yml b/.github/workflows/update-markdown.yml index 6223db5a9..00d11c06c 100644 --- a/.github/workflows/update-markdown.yml +++ b/.github/workflows/update-markdown.yml @@ -14,6 +14,9 @@ jobs: steps: - name: Check out the repo uses: actions/checkout@v3 + with: + ref: ${{ github.head_ref }} + fetch-depth: 0 - name: Set up Go uses: actions/setup-go@v4 @@ -51,7 +54,7 @@ jobs: if [ -n "$(git status --porcelain)" ]; then git add . git commit -m "chore: Update MD file [skip ci]" - git push + git push origin HEAD else echo "No changes to commit." fi From b3dd17e04b40cc5d3afd983fd8fc42409573d7a8 Mon Sep 17 00:00:00 2001 From: owenwahlgren Date: Wed, 8 Jan 2025 17:14:04 -0600 Subject: [PATCH 06/15] fix md workflow --- .github/workflows/update-markdown.yml | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/.github/workflows/update-markdown.yml b/.github/workflows/update-markdown.yml index 00d11c06c..287844d90 100644 --- a/.github/workflows/update-markdown.yml +++ b/.github/workflows/update-markdown.yml @@ -7,17 +7,18 @@ on: pull_request: branches: - main + jobs: update-md: runs-on: ubuntu-latest - + steps: - name: Check out the repo uses: actions/checkout@v3 with: - ref: ${{ github.head_ref }} - fetch-depth: 0 - + ref: ${{ github.head_ref }} + fetch-depth: 0 + - name: Set up Go uses: actions/setup-go@v4 with: @@ -26,7 +27,7 @@ jobs: - name: Build avalanche-cli run: | chmod +x ./scripts/build.sh - ./scripts/build.sh + ./scripts/build.sh - name: Add avalanche to PATH run: echo "${{ github.workspace }}/bin" >> $GITHUB_PATH @@ -35,7 +36,7 @@ jobs: uses: actions/setup-python@v4 with: python-version: "3.9" - + - name: Install dependencies run: | pip install --upgrade pip @@ -50,12 +51,10 @@ jobs: run: | git config user.name "github-actions" git config user.email "github-actions@github.com" - if [ -n "$(git status --porcelain)" ]; then git add . git commit -m "chore: Update MD file [skip ci]" - git push origin HEAD + git push origin HEAD:${{ github.head_ref }} else echo "No changes to commit." - fi From 3b371133e066545a2ab67de484abb5d19dcc4182 Mon Sep 17 00:00:00 2001 From: owenwahlgren Date: Wed, 8 Jan 2025 17:23:32 -0600 Subject: [PATCH 07/15] fix md workflow --- .github/workflows/update-markdown.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/update-markdown.yml b/.github/workflows/update-markdown.yml index 287844d90..032561b3e 100644 --- a/.github/workflows/update-markdown.yml +++ b/.github/workflows/update-markdown.yml @@ -57,4 +57,3 @@ jobs: git push origin HEAD:${{ github.head_ref }} else echo "No changes to commit." - From ec29931a216a0537417841a41bd1d6b82fe986ec Mon Sep 17 00:00:00 2001 From: owenwahlgren Date: Wed, 8 Jan 2025 17:37:40 -0600 Subject: [PATCH 08/15] please --- .github/workflows/update-markdown.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/update-markdown.yml b/.github/workflows/update-markdown.yml index 032561b3e..287844d90 100644 --- a/.github/workflows/update-markdown.yml +++ b/.github/workflows/update-markdown.yml @@ -57,3 +57,4 @@ jobs: git push origin HEAD:${{ github.head_ref }} else echo "No changes to commit." + From 14225b662c26bb1956f5bc74e36b75c5f82e463c Mon Sep 17 00:00:00 2001 From: owenwahlgren Date: Wed, 8 Jan 2025 17:51:16 -0600 Subject: [PATCH 09/15] fix --- .github/workflows/update-markdown.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/update-markdown.yml b/.github/workflows/update-markdown.yml index 287844d90..939d679e9 100644 --- a/.github/workflows/update-markdown.yml +++ b/.github/workflows/update-markdown.yml @@ -49,12 +49,13 @@ jobs: - name: Commit changes run: | - git config user.name "github-actions" - git config user.email "github-actions@github.com" + git config user.name "github-actions" ; + git config user.email "github-actions@github.com" ; if [ -n "$(git status --porcelain)" ]; then - git add . - git commit -m "chore: Update MD file [skip ci]" - git push origin HEAD:${{ github.head_ref }} + git add . ; + git commit -m "chore: Update MD file [skip ci]" ; + git push origin HEAD:${{ github.head_ref }} ; else - echo "No changes to commit." + echo "No changes to commit." ; + fi From 2e11bf1d8241c8bfa5dd89d3dc24358534b95fa5 Mon Sep 17 00:00:00 2001 From: github-actions Date: Wed, 8 Jan 2025 23:54:44 +0000 Subject: [PATCH 10/15] chore: Update MD file [skip ci] --- cli_structure.json | 5725 ++++++++++++++++++++++++++++++++++++++++++++ cli_structure.md | 3614 ++++++++++++++++++++++++++++ 2 files changed, 9339 insertions(+) create mode 100644 cli_structure.json create mode 100644 cli_structure.md diff --git a/cli_structure.json b/cli_structure.json new file mode 100644 index 000000000..cf19f59da --- /dev/null +++ b/cli_structure.json @@ -0,0 +1,5725 @@ +{ + "description": "Avalanche-CLI is a command-line tool that gives developers access to\neverything Avalanche. This release specializes in helping developers\nbuild and test Blockchain networks.\n\nTo get started, look at the documentation for the subcommands or jump right\nin with avalanche blockchain create myNewBlockchain.", + "flags": [ + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "-h, --help", + "description": "help for avalanche" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + }, + { + "flag": "-v, --version", + "description": "version for avalanche" + } + ], + "subcommands": { + "blockchain": { + "description": "The blockchain command suite provides a collection of tools for developing\nand deploying Blockchains.\n\nTo get started, use the blockchain create command wizard to walk through the\nconfiguration of your very first Blockchain. Then, go ahead and deploy it\nwith the blockchain deploy command. You can use the rest of the commands to\nmanage your Blockchain configurations and live deployments.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for blockchain" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "addValidator": { + "description": "The blockchain addValidator command adds a node as a validator to\nan L1 of the user provided deployed network. If the network is proof of \nauthority, the owner of the validator manager contract must sign the \ntransaction. If the network is proof of stake, the node must stake the L1's\nstaking token. Both processes will issue a RegisterL1ValidatorTx on the P-Chain.\n\nThis command currently only works on Blockchains deployed to either the Fuji\nTestnet or Mainnet.", + "flags": [ + { + "flag": "--aggregator-allow-private-peers", + "description": "allow the signature aggregator to connect to peers with private IP (default true)" + }, + { + "flag": "--aggregator-extra-endpoints", + "description": "strings endpoints for extra nodes that are needed in signature aggregation" + }, + { + "flag": "--aggregator-log-level", + "description": "string log level to use with signature aggregator (default \"Debug\")" + }, + { + "flag": "--aggregator-log-to-stdout", + "description": "use stdout for signature aggregator logs" + }, + { + "flag": "--balance", + "description": "uint set the AVAX balance of the validator that will be used for continuous fee on P-Chain" + }, + { + "flag": "--blockchain-genesis-key", + "description": "use genesis allocated key to pay fees for completing the validator's registration (blockchain gas token)" + }, + { + "flag": "--blockchain-key", + "description": "string CLI stored key to use to pay fees for completing the validator's registration (blockchain gas token)" + }, + { + "flag": "--blockchain-private-key", + "description": "string private key to use to pay fees for completing the validator's registration (blockchain gas token)" + }, + { + "flag": "--bls-proof-of-possession", + "description": "string set the BLS proof of possession of the validator to add" + }, + { + "flag": "--bls-public-key", + "description": "string set the BLS public key of the validator to add" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--create-local-validator", + "description": "create additional local validator and add it to existing running local node" + }, + { + "flag": "--default-duration", + "description": "(for Subnets, not L1s) set duration so as to validate until primary validator ends its period" + }, + { + "flag": "--default-start-time", + "description": "(for Subnets, not L1s) use default start time for subnet validator (5 minutes later for fuji & mainnet, 30 seconds later for devnet)" + }, + { + "flag": "--default-validator-params", + "description": "(for Subnets, not L1s) use default weight/start/duration params for subnet validator" + }, + { + "flag": "--delegation-fee", + "description": "uint16 (PoS only) delegation fee (in bips) (default 100)" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--disable-owner", + "description": "string P-Chain address that will able to disable the validator with a P-Chain transaction" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-e, --ewoq", + "description": "use ewoq key [fuji/devnet only]" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for addValidator" + }, + { + "flag": "-k, --key", + "description": "string select the key to use [fuji/devnet only]" + }, + { + "flag": "-g, --ledger", + "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet)" + }, + { + "flag": "--ledger-addrs", + "description": "strings use the given ledger addresses" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--node-endpoint", + "description": "string gather node id/bls from publicly available avalanchego apis on the given endpoint" + }, + { + "flag": "--node-id", + "description": "string node-id of the validator to add" + }, + { + "flag": "--output-tx-path", + "description": "string (for Subnets, not L1s) file path of the add validator tx" + }, + { + "flag": "--partial-sync", + "description": "set primary network partial sync for new validators (default true)" + }, + { + "flag": "--remaining-balance-owner", + "description": "string P-Chain address that will receive any leftover AVAX from the validator when it is removed from Subnet" + }, + { + "flag": "--rpc", + "description": "string connect to validator manager at the given rpc endpoint" + }, + { + "flag": "--stake-amount", + "description": "uint (PoS only) amount of tokens to stake" + }, + { + "flag": "--staking-period", + "description": "duration how long this validator will be staking" + }, + { + "flag": "--start-time", + "description": "string (for Subnets, not L1s) UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format" + }, + { + "flag": "--subnet-auth-keys", + "description": "strings (for Subnets, not L1s) control keys that will be used to authenticate add validator tx" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--wait-for-tx-acceptance", + "description": "(for Subnets, not L1s) just issue the add validator tx, without waiting for its acceptance (default true)" + }, + { + "flag": "--weight", + "description": "uint set the staking weight of the validator to add (default 20)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "changeOwner": { + "description": "The blockchain changeOwner changes the owner of the deployed Blockchain.", + "flags": [ + { + "flag": "--auth-keys", + "description": "strings control keys that will be used to authenticate transfer blockchain ownership tx" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--control-keys", + "description": "strings addresses that may make blockchain changes" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-e, --ewoq", + "description": "use ewoq key [fuji/devnet]" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for changeOwner" + }, + { + "flag": "-k, --key", + "description": "string select the key to use [fuji/devnet]" + }, + { + "flag": "-g, --ledger", + "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet)" + }, + { + "flag": "--ledger-addrs", + "description": "strings use the given ledger addresses" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--output-tx-path", + "description": "string file path of the transfer blockchain ownership tx" + }, + { + "flag": "-s, --same-control-key", + "description": "use the fee-paying key as control key" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--threshold", + "description": "uint32 required number of control key signatures to make blockchain changes" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "changeWeight": { + "description": "The blockchain changeWeight command changes the weight of a L1 Validator.\n\nThe L1 has to be a Proof of Authority L1.", + "flags": [ + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-e, --ewoq", + "description": "use ewoq key [fuji/devnet only]" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for changeWeight" + }, + { + "flag": "-k, --key", + "description": "string select the key to use [fuji/devnet only]" + }, + { + "flag": "-g, --ledger", + "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet)" + }, + { + "flag": "--ledger-addrs", + "description": "strings use the given ledger addresses" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--node-id", + "description": "string node-id of the validator" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--weight", + "description": "uint set the new staking weight of the validator (default 20)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "configure": { + "description": "AvalancheGo nodes support several different configuration files. Each network (a Subnet or an L1) has their own config which applies to all blockchains/VMs in the network. Each blockchain within the network\ncan have its own chain config. A chain can also have special requirements for the AvalancheGo node \nconfiguration itself. This command allows you to set all those files.", + "flags": [ + { + "flag": "--chain-config", + "description": "string path to the chain configuration" + }, + { + "flag": "-h, --help", + "description": "help for configure" + }, + { + "flag": "--node-config", + "description": "string path to avalanchego node configuration" + }, + { + "flag": "--per-node-chain-config", + "description": "string path to per node chain configuration for local network" + }, + { + "flag": "--subnet-config", + "description": "string path to the subnet configuration" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "create": { + "description": "The blockchain create command builds a new genesis file to configure your Blockchain.\nBy default, the command runs an interactive wizard. It walks you through\nall the steps you need to create your first Blockchain.\n\nThe tool supports deploying Subnet-EVM, and custom VMs. You\ncan create a custom, user-generated genesis with a custom VM by providing\nthe path to your genesis and VM binaries with the --genesis and --vm flags.\n\nBy default, running the command with a blockchainName that already exists\ncauses the command to fail. If you'd like to overwrite an existing\nconfiguration, pass the -f flag.", + "flags": [ + { + "flag": "--custom", + "description": "use a custom VM template" + }, + { + "flag": "--custom-vm-branch", + "description": "string custom vm branch or commit" + }, + { + "flag": "--custom-vm-build-script", + "description": "string custom vm build-script" + }, + { + "flag": "--custom-vm-path", + "description": "string file path of custom vm to use" + }, + { + "flag": "--custom-vm-repo-url", + "description": "string custom vm repository url" + }, + { + "flag": "--debug", + "description": "enable blockchain debugging (default true)" + }, + { + "flag": "--evm", + "description": "use the Subnet-EVM as the base template" + }, + { + "flag": "--evm-chain-id", + "description": "uint chain ID to use with Subnet-EVM" + }, + { + "flag": "--evm-defaults", + "description": "deprecation notice: use '--production-defaults'" + }, + { + "flag": "--evm-token", + "description": "string token symbol to use with Subnet-EVM" + }, + { + "flag": "--external-gas-token", + "description": "use a gas token from another blockchain" + }, + { + "flag": "-f, --force", + "description": "overwrite the existing configuration if one exists" + }, + { + "flag": "--from-github-repo", + "description": "generate custom VM binary from github repository" + }, + { + "flag": "--genesis", + "description": "string file path of genesis to use" + }, + { + "flag": "-h, --help", + "description": "help for create" + }, + { + "flag": "--icm", + "description": "interoperate with other blockchains using ICM" + }, + { + "flag": "--icm-registry-at-genesis", + "description": "setup ICM registry smart contract on genesis [experimental]" + }, + { + "flag": "--latest", + "description": "use latest Subnet-EVM released version, takes precedence over --vm-version" + }, + { + "flag": "--pre-release", + "description": "use latest Subnet-EVM pre-released version, takes precedence over --vm-version" + }, + { + "flag": "--production-defaults", + "description": "use default production settings for your blockchain" + }, + { + "flag": "--proof-of-authority", + "description": "use proof of authority(PoA) for validator management" + }, + { + "flag": "--proof-of-stake", + "description": "use proof of stake(PoS) for validator management" + }, + { + "flag": "--proxy-contract-owner", + "description": "string EVM address that controls ProxyAdmin for TransparentProxy of ValidatorManager contract" + }, + { + "flag": "--reward-basis-points", + "description": "uint (PoS only) reward basis points for PoS Reward Calculator (default 100)" + }, + { + "flag": "--sovereign", + "description": "set to false if creating non-sovereign blockchain (default true)" + }, + { + "flag": "--teleporter", + "description": "interoperate with other blockchains using ICM" + }, + { + "flag": "--test-defaults", + "description": "use default test settings for your blockchain" + }, + { + "flag": "--validator-manager-owner", + "description": "string EVM address that controls Validator Manager Owner" + }, + { + "flag": "--vm", + "description": "string file path of custom vm to use. alias to custom-vm-path" + }, + { + "flag": "--vm-version", + "description": "string version of Subnet-EVM template to use" + }, + { + "flag": "--warp", + "description": "generate a vm with warp support (needed for ICM) (default true)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "delete": { + "description": "The blockchain delete command deletes an existing blockchain configuration.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for delete" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "deploy": { + "description": "The blockchain deploy command deploys your Blockchain configuration locally, to Fuji Testnet, or to Mainnet.\n\nAt the end of the call, the command prints the RPC URL you can use to interact with the Subnet.\n\nAvalanche-CLI only supports deploying an individual Blockchain once per network. Subsequent\nattempts to deploy the same Blockchain to the same network (local, Fuji, Mainnet) aren't\nallowed. If you'd like to redeploy a Blockchain locally for testing, you must first call\navalanche network clean to reset all deployed chain state. Subsequent local deploys\nredeploy the chain with fresh state. You can deploy the same Blockchain to multiple networks,\nso you can take your locally tested Blockchain and deploy it on Fuji or Mainnet.", + "flags": [ + { + "flag": "--aggregator-allow-private-peers", + "description": "allow the signature aggregator to connect to peers with private IP (default true)" + }, + { + "flag": "--aggregator-extra-endpoints", + "description": "strings endpoints for extra nodes that are needed in signature aggregation" + }, + { + "flag": "--aggregator-log-level", + "description": "string log level to use with signature aggregator (default \"Debug\")" + }, + { + "flag": "--aggregator-log-to-stdout", + "description": "use stdout for signature aggregator logs" + }, + { + "flag": "--auth-keys", + "description": "strings control keys that will be used to authenticate chain creation" + }, + { + "flag": "--avalanchego-path", + "description": "string use this avalanchego binary path" + }, + { + "flag": "--avalanchego-version", + "description": "string use this version of avalanchego (ex: v1.17.12) (default \"latest-prerelease\")" + }, + { + "flag": "--balance", + "description": "float set the AVAX balance of each bootstrap validator that will be used for continuous fee on P-Chain (default 0.1)" + }, + { + "flag": "--blockchain-genesis-key", + "description": "use genesis allocated key to fund validator manager initialization" + }, + { + "flag": "--blockchain-key", + "description": "string CLI stored key to use to fund validator manager initialization" + }, + { + "flag": "--blockchain-private-key", + "description": "string private key to use to fund validator manager initialization" + }, + { + "flag": "--bootstrap-endpoints", + "description": "strings take validator node info from the given endpoints" + }, + { + "flag": "--bootstrap-filepath", + "description": "string JSON file path that provides details about bootstrap validators, leave Node-ID and BLS values empty if using --generate-node-id=true" + }, + { + "flag": "--cchain-funding-key", + "description": "string key to be used to fund relayer account on cchain" + }, + { + "flag": "--cchain-icm-key", + "description": "string key to be used to pay for ICM deploys on C-Chain" + }, + { + "flag": "--change-owner-address", + "description": "string address that will receive change if node is no longer L1 validator" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--control-keys", + "description": "strings addresses that may make blockchain changes" + }, + { + "flag": "--convert-only", + "description": "avoid node track, restart and poa manager setup" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-e, --ewoq", + "description": "use ewoq key [fuji/devnet deploy only]" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "--generate-node-id", + "description": "whether to create new node id for bootstrap validators (Node-ID and BLS values in bootstrap JSON file will be overridden if --bootstrap-filepath flag is used)" + }, + { + "flag": "-h, --help", + "description": "help for deploy" + }, + { + "flag": "--icm-key", + "description": "string key to be used to pay for ICM deploys (default \"cli-teleporter-deployer\")" + }, + { + "flag": "--icm-version", + "description": "string ICM version to deploy (default \"latest\")" + }, + { + "flag": "-k, --key", + "description": "string select the key to use [fuji/devnet deploy only]" + }, + { + "flag": "-g, --ledger", + "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet)" + }, + { + "flag": "--ledger-addrs", + "description": "strings use the given ledger addresses" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--mainnet-chain-id", + "description": "uint32 use different ChainID for mainnet deployment" + }, + { + "flag": "--noicm", + "description": "skip automatic ICM deploy" + }, + { + "flag": "--num-bootstrap-validators", + "description": "int (only if --generate-node-id is true) number of bootstrap validators to set up in sovereign L1 validator)" + }, + { + "flag": "--num-local-nodes", + "description": "int number of nodes to be created on local machine" + }, + { + "flag": "--num-nodes", + "description": "uint32 number of nodes to be created on local network deploy (default 2)" + }, + { + "flag": "--output-tx-path", + "description": "string file path of the blockchain creation tx" + }, + { + "flag": "--partial-sync", + "description": "set primary network partial sync for new validators (default true)" + }, + { + "flag": "--pos-maximum-stake-amount", + "description": "uint maximum stake amount (default 1000)" + }, + { + "flag": "--pos-maximum-stake-multiplier", + "description": "uint8 maximum stake multiplier (default 1)" + }, + { + "flag": "--pos-minimum-delegation-fee", + "description": "uint16 minimum delegation fee (default 1)" + }, + { + "flag": "--pos-minimum-stake-amount", + "description": "uint minimum stake amount (default 1)" + }, + { + "flag": "--pos-minimum-stake-duration", + "description": "uint minimum stake duration (default 100)" + }, + { + "flag": "--pos-weight-to-value-factor", + "description": "uint weight to value factor (default 1)" + }, + { + "flag": "--relay-cchain", + "description": "relay C-Chain as source and destination (default true)" + }, + { + "flag": "--relayer-allow-private-ips", + "description": "allow relayer to connec to private ips (default true)" + }, + { + "flag": "--relayer-amount", + "description": "float automatically fund relayer fee payments with the given amount" + }, + { + "flag": "--relayer-key", + "description": "string key to be used by default both for rewards and to pay fees" + }, + { + "flag": "--relayer-log-level", + "description": "string log level to be used for relayer logs (default \"info\")" + }, + { + "flag": "--relayer-path", + "description": "string relayer binary to use" + }, + { + "flag": "--relayer-version", + "description": "string relayer version to deploy (default \"latest-prerelease\")" + }, + { + "flag": "-s, --same-control-key", + "description": "use the fee-paying key as control key" + }, + { + "flag": "--skip-icm-deploy", + "description": "skip automatic ICM deploy" + }, + { + "flag": "--skip-local-teleporter", + "description": "skip automatic ICM deploy on local networks [to be deprecated]" + }, + { + "flag": "--skip-relayer", + "description": "skip relayer deploy" + }, + { + "flag": "--skip-teleporter-deploy", + "description": "skip automatic ICM deploy" + }, + { + "flag": "-u, --subnet-id", + "description": "string do not create a subnet, deploy the blockchain into the given subnet id" + }, + { + "flag": "--subnet-only", + "description": "only create a subnet" + }, + { + "flag": "--teleporter-messenger-contract-address-path", + "description": "string path to an ICM Messenger contract address file" + }, + { + "flag": "--teleporter-messenger-deployer-address-path", + "description": "string path to an ICM Messenger deployer address file" + }, + { + "flag": "--teleporter-messenger-deployer-tx-path", + "description": "string path to an ICM Messenger deployer tx file" + }, + { + "flag": "--teleporter-registry-bytecode-path", + "description": "string path to an ICM Registry bytecode file" + }, + { + "flag": "--teleporter-version", + "description": "string ICM version to deploy (default \"latest\")" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--threshold", + "description": "uint32 required number of control key signatures to make blockchain changes" + }, + { + "flag": "--use-local-machine", + "description": "use local machine as a blockchain validator" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "describe": { + "description": "The blockchain describe command prints the details of a Blockchain configuration to the console.\nBy default, the command prints a summary of the configuration. By providing the --genesis\nflag, the command instead prints out the raw genesis file.", + "flags": [ + { + "flag": "-g, --genesis", + "description": "Print the genesis to the console directly instead of the summary" + }, + { + "flag": "-h, --help", + "description": "help for describe" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "export": { + "description": "The blockchain export command write the details of an existing Blockchain deploy to a file.\n\nThe command prompts for an output path. You can also provide one with\nthe --output flag.", + "flags": [ + { + "flag": "--custom-vm-branch", + "description": "string custom vm branch" + }, + { + "flag": "--custom-vm-build-script", + "description": "string custom vm build-script" + }, + { + "flag": "--custom-vm-repo-url", + "description": "string custom vm repository url" + }, + { + "flag": "-h, --help", + "description": "help for export" + }, + { + "flag": "-o, --output", + "description": "string write the export data to the provided file path" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "import": { + "description": "Import blockchain configurations into avalanche-cli.\n\nThis command suite supports importing from a file created on another computer,\nor importing from blockchains running public networks\n(e.g. created manually or with the deprecated subnet-cli)", + "flags": [ + { + "flag": "-h, --help", + "description": "help for import" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "file": { + "description": "The blockchain import command will import a blockchain configuration from a file or a git repository.\n\nTo import from a file, you can optionally provide the path as a command-line argument.\nAlternatively, running the command without any arguments triggers an interactive wizard.\nTo import from a repository, go through the wizard. By default, an imported Blockchain doesn't \noverwrite an existing Blockchain with the same name. To allow overwrites, provide the --force\nflag.", + "flags": [ + { + "flag": "--blockchain", + "description": "string the blockchain configuration to import from the provided repo" + }, + { + "flag": "--branch", + "description": "string the repo branch to use if downloading a new repo" + }, + { + "flag": "-f, --force", + "description": "overwrite the existing configuration if one exists" + }, + { + "flag": "-h, --help", + "description": "help for file" + }, + { + "flag": "--repo", + "description": "string the repo to import (ex: ava-labs/avalanche-plugins-core) or url to download the repo from" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "public": { + "description": "The blockchain import public command imports a Blockchain configuration from a running network.\n\nBy default, an imported Blockchain\ndoesn't overwrite an existing Blockchain with the same name. To allow overwrites, provide the --force\nflag.", + "flags": [ + { + "flag": "--blockchain-id", + "description": "string the blockchain ID" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--custom", + "description": "use a custom VM template" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "--evm", + "description": "import a subnet-evm" + }, + { + "flag": "--force", + "description": "overwrite the existing configuration if one exists" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for public" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--node-url", + "description": "string [optional] URL of an already running validator" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "join": { + "description": "The blockchain join command configures your validator node to begin validating a new Blockchain.\n\nTo complete this process, you must have access to the machine running your validator. If the\nCLI is running on the same machine as your validator, it can generate or update your node's\nconfig file automatically. Alternatively, the command can print the necessary instructions\nto update your node manually. To complete the validation process, the Blockchain's admins must add\nthe NodeID of your validator to the Blockchain's allow list by calling addValidator with your\nNodeID.\n\nAfter you update your validator's config, you need to restart your validator manually. If\nyou provide the --avalanchego-config flag, this command attempts to edit the config file\nat that path.\n\nThis command currently only supports Blockchains deployed on the Fuji Testnet and Mainnet.", + "flags": [ + { + "flag": "--avalanchego-config", + "description": "string file path of the avalanchego config file" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--data-dir", + "description": "string path of avalanchego's data dir directory" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "--force-write", + "description": "if true, skip to prompt to overwrite the config file" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for join" + }, + { + "flag": "-k, --key", + "description": "string select the key to use [fuji only]" + }, + { + "flag": "-g, --ledger", + "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji)" + }, + { + "flag": "--ledger-addrs", + "description": "strings use the given ledger addresses" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--node-id", + "description": "string set the NodeID of the validator to check" + }, + { + "flag": "--plugin-dir", + "description": "string file path of avalanchego's plugin directory" + }, + { + "flag": "--print", + "description": "if true, print the manual config without prompting" + }, + { + "flag": "--stake-amount", + "description": "uint amount of tokens to stake on validator" + }, + { + "flag": "--staking-period", + "description": "duration how long validator validates for after start time" + }, + { + "flag": "--start-time", + "description": "string start time that validator starts validating" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "list": { + "description": "The blockchain list command prints the names of all created Blockchain configurations. Without any flags,\nit prints some general, static information about the Blockchain. With the --deployed flag, the command\nshows additional information including the VMID, BlockchainID and SubnetID.", + "flags": [ + { + "flag": "--deployed", + "description": "show additional deploy information" + }, + { + "flag": "-h, --help", + "description": "help for list" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "publish": { + "description": "The blockchain publish command publishes the Blockchain's VM to a repository.", + "flags": [ + { + "flag": "--alias", + "description": "string We publish to a remote repo, but identify the repo locally under a user-provided alias (e.g. myrepo)." + }, + { + "flag": "--force", + "description": "If true, ignores if the blockchain has been published in the past, and attempts a forced publish." + }, + { + "flag": "-h, --help", + "description": "help for publish" + }, + { + "flag": "--no-repo-path", + "description": "string Do not let the tool manage file publishing, but have it only generate the files and put them in the location given by this flag." + }, + { + "flag": "--repo-url", + "description": "string The URL of the repo where we are publishing" + }, + { + "flag": "--subnet-file-path", + "description": "string Path to the Blockchain description file. If not given, a prompting sequence will be initiated." + }, + { + "flag": "--vm-file-path", + "description": "string Path to the VM description file. If not given, a prompting sequence will be initiated." + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "removeValidator": { + "description": "The blockchain removeValidator command stops a whitelisted blockchain network validator from\nvalidating your deployed Blockchain.\n\nTo remove the validator from the Subnet's allow list, provide the validator's unique NodeID. You can bypass\nthese prompts by providing the values with flags.", + "flags": [ + { + "flag": "--aggregator-allow-private-peers", + "description": "allow the signature aggregator to connect to peers with private IP (default true)" + }, + { + "flag": "--aggregator-extra-endpoints", + "description": "strings endpoints for extra nodes that are needed in signature aggregation" + }, + { + "flag": "--aggregator-log-level", + "description": "string log level to use with signature aggregator (default \"Debug\")" + }, + { + "flag": "--aggregator-log-to-stdout", + "description": "use stdout for signature aggregator logs" + }, + { + "flag": "--auth-keys", + "description": "strings (for non-SOV blockchain only) control keys that will be used to authenticate the removeValidator tx" + }, + { + "flag": "--blockchain-genesis-key", + "description": "use genesis allocated key to pay fees for completing the validator's removal (blockchain gas token)" + }, + { + "flag": "--blockchain-key", + "description": "string CLI stored key to use to pay fees for completing the validator's removal (blockchain gas token)" + }, + { + "flag": "--blockchain-private-key", + "description": "string private key to use to pay fees for completing the validator's removal (blockchain gas token)" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "--force", + "description": "force validator removal even if it's not getting rewarded" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for removeValidator" + }, + { + "flag": "-k, --key", + "description": "string select the key to use [fuji deploy only]" + }, + { + "flag": "-g, --ledger", + "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji)" + }, + { + "flag": "--ledger-addrs", + "description": "strings use the given ledger addresses" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--node-endpoint", + "description": "string remove validator that responds to the given endpoint" + }, + { + "flag": "--node-id", + "description": "string node-id of the validator" + }, + { + "flag": "--output-tx-path", + "description": "string (for non-SOV blockchain only) file path of the removeValidator tx" + }, + { + "flag": "--rpc", + "description": "string connect to validator manager at the given rpc endpoint" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--uptime", + "description": "uint validator's uptime in seconds. If not provided, it will be automatically calculated" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "stats": { + "description": "The blockchain stats command prints validator statistics for the given Blockchain.", + "flags": [ + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for stats" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "upgrade": { + "description": "The blockchain upgrade command suite provides a collection of tools for\nupdating your developmental and deployed Blockchains.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for upgrade" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "apply": { + "description": "Apply generated upgrade bytes to running Blockchain nodes to trigger a network upgrade.\n\nFor public networks (Fuji Testnet or Mainnet), to complete this process,\nyou must have access to the machine running your validator.\nIf the CLI is running on the same machine as your validator, it can manipulate your node's\nconfiguration automatically. Alternatively, the command can print the necessary instructions\nto upgrade your node manually.\n\nAfter you update your validator's configuration, you need to restart your validator manually.\nIf you provide the --avalanchego-chain-config-dir flag, this command attempts to write the upgrade file at that path.\nRefer to https://docs.avax.network/nodes/maintain/chain-config-flags#subnet-chain-configs for related documentation.", + "flags": [ + { + "flag": "--avalanchego-chain-config-dir", + "description": "string avalanchego's chain config file directory (default \"/home/runner/.avalanchego/chains\")" + }, + { + "flag": "--config", + "description": "create upgrade config for future subnet deployments (same as generate)" + }, + { + "flag": "--force", + "description": "If true, don't prompt for confirmation of timestamps in the past" + }, + { + "flag": "--fuji", + "description": "fuji apply upgrade existing fuji deployment (alias for `testnet`)" + }, + { + "flag": "-h, --help", + "description": "help for apply" + }, + { + "flag": "--local", + "description": "local apply upgrade existing local deployment" + }, + { + "flag": "--mainnet", + "description": "mainnet apply upgrade existing mainnet deployment" + }, + { + "flag": "--print", + "description": "if true, print the manual config without prompting (for public networks only)" + }, + { + "flag": "--testnet", + "description": "testnet apply upgrade existing testnet deployment (alias for `fuji`)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "export": { + "description": "Export the upgrade bytes file to a location of choice on disk", + "flags": [ + { + "flag": "--force", + "description": "If true, overwrite a possibly existing file without prompting" + }, + { + "flag": "-h, --help", + "description": "help for export" + }, + { + "flag": "--upgrade-filepath", + "description": "string Export upgrade bytes file to location of choice on disk" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "generate": { + "description": "The blockchain upgrade generate command builds a new upgrade.json file to customize your Blockchain. It\nguides the user through the process using an interactive wizard.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for generate" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "import": { + "description": "Import the upgrade bytes file into the local environment", + "flags": [ + { + "flag": "-h, --help", + "description": "help for import" + }, + { + "flag": "--upgrade-filepath", + "description": "string Import upgrade bytes file into local environment" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "print": { + "description": "Print the upgrade.json file content", + "flags": [ + { + "flag": "-h, --help", + "description": "help for print" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "vm": { + "description": "The blockchain upgrade vm command enables the user to upgrade their Blockchain's VM binary. The command\ncan upgrade both local Blockchains and publicly deployed Blockchains on Fuji and Mainnet.\n\nThe command walks the user through an interactive wizard. The user can skip the wizard by providing\ncommand line flags.", + "flags": [ + { + "flag": "--binary", + "description": "string Upgrade to custom binary" + }, + { + "flag": "--config", + "description": "upgrade config for future subnet deployments" + }, + { + "flag": "--fuji", + "description": "fuji upgrade existing fuji deployment (alias for `testnet`)" + }, + { + "flag": "-h, --help", + "description": "help for vm" + }, + { + "flag": "--latest", + "description": "upgrade to latest version" + }, + { + "flag": "--local", + "description": "local upgrade existing local deployment" + }, + { + "flag": "--mainnet", + "description": "mainnet upgrade existing mainnet deployment" + }, + { + "flag": "--plugin-dir", + "description": "string plugin directory to automatically upgrade VM" + }, + { + "flag": "--print", + "description": "print instructions for upgrading" + }, + { + "flag": "--testnet", + "description": "testnet upgrade existing testnet deployment (alias for `fuji`)" + }, + { + "flag": "--version", + "description": "string Upgrade to custom version" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "validators": { + "description": "The blockchain validators command lists the validators of a blockchain and provides\nseveral statistics about them.", + "flags": [ + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for validators" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "vmid": { + "description": "The blockchain vmid command prints the virtual machine ID (VMID) for the given Blockchain.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for vmid" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "config": { + "description": "Customize configuration for Avalanche-CLI", + "flags": [ + { + "flag": "-h, --help", + "description": "help for config" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "authorize-cloud-access": { + "description": "set preferences to authorize access to cloud resources", + "flags": [ + { + "flag": "-h, --help", + "description": "help for authorize-cloud-access" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "metrics": { + "description": "set user metrics collection preferences", + "flags": [ + { + "flag": "-h, --help", + "description": "help for metrics" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "migrate": { + "description": "migrate command migrates old ~/.avalanche-cli.json and ~/.avalanche-cli/config to /.avalanche-cli/config.json..", + "flags": [ + { + "flag": "-h, --help", + "description": "help for migrate" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "snapshotsAutoSave": { + "description": "set user preference between auto saving local network snapshots or not", + "flags": [ + { + "flag": "-h, --help", + "description": "help for snapshotsAutoSave" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "update": { + "description": "set user preference between update check or not", + "flags": [ + { + "flag": "-h, --help", + "description": "help for update" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "contract": { + "description": "The contract command suite provides a collection of tools for deploying\nand interacting with smart contracts.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for contract" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "deploy": { + "description": "The contract command suite provides a collection of tools for deploying\nsmart contracts.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for deploy" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "erc20": { + "description": "Deploy an ERC20 token into a given Network and Blockchain", + "flags": [ + { + "flag": "--blockchain", + "description": "string deploy the ERC20 contract into the given CLI blockchain" + }, + { + "flag": "--blockchain-id", + "description": "string deploy the ERC20 contract into the given blockchain ID/Alias" + }, + { + "flag": "--c-chain", + "description": "deploy the ERC20 contract into C-Chain" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "--funded", + "description": "string set the funded address" + }, + { + "flag": "--genesis-key", + "description": "use genesis allocated key as contract deployer" + }, + { + "flag": "-h, --help", + "description": "help for erc20" + }, + { + "flag": "--key", + "description": "string CLI stored key to use as contract deployer" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "--private-key", + "description": "string private key to use as contract deployer" + }, + { + "flag": "--rpc", + "description": "string deploy the contract into the given rpc endpoint" + }, + { + "flag": "--supply", + "description": "uint set the token supply" + }, + { + "flag": "--symbol", + "description": "string set the token symbol" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "initValidatorManager": { + "description": "Initializes Proof of Authority(PoA) or Proof of Stake(PoS)Validator Manager contract on a Blockchain and sets up initial validator set on the Blockchain. For more info on Validator Manager, please head to https://github.com/ava-labs/icm-contracts/tree/main/contracts/validator-manager", + "flags": [ + { + "flag": "--aggregator-allow-private-peers", + "description": "allow the signature aggregator to connect to peers with private IP (default true)" + }, + { + "flag": "--aggregator-extra-endpoints", + "description": "strings endpoints for extra nodes that are needed in signature aggregation" + }, + { + "flag": "--aggregator-log-level", + "description": "string log level to use with signature aggregator (default \"Debug\")" + }, + { + "flag": "--aggregator-log-to-stdout", + "description": "dump signature aggregator logs to stdout" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "--genesis-key", + "description": "use genesis allocated key as contract deployer" + }, + { + "flag": "-h, --help", + "description": "help for initValidatorManager" + }, + { + "flag": "--key", + "description": "string CLI stored key to use as contract deployer" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--pos-maximum-stake-amount", + "description": "uint (PoS only) maximum stake amount (default 1000)" + }, + { + "flag": "--pos-maximum-stake-multiplier", + "description": "uint8 (PoS only )maximum stake multiplier (default 1)" + }, + { + "flag": "--pos-minimum-delegation-fee", + "description": "uint16 (PoS only) minimum delegation fee (default 1)" + }, + { + "flag": "--pos-minimum-stake-amount", + "description": "uint (PoS only) minimum stake amount (default 1)" + }, + { + "flag": "--pos-minimum-stake-duration", + "description": "uint (PoS only) minimum stake duration (default 100)" + }, + { + "flag": "--pos-reward-calculator-address", + "description": "string (PoS only) initialize the ValidatorManager with reward calculator address" + }, + { + "flag": "--pos-weight-to-value-factor", + "description": "uint (PoS only) weight to value factor (default 1)" + }, + { + "flag": "--private-key", + "description": "string private key to use as contract deployer" + }, + { + "flag": "--rpc", + "description": "string deploy the contract into the given rpc endpoint" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "help": { + "description": "Help provides help for any command in the application.\nSimply type avalanche help [path to command] for full details.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for help" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "icm": { + "description": "The messenger command suite provides a collection of tools for interacting\nwith ICM messenger contracts.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for icm" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "deploy": { + "description": "Deploys ICM Messenger and Registry into a given L1.", + "flags": [ + { + "flag": "--blockchain", + "description": "string deploy ICM into the given CLI blockchain" + }, + { + "flag": "--blockchain-id", + "description": "string deploy ICM into the given blockchain ID/Alias" + }, + { + "flag": "--c-chain", + "description": "deploy ICM into C-Chain" + }, + { + "flag": "--cchain-key", + "description": "string key to be used to pay fees to deploy ICM to C-Chain" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--deploy-messenger", + "description": "deploy ICM Messenger (default true)" + }, + { + "flag": "--deploy-registry", + "description": "deploy ICM Registry (default true)" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "--force-registry-deploy", + "description": "deploy ICM Registry even if Messenger has already been deployed" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "--genesis-key", + "description": "use genesis allocated key to fund ICM deploy" + }, + { + "flag": "-h, --help", + "description": "help for deploy" + }, + { + "flag": "--include-cchain", + "description": "deploy ICM also to C-Chain" + }, + { + "flag": "--key", + "description": "string CLI stored key to use to fund ICM deploy" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "--messenger-contract-address-path", + "description": "string path to a messenger contract address file" + }, + { + "flag": "--messenger-deployer-address-path", + "description": "string path to a messenger deployer address file" + }, + { + "flag": "--messenger-deployer-tx-path", + "description": "string path to a messenger deployer tx file" + }, + { + "flag": "--private-key", + "description": "string private key to use to fund ICM deploy" + }, + { + "flag": "--registry-bytecode-path", + "description": "string path to a registry bytecode file" + }, + { + "flag": "--rpc-url", + "description": "string use the given RPC URL to connect to the subnet" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--version", + "description": "string version to deploy (default \"latest\")" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "sendMsg": { + "description": "Sends and wait reception for a ICM msg between two blockchains.", + "flags": [ + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--dest-rpc", + "description": "string use the given destination blockchain rpc endpoint" + }, + { + "flag": "--destination-address", + "description": "string deliver the message to the given contract destination address" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "--genesis-key", + "description": "use genesis allocated key as message originator and to pay source blockchain fees" + }, + { + "flag": "-h, --help", + "description": "help for sendMsg" + }, + { + "flag": "--hex-encoded", + "description": "given message is hex encoded" + }, + { + "flag": "--key", + "description": "string CLI stored key to use as message originator and to pay source blockchain fees" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "--private-key", + "description": "string private key to use as message originator and to pay source blockchain fees" + }, + { + "flag": "--source-rpc", + "description": "string use the given source blockchain rpc endpoint" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "ictt": { + "description": "The ictt command suite provides tools to deploy and manage Interchain Token Transferrers.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for ictt" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "deploy": { + "description": "Deploys a Token Transferrer into a given Network and Subnets", + "flags": [ + { + "flag": "--c-chain-home", + "description": "set the Transferrer's Home Chain into C-Chain" + }, + { + "flag": "--c-chain-remote", + "description": "set the Transferrer's Remote Chain into C-Chain" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--deploy-erc20-home", + "description": "string deploy a Transferrer Home for the given Chain's ERC20 Token" + }, + { + "flag": "--deploy-native-home", + "description": "deploy a Transferrer Home for the Chain's Native Token" + }, + { + "flag": "--deploy-native-remote", + "description": "deploy a Transferrer Remote for the Chain's Native Token" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for deploy" + }, + { + "flag": "--home-blockchain", + "description": "string set the Transferrer's Home Chain into the given CLI blockchain" + }, + { + "flag": "--home-genesis-key", + "description": "use genesis allocated key to deploy Transferrer Home" + }, + { + "flag": "--home-key", + "description": "string CLI stored key to use to deploy Transferrer Home" + }, + { + "flag": "--home-private-key", + "description": "string private key to use to deploy Transferrer Home" + }, + { + "flag": "--home-rpc", + "description": "string use the given RPC URL to connect to the home blockchain" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "--remote-blockchain", + "description": "string set the Transferrer's Remote Chain into the given CLI blockchain" + }, + { + "flag": "--remote-genesis-key", + "description": "use genesis allocated key to deploy Transferrer Remote" + }, + { + "flag": "--remote-key", + "description": "string CLI stored key to use to deploy Transferrer Remote" + }, + { + "flag": "--remote-private-key", + "description": "string private key to use to deploy Transferrer Remote" + }, + { + "flag": "--remote-rpc", + "description": "string use the given RPC URL to connect to the remote blockchain" + }, + { + "flag": "--remote-token-decimals", + "description": "uint8 use the given number of token decimals for the Transferrer Remote [defaults to token home's decimals (18 for a new wrapped native home token)]" + }, + { + "flag": "--remove-minter-admin", + "description": "remove the native minter precompile admin found on remote blockchain genesis" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--use-home", + "description": "string use the given Transferrer's Home Address" + }, + { + "flag": "--version", + "description": "string tag/branch/commit of Avalanche Interchain Token Transfer (ICTT) to be used (defaults to main branch)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "interchain": { + "description": "The interchain command suite provides a collection of tools to\nset and manage interoperability between blockchains.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for interchain" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "messenger": { + "description": "The messenger command suite provides a collection of tools for interacting\nwith ICM messenger contracts.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for messenger" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "deploy": { + "description": "Deploys ICM Messenger and Registry into a given L1.", + "flags": [ + { + "flag": "--blockchain", + "description": "string deploy ICM into the given CLI blockchain" + }, + { + "flag": "--blockchain-id", + "description": "string deploy ICM into the given blockchain ID/Alias" + }, + { + "flag": "--c-chain", + "description": "deploy ICM into C-Chain" + }, + { + "flag": "--cchain-key", + "description": "string key to be used to pay fees to deploy ICM to C-Chain" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--deploy-messenger", + "description": "deploy ICM Messenger (default true)" + }, + { + "flag": "--deploy-registry", + "description": "deploy ICM Registry (default true)" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "--force-registry-deploy", + "description": "deploy ICM Registry even if Messenger has already been deployed" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "--genesis-key", + "description": "use genesis allocated key to fund ICM deploy" + }, + { + "flag": "-h, --help", + "description": "help for deploy" + }, + { + "flag": "--include-cchain", + "description": "deploy ICM also to C-Chain" + }, + { + "flag": "--key", + "description": "string CLI stored key to use to fund ICM deploy" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "--messenger-contract-address-path", + "description": "string path to a messenger contract address file" + }, + { + "flag": "--messenger-deployer-address-path", + "description": "string path to a messenger deployer address file" + }, + { + "flag": "--messenger-deployer-tx-path", + "description": "string path to a messenger deployer tx file" + }, + { + "flag": "--private-key", + "description": "string private key to use to fund ICM deploy" + }, + { + "flag": "--registry-bytecode-path", + "description": "string path to a registry bytecode file" + }, + { + "flag": "--rpc-url", + "description": "string use the given RPC URL to connect to the subnet" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--version", + "description": "string version to deploy (default \"latest\")" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "sendMsg": { + "description": "Sends and wait reception for a ICM msg between two blockchains.", + "flags": [ + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--dest-rpc", + "description": "string use the given destination blockchain rpc endpoint" + }, + { + "flag": "--destination-address", + "description": "string deliver the message to the given contract destination address" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "--genesis-key", + "description": "use genesis allocated key as message originator and to pay source blockchain fees" + }, + { + "flag": "-h, --help", + "description": "help for sendMsg" + }, + { + "flag": "--hex-encoded", + "description": "given message is hex encoded" + }, + { + "flag": "--key", + "description": "string CLI stored key to use as message originator and to pay source blockchain fees" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "--private-key", + "description": "string private key to use as message originator and to pay source blockchain fees" + }, + { + "flag": "--source-rpc", + "description": "string use the given source blockchain rpc endpoint" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "relayer": { + "description": "The relayer command suite provides a collection of tools for deploying\nand configuring an ICM relayers.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for relayer" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "deploy": { + "description": "Deploys an ICM Relayer for the given Network.", + "flags": [ + { + "flag": "--allow-private-ips", + "description": "allow relayer to connec to private ips (default true)" + }, + { + "flag": "--amount", + "description": "float automatically fund l1s fee payments with the given amount" + }, + { + "flag": "--bin-path", + "description": "string use the given relayer binary" + }, + { + "flag": "--blockchain-funding-key", + "description": "string key to be used to fund relayer account on all l1s" + }, + { + "flag": "--blockchains", + "description": "strings blockchains to relay as source and destination" + }, + { + "flag": "--cchain", + "description": "relay C-Chain as source and destination" + }, + { + "flag": "--cchain-amount", + "description": "float automatically fund cchain fee payments with the given amount" + }, + { + "flag": "--cchain-funding-key", + "description": "string key to be used to fund relayer account on cchain" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for deploy" + }, + { + "flag": "--key", + "description": "string key to be used by default both for rewards and to pay fees" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "--log-level", + "description": "string log level to use for relayer logs" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--version", + "description": "string version to deploy (default \"latest-prerelease\")" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "logs": { + "description": "Shows pretty formatted AWM relayer logs", + "flags": [ + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "--first", + "description": "uint output first N log lines" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for logs" + }, + { + "flag": "--last", + "description": "uint output last N log lines" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "--raw", + "description": "raw logs output" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "start": { + "description": "Starts AWM relayer on the specified network (Currently only for local network).", + "flags": [ + { + "flag": "--bin-path", + "description": "string use the given relayer binary" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for start" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--version", + "description": "string version to use (default \"latest-prerelease\")" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "stop": { + "description": "Stops AWM relayer on the specified network (Currently only for local network, cluster).", + "flags": [ + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for stop" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "tokenTransferrer": { + "description": "The tokenTransfer command suite provides tools to deploy and manage Token Transferrers.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for tokenTransferrer" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "deploy": { + "description": "Deploys a Token Transferrer into a given Network and Subnets", + "flags": [ + { + "flag": "--c-chain-home", + "description": "set the Transferrer's Home Chain into C-Chain" + }, + { + "flag": "--c-chain-remote", + "description": "set the Transferrer's Remote Chain into C-Chain" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--deploy-erc20-home", + "description": "string deploy a Transferrer Home for the given Chain's ERC20 Token" + }, + { + "flag": "--deploy-native-home", + "description": "deploy a Transferrer Home for the Chain's Native Token" + }, + { + "flag": "--deploy-native-remote", + "description": "deploy a Transferrer Remote for the Chain's Native Token" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for deploy" + }, + { + "flag": "--home-blockchain", + "description": "string set the Transferrer's Home Chain into the given CLI blockchain" + }, + { + "flag": "--home-genesis-key", + "description": "use genesis allocated key to deploy Transferrer Home" + }, + { + "flag": "--home-key", + "description": "string CLI stored key to use to deploy Transferrer Home" + }, + { + "flag": "--home-private-key", + "description": "string private key to use to deploy Transferrer Home" + }, + { + "flag": "--home-rpc", + "description": "string use the given RPC URL to connect to the home blockchain" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "--remote-blockchain", + "description": "string set the Transferrer's Remote Chain into the given CLI blockchain" + }, + { + "flag": "--remote-genesis-key", + "description": "use genesis allocated key to deploy Transferrer Remote" + }, + { + "flag": "--remote-key", + "description": "string CLI stored key to use to deploy Transferrer Remote" + }, + { + "flag": "--remote-private-key", + "description": "string private key to use to deploy Transferrer Remote" + }, + { + "flag": "--remote-rpc", + "description": "string use the given RPC URL to connect to the remote blockchain" + }, + { + "flag": "--remote-token-decimals", + "description": "uint8 use the given number of token decimals for the Transferrer Remote [defaults to token home's decimals (18 for a new wrapped native home token)]" + }, + { + "flag": "--remove-minter-admin", + "description": "remove the native minter precompile admin found on remote blockchain genesis" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--use-home", + "description": "string use the given Transferrer's Home Address" + }, + { + "flag": "--version", + "description": "string tag/branch/commit of Avalanche Interchain Token Transfer (ICTT) to be used (defaults to main branch)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + } + } + }, + "key": { + "description": "The key command suite provides a collection of tools for creating and managing\nsigning keys. You can use these keys to deploy Subnets to the Fuji Testnet,\nbut these keys are NOT suitable to use in production environments. DO NOT use\nthese keys on Mainnet.\n\nTo get started, use the key create command.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for key" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "create": { + "description": "The key create command generates a new private key to use for creating and controlling\ntest Subnets. Keys generated by this command are NOT cryptographically secure enough to\nuse in production environments. DO NOT use these keys on Mainnet.\n\nThe command works by generating a secp256 key and storing it with the provided keyName. You\ncan use this key in other commands by providing this keyName.\n\nIf you'd like to import an existing key instead of generating one from scratch, provide the\n--file flag.", + "flags": [ + { + "flag": "--file", + "description": "string import the key from an existing key file" + }, + { + "flag": "-f, --force", + "description": "overwrite an existing key with the same name" + }, + { + "flag": "-h, --help", + "description": "help for create" + }, + { + "flag": "--skip-balances", + "description": "do not query public network balances for an imported key" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "delete": { + "description": "The key delete command deletes an existing signing key.\n\nTo delete a key, provide the keyName. The command prompts for confirmation\nbefore deleting the key. To skip the confirmation, provide the --force flag.", + "flags": [ + { + "flag": "-f, --force", + "description": "delete the key without confirmation" + }, + { + "flag": "-h, --help", + "description": "help for delete" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "export": { + "description": "The key export command exports a created signing key. You can use an exported key in other\napplications or import it into another instance of Avalanche-CLI.\n\nBy default, the tool writes the hex encoded key to stdout. If you provide the --output\nflag, the command writes the key to a file of your choosing.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for export" + }, + { + "flag": "-o, --output", + "description": "string write the key to the provided file path" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "list": { + "description": "The key list command prints information for all stored signing\nkeys or for the ledger addresses associated to certain indices.", + "flags": [ + { + "flag": "-a, --all-networks", + "description": "list all network addresses" + }, + { + "flag": "--blockchains", + "description": "strings blockchains to show information about (p=p-chain, x=x-chain, c=c-chain, and blockchain names) (default p,x,c)" + }, + { + "flag": "-c, --cchain", + "description": "list C-Chain addresses (default true)" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for list" + }, + { + "flag": "--keys", + "description": "strings list addresses for the given keys" + }, + { + "flag": "-g, --ledger", + "description": "uints list ledger addresses for the given indices (default [])" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--pchain", + "description": "list P-Chain addresses (default true)" + }, + { + "flag": "--subnets", + "description": "strings subnets to show information about (p=p-chain, x=x-chain, c=c-chain, and blockchain names) (default p,x,c)" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--tokens", + "description": "strings provide balance information for the given token contract addresses (Evm only) (default [Native])" + }, + { + "flag": "--use-gwei", + "description": "use gwei for EVM balances" + }, + { + "flag": "-n, --use-nano-avax", + "description": "use nano Avax for balances" + }, + { + "flag": "--xchain", + "description": "list X-Chain addresses (default true)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "transfer": { + "description": "The key transfer command allows to transfer funds between stored keys or ledger addresses.", + "flags": [ + { + "flag": "-o, --amount", + "description": "float amount to send or receive (AVAX or TOKEN units)" + }, + { + "flag": "--c-chain-receiver", + "description": "receive at C-Chain" + }, + { + "flag": "--c-chain-sender", + "description": "send from C-Chain" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "-a, --destination-addr", + "description": "string destination address" + }, + { + "flag": "--destination-key", + "description": "string key associated to a destination address" + }, + { + "flag": "--destination-subnet", + "description": "string subnet where the funds will be sent (token transferrer experimental)" + }, + { + "flag": "--destination-transferrer-address", + "description": "string token transferrer address at the destination subnet (token transferrer experimental)" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for transfer" + }, + { + "flag": "-k, --key", + "description": "string key associated to the sender or receiver address" + }, + { + "flag": "-i, --ledger", + "description": "uint32 ledger index associated to the sender or receiver address (default 32768)" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--origin-subnet", + "description": "string subnet where the funds belong (token transferrer experimental)" + }, + { + "flag": "--origin-transferrer-address", + "description": "string token transferrer address at the origin subnet (token transferrer experimental)" + }, + { + "flag": "--p-chain-receiver", + "description": "receive at P-Chain" + }, + { + "flag": "--p-chain-sender", + "description": "send from P-Chain" + }, + { + "flag": "--receiver-blockchain", + "description": "string receive at the given CLI blockchain" + }, + { + "flag": "--receiver-blockchain-id", + "description": "string receive at the given blockchain ID/Alias" + }, + { + "flag": "--sender-blockchain", + "description": "string send from the given CLI blockchain" + }, + { + "flag": "--sender-blockchain-id", + "description": "string send from the given blockchain ID/Alias" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--x-chain-receiver", + "description": "receive at X-Chain" + }, + { + "flag": "--x-chain-sender", + "description": "send from X-Chain" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "network": { + "description": "The network command suite provides a collection of tools for managing local Blockchain\ndeployments.\n\nWhen you deploy a Blockchain locally, it runs on a local, multi-node Avalanche network. The\nblockchain deploy command starts this network in the background. This command suite allows you\nto shutdown, restart, and clear that network.\n\nThis network currently supports multiple, concurrently deployed Blockchains.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for network" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "clean": { + "description": "The network clean command shuts down your local, multi-node network. All deployed Subnets\nshutdown and delete their state. You can restart the network by deploying a new Subnet\nconfiguration.", + "flags": [ + { + "flag": "--hard", + "description": "Also clean downloaded avalanchego and plugin binaries" + }, + { + "flag": "-h, --help", + "description": "help for clean" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "start": { + "description": "The network start command starts a local, multi-node Avalanche network on your machine.\n\nBy default, the command loads the default snapshot. If you provide the --snapshot-name\nflag, the network loads that snapshot instead. The command fails if the local network is\nalready running.", + "flags": [ + { + "flag": "--avalanchego-path", + "description": "string use this avalanchego binary path" + }, + { + "flag": "--avalanchego-version", + "description": "string use this version of avalanchego (ex: v1.17.12) (default \"latest-prerelease\")" + }, + { + "flag": "-h, --help", + "description": "help for start" + }, + { + "flag": "--num-nodes", + "description": "uint32 number of nodes to be created on local network (default 2)" + }, + { + "flag": "--relayer-path", + "description": "string use this relayer binary path" + }, + { + "flag": "--relayer-version", + "description": "string use this relayer version (default \"latest-prerelease\")" + }, + { + "flag": "--snapshot-name", + "description": "string name of snapshot to use to start the network from (default \"default-1654102509\")" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "status": { + "description": "The network status command prints whether or not a local Avalanche\nnetwork is running and some basic stats about the network.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for status" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "stop": { + "description": "The network stop command shuts down your local, multi-node network.\n\nAll deployed Subnets shutdown gracefully and save their state. If you provide the\n--snapshot-name flag, the network saves its state under this named snapshot. You can\nreload this snapshot with network start --snapshot-name `snapshotName`. Otherwise, the\nnetwork saves to the default snapshot, overwriting any existing state. You can reload the\ndefault snapshot with network start.", + "flags": [ + { + "flag": "--dont-save", + "description": "do not save snapshot, just stop the network" + }, + { + "flag": "-h, --help", + "description": "help for stop" + }, + { + "flag": "--snapshot-name", + "description": "string name of snapshot to use to save network state into (default \"default-1654102509\")" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "node": { + "description": "The node command suite provides a collection of tools for creating and maintaining \nvalidators on Avalanche Network.\n\nTo get started, use the node create command wizard to walk through the\nconfiguration to make your node a primary validator on Avalanche public network. You can use the \nrest of the commands to maintain your node and make your node a Subnet Validator.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for node" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "addDashboard": { + "description": "(ALPHA Warning) This command is currently in experimental mode. \n\nThe node addDashboard command adds custom dashboard to the Grafana monitoring dashboard for the \ncluster.", + "flags": [ + { + "flag": "--add-grafana-dashboard", + "description": "string path to additional grafana dashboard json file" + }, + { + "flag": "-h, --help", + "description": "help for addDashboard" + }, + { + "flag": "--subnet", + "description": "string subnet that the dasbhoard is intended for (if any)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "create": { + "description": "(ALPHA Warning) This command is currently in experimental mode. \n\nThe node create command sets up a validator on a cloud server of your choice. \nThe validator will be validating the Avalanche Primary Network and Subnet \nof your choice. By default, the command runs an interactive wizard. It \nwalks you through all the steps you need to set up a validator.\nOnce this command is completed, you will have to wait for the validator\nto finish bootstrapping on the primary network before running further\ncommands on it, e.g. validating a Subnet. You can check the bootstrapping\nstatus by running avalanche node status \n\nThe created node will be part of group of validators called `clusterName` \nand users can call node commands with `clusterName` so that the command\nwill apply to all nodes in the cluster", + "flags": [ + { + "flag": "--add-grafana-dashboard", + "description": "string path to additional grafana dashboard json file" + }, + { + "flag": "--alternative-key-pair-name", + "description": "string key pair name to use if default one generates conflicts" + }, + { + "flag": "--authorize-access", + "description": "authorize CLI to create cloud resources" + }, + { + "flag": "--auto-replace-keypair", + "description": "automatically replaces key pair to access node if previous key pair is not found" + }, + { + "flag": "--avalanchego-version-from-subnet", + "description": "string install latest avalanchego version, that is compatible with the given subnet, on node/s" + }, + { + "flag": "--aws", + "description": "create node/s in AWS cloud" + }, + { + "flag": "--aws-profile", + "description": "string aws profile to use (default \"default\")" + }, + { + "flag": "--aws-volume-iops", + "description": "int AWS iops (for gp3, io1, and io2 volume types only) (default 3000)" + }, + { + "flag": "--aws-volume-size", + "description": "int AWS volume size in GB (default 1000)" + }, + { + "flag": "--aws-volume-throughput", + "description": "int AWS throughput in MiB/s (for gp3 volume type only) (default 125)" + }, + { + "flag": "--aws-volume-type", + "description": "string AWS volume type (default \"gp3\")" + }, + { + "flag": "--bootstrap-ids", + "description": "stringArray nodeIDs of bootstrap nodes" + }, + { + "flag": "--bootstrap-ips", + "description": "stringArray IP:port pairs of bootstrap nodes" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--custom-avalanchego-version", + "description": "string install given avalanchego version on node/s" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--enable-monitoring", + "description": "set up Prometheus monitoring for created nodes. This option creates a separate monitoring cloud instance and incures additional cost" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "--gcp", + "description": "create node/s in GCP cloud" + }, + { + "flag": "--gcp-credentials", + "description": "string use given GCP credentials" + }, + { + "flag": "--gcp-project", + "description": "string use given GCP project" + }, + { + "flag": "--genesis", + "description": "string path to genesis file" + }, + { + "flag": "--grafana-pkg", + "description": "string use grafana pkg instead of apt repo(by default), for example https://dl.grafana.com/oss/release/grafana_10.4.1_amd64.deb" + }, + { + "flag": "-h, --help", + "description": "help for create" + }, + { + "flag": "--latest-avalanchego-pre-release-version", + "description": "install latest avalanchego pre-release version on node/s" + }, + { + "flag": "--latest-avalanchego-version", + "description": "install latest avalanchego release version on node/s" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--node-type", + "description": "string cloud instance type. Use 'default' to use recommended default instance type" + }, + { + "flag": "--num-apis", + "description": "ints number of API nodes(nodes without stake) to create in the new Devnet" + }, + { + "flag": "--num-validators", + "description": "ints number of nodes to create per region(s). Use comma to separate multiple numbers for each region in the same order as --region flag" + }, + { + "flag": "--partial-sync", + "description": "primary network partial sync (default true)" + }, + { + "flag": "--public-http-port", + "description": "allow public access to avalanchego HTTP port" + }, + { + "flag": "--region", + "description": "strings create node(s) in given region(s). Use comma to separate multiple regions" + }, + { + "flag": "--ssh-agent-identity", + "description": "string use given ssh identity(only for ssh agent). If not set, default will be used" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--upgrade", + "description": "string path to upgrade file" + }, + { + "flag": "--use-ssh-agent", + "description": "use ssh agent(ex: Yubikey) for ssh auth" + }, + { + "flag": "--use-static-ip", + "description": "attach static Public IP on cloud servers (default true)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "destroy": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node destroy command terminates all running nodes in cloud server and deletes all storage disks.\n\nIf there is a static IP address attached, it will be released.", + "flags": [ + { + "flag": "--all", + "description": "destroy all existing clusters created by Avalanche CLI" + }, + { + "flag": "--authorize-access", + "description": "authorize CLI to release cloud resources" + }, + { + "flag": "-y, --authorize-all", + "description": "authorize all CLI requests" + }, + { + "flag": "--authorize-remove", + "description": "authorize CLI to remove all local files related to cloud nodes" + }, + { + "flag": "--aws-profile", + "description": "string aws profile to use (default \"default\")" + }, + { + "flag": "-h, --help", + "description": "help for destroy" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "devnet": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node devnet command suite provides a collection of commands related to devnets.\nYou can check the updated status by calling avalanche node status `clusterName`", + "flags": [ + { + "flag": "-h, --help", + "description": "help for devnet" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "deploy": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node devnet deploy command deploys a subnet into a devnet cluster, creating subnet and blockchain txs for it.\nIt saves the deploy info both locally and remotely.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for deploy" + }, + { + "flag": "--no-checks", + "description": "do not check for healthy status or rpc compatibility of nodes against subnet" + }, + { + "flag": "--subnet-aliases", + "description": "strings additional subnet aliases to be used for RPC calls in addition to subnet blockchain name" + }, + { + "flag": "--subnet-only", + "description": "only create a subnet" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "wiz": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node wiz command creates a devnet and deploys, sync and validate a subnet into it. It creates the subnet if so needed.", + "flags": [ + { + "flag": "--add-grafana-dashboard", + "description": "string path to additional grafana dashboard json file" + }, + { + "flag": "--alternative-key-pair-name", + "description": "string key pair name to use if default one generates conflicts" + }, + { + "flag": "--authorize-access", + "description": "authorize CLI to create cloud resources" + }, + { + "flag": "--auto-replace-keypair", + "description": "automatically replaces key pair to access node if previous key pair is not found" + }, + { + "flag": "--aws", + "description": "create node/s in AWS cloud" + }, + { + "flag": "--aws-profile", + "description": "string aws profile to use (default \"default\")" + }, + { + "flag": "--aws-volume-iops", + "description": "int AWS iops (for gp3, io1, and io2 volume types only) (default 3000)" + }, + { + "flag": "--aws-volume-size", + "description": "int AWS volume size in GB (default 1000)" + }, + { + "flag": "--aws-volume-throughput", + "description": "int AWS throughput in MiB/s (for gp3 volume type only) (default 125)" + }, + { + "flag": "--aws-volume-type", + "description": "string AWS volume type (default \"gp3\")" + }, + { + "flag": "--chain-config", + "description": "string path to the chain configuration for subnet" + }, + { + "flag": "--custom-avalanchego-version", + "description": "string install given avalanchego version on node/s" + }, + { + "flag": "--custom-subnet", + "description": "use a custom VM as the subnet virtual machine" + }, + { + "flag": "--custom-vm-branch", + "description": "string custom vm branch or commit" + }, + { + "flag": "--custom-vm-build-script", + "description": "string custom vm build-script" + }, + { + "flag": "--custom-vm-repo-url", + "description": "string custom vm repository url" + }, + { + "flag": "--default-validator-params", + "description": "use default weight/start/duration params for subnet validator" + }, + { + "flag": "--deploy-icm-messenger", + "description": "deploy Interchain Messenger (default true)" + }, + { + "flag": "--deploy-icm-registry", + "description": "deploy Interchain Registry (default true)" + }, + { + "flag": "--deploy-teleporter-messenger", + "description": "deploy Interchain Messenger (default true)" + }, + { + "flag": "--deploy-teleporter-registry", + "description": "deploy Interchain Registry (default true)" + }, + { + "flag": "--enable-monitoring", + "description": "set up Prometheus monitoring for created nodes. Please note that this option creates a separate monitoring instance and incures additional cost" + }, + { + "flag": "--evm-chain-id", + "description": "uint chain ID to use with Subnet-EVM" + }, + { + "flag": "--evm-defaults", + "description": "use default production settings with Subnet-EVM" + }, + { + "flag": "--evm-production-defaults", + "description": "use default production settings for your blockchain" + }, + { + "flag": "--evm-subnet", + "description": "use Subnet-EVM as the subnet virtual machine" + }, + { + "flag": "--evm-test-defaults", + "description": "use default test settings for your blockchain" + }, + { + "flag": "--evm-token", + "description": "string token name to use with Subnet-EVM" + }, + { + "flag": "--evm-version", + "description": "string version of Subnet-EVM to use" + }, + { + "flag": "--force-subnet-create", + "description": "overwrite the existing subnet configuration if one exists" + }, + { + "flag": "--gcp", + "description": "create node/s in GCP cloud" + }, + { + "flag": "--gcp-credentials", + "description": "string use given GCP credentials" + }, + { + "flag": "--gcp-project", + "description": "string use given GCP project" + }, + { + "flag": "--grafana-pkg", + "description": "string use grafana pkg instead of apt repo(by default), for example https://dl.grafana.com/oss/release/grafana_10.4.1_amd64.deb" + }, + { + "flag": "-h, --help", + "description": "help for wiz" + }, + { + "flag": "--icm", + "description": "generate an icm-ready vm" + }, + { + "flag": "--icm-messenger-contract-address-path", + "description": "string path to an icm messenger contract address file" + }, + { + "flag": "--icm-messenger-deployer-address-path", + "description": "string path to an icm messenger deployer address file" + }, + { + "flag": "--icm-messenger-deployer-tx-path", + "description": "string path to an icm messenger deployer tx file" + }, + { + "flag": "--icm-registry-bytecode-path", + "description": "string path to an icm registry bytecode file" + }, + { + "flag": "--icm-version", + "description": "string icm version to deploy (default \"latest\")" + }, + { + "flag": "--latest-avalanchego-pre-release-version", + "description": "install latest avalanchego pre-release version on node/s" + }, + { + "flag": "--latest-avalanchego-version", + "description": "install latest avalanchego release version on node/s" + }, + { + "flag": "--latest-evm-version", + "description": "use latest Subnet-EVM released version" + }, + { + "flag": "--latest-pre-released-evm-version", + "description": "use latest Subnet-EVM pre-released version" + }, + { + "flag": "--node-config", + "description": "string path to avalanchego node configuration for subnet" + }, + { + "flag": "--node-type", + "description": "string cloud instance type. Use 'default' to use recommended default instance type" + }, + { + "flag": "--num-apis", + "description": "ints number of API nodes(nodes without stake) to create in the new Devnet" + }, + { + "flag": "--num-validators", + "description": "ints number of nodes to create per region(s). Use comma to separate multiple numbers for each region in the same order as --region flag" + }, + { + "flag": "--public-http-port", + "description": "allow public access to avalanchego HTTP port" + }, + { + "flag": "--region", + "description": "strings create node/s in given region(s). Use comma to separate multiple regions" + }, + { + "flag": "--relayer", + "description": "run AWM relayer when deploying the vm" + }, + { + "flag": "--ssh-agent-identity", + "description": "string use given ssh identity(only for ssh agent). If not set, default will be used." + }, + { + "flag": "--subnet-aliases", + "description": "strings additional subnet aliases to be used for RPC calls in addition to subnet blockchain name" + }, + { + "flag": "--subnet-config", + "description": "string path to the subnet configuration for subnet" + }, + { + "flag": "--subnet-genesis", + "description": "string file path of the subnet genesis" + }, + { + "flag": "--teleporter", + "description": "generate an icm-ready vm" + }, + { + "flag": "--teleporter-messenger-contract-address-path", + "description": "string path to an icm messenger contract address file" + }, + { + "flag": "--teleporter-messenger-deployer-address-path", + "description": "string path to an icm messenger deployer address file" + }, + { + "flag": "--teleporter-messenger-deployer-tx-path", + "description": "string path to an icm messenger deployer tx file" + }, + { + "flag": "--teleporter-registry-bytecode-path", + "description": "string path to an icm registry bytecode file" + }, + { + "flag": "--teleporter-version", + "description": "string icm version to deploy (default \"latest\")" + }, + { + "flag": "--use-ssh-agent", + "description": "use ssh agent for ssh" + }, + { + "flag": "--use-static-ip", + "description": "attach static Public IP on cloud servers (default true)" + }, + { + "flag": "--validators", + "description": "strings deploy subnet into given comma separated list of validators. defaults to all cluster nodes" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "export": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node export command exports cluster configuration and its nodes config to a text file.\n\nIf no file is specified, the configuration is printed to the stdout.\n\nUse --include-secrets to include keys in the export. In this case please keep the file secure as it contains sensitive information.\n\nExported cluster configuration without secrets can be imported by another user using node import command.", + "flags": [ + { + "flag": "--file", + "description": "string specify the file to export the cluster configuration to" + }, + { + "flag": "--force", + "description": "overwrite the file if it exists" + }, + { + "flag": "-h, --help", + "description": "help for export" + }, + { + "flag": "--include-secrets", + "description": "include keys in the export" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "import": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node import command imports cluster configuration and its nodes configuration from a text file\ncreated from the node export command.\n\nPrior to calling this command, call node whitelist command to have your SSH public key and IP whitelisted by\nthe cluster owner. This will enable you to use avalanche-cli commands to manage the imported cluster.\n\nPlease note, that this imported cluster will be considered as EXTERNAL by avalanche-cli, so some commands\naffecting cloud nodes like node create or node destroy will be not applicable to it.", + "flags": [ + { + "flag": "--file", + "description": "string specify the file to export the cluster configuration to" + }, + { + "flag": "-h, --help", + "description": "help for import" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "list": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node list command lists all clusters together with their nodes.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for list" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "loadtest": { + "description": "(ALPHA Warning) This command is currently in experimental mode. \n\nThe node loadtest command suite starts and stops a load test for an existing devnet cluster.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for loadtest" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "start": { + "description": "(ALPHA Warning) This command is currently in experimental mode. \n\nThe node loadtest command starts load testing for an existing devnet cluster. If the cluster does \nnot have an existing load test host, the command creates a separate cloud server and builds the load \ntest binary based on the provided load test Git Repo URL and load test binary build command. \n\nThe command will then run the load test binary based on the provided load test run command.", + "flags": [ + { + "flag": "--authorize-access", + "description": "authorize CLI to create cloud resources" + }, + { + "flag": "--aws", + "description": "create loadtest node in AWS cloud" + }, + { + "flag": "--aws-profile", + "description": "string aws profile to use (default \"default\")" + }, + { + "flag": "--gcp", + "description": "create loadtest in GCP cloud" + }, + { + "flag": "-h, --help", + "description": "help for start" + }, + { + "flag": "--load-test-branch", + "description": "string load test branch or commit" + }, + { + "flag": "--load-test-build-cmd", + "description": "string command to build load test binary" + }, + { + "flag": "--load-test-cmd", + "description": "string command to run load test" + }, + { + "flag": "--load-test-repo", + "description": "string load test repo url to use" + }, + { + "flag": "--node-type", + "description": "string cloud instance type for loadtest script" + }, + { + "flag": "--region", + "description": "string create load test node in a given region" + }, + { + "flag": "--ssh-agent-identity", + "description": "string use given ssh identity(only for ssh agent). If not set, default will be used" + }, + { + "flag": "--use-ssh-agent", + "description": "use ssh agent(ex: Yubikey) for ssh auth" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "stop": { + "description": "(ALPHA Warning) This command is currently in experimental mode. \n\nThe node loadtest stop command stops load testing for an existing devnet cluster and terminates the \nseparate cloud server created to host the load test.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for stop" + }, + { + "flag": "--load-test", + "description": "strings stop specified load test node(s). Use comma to separate multiple load test instance names" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "local": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node local command suite provides a collection of commands related to local nodes", + "flags": [ + { + "flag": "-h, --help", + "description": "help for local" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "destroy": { + "description": "Cleanup local node.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for destroy" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "start": { + "description": "(ALPHA Warning) This command is currently in experimental mode. \n\nThe node local start command sets up a validator on a local server. \nThe validator will be validating the Avalanche Primary Network and Subnet \nof your choice. By default, the command runs an interactive wizard. It \nwalks you through all the steps you need to set up a validator.\nOnce this command is completed, you will have to wait for the validator\nto finish bootstrapping on the primary network before running further\ncommands on it, e.g. validating a Subnet. You can check the bootstrapping\nstatus by running avalanche node status local", + "flags": [ + { + "flag": "--avalanchego-path", + "description": "string use this avalanchego binary path" + }, + { + "flag": "--bootstrap-id", + "description": "stringArray nodeIDs of bootstrap nodes" + }, + { + "flag": "--bootstrap-ip", + "description": "stringArray IP:port pairs of bootstrap nodes" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--custom-avalanchego-version", + "description": "string install given avalanchego version on node/s" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "--genesis", + "description": "string path to genesis file" + }, + { + "flag": "-h, --help", + "description": "help for start" + }, + { + "flag": "--latest-avalanchego-pre-release-version", + "description": "install latest avalanchego pre-release version on node/s (default true)" + }, + { + "flag": "--latest-avalanchego-version", + "description": "install latest avalanchego release version on node/s" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--node-config", + "description": "string path to common avalanchego config settings for all nodes" + }, + { + "flag": "--num-nodes", + "description": "uint32 number of nodes to start (default 1)" + }, + { + "flag": "--partial-sync", + "description": "primary network partial sync (default true)" + }, + { + "flag": "--staking-cert-key-path", + "description": "string path to provided staking cert key for node" + }, + { + "flag": "--staking-signer-key-path", + "description": "string path to provided staking signer key for node" + }, + { + "flag": "--staking-tls-key-path", + "description": "string path to provided staking tls key for node" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--upgrade", + "description": "string path to upgrade file" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "status": { + "description": "Get status of local node.", + "flags": [ + { + "flag": "--blockchain", + "description": "string specify the blockchain the node is syncing with" + }, + { + "flag": "-h, --help", + "description": "help for status" + }, + { + "flag": "--subnet", + "description": "string specify the blockchain the node is syncing with" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "stop": { + "description": "Stop local node.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for stop" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "track": { + "description": "(ALPHA Warning) make the local node at the cluster to track given blockchain", + "flags": [ + { + "flag": "--avalanchego-path", + "description": "string use this avalanchego binary path" + }, + { + "flag": "--custom-avalanchego-version", + "description": "string install given avalanchego version on node/s" + }, + { + "flag": "-h, --help", + "description": "help for track" + }, + { + "flag": "--latest-avalanchego-pre-release-version", + "description": "install latest avalanchego pre-release version on node/s (default true)" + }, + { + "flag": "--latest-avalanchego-version", + "description": "install latest avalanchego release version on node/s" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "refresh-ips": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node refresh-ips command obtains the current IP for all nodes with dynamic IPs in the cluster,\nand updates the local node information used by CLI commands.", + "flags": [ + { + "flag": "--aws-profile", + "description": "string aws profile to use (default \"default\")" + }, + { + "flag": "-h, --help", + "description": "help for refresh-ips" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "resize": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node resize command can change the amount of CPU, memory and disk space available for the cluster nodes.", + "flags": [ + { + "flag": "--aws-profile", + "description": "string aws profile to use (default \"default\")" + }, + { + "flag": "--disk-size", + "description": "string Disk size to resize in Gb (e.g. 1000Gb)" + }, + { + "flag": "-h, --help", + "description": "help for resize" + }, + { + "flag": "--node-type", + "description": "string Node type to resize (e.g. t3.2xlarge)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "scp": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node scp command securely copies files to and from nodes. Remote source or destionation can be specified using the following format:\n[clusterName|nodeID|instanceID|IP]:/path/to/file. Regular expressions are supported for the source files like /tmp/*.txt.\nFile transfer to the nodes are parallelized. IF source or destination is cluster, the other should be a local file path. \nIf both destinations are remote, they must be nodes for the same cluster and not clusters themselves.\nFor example:\n$ avalanche node scp [cluster1|node1]:/tmp/file.txt /tmp/file.txt\n$ avalanche node scp /tmp/file.txt [cluster1|NodeID-XXXX]:/tmp/file.txt\n$ avalanche node scp node1:/tmp/file.txt NodeID-XXXX:/tmp/file.txt", + "flags": [ + { + "flag": "--compress", + "description": "use compression for ssh" + }, + { + "flag": "-h, --help", + "description": "help for scp" + }, + { + "flag": "--recursive", + "description": "copy directories recursively" + }, + { + "flag": "--with-loadtest", + "description": "include loadtest node for scp cluster operations" + }, + { + "flag": "--with-monitor", + "description": "include monitoring node for scp cluster operations" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "ssh": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node ssh command execute a given command [cmd] using ssh on all nodes in the cluster if ClusterName is given.\nIf no command is given, just prints the ssh command to be used to connect to each node in the cluster.\nFor provided NodeID or InstanceID or IP, the command [cmd] will be executed on that node.\nIf no [cmd] is provided for the node, it will open ssh shell there.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for ssh" + }, + { + "flag": "--parallel", + "description": "run ssh command on all nodes in parallel" + }, + { + "flag": "--with-loadtest", + "description": "include loadtest node for ssh cluster operations" + }, + { + "flag": "--with-monitor", + "description": "include monitoring node for ssh cluster operations" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "status": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node status command gets the bootstrap status of all nodes in a cluster with the Primary Network. \nIf no cluster is given, defaults to node list behaviour.\n\nTo get the bootstrap status of a node with a Blockchain, use --blockchain flag", + "flags": [ + { + "flag": "--blockchain", + "description": "string specify the blockchain the node is syncing with" + }, + { + "flag": "-h, --help", + "description": "help for status" + }, + { + "flag": "--subnet", + "description": "string specify the blockchain the node is syncing with" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "sync": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node sync command enables all nodes in a cluster to be bootstrapped to a Blockchain.\nYou can check the blockchain bootstrap status by calling avalanche node status `clusterName` --blockchain `blockchainName`", + "flags": [ + { + "flag": "-h, --help", + "description": "help for sync" + }, + { + "flag": "--no-checks", + "description": "do not check for bootstrapped/healthy status or rpc compatibility of nodes against subnet" + }, + { + "flag": "--subnet-aliases", + "description": "strings subnet alias to be used for RPC calls. defaults to subnet blockchain ID" + }, + { + "flag": "--validators", + "description": "strings sync subnet into given comma separated list of validators. defaults to all cluster nodes" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "update": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node update command suite provides a collection of commands for nodes to update\ntheir avalanchego or VM config.\n\nYou can check the status after update by calling avalanche node status", + "flags": [ + { + "flag": "-h, --help", + "description": "help for update" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "subnet": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node update subnet command updates all nodes in a cluster with latest Subnet configuration and VM for custom VM.\nYou can check the updated subnet bootstrap status by calling avalanche node status `clusterName` --subnet `subnetName`", + "flags": [ + { + "flag": "-h, --help", + "description": "help for subnet" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "upgrade": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node update command suite provides a collection of commands for nodes to update\ntheir avalanchego or VM version.\n\nYou can check the status after upgrade by calling avalanche node status", + "flags": [ + { + "flag": "-h, --help", + "description": "help for upgrade" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "validate": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node validate command suite provides a collection of commands for nodes to join\nthe Primary Network and Subnets as validators.\nIf any of the commands is run before the nodes are bootstrapped on the Primary Network, the command \nwill fail. You can check the bootstrap status by calling avalanche node status `clusterName`", + "flags": [ + { + "flag": "-h, --help", + "description": "help for validate" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "primary": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node validate primary command enables all nodes in a cluster to be validators of Primary\nNetwork.", + "flags": [ + { + "flag": "-e, --ewoq", + "description": "use ewoq key [fuji/devnet only]" + }, + { + "flag": "-h, --help", + "description": "help for primary" + }, + { + "flag": "-k, --key", + "description": "string select the key to use [fuji only]" + }, + { + "flag": "-g, --ledger", + "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet)" + }, + { + "flag": "--ledger-addrs", + "description": "strings use the given ledger addresses" + }, + { + "flag": "--stake-amount", + "description": "uint how many AVAX to stake in the validator" + }, + { + "flag": "--staking-period", + "description": "duration how long validator validates for after start time" + }, + { + "flag": "--start-time", + "description": "string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "subnet": { + "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node validate subnet command enables all nodes in a cluster to be validators of a Subnet.\nIf the command is run before the nodes are Primary Network validators, the command will first\nmake the nodes Primary Network validators before making them Subnet validators. \nIf The command is run before the nodes are bootstrapped on the Primary Network, the command will fail. \nYou can check the bootstrap status by calling avalanche node status `clusterName`\nIf The command is run before the nodes are synced to the subnet, the command will fail.\nYou can check the subnet sync status by calling avalanche node status `clusterName` --subnet `subnetName`", + "flags": [ + { + "flag": "--default-validator-params", + "description": "use default weight/start/duration params for subnet validator" + }, + { + "flag": "-e, --ewoq", + "description": "use ewoq key [fuji/devnet only]" + }, + { + "flag": "-h, --help", + "description": "help for subnet" + }, + { + "flag": "-k, --key", + "description": "string select the key to use [fuji/devnet only]" + }, + { + "flag": "-g, --ledger", + "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet)" + }, + { + "flag": "--ledger-addrs", + "description": "strings use the given ledger addresses" + }, + { + "flag": "--no-checks", + "description": "do not check for bootstrapped status or healthy status" + }, + { + "flag": "--no-validation-checks", + "description": "do not check if subnet is already synced or validated (default true)" + }, + { + "flag": "--stake-amount", + "description": "uint how many AVAX to stake in the validator" + }, + { + "flag": "--staking-period", + "description": "duration how long validator validates for after start time" + }, + { + "flag": "--start-time", + "description": "string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format" + }, + { + "flag": "--validators", + "description": "strings validate subnet for the given comma separated list of validators. defaults to all cluster nodes" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "whitelist": { + "description": "(ALPHA Warning) The whitelist command suite provides a collection of tools for granting access to the cluster.\n\n\tCommand adds IP if --ip params provided to cloud security access rules allowing it to access all nodes in the cluster via ssh or http.\n\tIt also command adds SSH public key to all nodes in the cluster if --ssh params is there.\n\tIf no params provided it detects current user IP automaticaly and whitelists it", + "flags": [ + { + "flag": "-y, --current-ip", + "description": "whitelist current host ip" + }, + { + "flag": "-h, --help", + "description": "help for whitelist" + }, + { + "flag": "--ip", + "description": "string ip address to whitelist" + }, + { + "flag": "--ssh", + "description": "string ssh public key to whitelist" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "primary": { + "description": "The primary command suite provides a collection of tools for interacting with the\nPrimary Network", + "flags": [ + { + "flag": "-h, --help", + "description": "help for primary" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "addValidator": { + "description": "The primary addValidator command adds a node as a validator \nin the Primary Network", + "flags": [ + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--delegation-fee", + "description": "uint32 set the delegation fee (20 000 is equivalent to 2%)" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for addValidator" + }, + { + "flag": "-k, --key", + "description": "string select the key to use [fuji only]" + }, + { + "flag": "-g, --ledger", + "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji)" + }, + { + "flag": "--ledger-addrs", + "description": "strings use the given ledger addresses" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--nodeID", + "description": "string set the NodeID of the validator to add" + }, + { + "flag": "--proof-of-possession", + "description": "string set the BLS proof of possession of the validator to add" + }, + { + "flag": "--public-key", + "description": "string set the BLS public key of the validator to add" + }, + { + "flag": "--staking-period", + "description": "duration how long this validator will be staking" + }, + { + "flag": "--start-time", + "description": "string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--weight", + "description": "uint set the staking weight of the validator to add" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "describe": { + "description": "The subnet describe command prints details of the primary network configuration to the console.", + "flags": [ + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "-h, --help", + "description": "help for describe" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "teleporter": { + "description": "The messenger command suite provides a collection of tools for interacting\nwith ICM messenger contracts.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for teleporter" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "deploy": { + "description": "Deploys ICM Messenger and Registry into a given L1.", + "flags": [ + { + "flag": "--blockchain", + "description": "string deploy ICM into the given CLI blockchain" + }, + { + "flag": "--blockchain-id", + "description": "string deploy ICM into the given blockchain ID/Alias" + }, + { + "flag": "--c-chain", + "description": "deploy ICM into C-Chain" + }, + { + "flag": "--cchain-key", + "description": "string key to be used to pay fees to deploy ICM to C-Chain" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--deploy-messenger", + "description": "deploy ICM Messenger (default true)" + }, + { + "flag": "--deploy-registry", + "description": "deploy ICM Registry (default true)" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "--force-registry-deploy", + "description": "deploy ICM Registry even if Messenger has already been deployed" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "--genesis-key", + "description": "use genesis allocated key to fund ICM deploy" + }, + { + "flag": "-h, --help", + "description": "help for deploy" + }, + { + "flag": "--include-cchain", + "description": "deploy ICM also to C-Chain" + }, + { + "flag": "--key", + "description": "string CLI stored key to use to fund ICM deploy" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "--messenger-contract-address-path", + "description": "string path to a messenger contract address file" + }, + { + "flag": "--messenger-deployer-address-path", + "description": "string path to a messenger deployer address file" + }, + { + "flag": "--messenger-deployer-tx-path", + "description": "string path to a messenger deployer tx file" + }, + { + "flag": "--private-key", + "description": "string private key to use to fund ICM deploy" + }, + { + "flag": "--registry-bytecode-path", + "description": "string path to a registry bytecode file" + }, + { + "flag": "--rpc-url", + "description": "string use the given RPC URL to connect to the subnet" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--version", + "description": "string version to deploy (default \"latest\")" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "sendMsg": { + "description": "Sends and wait reception for a ICM msg between two blockchains.", + "flags": [ + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--dest-rpc", + "description": "string use the given destination blockchain rpc endpoint" + }, + { + "flag": "--destination-address", + "description": "string deliver the message to the given contract destination address" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "--genesis-key", + "description": "use genesis allocated key as message originator and to pay source blockchain fees" + }, + { + "flag": "-h, --help", + "description": "help for sendMsg" + }, + { + "flag": "--hex-encoded", + "description": "given message is hex encoded" + }, + { + "flag": "--key", + "description": "string CLI stored key to use as message originator and to pay source blockchain fees" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "--private-key", + "description": "string private key to use as message originator and to pay source blockchain fees" + }, + { + "flag": "--source-rpc", + "description": "string use the given source blockchain rpc endpoint" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "transaction": { + "description": "The transaction command suite provides all of the utilities required to sign multisig transactions.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for transaction" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "commit": { + "description": "The transaction commit command commits a transaction by submitting it to the P-Chain.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for commit" + }, + { + "flag": "--input-tx-filepath", + "description": "string Path to the transaction signed by all signatories" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "sign": { + "description": "The transaction sign command signs a multisig transaction.", + "flags": [ + { + "flag": "-h, --help", + "description": "help for sign" + }, + { + "flag": "--input-tx-filepath", + "description": "string Path to the transaction file for signing" + }, + { + "flag": "-k, --key", + "description": "string select the key to use [fuji only]" + }, + { + "flag": "-g, --ledger", + "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji)" + }, + { + "flag": "--ledger-addrs", + "description": "strings use the given ledger addresses" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + }, + "update": { + "description": "Check if an update is available, and prompt the user to install it", + "flags": [ + { + "flag": "-c, --confirm", + "description": "Assume yes for installation" + }, + { + "flag": "-h, --help", + "description": "help for update" + }, + { + "flag": "-v, --version", + "description": "version for update" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "validator": { + "description": "The validator command suite provides a collection of tools for managing validator\nbalance on P-Chain.\n\nValidator's balance is used to pay for continuous fee to the P-Chain. When this Balance reaches 0, \nthe validator will be considered inactive and will no longer participate in validating the L1", + "flags": [ + { + "flag": "-h, --help", + "description": "help for validator" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": { + "getBalance": { + "description": "This command gets the remaining validator P-Chain balance that is available to pay\nP-Chain continuous fee", + "flags": [ + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for getBalance" + }, + { + "flag": "--l1", + "description": "string name of L1" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--node-id", + "description": "string node ID of the validator" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--validation-id", + "description": "string validation ID of the validator" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "increaseBalance": { + "description": "This command increases the validator P-Chain balance", + "flags": [ + { + "flag": "--balance", + "description": "float amount of AVAX to increase validator's balance by" + }, + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for increaseBalance" + }, + { + "flag": "-k, --key", + "description": "string select the key to use [fuji/devnet deploy only]" + }, + { + "flag": "--l1", + "description": "string name of L1 (to increase balance of bootstrap validators only)" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "--node-id", + "description": "string node ID of the validator" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--validation-id", + "description": "string validationIDStr of the validator" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + }, + "list": { + "description": "This command gets a list of the validators of the L1", + "flags": [ + { + "flag": "--cluster", + "description": "string operate on the given cluster" + }, + { + "flag": "--devnet", + "description": "operate on a devnet network" + }, + { + "flag": "--endpoint", + "description": "string use the given endpoint for network operations" + }, + { + "flag": "-f, --fuji", + "description": "testnet operate on fuji (alias to testnet" + }, + { + "flag": "-h, --help", + "description": "help for list" + }, + { + "flag": "-l, --local", + "description": "operate on a local network" + }, + { + "flag": "-m, --mainnet", + "description": "operate on mainnet" + }, + { + "flag": "-t, --testnet", + "description": "fuji operate on testnet (alias to fuji)" + }, + { + "flag": "--config", + "description": "string config file (default is $HOME/.avalanche-cli/config.json)" + }, + { + "flag": "--log-level", + "description": "string log level for the application (default \"ERROR\")" + }, + { + "flag": "--skip-update-check", + "description": "skip check for new versions" + } + ], + "subcommands": {} + } + } + } + } +} \ No newline at end of file diff --git a/cli_structure.md b/cli_structure.md new file mode 100644 index 000000000..215f01a24 --- /dev/null +++ b/cli_structure.md @@ -0,0 +1,3614 @@ + +## avalanche blockchain + +The blockchain command suite provides a collection of tools for developing +and deploying Blockchains. + +To get started, use the blockchain create command wizard to walk through the +configuration of your very first Blockchain. Then, go ahead and deploy it +with the blockchain deploy command. You can use the rest of the commands to +manage your Blockchain configurations and live deployments. + +**Usage:** +```bash +avalanche blockchain [subcommand] [flags] +``` + +**Subcommands:** + +- [`addValidator`](#avalanche-blockchain-addvalidator): The blockchain addValidator command adds a node as a validator to +an L1 of the user provided deployed network. If the network is proof of +authority, the owner of the validator manager contract must sign the +transaction. If the network is proof of stake, the node must stake the L1's +staking token. Both processes will issue a RegisterL1ValidatorTx on the P-Chain. + +This command currently only works on Blockchains deployed to either the Fuji +Testnet or Mainnet. +- [`changeOwner`](#avalanche-blockchain-changeowner): The blockchain changeOwner changes the owner of the deployed Blockchain. +- [`changeWeight`](#avalanche-blockchain-changeweight): The blockchain changeWeight command changes the weight of a L1 Validator. + +The L1 has to be a Proof of Authority L1. +- [`configure`](#avalanche-blockchain-configure): AvalancheGo nodes support several different configuration files. Each network (a Subnet or an L1) has their own config which applies to all blockchains/VMs in the network. Each blockchain within the network +can have its own chain config. A chain can also have special requirements for the AvalancheGo node +configuration itself. This command allows you to set all those files. +- [`create`](#avalanche-blockchain-create): The blockchain create command builds a new genesis file to configure your Blockchain. +By default, the command runs an interactive wizard. It walks you through +all the steps you need to create your first Blockchain. + +The tool supports deploying Subnet-EVM, and custom VMs. You +can create a custom, user-generated genesis with a custom VM by providing +the path to your genesis and VM binaries with the --genesis and --vm flags. + +By default, running the command with a blockchainName that already exists +causes the command to fail. If you'd like to overwrite an existing +configuration, pass the -f flag. +- [`delete`](#avalanche-blockchain-delete): The blockchain delete command deletes an existing blockchain configuration. +- [`deploy`](#avalanche-blockchain-deploy): The blockchain deploy command deploys your Blockchain configuration locally, to Fuji Testnet, or to Mainnet. + +At the end of the call, the command prints the RPC URL you can use to interact with the Subnet. + +Avalanche-CLI only supports deploying an individual Blockchain once per network. Subsequent +attempts to deploy the same Blockchain to the same network (local, Fuji, Mainnet) aren't +allowed. If you'd like to redeploy a Blockchain locally for testing, you must first call +avalanche network clean to reset all deployed chain state. Subsequent local deploys +redeploy the chain with fresh state. You can deploy the same Blockchain to multiple networks, +so you can take your locally tested Blockchain and deploy it on Fuji or Mainnet. +- [`describe`](#avalanche-blockchain-describe): The blockchain describe command prints the details of a Blockchain configuration to the console. +By default, the command prints a summary of the configuration. By providing the --genesis +flag, the command instead prints out the raw genesis file. +- [`export`](#avalanche-blockchain-export): The blockchain export command write the details of an existing Blockchain deploy to a file. + +The command prompts for an output path. You can also provide one with +the --output flag. +- [`import`](#avalanche-blockchain-import): Import blockchain configurations into avalanche-cli. + +This command suite supports importing from a file created on another computer, +or importing from blockchains running public networks +(e.g. created manually or with the deprecated subnet-cli) +- [`join`](#avalanche-blockchain-join): The blockchain join command configures your validator node to begin validating a new Blockchain. + +To complete this process, you must have access to the machine running your validator. If the +CLI is running on the same machine as your validator, it can generate or update your node's +config file automatically. Alternatively, the command can print the necessary instructions +to update your node manually. To complete the validation process, the Blockchain's admins must add +the NodeID of your validator to the Blockchain's allow list by calling addValidator with your +NodeID. + +After you update your validator's config, you need to restart your validator manually. If +you provide the --avalanchego-config flag, this command attempts to edit the config file +at that path. + +This command currently only supports Blockchains deployed on the Fuji Testnet and Mainnet. +- [`list`](#avalanche-blockchain-list): The blockchain list command prints the names of all created Blockchain configurations. Without any flags, +it prints some general, static information about the Blockchain. With the --deployed flag, the command +shows additional information including the VMID, BlockchainID and SubnetID. +- [`publish`](#avalanche-blockchain-publish): The blockchain publish command publishes the Blockchain's VM to a repository. +- [`removeValidator`](#avalanche-blockchain-removevalidator): The blockchain removeValidator command stops a whitelisted blockchain network validator from +validating your deployed Blockchain. + +To remove the validator from the Subnet's allow list, provide the validator's unique NodeID. You can bypass +these prompts by providing the values with flags. +- [`stats`](#avalanche-blockchain-stats): The blockchain stats command prints validator statistics for the given Blockchain. +- [`upgrade`](#avalanche-blockchain-upgrade): The blockchain upgrade command suite provides a collection of tools for +updating your developmental and deployed Blockchains. +- [`validators`](#avalanche-blockchain-validators): The blockchain validators command lists the validators of a blockchain and provides +several statistics about them. +- [`vmid`](#avalanche-blockchain-vmid): The blockchain vmid command prints the virtual machine ID (VMID) for the given Blockchain. + +**Flags:** + +```bash +-h, --help help for blockchain +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### addValidator + +The blockchain addValidator command adds a node as a validator to +an L1 of the user provided deployed network. If the network is proof of +authority, the owner of the validator manager contract must sign the +transaction. If the network is proof of stake, the node must stake the L1's +staking token. Both processes will issue a RegisterL1ValidatorTx on the P-Chain. + +This command currently only works on Blockchains deployed to either the Fuji +Testnet or Mainnet. + +**Usage:** +```bash +avalanche blockchain addValidator [subcommand] [flags] +``` + +**Flags:** + +```bash +--aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) +--aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation +--aggregator-log-level string log level to use with signature aggregator (default "Debug") +--aggregator-log-to-stdout use stdout for signature aggregator logs +--balance uint set the AVAX balance of the validator that will be used for continuous fee on P-Chain +--blockchain-genesis-key use genesis allocated key to pay fees for completing the validator's registration (blockchain gas token) +--blockchain-key string CLI stored key to use to pay fees for completing the validator's registration (blockchain gas token) +--blockchain-private-key string private key to use to pay fees for completing the validator's registration (blockchain gas token) +--bls-proof-of-possession string set the BLS proof of possession of the validator to add +--bls-public-key string set the BLS public key of the validator to add +--cluster string operate on the given cluster +--create-local-validator create additional local validator and add it to existing running local node +--default-duration (for Subnets, not L1s) set duration so as to validate until primary validator ends its period +--default-start-time (for Subnets, not L1s) use default start time for subnet validator (5 minutes later for fuji & mainnet, 30 seconds later for devnet) +--default-validator-params (for Subnets, not L1s) use default weight/start/duration params for subnet validator +--delegation-fee uint16 (PoS only) delegation fee (in bips) (default 100) +--devnet operate on a devnet network +--disable-owner string P-Chain address that will able to disable the validator with a P-Chain transaction +--endpoint string use the given endpoint for network operations +-e, --ewoq use ewoq key [fuji/devnet only] +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for addValidator +-k, --key string select the key to use [fuji/devnet only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-endpoint string gather node id/bls from publicly available avalanchego apis on the given endpoint +--node-id string node-id of the validator to add +--output-tx-path string (for Subnets, not L1s) file path of the add validator tx +--partial-sync set primary network partial sync for new validators (default true) +--remaining-balance-owner string P-Chain address that will receive any leftover AVAX from the validator when it is removed from Subnet +--rpc string connect to validator manager at the given rpc endpoint +--stake-amount uint (PoS only) amount of tokens to stake +--staking-period duration how long this validator will be staking +--start-time string (for Subnets, not L1s) UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format +--subnet-auth-keys strings (for Subnets, not L1s) control keys that will be used to authenticate add validator tx +-t, --testnet fuji operate on testnet (alias to fuji) +--wait-for-tx-acceptance (for Subnets, not L1s) just issue the add validator tx, without waiting for its acceptance (default true) +--weight uint set the staking weight of the validator to add (default 20) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### changeOwner + +The blockchain changeOwner changes the owner of the deployed Blockchain. + +**Usage:** +```bash +avalanche blockchain changeOwner [subcommand] [flags] +``` + +**Flags:** + +```bash +--auth-keys strings control keys that will be used to authenticate transfer blockchain ownership tx +--cluster string operate on the given cluster +--control-keys strings addresses that may make blockchain changes +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-e, --ewoq use ewoq key [fuji/devnet] +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for changeOwner +-k, --key string select the key to use [fuji/devnet] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--output-tx-path string file path of the transfer blockchain ownership tx +-s, --same-control-key use the fee-paying key as control key +-t, --testnet fuji operate on testnet (alias to fuji) +--threshold uint32 required number of control key signatures to make blockchain changes +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### changeWeight + +The blockchain changeWeight command changes the weight of a L1 Validator. + +The L1 has to be a Proof of Authority L1. + +**Usage:** +```bash +avalanche blockchain changeWeight [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-e, --ewoq use ewoq key [fuji/devnet only] +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for changeWeight +-k, --key string select the key to use [fuji/devnet only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-id string node-id of the validator +-t, --testnet fuji operate on testnet (alias to fuji) +--weight uint set the new staking weight of the validator (default 20) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### configure + +AvalancheGo nodes support several different configuration files. Each network (a Subnet or an L1) has their own config which applies to all blockchains/VMs in the network. Each blockchain within the network +can have its own chain config. A chain can also have special requirements for the AvalancheGo node +configuration itself. This command allows you to set all those files. + +**Usage:** +```bash +avalanche blockchain configure [subcommand] [flags] +``` + +**Flags:** + +```bash +--chain-config string path to the chain configuration +-h, --help help for configure +--node-config string path to avalanchego node configuration +--per-node-chain-config string path to per node chain configuration for local network +--subnet-config string path to the subnet configuration +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### create + +The blockchain create command builds a new genesis file to configure your Blockchain. +By default, the command runs an interactive wizard. It walks you through +all the steps you need to create your first Blockchain. + +The tool supports deploying Subnet-EVM, and custom VMs. You +can create a custom, user-generated genesis with a custom VM by providing +the path to your genesis and VM binaries with the --genesis and --vm flags. + +By default, running the command with a blockchainName that already exists +causes the command to fail. If you'd like to overwrite an existing +configuration, pass the -f flag. + +**Usage:** +```bash +avalanche blockchain create [subcommand] [flags] +``` + +**Flags:** + +```bash +--custom use a custom VM template +--custom-vm-branch string custom vm branch or commit +--custom-vm-build-script string custom vm build-script +--custom-vm-path string file path of custom vm to use +--custom-vm-repo-url string custom vm repository url +--debug enable blockchain debugging (default true) +--evm use the Subnet-EVM as the base template +--evm-chain-id uint chain ID to use with Subnet-EVM +--evm-defaults deprecation notice: use '--production-defaults' +--evm-token string token symbol to use with Subnet-EVM +--external-gas-token use a gas token from another blockchain +-f, --force overwrite the existing configuration if one exists +--from-github-repo generate custom VM binary from github repository +--genesis string file path of genesis to use +-h, --help help for create +--icm interoperate with other blockchains using ICM +--icm-registry-at-genesis setup ICM registry smart contract on genesis [experimental] +--latest use latest Subnet-EVM released version, takes precedence over --vm-version +--pre-release use latest Subnet-EVM pre-released version, takes precedence over --vm-version +--production-defaults use default production settings for your blockchain +--proof-of-authority use proof of authority(PoA) for validator management +--proof-of-stake use proof of stake(PoS) for validator management +--proxy-contract-owner string EVM address that controls ProxyAdmin for TransparentProxy of ValidatorManager contract +--reward-basis-points uint (PoS only) reward basis points for PoS Reward Calculator (default 100) +--sovereign set to false if creating non-sovereign blockchain (default true) +--teleporter interoperate with other blockchains using ICM +--test-defaults use default test settings for your blockchain +--validator-manager-owner string EVM address that controls Validator Manager Owner +--vm string file path of custom vm to use. alias to custom-vm-path +--vm-version string version of Subnet-EVM template to use +--warp generate a vm with warp support (needed for ICM) (default true) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### delete + +The blockchain delete command deletes an existing blockchain configuration. + +**Usage:** +```bash +avalanche blockchain delete [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for delete +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### deploy + +The blockchain deploy command deploys your Blockchain configuration locally, to Fuji Testnet, or to Mainnet. + +At the end of the call, the command prints the RPC URL you can use to interact with the Subnet. + +Avalanche-CLI only supports deploying an individual Blockchain once per network. Subsequent +attempts to deploy the same Blockchain to the same network (local, Fuji, Mainnet) aren't +allowed. If you'd like to redeploy a Blockchain locally for testing, you must first call +avalanche network clean to reset all deployed chain state. Subsequent local deploys +redeploy the chain with fresh state. You can deploy the same Blockchain to multiple networks, +so you can take your locally tested Blockchain and deploy it on Fuji or Mainnet. + +**Usage:** +```bash +avalanche blockchain deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +--aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) +--aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation +--aggregator-log-level string log level to use with signature aggregator (default "Debug") +--aggregator-log-to-stdout use stdout for signature aggregator logs +--auth-keys strings control keys that will be used to authenticate chain creation +--avalanchego-path string use this avalanchego binary path +--avalanchego-version string use this version of avalanchego (ex: v1.17.12) (default "latest-prerelease") +--balance float set the AVAX balance of each bootstrap validator that will be used for continuous fee on P-Chain (default 0.1) +--blockchain-genesis-key use genesis allocated key to fund validator manager initialization +--blockchain-key string CLI stored key to use to fund validator manager initialization +--blockchain-private-key string private key to use to fund validator manager initialization +--bootstrap-endpoints strings take validator node info from the given endpoints +--bootstrap-filepath string JSON file path that provides details about bootstrap validators, leave Node-ID and BLS values empty if using --generate-node-id=true +--cchain-funding-key string key to be used to fund relayer account on cchain +--cchain-icm-key string key to be used to pay for ICM deploys on C-Chain +--change-owner-address string address that will receive change if node is no longer L1 validator +--cluster string operate on the given cluster +--control-keys strings addresses that may make blockchain changes +--convert-only avoid node track, restart and poa manager setup +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-e, --ewoq use ewoq key [fuji/devnet deploy only] +-f, --fuji testnet operate on fuji (alias to testnet +--generate-node-id whether to create new node id for bootstrap validators (Node-ID and BLS values in bootstrap JSON file will be overridden if --bootstrap-filepath flag is used) +-h, --help help for deploy +--icm-key string key to be used to pay for ICM deploys (default "cli-teleporter-deployer") +--icm-version string ICM version to deploy (default "latest") +-k, --key string select the key to use [fuji/devnet deploy only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--mainnet-chain-id uint32 use different ChainID for mainnet deployment +--noicm skip automatic ICM deploy +--num-bootstrap-validators int (only if --generate-node-id is true) number of bootstrap validators to set up in sovereign L1 validator) +--num-local-nodes int number of nodes to be created on local machine +--num-nodes uint32 number of nodes to be created on local network deploy (default 2) +--output-tx-path string file path of the blockchain creation tx +--partial-sync set primary network partial sync for new validators (default true) +--pos-maximum-stake-amount uint maximum stake amount (default 1000) +--pos-maximum-stake-multiplier uint8 maximum stake multiplier (default 1) +--pos-minimum-delegation-fee uint16 minimum delegation fee (default 1) +--pos-minimum-stake-amount uint minimum stake amount (default 1) +--pos-minimum-stake-duration uint minimum stake duration (default 100) +--pos-weight-to-value-factor uint weight to value factor (default 1) +--relay-cchain relay C-Chain as source and destination (default true) +--relayer-allow-private-ips allow relayer to connec to private ips (default true) +--relayer-amount float automatically fund relayer fee payments with the given amount +--relayer-key string key to be used by default both for rewards and to pay fees +--relayer-log-level string log level to be used for relayer logs (default "info") +--relayer-path string relayer binary to use +--relayer-version string relayer version to deploy (default "latest-prerelease") +-s, --same-control-key use the fee-paying key as control key +--skip-icm-deploy skip automatic ICM deploy +--skip-local-teleporter skip automatic ICM deploy on local networks [to be deprecated] +--skip-relayer skip relayer deploy +--skip-teleporter-deploy skip automatic ICM deploy +-u, --subnet-id string do not create a subnet, deploy the blockchain into the given subnet id +--subnet-only only create a subnet +--teleporter-messenger-contract-address-path string path to an ICM Messenger contract address file +--teleporter-messenger-deployer-address-path string path to an ICM Messenger deployer address file +--teleporter-messenger-deployer-tx-path string path to an ICM Messenger deployer tx file +--teleporter-registry-bytecode-path string path to an ICM Registry bytecode file +--teleporter-version string ICM version to deploy (default "latest") +-t, --testnet fuji operate on testnet (alias to fuji) +--threshold uint32 required number of control key signatures to make blockchain changes +--use-local-machine use local machine as a blockchain validator +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### describe + +The blockchain describe command prints the details of a Blockchain configuration to the console. +By default, the command prints a summary of the configuration. By providing the --genesis +flag, the command instead prints out the raw genesis file. + +**Usage:** +```bash +avalanche blockchain describe [subcommand] [flags] +``` + +**Flags:** + +```bash +-g, --genesis Print the genesis to the console directly instead of the summary +-h, --help help for describe +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### export + +The blockchain export command write the details of an existing Blockchain deploy to a file. + +The command prompts for an output path. You can also provide one with +the --output flag. + +**Usage:** +```bash +avalanche blockchain export [subcommand] [flags] +``` + +**Flags:** + +```bash +--custom-vm-branch string custom vm branch +--custom-vm-build-script string custom vm build-script +--custom-vm-repo-url string custom vm repository url +-h, --help help for export +-o, --output string write the export data to the provided file path +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### import + +Import blockchain configurations into avalanche-cli. + +This command suite supports importing from a file created on another computer, +or importing from blockchains running public networks +(e.g. created manually or with the deprecated subnet-cli) + +**Usage:** +```bash +avalanche blockchain import [subcommand] [flags] +``` + +**Subcommands:** + +- [`file`](#avalanche-blockchain-import-file): The blockchain import command will import a blockchain configuration from a file or a git repository. + +To import from a file, you can optionally provide the path as a command-line argument. +Alternatively, running the command without any arguments triggers an interactive wizard. +To import from a repository, go through the wizard. By default, an imported Blockchain doesn't +overwrite an existing Blockchain with the same name. To allow overwrites, provide the --force +flag. +- [`public`](#avalanche-blockchain-import-public): The blockchain import public command imports a Blockchain configuration from a running network. + +By default, an imported Blockchain +doesn't overwrite an existing Blockchain with the same name. To allow overwrites, provide the --force +flag. + +**Flags:** + +```bash +-h, --help help for import +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### import file + +The blockchain import command will import a blockchain configuration from a file or a git repository. + +To import from a file, you can optionally provide the path as a command-line argument. +Alternatively, running the command without any arguments triggers an interactive wizard. +To import from a repository, go through the wizard. By default, an imported Blockchain doesn't +overwrite an existing Blockchain with the same name. To allow overwrites, provide the --force +flag. + +**Usage:** +```bash +avalanche blockchain import file [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain string the blockchain configuration to import from the provided repo +--branch string the repo branch to use if downloading a new repo +-f, --force overwrite the existing configuration if one exists +-h, --help help for file +--repo string the repo to import (ex: ava-labs/avalanche-plugins-core) or url to download the repo from +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### import public + +The blockchain import public command imports a Blockchain configuration from a running network. + +By default, an imported Blockchain +doesn't overwrite an existing Blockchain with the same name. To allow overwrites, provide the --force +flag. + +**Usage:** +```bash +avalanche blockchain import public [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain-id string the blockchain ID +--cluster string operate on the given cluster +--custom use a custom VM template +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +--evm import a subnet-evm +--force overwrite the existing configuration if one exists +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for public +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-url string [optional] URL of an already running validator +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### join + +The blockchain join command configures your validator node to begin validating a new Blockchain. + +To complete this process, you must have access to the machine running your validator. If the +CLI is running on the same machine as your validator, it can generate or update your node's +config file automatically. Alternatively, the command can print the necessary instructions +to update your node manually. To complete the validation process, the Blockchain's admins must add +the NodeID of your validator to the Blockchain's allow list by calling addValidator with your +NodeID. + +After you update your validator's config, you need to restart your validator manually. If +you provide the --avalanchego-config flag, this command attempts to edit the config file +at that path. + +This command currently only supports Blockchains deployed on the Fuji Testnet and Mainnet. + +**Usage:** +```bash +avalanche blockchain join [subcommand] [flags] +``` + +**Flags:** + +```bash +--avalanchego-config string file path of the avalanchego config file +--cluster string operate on the given cluster +--data-dir string path of avalanchego's data dir directory +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +--force-write if true, skip to prompt to overwrite the config file +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for join +-k, --key string select the key to use [fuji only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-id string set the NodeID of the validator to check +--plugin-dir string file path of avalanchego's plugin directory +--print if true, print the manual config without prompting +--stake-amount uint amount of tokens to stake on validator +--staking-period duration how long validator validates for after start time +--start-time string start time that validator starts validating +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### list + +The blockchain list command prints the names of all created Blockchain configurations. Without any flags, +it prints some general, static information about the Blockchain. With the --deployed flag, the command +shows additional information including the VMID, BlockchainID and SubnetID. + +**Usage:** +```bash +avalanche blockchain list [subcommand] [flags] +``` + +**Flags:** + +```bash +--deployed show additional deploy information +-h, --help help for list +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### publish + +The blockchain publish command publishes the Blockchain's VM to a repository. + +**Usage:** +```bash +avalanche blockchain publish [subcommand] [flags] +``` + +**Flags:** + +```bash +--alias string We publish to a remote repo, but identify the repo locally under a user-provided alias (e.g. myrepo). +--force If true, ignores if the blockchain has been published in the past, and attempts a forced publish. +-h, --help help for publish +--no-repo-path string Do not let the tool manage file publishing, but have it only generate the files and put them in the location given by this flag. +--repo-url string The URL of the repo where we are publishing +--subnet-file-path string Path to the Blockchain description file. If not given, a prompting sequence will be initiated. +--vm-file-path string Path to the VM description file. If not given, a prompting sequence will be initiated. +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### removeValidator + +The blockchain removeValidator command stops a whitelisted blockchain network validator from +validating your deployed Blockchain. + +To remove the validator from the Subnet's allow list, provide the validator's unique NodeID. You can bypass +these prompts by providing the values with flags. + +**Usage:** +```bash +avalanche blockchain removeValidator [subcommand] [flags] +``` + +**Flags:** + +```bash +--aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) +--aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation +--aggregator-log-level string log level to use with signature aggregator (default "Debug") +--aggregator-log-to-stdout use stdout for signature aggregator logs +--auth-keys strings (for non-SOV blockchain only) control keys that will be used to authenticate the removeValidator tx +--blockchain-genesis-key use genesis allocated key to pay fees for completing the validator's removal (blockchain gas token) +--blockchain-key string CLI stored key to use to pay fees for completing the validator's removal (blockchain gas token) +--blockchain-private-key string private key to use to pay fees for completing the validator's removal (blockchain gas token) +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +--force force validator removal even if it's not getting rewarded +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for removeValidator +-k, --key string select the key to use [fuji deploy only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-endpoint string remove validator that responds to the given endpoint +--node-id string node-id of the validator +--output-tx-path string (for non-SOV blockchain only) file path of the removeValidator tx +--rpc string connect to validator manager at the given rpc endpoint +-t, --testnet fuji operate on testnet (alias to fuji) +--uptime uint validator's uptime in seconds. If not provided, it will be automatically calculated +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### stats + +The blockchain stats command prints validator statistics for the given Blockchain. + +**Usage:** +```bash +avalanche blockchain stats [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for stats +-l, --local operate on a local network +-m, --mainnet operate on mainnet +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### upgrade + +The blockchain upgrade command suite provides a collection of tools for +updating your developmental and deployed Blockchains. + +**Usage:** +```bash +avalanche blockchain upgrade [subcommand] [flags] +``` + +**Subcommands:** + +- [`apply`](#avalanche-blockchain-upgrade-apply): Apply generated upgrade bytes to running Blockchain nodes to trigger a network upgrade. + +For public networks (Fuji Testnet or Mainnet), to complete this process, +you must have access to the machine running your validator. +If the CLI is running on the same machine as your validator, it can manipulate your node's +configuration automatically. Alternatively, the command can print the necessary instructions +to upgrade your node manually. + +After you update your validator's configuration, you need to restart your validator manually. +If you provide the --avalanchego-chain-config-dir flag, this command attempts to write the upgrade file at that path. +Refer to https://docs.avax.network/nodes/maintain/chain-config-flags#subnet-chain-configs for related documentation. +- [`export`](#avalanche-blockchain-upgrade-export): Export the upgrade bytes file to a location of choice on disk +- [`generate`](#avalanche-blockchain-upgrade-generate): The blockchain upgrade generate command builds a new upgrade.json file to customize your Blockchain. It +guides the user through the process using an interactive wizard. +- [`import`](#avalanche-blockchain-upgrade-import): Import the upgrade bytes file into the local environment +- [`print`](#avalanche-blockchain-upgrade-print): Print the upgrade.json file content +- [`vm`](#avalanche-blockchain-upgrade-vm): The blockchain upgrade vm command enables the user to upgrade their Blockchain's VM binary. The command +can upgrade both local Blockchains and publicly deployed Blockchains on Fuji and Mainnet. + +The command walks the user through an interactive wizard. The user can skip the wizard by providing +command line flags. + +**Flags:** + +```bash +-h, --help help for upgrade +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### upgrade apply + +Apply generated upgrade bytes to running Blockchain nodes to trigger a network upgrade. + +For public networks (Fuji Testnet or Mainnet), to complete this process, +you must have access to the machine running your validator. +If the CLI is running on the same machine as your validator, it can manipulate your node's +configuration automatically. Alternatively, the command can print the necessary instructions +to upgrade your node manually. + +After you update your validator's configuration, you need to restart your validator manually. +If you provide the --avalanchego-chain-config-dir flag, this command attempts to write the upgrade file at that path. +Refer to https://docs.avax.network/nodes/maintain/chain-config-flags#subnet-chain-configs for related documentation. + +**Usage:** +```bash +avalanche blockchain upgrade apply [subcommand] [flags] +``` + +**Flags:** + +```bash +--avalanchego-chain-config-dir string avalanchego's chain config file directory (default "/home/runner/.avalanchego/chains") +--config create upgrade config for future subnet deployments (same as generate) +--force If true, don't prompt for confirmation of timestamps in the past +--fuji fuji apply upgrade existing fuji deployment (alias for `testnet`) +-h, --help help for apply +--local local apply upgrade existing local deployment +--mainnet mainnet apply upgrade existing mainnet deployment +--print if true, print the manual config without prompting (for public networks only) +--testnet testnet apply upgrade existing testnet deployment (alias for `fuji`) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### upgrade export + +Export the upgrade bytes file to a location of choice on disk + +**Usage:** +```bash +avalanche blockchain upgrade export [subcommand] [flags] +``` + +**Flags:** + +```bash +--force If true, overwrite a possibly existing file without prompting +-h, --help help for export +--upgrade-filepath string Export upgrade bytes file to location of choice on disk +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### upgrade generate + +The blockchain upgrade generate command builds a new upgrade.json file to customize your Blockchain. It +guides the user through the process using an interactive wizard. + +**Usage:** +```bash +avalanche blockchain upgrade generate [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for generate +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### upgrade import + +Import the upgrade bytes file into the local environment + +**Usage:** +```bash +avalanche blockchain upgrade import [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for import +--upgrade-filepath string Import upgrade bytes file into local environment +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### upgrade print + +Print the upgrade.json file content + +**Usage:** +```bash +avalanche blockchain upgrade print [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for print +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### upgrade vm + +The blockchain upgrade vm command enables the user to upgrade their Blockchain's VM binary. The command +can upgrade both local Blockchains and publicly deployed Blockchains on Fuji and Mainnet. + +The command walks the user through an interactive wizard. The user can skip the wizard by providing +command line flags. + +**Usage:** +```bash +avalanche blockchain upgrade vm [subcommand] [flags] +``` + +**Flags:** + +```bash +--binary string Upgrade to custom binary +--config upgrade config for future subnet deployments +--fuji fuji upgrade existing fuji deployment (alias for `testnet`) +-h, --help help for vm +--latest upgrade to latest version +--local local upgrade existing local deployment +--mainnet mainnet upgrade existing mainnet deployment +--plugin-dir string plugin directory to automatically upgrade VM +--print print instructions for upgrading +--testnet testnet upgrade existing testnet deployment (alias for `fuji`) +--version string Upgrade to custom version +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### validators + +The blockchain validators command lists the validators of a blockchain and provides +several statistics about them. + +**Usage:** +```bash +avalanche blockchain validators [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for validators +-l, --local operate on a local network +-m, --mainnet operate on mainnet +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### vmid + +The blockchain vmid command prints the virtual machine ID (VMID) for the given Blockchain. + +**Usage:** +```bash +avalanche blockchain vmid [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for vmid +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche config + +Customize configuration for Avalanche-CLI + +**Usage:** +```bash +avalanche config [subcommand] [flags] +``` + +**Subcommands:** + +- [`authorize-cloud-access`](#avalanche-config-authorize-cloud-access): set preferences to authorize access to cloud resources +- [`metrics`](#avalanche-config-metrics): set user metrics collection preferences +- [`migrate`](#avalanche-config-migrate): migrate command migrates old ~/.avalanche-cli.json and ~/.avalanche-cli/config to /.avalanche-cli/config.json.. +- [`snapshotsAutoSave`](#avalanche-config-snapshotsautosave): set user preference between auto saving local network snapshots or not +- [`update`](#avalanche-config-update): set user preference between update check or not + +**Flags:** + +```bash +-h, --help help for config +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### authorize-cloud-access + +set preferences to authorize access to cloud resources + +**Usage:** +```bash +avalanche config authorize-cloud-access [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for authorize-cloud-access +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### metrics + +set user metrics collection preferences + +**Usage:** +```bash +avalanche config metrics [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for metrics +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### migrate + +migrate command migrates old ~/.avalanche-cli.json and ~/.avalanche-cli/config to /.avalanche-cli/config.json.. + +**Usage:** +```bash +avalanche config migrate [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for migrate +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### snapshotsAutoSave + +set user preference between auto saving local network snapshots or not + +**Usage:** +```bash +avalanche config snapshotsAutoSave [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for snapshotsAutoSave +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### update + +set user preference between update check or not + +**Usage:** +```bash +avalanche config update [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for update +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche contract + +The contract command suite provides a collection of tools for deploying +and interacting with smart contracts. + +**Usage:** +```bash +avalanche contract [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-contract-deploy): The contract command suite provides a collection of tools for deploying +smart contracts. +- [`initValidatorManager`](#avalanche-contract-initvalidatormanager): Initializes Proof of Authority(PoA) or Proof of Stake(PoS)Validator Manager contract on a Blockchain and sets up initial validator set on the Blockchain. For more info on Validator Manager, please head to https://github.com/ava-labs/icm-contracts/tree/main/contracts/validator-manager + +**Flags:** + +```bash +-h, --help help for contract +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### deploy + +The contract command suite provides a collection of tools for deploying +smart contracts. + +**Usage:** +```bash +avalanche contract deploy [subcommand] [flags] +``` + +**Subcommands:** + +- [`erc20`](#avalanche-contract-deploy-erc20): Deploy an ERC20 token into a given Network and Blockchain + +**Flags:** + +```bash +-h, --help help for deploy +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### deploy erc20 + +Deploy an ERC20 token into a given Network and Blockchain + +**Usage:** +```bash +avalanche contract deploy erc20 [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain string deploy the ERC20 contract into the given CLI blockchain +--blockchain-id string deploy the ERC20 contract into the given blockchain ID/Alias +--c-chain deploy the ERC20 contract into C-Chain +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--funded string set the funded address +--genesis-key use genesis allocated key as contract deployer +-h, --help help for erc20 +--key string CLI stored key to use as contract deployer +-l, --local operate on a local network +--private-key string private key to use as contract deployer +--rpc string deploy the contract into the given rpc endpoint +--supply uint set the token supply +--symbol string set the token symbol +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### initValidatorManager + +Initializes Proof of Authority(PoA) or Proof of Stake(PoS)Validator Manager contract on a Blockchain and sets up initial validator set on the Blockchain. For more info on Validator Manager, please head to https://github.com/ava-labs/icm-contracts/tree/main/contracts/validator-manager + +**Usage:** +```bash +avalanche contract initValidatorManager [subcommand] [flags] +``` + +**Flags:** + +```bash +--aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) +--aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation +--aggregator-log-level string log level to use with signature aggregator (default "Debug") +--aggregator-log-to-stdout dump signature aggregator logs to stdout +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key as contract deployer +-h, --help help for initValidatorManager +--key string CLI stored key to use as contract deployer +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--pos-maximum-stake-amount uint (PoS only) maximum stake amount (default 1000) +--pos-maximum-stake-multiplier uint8 (PoS only )maximum stake multiplier (default 1) +--pos-minimum-delegation-fee uint16 (PoS only) minimum delegation fee (default 1) +--pos-minimum-stake-amount uint (PoS only) minimum stake amount (default 1) +--pos-minimum-stake-duration uint (PoS only) minimum stake duration (default 100) +--pos-reward-calculator-address string (PoS only) initialize the ValidatorManager with reward calculator address +--pos-weight-to-value-factor uint (PoS only) weight to value factor (default 1) +--private-key string private key to use as contract deployer +--rpc string deploy the contract into the given rpc endpoint +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche help + +Help provides help for any command in the application. +Simply type avalanche help [path to command] for full details. + +**Usage:** +```bash +avalanche help [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for help +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche icm + +The messenger command suite provides a collection of tools for interacting +with ICM messenger contracts. + +**Usage:** +```bash +avalanche icm [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-icm-deploy): Deploys ICM Messenger and Registry into a given L1. +- [`sendMsg`](#avalanche-icm-sendmsg): Sends and wait reception for a ICM msg between two blockchains. + +**Flags:** + +```bash +-h, --help help for icm +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### deploy + +Deploys ICM Messenger and Registry into a given L1. + +**Usage:** +```bash +avalanche icm deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain string deploy ICM into the given CLI blockchain +--blockchain-id string deploy ICM into the given blockchain ID/Alias +--c-chain deploy ICM into C-Chain +--cchain-key string key to be used to pay fees to deploy ICM to C-Chain +--cluster string operate on the given cluster +--deploy-messenger deploy ICM Messenger (default true) +--deploy-registry deploy ICM Registry (default true) +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +--force-registry-deploy deploy ICM Registry even if Messenger has already been deployed +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key to fund ICM deploy +-h, --help help for deploy +--include-cchain deploy ICM also to C-Chain +--key string CLI stored key to use to fund ICM deploy +-l, --local operate on a local network +--messenger-contract-address-path string path to a messenger contract address file +--messenger-deployer-address-path string path to a messenger deployer address file +--messenger-deployer-tx-path string path to a messenger deployer tx file +--private-key string private key to use to fund ICM deploy +--registry-bytecode-path string path to a registry bytecode file +--rpc-url string use the given RPC URL to connect to the subnet +-t, --testnet fuji operate on testnet (alias to fuji) +--version string version to deploy (default "latest") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### sendMsg + +Sends and wait reception for a ICM msg between two blockchains. + +**Usage:** +```bash +avalanche icm sendMsg [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--dest-rpc string use the given destination blockchain rpc endpoint +--destination-address string deliver the message to the given contract destination address +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key as message originator and to pay source blockchain fees +-h, --help help for sendMsg +--hex-encoded given message is hex encoded +--key string CLI stored key to use as message originator and to pay source blockchain fees +-l, --local operate on a local network +--private-key string private key to use as message originator and to pay source blockchain fees +--source-rpc string use the given source blockchain rpc endpoint +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche ictt + +The ictt command suite provides tools to deploy and manage Interchain Token Transferrers. + +**Usage:** +```bash +avalanche ictt [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-ictt-deploy): Deploys a Token Transferrer into a given Network and Subnets + +**Flags:** + +```bash +-h, --help help for ictt +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### deploy + +Deploys a Token Transferrer into a given Network and Subnets + +**Usage:** +```bash +avalanche ictt deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +--c-chain-home set the Transferrer's Home Chain into C-Chain +--c-chain-remote set the Transferrer's Remote Chain into C-Chain +--cluster string operate on the given cluster +--deploy-erc20-home string deploy a Transferrer Home for the given Chain's ERC20 Token +--deploy-native-home deploy a Transferrer Home for the Chain's Native Token +--deploy-native-remote deploy a Transferrer Remote for the Chain's Native Token +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for deploy +--home-blockchain string set the Transferrer's Home Chain into the given CLI blockchain +--home-genesis-key use genesis allocated key to deploy Transferrer Home +--home-key string CLI stored key to use to deploy Transferrer Home +--home-private-key string private key to use to deploy Transferrer Home +--home-rpc string use the given RPC URL to connect to the home blockchain +-l, --local operate on a local network +--remote-blockchain string set the Transferrer's Remote Chain into the given CLI blockchain +--remote-genesis-key use genesis allocated key to deploy Transferrer Remote +--remote-key string CLI stored key to use to deploy Transferrer Remote +--remote-private-key string private key to use to deploy Transferrer Remote +--remote-rpc string use the given RPC URL to connect to the remote blockchain +--remote-token-decimals uint8 use the given number of token decimals for the Transferrer Remote [defaults to token home's decimals (18 for a new wrapped native home token)] +--remove-minter-admin remove the native minter precompile admin found on remote blockchain genesis +-t, --testnet fuji operate on testnet (alias to fuji) +--use-home string use the given Transferrer's Home Address +--version string tag/branch/commit of Avalanche Interchain Token Transfer (ICTT) to be used (defaults to main branch) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche interchain + +The interchain command suite provides a collection of tools to +set and manage interoperability between blockchains. + +**Usage:** +```bash +avalanche interchain [subcommand] [flags] +``` + +**Subcommands:** + +- [`messenger`](#avalanche-interchain-messenger): The messenger command suite provides a collection of tools for interacting +with ICM messenger contracts. +- [`relayer`](#avalanche-interchain-relayer): The relayer command suite provides a collection of tools for deploying +and configuring an ICM relayers. +- [`tokenTransferrer`](#avalanche-interchain-tokentransferrer): The tokenTransfer command suite provides tools to deploy and manage Token Transferrers. + +**Flags:** + +```bash +-h, --help help for interchain +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### messenger + +The messenger command suite provides a collection of tools for interacting +with ICM messenger contracts. + +**Usage:** +```bash +avalanche interchain messenger [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-interchain-messenger-deploy): Deploys ICM Messenger and Registry into a given L1. +- [`sendMsg`](#avalanche-interchain-messenger-sendmsg): Sends and wait reception for a ICM msg between two blockchains. + +**Flags:** + +```bash +-h, --help help for messenger +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### messenger deploy + +Deploys ICM Messenger and Registry into a given L1. + +**Usage:** +```bash +avalanche interchain messenger deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain string deploy ICM into the given CLI blockchain +--blockchain-id string deploy ICM into the given blockchain ID/Alias +--c-chain deploy ICM into C-Chain +--cchain-key string key to be used to pay fees to deploy ICM to C-Chain +--cluster string operate on the given cluster +--deploy-messenger deploy ICM Messenger (default true) +--deploy-registry deploy ICM Registry (default true) +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +--force-registry-deploy deploy ICM Registry even if Messenger has already been deployed +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key to fund ICM deploy +-h, --help help for deploy +--include-cchain deploy ICM also to C-Chain +--key string CLI stored key to use to fund ICM deploy +-l, --local operate on a local network +--messenger-contract-address-path string path to a messenger contract address file +--messenger-deployer-address-path string path to a messenger deployer address file +--messenger-deployer-tx-path string path to a messenger deployer tx file +--private-key string private key to use to fund ICM deploy +--registry-bytecode-path string path to a registry bytecode file +--rpc-url string use the given RPC URL to connect to the subnet +-t, --testnet fuji operate on testnet (alias to fuji) +--version string version to deploy (default "latest") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### messenger sendMsg + +Sends and wait reception for a ICM msg between two blockchains. + +**Usage:** +```bash +avalanche interchain messenger sendMsg [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--dest-rpc string use the given destination blockchain rpc endpoint +--destination-address string deliver the message to the given contract destination address +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key as message originator and to pay source blockchain fees +-h, --help help for sendMsg +--hex-encoded given message is hex encoded +--key string CLI stored key to use as message originator and to pay source blockchain fees +-l, --local operate on a local network +--private-key string private key to use as message originator and to pay source blockchain fees +--source-rpc string use the given source blockchain rpc endpoint +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### relayer + +The relayer command suite provides a collection of tools for deploying +and configuring an ICM relayers. + +**Usage:** +```bash +avalanche interchain relayer [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-interchain-relayer-deploy): Deploys an ICM Relayer for the given Network. +- [`logs`](#avalanche-interchain-relayer-logs): Shows pretty formatted AWM relayer logs +- [`start`](#avalanche-interchain-relayer-start): Starts AWM relayer on the specified network (Currently only for local network). +- [`stop`](#avalanche-interchain-relayer-stop): Stops AWM relayer on the specified network (Currently only for local network, cluster). + +**Flags:** + +```bash +-h, --help help for relayer +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### relayer deploy + +Deploys an ICM Relayer for the given Network. + +**Usage:** +```bash +avalanche interchain relayer deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +--allow-private-ips allow relayer to connec to private ips (default true) +--amount float automatically fund l1s fee payments with the given amount +--bin-path string use the given relayer binary +--blockchain-funding-key string key to be used to fund relayer account on all l1s +--blockchains strings blockchains to relay as source and destination +--cchain relay C-Chain as source and destination +--cchain-amount float automatically fund cchain fee payments with the given amount +--cchain-funding-key string key to be used to fund relayer account on cchain +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for deploy +--key string key to be used by default both for rewards and to pay fees +-l, --local operate on a local network +--log-level string log level to use for relayer logs +-t, --testnet fuji operate on testnet (alias to fuji) +--version string version to deploy (default "latest-prerelease") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--skip-update-check skip check for new versions +``` + + +#### relayer logs + +Shows pretty formatted AWM relayer logs + +**Usage:** +```bash +avalanche interchain relayer logs [subcommand] [flags] +``` + +**Flags:** + +```bash +--endpoint string use the given endpoint for network operations +--first uint output first N log lines +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for logs +--last uint output last N log lines +-l, --local operate on a local network +--raw raw logs output +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### relayer start + +Starts AWM relayer on the specified network (Currently only for local network). + +**Usage:** +```bash +avalanche interchain relayer start [subcommand] [flags] +``` + +**Flags:** + +```bash +--bin-path string use the given relayer binary +--cluster string operate on the given cluster +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for start +-l, --local operate on a local network +-t, --testnet fuji operate on testnet (alias to fuji) +--version string version to use (default "latest-prerelease") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### relayer stop + +Stops AWM relayer on the specified network (Currently only for local network, cluster). + +**Usage:** +```bash +avalanche interchain relayer stop [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for stop +-l, --local operate on a local network +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### tokenTransferrer + +The tokenTransfer command suite provides tools to deploy and manage Token Transferrers. + +**Usage:** +```bash +avalanche interchain tokenTransferrer [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-interchain-tokentransferrer-deploy): Deploys a Token Transferrer into a given Network and Subnets + +**Flags:** + +```bash +-h, --help help for tokenTransferrer +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### tokenTransferrer deploy + +Deploys a Token Transferrer into a given Network and Subnets + +**Usage:** +```bash +avalanche interchain tokenTransferrer deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +--c-chain-home set the Transferrer's Home Chain into C-Chain +--c-chain-remote set the Transferrer's Remote Chain into C-Chain +--cluster string operate on the given cluster +--deploy-erc20-home string deploy a Transferrer Home for the given Chain's ERC20 Token +--deploy-native-home deploy a Transferrer Home for the Chain's Native Token +--deploy-native-remote deploy a Transferrer Remote for the Chain's Native Token +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for deploy +--home-blockchain string set the Transferrer's Home Chain into the given CLI blockchain +--home-genesis-key use genesis allocated key to deploy Transferrer Home +--home-key string CLI stored key to use to deploy Transferrer Home +--home-private-key string private key to use to deploy Transferrer Home +--home-rpc string use the given RPC URL to connect to the home blockchain +-l, --local operate on a local network +--remote-blockchain string set the Transferrer's Remote Chain into the given CLI blockchain +--remote-genesis-key use genesis allocated key to deploy Transferrer Remote +--remote-key string CLI stored key to use to deploy Transferrer Remote +--remote-private-key string private key to use to deploy Transferrer Remote +--remote-rpc string use the given RPC URL to connect to the remote blockchain +--remote-token-decimals uint8 use the given number of token decimals for the Transferrer Remote [defaults to token home's decimals (18 for a new wrapped native home token)] +--remove-minter-admin remove the native minter precompile admin found on remote blockchain genesis +-t, --testnet fuji operate on testnet (alias to fuji) +--use-home string use the given Transferrer's Home Address +--version string tag/branch/commit of Avalanche Interchain Token Transfer (ICTT) to be used (defaults to main branch) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche key + +The key command suite provides a collection of tools for creating and managing +signing keys. You can use these keys to deploy Subnets to the Fuji Testnet, +but these keys are NOT suitable to use in production environments. DO NOT use +these keys on Mainnet. + +To get started, use the key create command. + +**Usage:** +```bash +avalanche key [subcommand] [flags] +``` + +**Subcommands:** + +- [`create`](#avalanche-key-create): The key create command generates a new private key to use for creating and controlling +test Subnets. Keys generated by this command are NOT cryptographically secure enough to +use in production environments. DO NOT use these keys on Mainnet. + +The command works by generating a secp256 key and storing it with the provided keyName. You +can use this key in other commands by providing this keyName. + +If you'd like to import an existing key instead of generating one from scratch, provide the +--file flag. +- [`delete`](#avalanche-key-delete): The key delete command deletes an existing signing key. + +To delete a key, provide the keyName. The command prompts for confirmation +before deleting the key. To skip the confirmation, provide the --force flag. +- [`export`](#avalanche-key-export): The key export command exports a created signing key. You can use an exported key in other +applications or import it into another instance of Avalanche-CLI. + +By default, the tool writes the hex encoded key to stdout. If you provide the --output +flag, the command writes the key to a file of your choosing. +- [`list`](#avalanche-key-list): The key list command prints information for all stored signing +keys or for the ledger addresses associated to certain indices. +- [`transfer`](#avalanche-key-transfer): The key transfer command allows to transfer funds between stored keys or ledger addresses. + +**Flags:** + +```bash +-h, --help help for key +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### create + +The key create command generates a new private key to use for creating and controlling +test Subnets. Keys generated by this command are NOT cryptographically secure enough to +use in production environments. DO NOT use these keys on Mainnet. + +The command works by generating a secp256 key and storing it with the provided keyName. You +can use this key in other commands by providing this keyName. + +If you'd like to import an existing key instead of generating one from scratch, provide the +--file flag. + +**Usage:** +```bash +avalanche key create [subcommand] [flags] +``` + +**Flags:** + +```bash +--file string import the key from an existing key file +-f, --force overwrite an existing key with the same name +-h, --help help for create +--skip-balances do not query public network balances for an imported key +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### delete + +The key delete command deletes an existing signing key. + +To delete a key, provide the keyName. The command prompts for confirmation +before deleting the key. To skip the confirmation, provide the --force flag. + +**Usage:** +```bash +avalanche key delete [subcommand] [flags] +``` + +**Flags:** + +```bash +-f, --force delete the key without confirmation +-h, --help help for delete +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### export + +The key export command exports a created signing key. You can use an exported key in other +applications or import it into another instance of Avalanche-CLI. + +By default, the tool writes the hex encoded key to stdout. If you provide the --output +flag, the command writes the key to a file of your choosing. + +**Usage:** +```bash +avalanche key export [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for export +-o, --output string write the key to the provided file path +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### list + +The key list command prints information for all stored signing +keys or for the ledger addresses associated to certain indices. + +**Usage:** +```bash +avalanche key list [subcommand] [flags] +``` + +**Flags:** + +```bash +-a, --all-networks list all network addresses +--blockchains strings blockchains to show information about (p=p-chain, x=x-chain, c=c-chain, and blockchain names) (default p,x,c) +-c, --cchain list C-Chain addresses (default true) +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for list +--keys strings list addresses for the given keys +-g, --ledger uints list ledger addresses for the given indices (default []) +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--pchain list P-Chain addresses (default true) +--subnets strings subnets to show information about (p=p-chain, x=x-chain, c=c-chain, and blockchain names) (default p,x,c) +-t, --testnet fuji operate on testnet (alias to fuji) +--tokens strings provide balance information for the given token contract addresses (Evm only) (default [Native]) +--use-gwei use gwei for EVM balances +-n, --use-nano-avax use nano Avax for balances +--xchain list X-Chain addresses (default true) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### transfer + +The key transfer command allows to transfer funds between stored keys or ledger addresses. + +**Usage:** +```bash +avalanche key transfer [subcommand] [flags] +``` + +**Flags:** + +```bash +-o, --amount float amount to send or receive (AVAX or TOKEN units) +--c-chain-receiver receive at C-Chain +--c-chain-sender send from C-Chain +--cluster string operate on the given cluster +-a, --destination-addr string destination address +--destination-key string key associated to a destination address +--destination-subnet string subnet where the funds will be sent (token transferrer experimental) +--destination-transferrer-address string token transferrer address at the destination subnet (token transferrer experimental) +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for transfer +-k, --key string key associated to the sender or receiver address +-i, --ledger uint32 ledger index associated to the sender or receiver address (default 32768) +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--origin-subnet string subnet where the funds belong (token transferrer experimental) +--origin-transferrer-address string token transferrer address at the origin subnet (token transferrer experimental) +--p-chain-receiver receive at P-Chain +--p-chain-sender send from P-Chain +--receiver-blockchain string receive at the given CLI blockchain +--receiver-blockchain-id string receive at the given blockchain ID/Alias +--sender-blockchain string send from the given CLI blockchain +--sender-blockchain-id string send from the given blockchain ID/Alias +-t, --testnet fuji operate on testnet (alias to fuji) +--x-chain-receiver receive at X-Chain +--x-chain-sender send from X-Chain +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche network + +The network command suite provides a collection of tools for managing local Blockchain +deployments. + +When you deploy a Blockchain locally, it runs on a local, multi-node Avalanche network. The +blockchain deploy command starts this network in the background. This command suite allows you +to shutdown, restart, and clear that network. + +This network currently supports multiple, concurrently deployed Blockchains. + +**Usage:** +```bash +avalanche network [subcommand] [flags] +``` + +**Subcommands:** + +- [`clean`](#avalanche-network-clean): The network clean command shuts down your local, multi-node network. All deployed Subnets +shutdown and delete their state. You can restart the network by deploying a new Subnet +configuration. +- [`start`](#avalanche-network-start): The network start command starts a local, multi-node Avalanche network on your machine. + +By default, the command loads the default snapshot. If you provide the --snapshot-name +flag, the network loads that snapshot instead. The command fails if the local network is +already running. +- [`status`](#avalanche-network-status): The network status command prints whether or not a local Avalanche +network is running and some basic stats about the network. +- [`stop`](#avalanche-network-stop): The network stop command shuts down your local, multi-node network. + +All deployed Subnets shutdown gracefully and save their state. If you provide the +--snapshot-name flag, the network saves its state under this named snapshot. You can +reload this snapshot with network start --snapshot-name `snapshotName`. Otherwise, the +network saves to the default snapshot, overwriting any existing state. You can reload the +default snapshot with network start. + +**Flags:** + +```bash +-h, --help help for network +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### clean + +The network clean command shuts down your local, multi-node network. All deployed Subnets +shutdown and delete their state. You can restart the network by deploying a new Subnet +configuration. + +**Usage:** +```bash +avalanche network clean [subcommand] [flags] +``` + +**Flags:** + +```bash +--hard Also clean downloaded avalanchego and plugin binaries +-h, --help help for clean +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### start + +The network start command starts a local, multi-node Avalanche network on your machine. + +By default, the command loads the default snapshot. If you provide the --snapshot-name +flag, the network loads that snapshot instead. The command fails if the local network is +already running. + +**Usage:** +```bash +avalanche network start [subcommand] [flags] +``` + +**Flags:** + +```bash +--avalanchego-path string use this avalanchego binary path +--avalanchego-version string use this version of avalanchego (ex: v1.17.12) (default "latest-prerelease") +-h, --help help for start +--num-nodes uint32 number of nodes to be created on local network (default 2) +--relayer-path string use this relayer binary path +--relayer-version string use this relayer version (default "latest-prerelease") +--snapshot-name string name of snapshot to use to start the network from (default "default-1654102509") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### status + +The network status command prints whether or not a local Avalanche +network is running and some basic stats about the network. + +**Usage:** +```bash +avalanche network status [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for status +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### stop + +The network stop command shuts down your local, multi-node network. + +All deployed Subnets shutdown gracefully and save their state. If you provide the +--snapshot-name flag, the network saves its state under this named snapshot. You can +reload this snapshot with network start --snapshot-name `snapshotName`. Otherwise, the +network saves to the default snapshot, overwriting any existing state. You can reload the +default snapshot with network start. + +**Usage:** +```bash +avalanche network stop [subcommand] [flags] +``` + +**Flags:** + +```bash +--dont-save do not save snapshot, just stop the network +-h, --help help for stop +--snapshot-name string name of snapshot to use to save network state into (default "default-1654102509") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche node + +The node command suite provides a collection of tools for creating and maintaining +validators on Avalanche Network. + +To get started, use the node create command wizard to walk through the +configuration to make your node a primary validator on Avalanche public network. You can use the +rest of the commands to maintain your node and make your node a Subnet Validator. + +**Usage:** +```bash +avalanche node [subcommand] [flags] +``` + +**Subcommands:** + +- [`addDashboard`](#avalanche-node-adddashboard): (ALPHA Warning) This command is currently in experimental mode. + +The node addDashboard command adds custom dashboard to the Grafana monitoring dashboard for the +cluster. +- [`create`](#avalanche-node-create): (ALPHA Warning) This command is currently in experimental mode. + +The node create command sets up a validator on a cloud server of your choice. +The validator will be validating the Avalanche Primary Network and Subnet +of your choice. By default, the command runs an interactive wizard. It +walks you through all the steps you need to set up a validator. +Once this command is completed, you will have to wait for the validator +to finish bootstrapping on the primary network before running further +commands on it, e.g. validating a Subnet. You can check the bootstrapping +status by running avalanche node status + +The created node will be part of group of validators called `clusterName` +and users can call node commands with `clusterName` so that the command +will apply to all nodes in the cluster +- [`destroy`](#avalanche-node-destroy): (ALPHA Warning) This command is currently in experimental mode. + +The node destroy command terminates all running nodes in cloud server and deletes all storage disks. + +If there is a static IP address attached, it will be released. +- [`devnet`](#avalanche-node-devnet): (ALPHA Warning) This command is currently in experimental mode. + +The node devnet command suite provides a collection of commands related to devnets. +You can check the updated status by calling avalanche node status `clusterName` +- [`export`](#avalanche-node-export): (ALPHA Warning) This command is currently in experimental mode. + +The node export command exports cluster configuration and its nodes config to a text file. + +If no file is specified, the configuration is printed to the stdout. + +Use --include-secrets to include keys in the export. In this case please keep the file secure as it contains sensitive information. + +Exported cluster configuration without secrets can be imported by another user using node import command. +- [`import`](#avalanche-node-import): (ALPHA Warning) This command is currently in experimental mode. + +The node import command imports cluster configuration and its nodes configuration from a text file +created from the node export command. + +Prior to calling this command, call node whitelist command to have your SSH public key and IP whitelisted by +the cluster owner. This will enable you to use avalanche-cli commands to manage the imported cluster. + +Please note, that this imported cluster will be considered as EXTERNAL by avalanche-cli, so some commands +affecting cloud nodes like node create or node destroy will be not applicable to it. +- [`list`](#avalanche-node-list): (ALPHA Warning) This command is currently in experimental mode. + +The node list command lists all clusters together with their nodes. +- [`loadtest`](#avalanche-node-loadtest): (ALPHA Warning) This command is currently in experimental mode. + +The node loadtest command suite starts and stops a load test for an existing devnet cluster. +- [`local`](#avalanche-node-local): (ALPHA Warning) This command is currently in experimental mode. + +The node local command suite provides a collection of commands related to local nodes +- [`refresh-ips`](#avalanche-node-refresh-ips): (ALPHA Warning) This command is currently in experimental mode. + +The node refresh-ips command obtains the current IP for all nodes with dynamic IPs in the cluster, +and updates the local node information used by CLI commands. +- [`resize`](#avalanche-node-resize): (ALPHA Warning) This command is currently in experimental mode. + +The node resize command can change the amount of CPU, memory and disk space available for the cluster nodes. +- [`scp`](#avalanche-node-scp): (ALPHA Warning) This command is currently in experimental mode. + +The node scp command securely copies files to and from nodes. Remote source or destionation can be specified using the following format: +[clusterName|nodeID|instanceID|IP]:/path/to/file. Regular expressions are supported for the source files like /tmp/*.txt. +File transfer to the nodes are parallelized. IF source or destination is cluster, the other should be a local file path. +If both destinations are remote, they must be nodes for the same cluster and not clusters themselves. +For example: +$ avalanche node scp [cluster1|node1]:/tmp/file.txt /tmp/file.txt +$ avalanche node scp /tmp/file.txt [cluster1|NodeID-XXXX]:/tmp/file.txt +$ avalanche node scp node1:/tmp/file.txt NodeID-XXXX:/tmp/file.txt +- [`ssh`](#avalanche-node-ssh): (ALPHA Warning) This command is currently in experimental mode. + +The node ssh command execute a given command [cmd] using ssh on all nodes in the cluster if ClusterName is given. +If no command is given, just prints the ssh command to be used to connect to each node in the cluster. +For provided NodeID or InstanceID or IP, the command [cmd] will be executed on that node. +If no [cmd] is provided for the node, it will open ssh shell there. +- [`status`](#avalanche-node-status): (ALPHA Warning) This command is currently in experimental mode. + +The node status command gets the bootstrap status of all nodes in a cluster with the Primary Network. +If no cluster is given, defaults to node list behaviour. + +To get the bootstrap status of a node with a Blockchain, use --blockchain flag +- [`sync`](#avalanche-node-sync): (ALPHA Warning) This command is currently in experimental mode. + +The node sync command enables all nodes in a cluster to be bootstrapped to a Blockchain. +You can check the blockchain bootstrap status by calling avalanche node status `clusterName` --blockchain `blockchainName` +- [`update`](#avalanche-node-update): (ALPHA Warning) This command is currently in experimental mode. + +The node update command suite provides a collection of commands for nodes to update +their avalanchego or VM config. + +You can check the status after update by calling avalanche node status +- [`upgrade`](#avalanche-node-upgrade): (ALPHA Warning) This command is currently in experimental mode. + +The node update command suite provides a collection of commands for nodes to update +their avalanchego or VM version. + +You can check the status after upgrade by calling avalanche node status +- [`validate`](#avalanche-node-validate): (ALPHA Warning) This command is currently in experimental mode. + +The node validate command suite provides a collection of commands for nodes to join +the Primary Network and Subnets as validators. +If any of the commands is run before the nodes are bootstrapped on the Primary Network, the command +will fail. You can check the bootstrap status by calling avalanche node status `clusterName` +- [`whitelist`](#avalanche-node-whitelist): (ALPHA Warning) The whitelist command suite provides a collection of tools for granting access to the cluster. + + Command adds IP if --ip params provided to cloud security access rules allowing it to access all nodes in the cluster via ssh or http. + It also command adds SSH public key to all nodes in the cluster if --ssh params is there. + If no params provided it detects current user IP automaticaly and whitelists it + +**Flags:** + +```bash +-h, --help help for node +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### addDashboard + +(ALPHA Warning) This command is currently in experimental mode. + +The node addDashboard command adds custom dashboard to the Grafana monitoring dashboard for the +cluster. + +**Usage:** +```bash +avalanche node addDashboard [subcommand] [flags] +``` + +**Flags:** + +```bash +--add-grafana-dashboard string path to additional grafana dashboard json file +-h, --help help for addDashboard +--subnet string subnet that the dasbhoard is intended for (if any) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### create + +(ALPHA Warning) This command is currently in experimental mode. + +The node create command sets up a validator on a cloud server of your choice. +The validator will be validating the Avalanche Primary Network and Subnet +of your choice. By default, the command runs an interactive wizard. It +walks you through all the steps you need to set up a validator. +Once this command is completed, you will have to wait for the validator +to finish bootstrapping on the primary network before running further +commands on it, e.g. validating a Subnet. You can check the bootstrapping +status by running avalanche node status + +The created node will be part of group of validators called `clusterName` +and users can call node commands with `clusterName` so that the command +will apply to all nodes in the cluster + +**Usage:** +```bash +avalanche node create [subcommand] [flags] +``` + +**Flags:** + +```bash +--add-grafana-dashboard string path to additional grafana dashboard json file +--alternative-key-pair-name string key pair name to use if default one generates conflicts +--authorize-access authorize CLI to create cloud resources +--auto-replace-keypair automatically replaces key pair to access node if previous key pair is not found +--avalanchego-version-from-subnet string install latest avalanchego version, that is compatible with the given subnet, on node/s +--aws create node/s in AWS cloud +--aws-profile string aws profile to use (default "default") +--aws-volume-iops int AWS iops (for gp3, io1, and io2 volume types only) (default 3000) +--aws-volume-size int AWS volume size in GB (default 1000) +--aws-volume-throughput int AWS throughput in MiB/s (for gp3 volume type only) (default 125) +--aws-volume-type string AWS volume type (default "gp3") +--bootstrap-ids stringArray nodeIDs of bootstrap nodes +--bootstrap-ips stringArray IP:port pairs of bootstrap nodes +--cluster string operate on the given cluster +--custom-avalanchego-version string install given avalanchego version on node/s +--devnet operate on a devnet network +--enable-monitoring set up Prometheus monitoring for created nodes. This option creates a separate monitoring cloud instance and incures additional cost +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--gcp create node/s in GCP cloud +--gcp-credentials string use given GCP credentials +--gcp-project string use given GCP project +--genesis string path to genesis file +--grafana-pkg string use grafana pkg instead of apt repo(by default), for example https://dl.grafana.com/oss/release/grafana_10.4.1_amd64.deb +-h, --help help for create +--latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s +--latest-avalanchego-version install latest avalanchego release version on node/s +-m, --mainnet operate on mainnet +--node-type string cloud instance type. Use 'default' to use recommended default instance type +--num-apis ints number of API nodes(nodes without stake) to create in the new Devnet +--num-validators ints number of nodes to create per region(s). Use comma to separate multiple numbers for each region in the same order as --region flag +--partial-sync primary network partial sync (default true) +--public-http-port allow public access to avalanchego HTTP port +--region strings create node(s) in given region(s). Use comma to separate multiple regions +--ssh-agent-identity string use given ssh identity(only for ssh agent). If not set, default will be used +-t, --testnet fuji operate on testnet (alias to fuji) +--upgrade string path to upgrade file +--use-ssh-agent use ssh agent(ex: Yubikey) for ssh auth +--use-static-ip attach static Public IP on cloud servers (default true) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### destroy + +(ALPHA Warning) This command is currently in experimental mode. + +The node destroy command terminates all running nodes in cloud server and deletes all storage disks. + +If there is a static IP address attached, it will be released. + +**Usage:** +```bash +avalanche node destroy [subcommand] [flags] +``` + +**Flags:** + +```bash +--all destroy all existing clusters created by Avalanche CLI +--authorize-access authorize CLI to release cloud resources +-y, --authorize-all authorize all CLI requests +--authorize-remove authorize CLI to remove all local files related to cloud nodes +--aws-profile string aws profile to use (default "default") +-h, --help help for destroy +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### devnet + +(ALPHA Warning) This command is currently in experimental mode. + +The node devnet command suite provides a collection of commands related to devnets. +You can check the updated status by calling avalanche node status `clusterName` + +**Usage:** +```bash +avalanche node devnet [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-node-devnet-deploy): (ALPHA Warning) This command is currently in experimental mode. + +The node devnet deploy command deploys a subnet into a devnet cluster, creating subnet and blockchain txs for it. +It saves the deploy info both locally and remotely. +- [`wiz`](#avalanche-node-devnet-wiz): (ALPHA Warning) This command is currently in experimental mode. + +The node wiz command creates a devnet and deploys, sync and validate a subnet into it. It creates the subnet if so needed. + +**Flags:** + +```bash +-h, --help help for devnet +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### devnet deploy + +(ALPHA Warning) This command is currently in experimental mode. + +The node devnet deploy command deploys a subnet into a devnet cluster, creating subnet and blockchain txs for it. +It saves the deploy info both locally and remotely. + +**Usage:** +```bash +avalanche node devnet deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for deploy +--no-checks do not check for healthy status or rpc compatibility of nodes against subnet +--subnet-aliases strings additional subnet aliases to be used for RPC calls in addition to subnet blockchain name +--subnet-only only create a subnet +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### devnet wiz + +(ALPHA Warning) This command is currently in experimental mode. + +The node wiz command creates a devnet and deploys, sync and validate a subnet into it. It creates the subnet if so needed. + +**Usage:** +```bash +avalanche node devnet wiz [subcommand] [flags] +``` + +**Flags:** + +```bash +--add-grafana-dashboard string path to additional grafana dashboard json file +--alternative-key-pair-name string key pair name to use if default one generates conflicts +--authorize-access authorize CLI to create cloud resources +--auto-replace-keypair automatically replaces key pair to access node if previous key pair is not found +--aws create node/s in AWS cloud +--aws-profile string aws profile to use (default "default") +--aws-volume-iops int AWS iops (for gp3, io1, and io2 volume types only) (default 3000) +--aws-volume-size int AWS volume size in GB (default 1000) +--aws-volume-throughput int AWS throughput in MiB/s (for gp3 volume type only) (default 125) +--aws-volume-type string AWS volume type (default "gp3") +--chain-config string path to the chain configuration for subnet +--custom-avalanchego-version string install given avalanchego version on node/s +--custom-subnet use a custom VM as the subnet virtual machine +--custom-vm-branch string custom vm branch or commit +--custom-vm-build-script string custom vm build-script +--custom-vm-repo-url string custom vm repository url +--default-validator-params use default weight/start/duration params for subnet validator +--deploy-icm-messenger deploy Interchain Messenger (default true) +--deploy-icm-registry deploy Interchain Registry (default true) +--deploy-teleporter-messenger deploy Interchain Messenger (default true) +--deploy-teleporter-registry deploy Interchain Registry (default true) +--enable-monitoring set up Prometheus monitoring for created nodes. Please note that this option creates a separate monitoring instance and incures additional cost +--evm-chain-id uint chain ID to use with Subnet-EVM +--evm-defaults use default production settings with Subnet-EVM +--evm-production-defaults use default production settings for your blockchain +--evm-subnet use Subnet-EVM as the subnet virtual machine +--evm-test-defaults use default test settings for your blockchain +--evm-token string token name to use with Subnet-EVM +--evm-version string version of Subnet-EVM to use +--force-subnet-create overwrite the existing subnet configuration if one exists +--gcp create node/s in GCP cloud +--gcp-credentials string use given GCP credentials +--gcp-project string use given GCP project +--grafana-pkg string use grafana pkg instead of apt repo(by default), for example https://dl.grafana.com/oss/release/grafana_10.4.1_amd64.deb +-h, --help help for wiz +--icm generate an icm-ready vm +--icm-messenger-contract-address-path string path to an icm messenger contract address file +--icm-messenger-deployer-address-path string path to an icm messenger deployer address file +--icm-messenger-deployer-tx-path string path to an icm messenger deployer tx file +--icm-registry-bytecode-path string path to an icm registry bytecode file +--icm-version string icm version to deploy (default "latest") +--latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s +--latest-avalanchego-version install latest avalanchego release version on node/s +--latest-evm-version use latest Subnet-EVM released version +--latest-pre-released-evm-version use latest Subnet-EVM pre-released version +--node-config string path to avalanchego node configuration for subnet +--node-type string cloud instance type. Use 'default' to use recommended default instance type +--num-apis ints number of API nodes(nodes without stake) to create in the new Devnet +--num-validators ints number of nodes to create per region(s). Use comma to separate multiple numbers for each region in the same order as --region flag +--public-http-port allow public access to avalanchego HTTP port +--region strings create node/s in given region(s). Use comma to separate multiple regions +--relayer run AWM relayer when deploying the vm +--ssh-agent-identity string use given ssh identity(only for ssh agent). If not set, default will be used. +--subnet-aliases strings additional subnet aliases to be used for RPC calls in addition to subnet blockchain name +--subnet-config string path to the subnet configuration for subnet +--subnet-genesis string file path of the subnet genesis +--teleporter generate an icm-ready vm +--teleporter-messenger-contract-address-path string path to an icm messenger contract address file +--teleporter-messenger-deployer-address-path string path to an icm messenger deployer address file +--teleporter-messenger-deployer-tx-path string path to an icm messenger deployer tx file +--teleporter-registry-bytecode-path string path to an icm registry bytecode file +--teleporter-version string icm version to deploy (default "latest") +--use-ssh-agent use ssh agent for ssh +--use-static-ip attach static Public IP on cloud servers (default true) +--validators strings deploy subnet into given comma separated list of validators. defaults to all cluster nodes +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### export + +(ALPHA Warning) This command is currently in experimental mode. + +The node export command exports cluster configuration and its nodes config to a text file. + +If no file is specified, the configuration is printed to the stdout. + +Use --include-secrets to include keys in the export. In this case please keep the file secure as it contains sensitive information. + +Exported cluster configuration without secrets can be imported by another user using node import command. + +**Usage:** +```bash +avalanche node export [subcommand] [flags] +``` + +**Flags:** + +```bash +--file string specify the file to export the cluster configuration to +--force overwrite the file if it exists +-h, --help help for export +--include-secrets include keys in the export +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### import + +(ALPHA Warning) This command is currently in experimental mode. + +The node import command imports cluster configuration and its nodes configuration from a text file +created from the node export command. + +Prior to calling this command, call node whitelist command to have your SSH public key and IP whitelisted by +the cluster owner. This will enable you to use avalanche-cli commands to manage the imported cluster. + +Please note, that this imported cluster will be considered as EXTERNAL by avalanche-cli, so some commands +affecting cloud nodes like node create or node destroy will be not applicable to it. + +**Usage:** +```bash +avalanche node import [subcommand] [flags] +``` + +**Flags:** + +```bash +--file string specify the file to export the cluster configuration to +-h, --help help for import +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### list + +(ALPHA Warning) This command is currently in experimental mode. + +The node list command lists all clusters together with their nodes. + +**Usage:** +```bash +avalanche node list [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for list +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### loadtest + +(ALPHA Warning) This command is currently in experimental mode. + +The node loadtest command suite starts and stops a load test for an existing devnet cluster. + +**Usage:** +```bash +avalanche node loadtest [subcommand] [flags] +``` + +**Subcommands:** + +- [`start`](#avalanche-node-loadtest-start): (ALPHA Warning) This command is currently in experimental mode. + +The node loadtest command starts load testing for an existing devnet cluster. If the cluster does +not have an existing load test host, the command creates a separate cloud server and builds the load +test binary based on the provided load test Git Repo URL and load test binary build command. + +The command will then run the load test binary based on the provided load test run command. +- [`stop`](#avalanche-node-loadtest-stop): (ALPHA Warning) This command is currently in experimental mode. + +The node loadtest stop command stops load testing for an existing devnet cluster and terminates the +separate cloud server created to host the load test. + +**Flags:** + +```bash +-h, --help help for loadtest +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### loadtest start + +(ALPHA Warning) This command is currently in experimental mode. + +The node loadtest command starts load testing for an existing devnet cluster. If the cluster does +not have an existing load test host, the command creates a separate cloud server and builds the load +test binary based on the provided load test Git Repo URL and load test binary build command. + +The command will then run the load test binary based on the provided load test run command. + +**Usage:** +```bash +avalanche node loadtest start [subcommand] [flags] +``` + +**Flags:** + +```bash +--authorize-access authorize CLI to create cloud resources +--aws create loadtest node in AWS cloud +--aws-profile string aws profile to use (default "default") +--gcp create loadtest in GCP cloud +-h, --help help for start +--load-test-branch string load test branch or commit +--load-test-build-cmd string command to build load test binary +--load-test-cmd string command to run load test +--load-test-repo string load test repo url to use +--node-type string cloud instance type for loadtest script +--region string create load test node in a given region +--ssh-agent-identity string use given ssh identity(only for ssh agent). If not set, default will be used +--use-ssh-agent use ssh agent(ex: Yubikey) for ssh auth +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### loadtest stop + +(ALPHA Warning) This command is currently in experimental mode. + +The node loadtest stop command stops load testing for an existing devnet cluster and terminates the +separate cloud server created to host the load test. + +**Usage:** +```bash +avalanche node loadtest stop [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for stop +--load-test strings stop specified load test node(s). Use comma to separate multiple load test instance names +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### local + +(ALPHA Warning) This command is currently in experimental mode. + +The node local command suite provides a collection of commands related to local nodes + +**Usage:** +```bash +avalanche node local [subcommand] [flags] +``` + +**Subcommands:** + +- [`destroy`](#avalanche-node-local-destroy): Cleanup local node. +- [`start`](#avalanche-node-local-start): (ALPHA Warning) This command is currently in experimental mode. + +The node local start command sets up a validator on a local server. +The validator will be validating the Avalanche Primary Network and Subnet +of your choice. By default, the command runs an interactive wizard. It +walks you through all the steps you need to set up a validator. +Once this command is completed, you will have to wait for the validator +to finish bootstrapping on the primary network before running further +commands on it, e.g. validating a Subnet. You can check the bootstrapping +status by running avalanche node status local +- [`status`](#avalanche-node-local-status): Get status of local node. +- [`stop`](#avalanche-node-local-stop): Stop local node. +- [`track`](#avalanche-node-local-track): (ALPHA Warning) make the local node at the cluster to track given blockchain + +**Flags:** + +```bash +-h, --help help for local +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### local destroy + +Cleanup local node. + +**Usage:** +```bash +avalanche node local destroy [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for destroy +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### local start + +(ALPHA Warning) This command is currently in experimental mode. + +The node local start command sets up a validator on a local server. +The validator will be validating the Avalanche Primary Network and Subnet +of your choice. By default, the command runs an interactive wizard. It +walks you through all the steps you need to set up a validator. +Once this command is completed, you will have to wait for the validator +to finish bootstrapping on the primary network before running further +commands on it, e.g. validating a Subnet. You can check the bootstrapping +status by running avalanche node status local + +**Usage:** +```bash +avalanche node local start [subcommand] [flags] +``` + +**Flags:** + +```bash +--avalanchego-path string use this avalanchego binary path +--bootstrap-id stringArray nodeIDs of bootstrap nodes +--bootstrap-ip stringArray IP:port pairs of bootstrap nodes +--cluster string operate on the given cluster +--custom-avalanchego-version string install given avalanchego version on node/s +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--genesis string path to genesis file +-h, --help help for start +--latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s (default true) +--latest-avalanchego-version install latest avalanchego release version on node/s +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-config string path to common avalanchego config settings for all nodes +--num-nodes uint32 number of nodes to start (default 1) +--partial-sync primary network partial sync (default true) +--staking-cert-key-path string path to provided staking cert key for node +--staking-signer-key-path string path to provided staking signer key for node +--staking-tls-key-path string path to provided staking tls key for node +-t, --testnet fuji operate on testnet (alias to fuji) +--upgrade string path to upgrade file +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### local status + +Get status of local node. + +**Usage:** +```bash +avalanche node local status [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain string specify the blockchain the node is syncing with +-h, --help help for status +--subnet string specify the blockchain the node is syncing with +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### local stop + +Stop local node. + +**Usage:** +```bash +avalanche node local stop [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for stop +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### local track + +(ALPHA Warning) make the local node at the cluster to track given blockchain + +**Usage:** +```bash +avalanche node local track [subcommand] [flags] +``` + +**Flags:** + +```bash +--avalanchego-path string use this avalanchego binary path +--custom-avalanchego-version string install given avalanchego version on node/s +-h, --help help for track +--latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s (default true) +--latest-avalanchego-version install latest avalanchego release version on node/s +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### refresh-ips + +(ALPHA Warning) This command is currently in experimental mode. + +The node refresh-ips command obtains the current IP for all nodes with dynamic IPs in the cluster, +and updates the local node information used by CLI commands. + +**Usage:** +```bash +avalanche node refresh-ips [subcommand] [flags] +``` + +**Flags:** + +```bash +--aws-profile string aws profile to use (default "default") +-h, --help help for refresh-ips +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### resize + +(ALPHA Warning) This command is currently in experimental mode. + +The node resize command can change the amount of CPU, memory and disk space available for the cluster nodes. + +**Usage:** +```bash +avalanche node resize [subcommand] [flags] +``` + +**Flags:** + +```bash +--aws-profile string aws profile to use (default "default") +--disk-size string Disk size to resize in Gb (e.g. 1000Gb) +-h, --help help for resize +--node-type string Node type to resize (e.g. t3.2xlarge) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### scp + +(ALPHA Warning) This command is currently in experimental mode. + +The node scp command securely copies files to and from nodes. Remote source or destionation can be specified using the following format: +[clusterName|nodeID|instanceID|IP]:/path/to/file. Regular expressions are supported for the source files like /tmp/*.txt. +File transfer to the nodes are parallelized. IF source or destination is cluster, the other should be a local file path. +If both destinations are remote, they must be nodes for the same cluster and not clusters themselves. +For example: +$ avalanche node scp [cluster1|node1]:/tmp/file.txt /tmp/file.txt +$ avalanche node scp /tmp/file.txt [cluster1|NodeID-XXXX]:/tmp/file.txt +$ avalanche node scp node1:/tmp/file.txt NodeID-XXXX:/tmp/file.txt + +**Usage:** +```bash +avalanche node scp [subcommand] [flags] +``` + +**Flags:** + +```bash +--compress use compression for ssh +-h, --help help for scp +--recursive copy directories recursively +--with-loadtest include loadtest node for scp cluster operations +--with-monitor include monitoring node for scp cluster operations +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### ssh + +(ALPHA Warning) This command is currently in experimental mode. + +The node ssh command execute a given command [cmd] using ssh on all nodes in the cluster if ClusterName is given. +If no command is given, just prints the ssh command to be used to connect to each node in the cluster. +For provided NodeID or InstanceID or IP, the command [cmd] will be executed on that node. +If no [cmd] is provided for the node, it will open ssh shell there. + +**Usage:** +```bash +avalanche node ssh [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for ssh +--parallel run ssh command on all nodes in parallel +--with-loadtest include loadtest node for ssh cluster operations +--with-monitor include monitoring node for ssh cluster operations +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### status + +(ALPHA Warning) This command is currently in experimental mode. + +The node status command gets the bootstrap status of all nodes in a cluster with the Primary Network. +If no cluster is given, defaults to node list behaviour. + +To get the bootstrap status of a node with a Blockchain, use --blockchain flag + +**Usage:** +```bash +avalanche node status [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain string specify the blockchain the node is syncing with +-h, --help help for status +--subnet string specify the blockchain the node is syncing with +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### sync + +(ALPHA Warning) This command is currently in experimental mode. + +The node sync command enables all nodes in a cluster to be bootstrapped to a Blockchain. +You can check the blockchain bootstrap status by calling avalanche node status `clusterName` --blockchain `blockchainName` + +**Usage:** +```bash +avalanche node sync [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for sync +--no-checks do not check for bootstrapped/healthy status or rpc compatibility of nodes against subnet +--subnet-aliases strings subnet alias to be used for RPC calls. defaults to subnet blockchain ID +--validators strings sync subnet into given comma separated list of validators. defaults to all cluster nodes +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### update + +(ALPHA Warning) This command is currently in experimental mode. + +The node update command suite provides a collection of commands for nodes to update +their avalanchego or VM config. + +You can check the status after update by calling avalanche node status + +**Usage:** +```bash +avalanche node update [subcommand] [flags] +``` + +**Subcommands:** + +- [`subnet`](#avalanche-node-update-subnet): (ALPHA Warning) This command is currently in experimental mode. + +The node update subnet command updates all nodes in a cluster with latest Subnet configuration and VM for custom VM. +You can check the updated subnet bootstrap status by calling avalanche node status `clusterName` --subnet `subnetName` + +**Flags:** + +```bash +-h, --help help for update +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### update subnet + +(ALPHA Warning) This command is currently in experimental mode. + +The node update subnet command updates all nodes in a cluster with latest Subnet configuration and VM for custom VM. +You can check the updated subnet bootstrap status by calling avalanche node status `clusterName` --subnet `subnetName` + +**Usage:** +```bash +avalanche node update subnet [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for subnet +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### upgrade + +(ALPHA Warning) This command is currently in experimental mode. + +The node update command suite provides a collection of commands for nodes to update +their avalanchego or VM version. + +You can check the status after upgrade by calling avalanche node status + +**Usage:** +```bash +avalanche node upgrade [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for upgrade +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### validate + +(ALPHA Warning) This command is currently in experimental mode. + +The node validate command suite provides a collection of commands for nodes to join +the Primary Network and Subnets as validators. +If any of the commands is run before the nodes are bootstrapped on the Primary Network, the command +will fail. You can check the bootstrap status by calling avalanche node status `clusterName` + +**Usage:** +```bash +avalanche node validate [subcommand] [flags] +``` + +**Subcommands:** + +- [`primary`](#avalanche-node-validate-primary): (ALPHA Warning) This command is currently in experimental mode. + +The node validate primary command enables all nodes in a cluster to be validators of Primary +Network. +- [`subnet`](#avalanche-node-validate-subnet): (ALPHA Warning) This command is currently in experimental mode. + +The node validate subnet command enables all nodes in a cluster to be validators of a Subnet. +If the command is run before the nodes are Primary Network validators, the command will first +make the nodes Primary Network validators before making them Subnet validators. +If The command is run before the nodes are bootstrapped on the Primary Network, the command will fail. +You can check the bootstrap status by calling avalanche node status `clusterName` +If The command is run before the nodes are synced to the subnet, the command will fail. +You can check the subnet sync status by calling avalanche node status `clusterName` --subnet `subnetName` + +**Flags:** + +```bash +-h, --help help for validate +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### validate primary + +(ALPHA Warning) This command is currently in experimental mode. + +The node validate primary command enables all nodes in a cluster to be validators of Primary +Network. + +**Usage:** +```bash +avalanche node validate primary [subcommand] [flags] +``` + +**Flags:** + +```bash +-e, --ewoq use ewoq key [fuji/devnet only] +-h, --help help for primary +-k, --key string select the key to use [fuji only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +--stake-amount uint how many AVAX to stake in the validator +--staking-period duration how long validator validates for after start time +--start-time string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### validate subnet + +(ALPHA Warning) This command is currently in experimental mode. + +The node validate subnet command enables all nodes in a cluster to be validators of a Subnet. +If the command is run before the nodes are Primary Network validators, the command will first +make the nodes Primary Network validators before making them Subnet validators. +If The command is run before the nodes are bootstrapped on the Primary Network, the command will fail. +You can check the bootstrap status by calling avalanche node status `clusterName` +If The command is run before the nodes are synced to the subnet, the command will fail. +You can check the subnet sync status by calling avalanche node status `clusterName` --subnet `subnetName` + +**Usage:** +```bash +avalanche node validate subnet [subcommand] [flags] +``` + +**Flags:** + +```bash +--default-validator-params use default weight/start/duration params for subnet validator +-e, --ewoq use ewoq key [fuji/devnet only] +-h, --help help for subnet +-k, --key string select the key to use [fuji/devnet only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +--no-checks do not check for bootstrapped status or healthy status +--no-validation-checks do not check if subnet is already synced or validated (default true) +--stake-amount uint how many AVAX to stake in the validator +--staking-period duration how long validator validates for after start time +--start-time string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format +--validators strings validate subnet for the given comma separated list of validators. defaults to all cluster nodes +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### whitelist + +(ALPHA Warning) The whitelist command suite provides a collection of tools for granting access to the cluster. + + Command adds IP if --ip params provided to cloud security access rules allowing it to access all nodes in the cluster via ssh or http. + It also command adds SSH public key to all nodes in the cluster if --ssh params is there. + If no params provided it detects current user IP automaticaly and whitelists it + +**Usage:** +```bash +avalanche node whitelist [subcommand] [flags] +``` + +**Flags:** + +```bash +-y, --current-ip whitelist current host ip +-h, --help help for whitelist +--ip string ip address to whitelist +--ssh string ssh public key to whitelist +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche primary + +The primary command suite provides a collection of tools for interacting with the +Primary Network + +**Usage:** +```bash +avalanche primary [subcommand] [flags] +``` + +**Subcommands:** + +- [`addValidator`](#avalanche-primary-addvalidator): The primary addValidator command adds a node as a validator +in the Primary Network +- [`describe`](#avalanche-primary-describe): The subnet describe command prints details of the primary network configuration to the console. + +**Flags:** + +```bash +-h, --help help for primary +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### addValidator + +The primary addValidator command adds a node as a validator +in the Primary Network + +**Usage:** +```bash +avalanche primary addValidator [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--delegation-fee uint32 set the delegation fee (20 000 is equivalent to 2%) +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for addValidator +-k, --key string select the key to use [fuji only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) +--ledger-addrs strings use the given ledger addresses +-m, --mainnet operate on mainnet +--nodeID string set the NodeID of the validator to add +--proof-of-possession string set the BLS proof of possession of the validator to add +--public-key string set the BLS public key of the validator to add +--staking-period duration how long this validator will be staking +--start-time string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format +-t, --testnet fuji operate on testnet (alias to fuji) +--weight uint set the staking weight of the validator to add +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### describe + +The subnet describe command prints details of the primary network configuration to the console. + +**Usage:** +```bash +avalanche primary describe [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +-h, --help help for describe +-l, --local operate on a local network +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche teleporter + +The messenger command suite provides a collection of tools for interacting +with ICM messenger contracts. + +**Usage:** +```bash +avalanche teleporter [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-teleporter-deploy): Deploys ICM Messenger and Registry into a given L1. +- [`sendMsg`](#avalanche-teleporter-sendmsg): Sends and wait reception for a ICM msg between two blockchains. + +**Flags:** + +```bash +-h, --help help for teleporter +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### deploy + +Deploys ICM Messenger and Registry into a given L1. + +**Usage:** +```bash +avalanche teleporter deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain string deploy ICM into the given CLI blockchain +--blockchain-id string deploy ICM into the given blockchain ID/Alias +--c-chain deploy ICM into C-Chain +--cchain-key string key to be used to pay fees to deploy ICM to C-Chain +--cluster string operate on the given cluster +--deploy-messenger deploy ICM Messenger (default true) +--deploy-registry deploy ICM Registry (default true) +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +--force-registry-deploy deploy ICM Registry even if Messenger has already been deployed +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key to fund ICM deploy +-h, --help help for deploy +--include-cchain deploy ICM also to C-Chain +--key string CLI stored key to use to fund ICM deploy +-l, --local operate on a local network +--messenger-contract-address-path string path to a messenger contract address file +--messenger-deployer-address-path string path to a messenger deployer address file +--messenger-deployer-tx-path string path to a messenger deployer tx file +--private-key string private key to use to fund ICM deploy +--registry-bytecode-path string path to a registry bytecode file +--rpc-url string use the given RPC URL to connect to the subnet +-t, --testnet fuji operate on testnet (alias to fuji) +--version string version to deploy (default "latest") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### sendMsg + +Sends and wait reception for a ICM msg between two blockchains. + +**Usage:** +```bash +avalanche teleporter sendMsg [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--dest-rpc string use the given destination blockchain rpc endpoint +--destination-address string deliver the message to the given contract destination address +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key as message originator and to pay source blockchain fees +-h, --help help for sendMsg +--hex-encoded given message is hex encoded +--key string CLI stored key to use as message originator and to pay source blockchain fees +-l, --local operate on a local network +--private-key string private key to use as message originator and to pay source blockchain fees +--source-rpc string use the given source blockchain rpc endpoint +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche transaction + +The transaction command suite provides all of the utilities required to sign multisig transactions. + +**Usage:** +```bash +avalanche transaction [subcommand] [flags] +``` + +**Subcommands:** + +- [`commit`](#avalanche-transaction-commit): The transaction commit command commits a transaction by submitting it to the P-Chain. +- [`sign`](#avalanche-transaction-sign): The transaction sign command signs a multisig transaction. + +**Flags:** + +```bash +-h, --help help for transaction +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### commit + +The transaction commit command commits a transaction by submitting it to the P-Chain. + +**Usage:** +```bash +avalanche transaction commit [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for commit +--input-tx-filepath string Path to the transaction signed by all signatories +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### sign + +The transaction sign command signs a multisig transaction. + +**Usage:** +```bash +avalanche transaction sign [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for sign +--input-tx-filepath string Path to the transaction file for signing +-k, --key string select the key to use [fuji only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) +--ledger-addrs strings use the given ledger addresses +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche update + +Check if an update is available, and prompt the user to install it + +**Usage:** +```bash +avalanche update [subcommand] [flags] +``` + +**Flags:** + +```bash +-c, --confirm Assume yes for installation +-h, --help help for update +-v, --version version for update +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche validator + +The validator command suite provides a collection of tools for managing validator +balance on P-Chain. + +Validator's balance is used to pay for continuous fee to the P-Chain. When this Balance reaches 0, +the validator will be considered inactive and will no longer participate in validating the L1 + +**Usage:** +```bash +avalanche validator [subcommand] [flags] +``` + +**Subcommands:** + +- [`getBalance`](#avalanche-validator-getbalance): This command gets the remaining validator P-Chain balance that is available to pay +P-Chain continuous fee +- [`increaseBalance`](#avalanche-validator-increasebalance): This command increases the validator P-Chain balance +- [`list`](#avalanche-validator-list): This command gets a list of the validators of the L1 + +**Flags:** + +```bash +-h, --help help for validator +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### getBalance + +This command gets the remaining validator P-Chain balance that is available to pay +P-Chain continuous fee + +**Usage:** +```bash +avalanche validator getBalance [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for getBalance +--l1 string name of L1 +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-id string node ID of the validator +-t, --testnet fuji operate on testnet (alias to fuji) +--validation-id string validation ID of the validator +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### increaseBalance + +This command increases the validator P-Chain balance + +**Usage:** +```bash +avalanche validator increaseBalance [subcommand] [flags] +``` + +**Flags:** + +```bash +--balance float amount of AVAX to increase validator's balance by +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for increaseBalance +-k, --key string select the key to use [fuji/devnet deploy only] +--l1 string name of L1 (to increase balance of bootstrap validators only) +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-id string node ID of the validator +-t, --testnet fuji operate on testnet (alias to fuji) +--validation-id string validationIDStr of the validator +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### list + +This command gets a list of the validators of the L1 + +**Usage:** +```bash +avalanche validator list [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for list +-l, --local operate on a local network +-m, --mainnet operate on mainnet +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + From 89632b8a7a00cdc800e0c4b682069c9ab10ac2f3 Mon Sep 17 00:00:00 2001 From: owenwahlgren Date: Mon, 13 Jan 2025 10:48:53 -0500 Subject: [PATCH 11/15] update output path --- .github/scripts/cli_scraper.py | 9 +- cli_structure.json | 5725 -------------------------------- cli_structure.md | 3614 -------------------- 3 files changed, 5 insertions(+), 9343 deletions(-) delete mode 100644 cli_structure.json delete mode 100644 cli_structure.md diff --git a/.github/scripts/cli_scraper.py b/.github/scripts/cli_scraper.py index b119495c1..845ca071e 100644 --- a/.github/scripts/cli_scraper.py +++ b/.github/scripts/cli_scraper.py @@ -242,12 +242,13 @@ def main(): cli_structure = get_command_structure(cli_tool, max_depth=max_depth) if cli_structure: # Save JSON - with open("cli_structure.json", "w", encoding="utf-8") as json_file: - json.dump(cli_structure, json_file, indent=4) - print("CLI structure saved to cli_structure.json") + + # with open("cli_structure.json", "w", encoding="utf-8") as json_file: + # json.dump(cli_structure, json_file, indent=4) + # print("CLI structure saved to cli_structure.json") # Generate Markdown - generate_markdown(cli_structure, cli_tool, "cli_structure.md") + generate_markdown(cli_structure, cli_tool, "cmd/commands.md") print("Markdown documentation saved to cli_structure.md") else: print("[ERROR] Failed to retrieve CLI structure") diff --git a/cli_structure.json b/cli_structure.json deleted file mode 100644 index cf19f59da..000000000 --- a/cli_structure.json +++ /dev/null @@ -1,5725 +0,0 @@ -{ - "description": "Avalanche-CLI is a command-line tool that gives developers access to\neverything Avalanche. This release specializes in helping developers\nbuild and test Blockchain networks.\n\nTo get started, look at the documentation for the subcommands or jump right\nin with avalanche blockchain create myNewBlockchain.", - "flags": [ - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "-h, --help", - "description": "help for avalanche" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - }, - { - "flag": "-v, --version", - "description": "version for avalanche" - } - ], - "subcommands": { - "blockchain": { - "description": "The blockchain command suite provides a collection of tools for developing\nand deploying Blockchains.\n\nTo get started, use the blockchain create command wizard to walk through the\nconfiguration of your very first Blockchain. Then, go ahead and deploy it\nwith the blockchain deploy command. You can use the rest of the commands to\nmanage your Blockchain configurations and live deployments.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for blockchain" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "addValidator": { - "description": "The blockchain addValidator command adds a node as a validator to\nan L1 of the user provided deployed network. If the network is proof of \nauthority, the owner of the validator manager contract must sign the \ntransaction. If the network is proof of stake, the node must stake the L1's\nstaking token. Both processes will issue a RegisterL1ValidatorTx on the P-Chain.\n\nThis command currently only works on Blockchains deployed to either the Fuji\nTestnet or Mainnet.", - "flags": [ - { - "flag": "--aggregator-allow-private-peers", - "description": "allow the signature aggregator to connect to peers with private IP (default true)" - }, - { - "flag": "--aggregator-extra-endpoints", - "description": "strings endpoints for extra nodes that are needed in signature aggregation" - }, - { - "flag": "--aggregator-log-level", - "description": "string log level to use with signature aggregator (default \"Debug\")" - }, - { - "flag": "--aggregator-log-to-stdout", - "description": "use stdout for signature aggregator logs" - }, - { - "flag": "--balance", - "description": "uint set the AVAX balance of the validator that will be used for continuous fee on P-Chain" - }, - { - "flag": "--blockchain-genesis-key", - "description": "use genesis allocated key to pay fees for completing the validator's registration (blockchain gas token)" - }, - { - "flag": "--blockchain-key", - "description": "string CLI stored key to use to pay fees for completing the validator's registration (blockchain gas token)" - }, - { - "flag": "--blockchain-private-key", - "description": "string private key to use to pay fees for completing the validator's registration (blockchain gas token)" - }, - { - "flag": "--bls-proof-of-possession", - "description": "string set the BLS proof of possession of the validator to add" - }, - { - "flag": "--bls-public-key", - "description": "string set the BLS public key of the validator to add" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--create-local-validator", - "description": "create additional local validator and add it to existing running local node" - }, - { - "flag": "--default-duration", - "description": "(for Subnets, not L1s) set duration so as to validate until primary validator ends its period" - }, - { - "flag": "--default-start-time", - "description": "(for Subnets, not L1s) use default start time for subnet validator (5 minutes later for fuji & mainnet, 30 seconds later for devnet)" - }, - { - "flag": "--default-validator-params", - "description": "(for Subnets, not L1s) use default weight/start/duration params for subnet validator" - }, - { - "flag": "--delegation-fee", - "description": "uint16 (PoS only) delegation fee (in bips) (default 100)" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--disable-owner", - "description": "string P-Chain address that will able to disable the validator with a P-Chain transaction" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-e, --ewoq", - "description": "use ewoq key [fuji/devnet only]" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for addValidator" - }, - { - "flag": "-k, --key", - "description": "string select the key to use [fuji/devnet only]" - }, - { - "flag": "-g, --ledger", - "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet)" - }, - { - "flag": "--ledger-addrs", - "description": "strings use the given ledger addresses" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--node-endpoint", - "description": "string gather node id/bls from publicly available avalanchego apis on the given endpoint" - }, - { - "flag": "--node-id", - "description": "string node-id of the validator to add" - }, - { - "flag": "--output-tx-path", - "description": "string (for Subnets, not L1s) file path of the add validator tx" - }, - { - "flag": "--partial-sync", - "description": "set primary network partial sync for new validators (default true)" - }, - { - "flag": "--remaining-balance-owner", - "description": "string P-Chain address that will receive any leftover AVAX from the validator when it is removed from Subnet" - }, - { - "flag": "--rpc", - "description": "string connect to validator manager at the given rpc endpoint" - }, - { - "flag": "--stake-amount", - "description": "uint (PoS only) amount of tokens to stake" - }, - { - "flag": "--staking-period", - "description": "duration how long this validator will be staking" - }, - { - "flag": "--start-time", - "description": "string (for Subnets, not L1s) UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format" - }, - { - "flag": "--subnet-auth-keys", - "description": "strings (for Subnets, not L1s) control keys that will be used to authenticate add validator tx" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--wait-for-tx-acceptance", - "description": "(for Subnets, not L1s) just issue the add validator tx, without waiting for its acceptance (default true)" - }, - { - "flag": "--weight", - "description": "uint set the staking weight of the validator to add (default 20)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "changeOwner": { - "description": "The blockchain changeOwner changes the owner of the deployed Blockchain.", - "flags": [ - { - "flag": "--auth-keys", - "description": "strings control keys that will be used to authenticate transfer blockchain ownership tx" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--control-keys", - "description": "strings addresses that may make blockchain changes" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-e, --ewoq", - "description": "use ewoq key [fuji/devnet]" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for changeOwner" - }, - { - "flag": "-k, --key", - "description": "string select the key to use [fuji/devnet]" - }, - { - "flag": "-g, --ledger", - "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet)" - }, - { - "flag": "--ledger-addrs", - "description": "strings use the given ledger addresses" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--output-tx-path", - "description": "string file path of the transfer blockchain ownership tx" - }, - { - "flag": "-s, --same-control-key", - "description": "use the fee-paying key as control key" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--threshold", - "description": "uint32 required number of control key signatures to make blockchain changes" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "changeWeight": { - "description": "The blockchain changeWeight command changes the weight of a L1 Validator.\n\nThe L1 has to be a Proof of Authority L1.", - "flags": [ - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-e, --ewoq", - "description": "use ewoq key [fuji/devnet only]" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for changeWeight" - }, - { - "flag": "-k, --key", - "description": "string select the key to use [fuji/devnet only]" - }, - { - "flag": "-g, --ledger", - "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet)" - }, - { - "flag": "--ledger-addrs", - "description": "strings use the given ledger addresses" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--node-id", - "description": "string node-id of the validator" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--weight", - "description": "uint set the new staking weight of the validator (default 20)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "configure": { - "description": "AvalancheGo nodes support several different configuration files. Each network (a Subnet or an L1) has their own config which applies to all blockchains/VMs in the network. Each blockchain within the network\ncan have its own chain config. A chain can also have special requirements for the AvalancheGo node \nconfiguration itself. This command allows you to set all those files.", - "flags": [ - { - "flag": "--chain-config", - "description": "string path to the chain configuration" - }, - { - "flag": "-h, --help", - "description": "help for configure" - }, - { - "flag": "--node-config", - "description": "string path to avalanchego node configuration" - }, - { - "flag": "--per-node-chain-config", - "description": "string path to per node chain configuration for local network" - }, - { - "flag": "--subnet-config", - "description": "string path to the subnet configuration" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "create": { - "description": "The blockchain create command builds a new genesis file to configure your Blockchain.\nBy default, the command runs an interactive wizard. It walks you through\nall the steps you need to create your first Blockchain.\n\nThe tool supports deploying Subnet-EVM, and custom VMs. You\ncan create a custom, user-generated genesis with a custom VM by providing\nthe path to your genesis and VM binaries with the --genesis and --vm flags.\n\nBy default, running the command with a blockchainName that already exists\ncauses the command to fail. If you'd like to overwrite an existing\nconfiguration, pass the -f flag.", - "flags": [ - { - "flag": "--custom", - "description": "use a custom VM template" - }, - { - "flag": "--custom-vm-branch", - "description": "string custom vm branch or commit" - }, - { - "flag": "--custom-vm-build-script", - "description": "string custom vm build-script" - }, - { - "flag": "--custom-vm-path", - "description": "string file path of custom vm to use" - }, - { - "flag": "--custom-vm-repo-url", - "description": "string custom vm repository url" - }, - { - "flag": "--debug", - "description": "enable blockchain debugging (default true)" - }, - { - "flag": "--evm", - "description": "use the Subnet-EVM as the base template" - }, - { - "flag": "--evm-chain-id", - "description": "uint chain ID to use with Subnet-EVM" - }, - { - "flag": "--evm-defaults", - "description": "deprecation notice: use '--production-defaults'" - }, - { - "flag": "--evm-token", - "description": "string token symbol to use with Subnet-EVM" - }, - { - "flag": "--external-gas-token", - "description": "use a gas token from another blockchain" - }, - { - "flag": "-f, --force", - "description": "overwrite the existing configuration if one exists" - }, - { - "flag": "--from-github-repo", - "description": "generate custom VM binary from github repository" - }, - { - "flag": "--genesis", - "description": "string file path of genesis to use" - }, - { - "flag": "-h, --help", - "description": "help for create" - }, - { - "flag": "--icm", - "description": "interoperate with other blockchains using ICM" - }, - { - "flag": "--icm-registry-at-genesis", - "description": "setup ICM registry smart contract on genesis [experimental]" - }, - { - "flag": "--latest", - "description": "use latest Subnet-EVM released version, takes precedence over --vm-version" - }, - { - "flag": "--pre-release", - "description": "use latest Subnet-EVM pre-released version, takes precedence over --vm-version" - }, - { - "flag": "--production-defaults", - "description": "use default production settings for your blockchain" - }, - { - "flag": "--proof-of-authority", - "description": "use proof of authority(PoA) for validator management" - }, - { - "flag": "--proof-of-stake", - "description": "use proof of stake(PoS) for validator management" - }, - { - "flag": "--proxy-contract-owner", - "description": "string EVM address that controls ProxyAdmin for TransparentProxy of ValidatorManager contract" - }, - { - "flag": "--reward-basis-points", - "description": "uint (PoS only) reward basis points for PoS Reward Calculator (default 100)" - }, - { - "flag": "--sovereign", - "description": "set to false if creating non-sovereign blockchain (default true)" - }, - { - "flag": "--teleporter", - "description": "interoperate with other blockchains using ICM" - }, - { - "flag": "--test-defaults", - "description": "use default test settings for your blockchain" - }, - { - "flag": "--validator-manager-owner", - "description": "string EVM address that controls Validator Manager Owner" - }, - { - "flag": "--vm", - "description": "string file path of custom vm to use. alias to custom-vm-path" - }, - { - "flag": "--vm-version", - "description": "string version of Subnet-EVM template to use" - }, - { - "flag": "--warp", - "description": "generate a vm with warp support (needed for ICM) (default true)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "delete": { - "description": "The blockchain delete command deletes an existing blockchain configuration.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for delete" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "deploy": { - "description": "The blockchain deploy command deploys your Blockchain configuration locally, to Fuji Testnet, or to Mainnet.\n\nAt the end of the call, the command prints the RPC URL you can use to interact with the Subnet.\n\nAvalanche-CLI only supports deploying an individual Blockchain once per network. Subsequent\nattempts to deploy the same Blockchain to the same network (local, Fuji, Mainnet) aren't\nallowed. If you'd like to redeploy a Blockchain locally for testing, you must first call\navalanche network clean to reset all deployed chain state. Subsequent local deploys\nredeploy the chain with fresh state. You can deploy the same Blockchain to multiple networks,\nso you can take your locally tested Blockchain and deploy it on Fuji or Mainnet.", - "flags": [ - { - "flag": "--aggregator-allow-private-peers", - "description": "allow the signature aggregator to connect to peers with private IP (default true)" - }, - { - "flag": "--aggregator-extra-endpoints", - "description": "strings endpoints for extra nodes that are needed in signature aggregation" - }, - { - "flag": "--aggregator-log-level", - "description": "string log level to use with signature aggregator (default \"Debug\")" - }, - { - "flag": "--aggregator-log-to-stdout", - "description": "use stdout for signature aggregator logs" - }, - { - "flag": "--auth-keys", - "description": "strings control keys that will be used to authenticate chain creation" - }, - { - "flag": "--avalanchego-path", - "description": "string use this avalanchego binary path" - }, - { - "flag": "--avalanchego-version", - "description": "string use this version of avalanchego (ex: v1.17.12) (default \"latest-prerelease\")" - }, - { - "flag": "--balance", - "description": "float set the AVAX balance of each bootstrap validator that will be used for continuous fee on P-Chain (default 0.1)" - }, - { - "flag": "--blockchain-genesis-key", - "description": "use genesis allocated key to fund validator manager initialization" - }, - { - "flag": "--blockchain-key", - "description": "string CLI stored key to use to fund validator manager initialization" - }, - { - "flag": "--blockchain-private-key", - "description": "string private key to use to fund validator manager initialization" - }, - { - "flag": "--bootstrap-endpoints", - "description": "strings take validator node info from the given endpoints" - }, - { - "flag": "--bootstrap-filepath", - "description": "string JSON file path that provides details about bootstrap validators, leave Node-ID and BLS values empty if using --generate-node-id=true" - }, - { - "flag": "--cchain-funding-key", - "description": "string key to be used to fund relayer account on cchain" - }, - { - "flag": "--cchain-icm-key", - "description": "string key to be used to pay for ICM deploys on C-Chain" - }, - { - "flag": "--change-owner-address", - "description": "string address that will receive change if node is no longer L1 validator" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--control-keys", - "description": "strings addresses that may make blockchain changes" - }, - { - "flag": "--convert-only", - "description": "avoid node track, restart and poa manager setup" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-e, --ewoq", - "description": "use ewoq key [fuji/devnet deploy only]" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "--generate-node-id", - "description": "whether to create new node id for bootstrap validators (Node-ID and BLS values in bootstrap JSON file will be overridden if --bootstrap-filepath flag is used)" - }, - { - "flag": "-h, --help", - "description": "help for deploy" - }, - { - "flag": "--icm-key", - "description": "string key to be used to pay for ICM deploys (default \"cli-teleporter-deployer\")" - }, - { - "flag": "--icm-version", - "description": "string ICM version to deploy (default \"latest\")" - }, - { - "flag": "-k, --key", - "description": "string select the key to use [fuji/devnet deploy only]" - }, - { - "flag": "-g, --ledger", - "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet)" - }, - { - "flag": "--ledger-addrs", - "description": "strings use the given ledger addresses" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--mainnet-chain-id", - "description": "uint32 use different ChainID for mainnet deployment" - }, - { - "flag": "--noicm", - "description": "skip automatic ICM deploy" - }, - { - "flag": "--num-bootstrap-validators", - "description": "int (only if --generate-node-id is true) number of bootstrap validators to set up in sovereign L1 validator)" - }, - { - "flag": "--num-local-nodes", - "description": "int number of nodes to be created on local machine" - }, - { - "flag": "--num-nodes", - "description": "uint32 number of nodes to be created on local network deploy (default 2)" - }, - { - "flag": "--output-tx-path", - "description": "string file path of the blockchain creation tx" - }, - { - "flag": "--partial-sync", - "description": "set primary network partial sync for new validators (default true)" - }, - { - "flag": "--pos-maximum-stake-amount", - "description": "uint maximum stake amount (default 1000)" - }, - { - "flag": "--pos-maximum-stake-multiplier", - "description": "uint8 maximum stake multiplier (default 1)" - }, - { - "flag": "--pos-minimum-delegation-fee", - "description": "uint16 minimum delegation fee (default 1)" - }, - { - "flag": "--pos-minimum-stake-amount", - "description": "uint minimum stake amount (default 1)" - }, - { - "flag": "--pos-minimum-stake-duration", - "description": "uint minimum stake duration (default 100)" - }, - { - "flag": "--pos-weight-to-value-factor", - "description": "uint weight to value factor (default 1)" - }, - { - "flag": "--relay-cchain", - "description": "relay C-Chain as source and destination (default true)" - }, - { - "flag": "--relayer-allow-private-ips", - "description": "allow relayer to connec to private ips (default true)" - }, - { - "flag": "--relayer-amount", - "description": "float automatically fund relayer fee payments with the given amount" - }, - { - "flag": "--relayer-key", - "description": "string key to be used by default both for rewards and to pay fees" - }, - { - "flag": "--relayer-log-level", - "description": "string log level to be used for relayer logs (default \"info\")" - }, - { - "flag": "--relayer-path", - "description": "string relayer binary to use" - }, - { - "flag": "--relayer-version", - "description": "string relayer version to deploy (default \"latest-prerelease\")" - }, - { - "flag": "-s, --same-control-key", - "description": "use the fee-paying key as control key" - }, - { - "flag": "--skip-icm-deploy", - "description": "skip automatic ICM deploy" - }, - { - "flag": "--skip-local-teleporter", - "description": "skip automatic ICM deploy on local networks [to be deprecated]" - }, - { - "flag": "--skip-relayer", - "description": "skip relayer deploy" - }, - { - "flag": "--skip-teleporter-deploy", - "description": "skip automatic ICM deploy" - }, - { - "flag": "-u, --subnet-id", - "description": "string do not create a subnet, deploy the blockchain into the given subnet id" - }, - { - "flag": "--subnet-only", - "description": "only create a subnet" - }, - { - "flag": "--teleporter-messenger-contract-address-path", - "description": "string path to an ICM Messenger contract address file" - }, - { - "flag": "--teleporter-messenger-deployer-address-path", - "description": "string path to an ICM Messenger deployer address file" - }, - { - "flag": "--teleporter-messenger-deployer-tx-path", - "description": "string path to an ICM Messenger deployer tx file" - }, - { - "flag": "--teleporter-registry-bytecode-path", - "description": "string path to an ICM Registry bytecode file" - }, - { - "flag": "--teleporter-version", - "description": "string ICM version to deploy (default \"latest\")" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--threshold", - "description": "uint32 required number of control key signatures to make blockchain changes" - }, - { - "flag": "--use-local-machine", - "description": "use local machine as a blockchain validator" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "describe": { - "description": "The blockchain describe command prints the details of a Blockchain configuration to the console.\nBy default, the command prints a summary of the configuration. By providing the --genesis\nflag, the command instead prints out the raw genesis file.", - "flags": [ - { - "flag": "-g, --genesis", - "description": "Print the genesis to the console directly instead of the summary" - }, - { - "flag": "-h, --help", - "description": "help for describe" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "export": { - "description": "The blockchain export command write the details of an existing Blockchain deploy to a file.\n\nThe command prompts for an output path. You can also provide one with\nthe --output flag.", - "flags": [ - { - "flag": "--custom-vm-branch", - "description": "string custom vm branch" - }, - { - "flag": "--custom-vm-build-script", - "description": "string custom vm build-script" - }, - { - "flag": "--custom-vm-repo-url", - "description": "string custom vm repository url" - }, - { - "flag": "-h, --help", - "description": "help for export" - }, - { - "flag": "-o, --output", - "description": "string write the export data to the provided file path" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "import": { - "description": "Import blockchain configurations into avalanche-cli.\n\nThis command suite supports importing from a file created on another computer,\nor importing from blockchains running public networks\n(e.g. created manually or with the deprecated subnet-cli)", - "flags": [ - { - "flag": "-h, --help", - "description": "help for import" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "file": { - "description": "The blockchain import command will import a blockchain configuration from a file or a git repository.\n\nTo import from a file, you can optionally provide the path as a command-line argument.\nAlternatively, running the command without any arguments triggers an interactive wizard.\nTo import from a repository, go through the wizard. By default, an imported Blockchain doesn't \noverwrite an existing Blockchain with the same name. To allow overwrites, provide the --force\nflag.", - "flags": [ - { - "flag": "--blockchain", - "description": "string the blockchain configuration to import from the provided repo" - }, - { - "flag": "--branch", - "description": "string the repo branch to use if downloading a new repo" - }, - { - "flag": "-f, --force", - "description": "overwrite the existing configuration if one exists" - }, - { - "flag": "-h, --help", - "description": "help for file" - }, - { - "flag": "--repo", - "description": "string the repo to import (ex: ava-labs/avalanche-plugins-core) or url to download the repo from" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "public": { - "description": "The blockchain import public command imports a Blockchain configuration from a running network.\n\nBy default, an imported Blockchain\ndoesn't overwrite an existing Blockchain with the same name. To allow overwrites, provide the --force\nflag.", - "flags": [ - { - "flag": "--blockchain-id", - "description": "string the blockchain ID" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--custom", - "description": "use a custom VM template" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "--evm", - "description": "import a subnet-evm" - }, - { - "flag": "--force", - "description": "overwrite the existing configuration if one exists" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for public" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--node-url", - "description": "string [optional] URL of an already running validator" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "join": { - "description": "The blockchain join command configures your validator node to begin validating a new Blockchain.\n\nTo complete this process, you must have access to the machine running your validator. If the\nCLI is running on the same machine as your validator, it can generate or update your node's\nconfig file automatically. Alternatively, the command can print the necessary instructions\nto update your node manually. To complete the validation process, the Blockchain's admins must add\nthe NodeID of your validator to the Blockchain's allow list by calling addValidator with your\nNodeID.\n\nAfter you update your validator's config, you need to restart your validator manually. If\nyou provide the --avalanchego-config flag, this command attempts to edit the config file\nat that path.\n\nThis command currently only supports Blockchains deployed on the Fuji Testnet and Mainnet.", - "flags": [ - { - "flag": "--avalanchego-config", - "description": "string file path of the avalanchego config file" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--data-dir", - "description": "string path of avalanchego's data dir directory" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "--force-write", - "description": "if true, skip to prompt to overwrite the config file" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for join" - }, - { - "flag": "-k, --key", - "description": "string select the key to use [fuji only]" - }, - { - "flag": "-g, --ledger", - "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji)" - }, - { - "flag": "--ledger-addrs", - "description": "strings use the given ledger addresses" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--node-id", - "description": "string set the NodeID of the validator to check" - }, - { - "flag": "--plugin-dir", - "description": "string file path of avalanchego's plugin directory" - }, - { - "flag": "--print", - "description": "if true, print the manual config without prompting" - }, - { - "flag": "--stake-amount", - "description": "uint amount of tokens to stake on validator" - }, - { - "flag": "--staking-period", - "description": "duration how long validator validates for after start time" - }, - { - "flag": "--start-time", - "description": "string start time that validator starts validating" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "list": { - "description": "The blockchain list command prints the names of all created Blockchain configurations. Without any flags,\nit prints some general, static information about the Blockchain. With the --deployed flag, the command\nshows additional information including the VMID, BlockchainID and SubnetID.", - "flags": [ - { - "flag": "--deployed", - "description": "show additional deploy information" - }, - { - "flag": "-h, --help", - "description": "help for list" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "publish": { - "description": "The blockchain publish command publishes the Blockchain's VM to a repository.", - "flags": [ - { - "flag": "--alias", - "description": "string We publish to a remote repo, but identify the repo locally under a user-provided alias (e.g. myrepo)." - }, - { - "flag": "--force", - "description": "If true, ignores if the blockchain has been published in the past, and attempts a forced publish." - }, - { - "flag": "-h, --help", - "description": "help for publish" - }, - { - "flag": "--no-repo-path", - "description": "string Do not let the tool manage file publishing, but have it only generate the files and put them in the location given by this flag." - }, - { - "flag": "--repo-url", - "description": "string The URL of the repo where we are publishing" - }, - { - "flag": "--subnet-file-path", - "description": "string Path to the Blockchain description file. If not given, a prompting sequence will be initiated." - }, - { - "flag": "--vm-file-path", - "description": "string Path to the VM description file. If not given, a prompting sequence will be initiated." - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "removeValidator": { - "description": "The blockchain removeValidator command stops a whitelisted blockchain network validator from\nvalidating your deployed Blockchain.\n\nTo remove the validator from the Subnet's allow list, provide the validator's unique NodeID. You can bypass\nthese prompts by providing the values with flags.", - "flags": [ - { - "flag": "--aggregator-allow-private-peers", - "description": "allow the signature aggregator to connect to peers with private IP (default true)" - }, - { - "flag": "--aggregator-extra-endpoints", - "description": "strings endpoints for extra nodes that are needed in signature aggregation" - }, - { - "flag": "--aggregator-log-level", - "description": "string log level to use with signature aggregator (default \"Debug\")" - }, - { - "flag": "--aggregator-log-to-stdout", - "description": "use stdout for signature aggregator logs" - }, - { - "flag": "--auth-keys", - "description": "strings (for non-SOV blockchain only) control keys that will be used to authenticate the removeValidator tx" - }, - { - "flag": "--blockchain-genesis-key", - "description": "use genesis allocated key to pay fees for completing the validator's removal (blockchain gas token)" - }, - { - "flag": "--blockchain-key", - "description": "string CLI stored key to use to pay fees for completing the validator's removal (blockchain gas token)" - }, - { - "flag": "--blockchain-private-key", - "description": "string private key to use to pay fees for completing the validator's removal (blockchain gas token)" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "--force", - "description": "force validator removal even if it's not getting rewarded" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for removeValidator" - }, - { - "flag": "-k, --key", - "description": "string select the key to use [fuji deploy only]" - }, - { - "flag": "-g, --ledger", - "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji)" - }, - { - "flag": "--ledger-addrs", - "description": "strings use the given ledger addresses" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--node-endpoint", - "description": "string remove validator that responds to the given endpoint" - }, - { - "flag": "--node-id", - "description": "string node-id of the validator" - }, - { - "flag": "--output-tx-path", - "description": "string (for non-SOV blockchain only) file path of the removeValidator tx" - }, - { - "flag": "--rpc", - "description": "string connect to validator manager at the given rpc endpoint" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--uptime", - "description": "uint validator's uptime in seconds. If not provided, it will be automatically calculated" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "stats": { - "description": "The blockchain stats command prints validator statistics for the given Blockchain.", - "flags": [ - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for stats" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "upgrade": { - "description": "The blockchain upgrade command suite provides a collection of tools for\nupdating your developmental and deployed Blockchains.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for upgrade" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "apply": { - "description": "Apply generated upgrade bytes to running Blockchain nodes to trigger a network upgrade.\n\nFor public networks (Fuji Testnet or Mainnet), to complete this process,\nyou must have access to the machine running your validator.\nIf the CLI is running on the same machine as your validator, it can manipulate your node's\nconfiguration automatically. Alternatively, the command can print the necessary instructions\nto upgrade your node manually.\n\nAfter you update your validator's configuration, you need to restart your validator manually.\nIf you provide the --avalanchego-chain-config-dir flag, this command attempts to write the upgrade file at that path.\nRefer to https://docs.avax.network/nodes/maintain/chain-config-flags#subnet-chain-configs for related documentation.", - "flags": [ - { - "flag": "--avalanchego-chain-config-dir", - "description": "string avalanchego's chain config file directory (default \"/home/runner/.avalanchego/chains\")" - }, - { - "flag": "--config", - "description": "create upgrade config for future subnet deployments (same as generate)" - }, - { - "flag": "--force", - "description": "If true, don't prompt for confirmation of timestamps in the past" - }, - { - "flag": "--fuji", - "description": "fuji apply upgrade existing fuji deployment (alias for `testnet`)" - }, - { - "flag": "-h, --help", - "description": "help for apply" - }, - { - "flag": "--local", - "description": "local apply upgrade existing local deployment" - }, - { - "flag": "--mainnet", - "description": "mainnet apply upgrade existing mainnet deployment" - }, - { - "flag": "--print", - "description": "if true, print the manual config without prompting (for public networks only)" - }, - { - "flag": "--testnet", - "description": "testnet apply upgrade existing testnet deployment (alias for `fuji`)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "export": { - "description": "Export the upgrade bytes file to a location of choice on disk", - "flags": [ - { - "flag": "--force", - "description": "If true, overwrite a possibly existing file without prompting" - }, - { - "flag": "-h, --help", - "description": "help for export" - }, - { - "flag": "--upgrade-filepath", - "description": "string Export upgrade bytes file to location of choice on disk" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "generate": { - "description": "The blockchain upgrade generate command builds a new upgrade.json file to customize your Blockchain. It\nguides the user through the process using an interactive wizard.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for generate" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "import": { - "description": "Import the upgrade bytes file into the local environment", - "flags": [ - { - "flag": "-h, --help", - "description": "help for import" - }, - { - "flag": "--upgrade-filepath", - "description": "string Import upgrade bytes file into local environment" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "print": { - "description": "Print the upgrade.json file content", - "flags": [ - { - "flag": "-h, --help", - "description": "help for print" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "vm": { - "description": "The blockchain upgrade vm command enables the user to upgrade their Blockchain's VM binary. The command\ncan upgrade both local Blockchains and publicly deployed Blockchains on Fuji and Mainnet.\n\nThe command walks the user through an interactive wizard. The user can skip the wizard by providing\ncommand line flags.", - "flags": [ - { - "flag": "--binary", - "description": "string Upgrade to custom binary" - }, - { - "flag": "--config", - "description": "upgrade config for future subnet deployments" - }, - { - "flag": "--fuji", - "description": "fuji upgrade existing fuji deployment (alias for `testnet`)" - }, - { - "flag": "-h, --help", - "description": "help for vm" - }, - { - "flag": "--latest", - "description": "upgrade to latest version" - }, - { - "flag": "--local", - "description": "local upgrade existing local deployment" - }, - { - "flag": "--mainnet", - "description": "mainnet upgrade existing mainnet deployment" - }, - { - "flag": "--plugin-dir", - "description": "string plugin directory to automatically upgrade VM" - }, - { - "flag": "--print", - "description": "print instructions for upgrading" - }, - { - "flag": "--testnet", - "description": "testnet upgrade existing testnet deployment (alias for `fuji`)" - }, - { - "flag": "--version", - "description": "string Upgrade to custom version" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "validators": { - "description": "The blockchain validators command lists the validators of a blockchain and provides\nseveral statistics about them.", - "flags": [ - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for validators" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "vmid": { - "description": "The blockchain vmid command prints the virtual machine ID (VMID) for the given Blockchain.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for vmid" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "config": { - "description": "Customize configuration for Avalanche-CLI", - "flags": [ - { - "flag": "-h, --help", - "description": "help for config" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "authorize-cloud-access": { - "description": "set preferences to authorize access to cloud resources", - "flags": [ - { - "flag": "-h, --help", - "description": "help for authorize-cloud-access" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "metrics": { - "description": "set user metrics collection preferences", - "flags": [ - { - "flag": "-h, --help", - "description": "help for metrics" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "migrate": { - "description": "migrate command migrates old ~/.avalanche-cli.json and ~/.avalanche-cli/config to /.avalanche-cli/config.json..", - "flags": [ - { - "flag": "-h, --help", - "description": "help for migrate" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "snapshotsAutoSave": { - "description": "set user preference between auto saving local network snapshots or not", - "flags": [ - { - "flag": "-h, --help", - "description": "help for snapshotsAutoSave" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "update": { - "description": "set user preference between update check or not", - "flags": [ - { - "flag": "-h, --help", - "description": "help for update" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "contract": { - "description": "The contract command suite provides a collection of tools for deploying\nand interacting with smart contracts.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for contract" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "deploy": { - "description": "The contract command suite provides a collection of tools for deploying\nsmart contracts.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for deploy" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "erc20": { - "description": "Deploy an ERC20 token into a given Network and Blockchain", - "flags": [ - { - "flag": "--blockchain", - "description": "string deploy the ERC20 contract into the given CLI blockchain" - }, - { - "flag": "--blockchain-id", - "description": "string deploy the ERC20 contract into the given blockchain ID/Alias" - }, - { - "flag": "--c-chain", - "description": "deploy the ERC20 contract into C-Chain" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "--funded", - "description": "string set the funded address" - }, - { - "flag": "--genesis-key", - "description": "use genesis allocated key as contract deployer" - }, - { - "flag": "-h, --help", - "description": "help for erc20" - }, - { - "flag": "--key", - "description": "string CLI stored key to use as contract deployer" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "--private-key", - "description": "string private key to use as contract deployer" - }, - { - "flag": "--rpc", - "description": "string deploy the contract into the given rpc endpoint" - }, - { - "flag": "--supply", - "description": "uint set the token supply" - }, - { - "flag": "--symbol", - "description": "string set the token symbol" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "initValidatorManager": { - "description": "Initializes Proof of Authority(PoA) or Proof of Stake(PoS)Validator Manager contract on a Blockchain and sets up initial validator set on the Blockchain. For more info on Validator Manager, please head to https://github.com/ava-labs/icm-contracts/tree/main/contracts/validator-manager", - "flags": [ - { - "flag": "--aggregator-allow-private-peers", - "description": "allow the signature aggregator to connect to peers with private IP (default true)" - }, - { - "flag": "--aggregator-extra-endpoints", - "description": "strings endpoints for extra nodes that are needed in signature aggregation" - }, - { - "flag": "--aggregator-log-level", - "description": "string log level to use with signature aggregator (default \"Debug\")" - }, - { - "flag": "--aggregator-log-to-stdout", - "description": "dump signature aggregator logs to stdout" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "--genesis-key", - "description": "use genesis allocated key as contract deployer" - }, - { - "flag": "-h, --help", - "description": "help for initValidatorManager" - }, - { - "flag": "--key", - "description": "string CLI stored key to use as contract deployer" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--pos-maximum-stake-amount", - "description": "uint (PoS only) maximum stake amount (default 1000)" - }, - { - "flag": "--pos-maximum-stake-multiplier", - "description": "uint8 (PoS only )maximum stake multiplier (default 1)" - }, - { - "flag": "--pos-minimum-delegation-fee", - "description": "uint16 (PoS only) minimum delegation fee (default 1)" - }, - { - "flag": "--pos-minimum-stake-amount", - "description": "uint (PoS only) minimum stake amount (default 1)" - }, - { - "flag": "--pos-minimum-stake-duration", - "description": "uint (PoS only) minimum stake duration (default 100)" - }, - { - "flag": "--pos-reward-calculator-address", - "description": "string (PoS only) initialize the ValidatorManager with reward calculator address" - }, - { - "flag": "--pos-weight-to-value-factor", - "description": "uint (PoS only) weight to value factor (default 1)" - }, - { - "flag": "--private-key", - "description": "string private key to use as contract deployer" - }, - { - "flag": "--rpc", - "description": "string deploy the contract into the given rpc endpoint" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "help": { - "description": "Help provides help for any command in the application.\nSimply type avalanche help [path to command] for full details.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for help" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "icm": { - "description": "The messenger command suite provides a collection of tools for interacting\nwith ICM messenger contracts.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for icm" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "deploy": { - "description": "Deploys ICM Messenger and Registry into a given L1.", - "flags": [ - { - "flag": "--blockchain", - "description": "string deploy ICM into the given CLI blockchain" - }, - { - "flag": "--blockchain-id", - "description": "string deploy ICM into the given blockchain ID/Alias" - }, - { - "flag": "--c-chain", - "description": "deploy ICM into C-Chain" - }, - { - "flag": "--cchain-key", - "description": "string key to be used to pay fees to deploy ICM to C-Chain" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--deploy-messenger", - "description": "deploy ICM Messenger (default true)" - }, - { - "flag": "--deploy-registry", - "description": "deploy ICM Registry (default true)" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "--force-registry-deploy", - "description": "deploy ICM Registry even if Messenger has already been deployed" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "--genesis-key", - "description": "use genesis allocated key to fund ICM deploy" - }, - { - "flag": "-h, --help", - "description": "help for deploy" - }, - { - "flag": "--include-cchain", - "description": "deploy ICM also to C-Chain" - }, - { - "flag": "--key", - "description": "string CLI stored key to use to fund ICM deploy" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "--messenger-contract-address-path", - "description": "string path to a messenger contract address file" - }, - { - "flag": "--messenger-deployer-address-path", - "description": "string path to a messenger deployer address file" - }, - { - "flag": "--messenger-deployer-tx-path", - "description": "string path to a messenger deployer tx file" - }, - { - "flag": "--private-key", - "description": "string private key to use to fund ICM deploy" - }, - { - "flag": "--registry-bytecode-path", - "description": "string path to a registry bytecode file" - }, - { - "flag": "--rpc-url", - "description": "string use the given RPC URL to connect to the subnet" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--version", - "description": "string version to deploy (default \"latest\")" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "sendMsg": { - "description": "Sends and wait reception for a ICM msg between two blockchains.", - "flags": [ - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--dest-rpc", - "description": "string use the given destination blockchain rpc endpoint" - }, - { - "flag": "--destination-address", - "description": "string deliver the message to the given contract destination address" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "--genesis-key", - "description": "use genesis allocated key as message originator and to pay source blockchain fees" - }, - { - "flag": "-h, --help", - "description": "help for sendMsg" - }, - { - "flag": "--hex-encoded", - "description": "given message is hex encoded" - }, - { - "flag": "--key", - "description": "string CLI stored key to use as message originator and to pay source blockchain fees" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "--private-key", - "description": "string private key to use as message originator and to pay source blockchain fees" - }, - { - "flag": "--source-rpc", - "description": "string use the given source blockchain rpc endpoint" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "ictt": { - "description": "The ictt command suite provides tools to deploy and manage Interchain Token Transferrers.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for ictt" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "deploy": { - "description": "Deploys a Token Transferrer into a given Network and Subnets", - "flags": [ - { - "flag": "--c-chain-home", - "description": "set the Transferrer's Home Chain into C-Chain" - }, - { - "flag": "--c-chain-remote", - "description": "set the Transferrer's Remote Chain into C-Chain" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--deploy-erc20-home", - "description": "string deploy a Transferrer Home for the given Chain's ERC20 Token" - }, - { - "flag": "--deploy-native-home", - "description": "deploy a Transferrer Home for the Chain's Native Token" - }, - { - "flag": "--deploy-native-remote", - "description": "deploy a Transferrer Remote for the Chain's Native Token" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for deploy" - }, - { - "flag": "--home-blockchain", - "description": "string set the Transferrer's Home Chain into the given CLI blockchain" - }, - { - "flag": "--home-genesis-key", - "description": "use genesis allocated key to deploy Transferrer Home" - }, - { - "flag": "--home-key", - "description": "string CLI stored key to use to deploy Transferrer Home" - }, - { - "flag": "--home-private-key", - "description": "string private key to use to deploy Transferrer Home" - }, - { - "flag": "--home-rpc", - "description": "string use the given RPC URL to connect to the home blockchain" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "--remote-blockchain", - "description": "string set the Transferrer's Remote Chain into the given CLI blockchain" - }, - { - "flag": "--remote-genesis-key", - "description": "use genesis allocated key to deploy Transferrer Remote" - }, - { - "flag": "--remote-key", - "description": "string CLI stored key to use to deploy Transferrer Remote" - }, - { - "flag": "--remote-private-key", - "description": "string private key to use to deploy Transferrer Remote" - }, - { - "flag": "--remote-rpc", - "description": "string use the given RPC URL to connect to the remote blockchain" - }, - { - "flag": "--remote-token-decimals", - "description": "uint8 use the given number of token decimals for the Transferrer Remote [defaults to token home's decimals (18 for a new wrapped native home token)]" - }, - { - "flag": "--remove-minter-admin", - "description": "remove the native minter precompile admin found on remote blockchain genesis" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--use-home", - "description": "string use the given Transferrer's Home Address" - }, - { - "flag": "--version", - "description": "string tag/branch/commit of Avalanche Interchain Token Transfer (ICTT) to be used (defaults to main branch)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "interchain": { - "description": "The interchain command suite provides a collection of tools to\nset and manage interoperability between blockchains.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for interchain" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "messenger": { - "description": "The messenger command suite provides a collection of tools for interacting\nwith ICM messenger contracts.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for messenger" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "deploy": { - "description": "Deploys ICM Messenger and Registry into a given L1.", - "flags": [ - { - "flag": "--blockchain", - "description": "string deploy ICM into the given CLI blockchain" - }, - { - "flag": "--blockchain-id", - "description": "string deploy ICM into the given blockchain ID/Alias" - }, - { - "flag": "--c-chain", - "description": "deploy ICM into C-Chain" - }, - { - "flag": "--cchain-key", - "description": "string key to be used to pay fees to deploy ICM to C-Chain" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--deploy-messenger", - "description": "deploy ICM Messenger (default true)" - }, - { - "flag": "--deploy-registry", - "description": "deploy ICM Registry (default true)" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "--force-registry-deploy", - "description": "deploy ICM Registry even if Messenger has already been deployed" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "--genesis-key", - "description": "use genesis allocated key to fund ICM deploy" - }, - { - "flag": "-h, --help", - "description": "help for deploy" - }, - { - "flag": "--include-cchain", - "description": "deploy ICM also to C-Chain" - }, - { - "flag": "--key", - "description": "string CLI stored key to use to fund ICM deploy" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "--messenger-contract-address-path", - "description": "string path to a messenger contract address file" - }, - { - "flag": "--messenger-deployer-address-path", - "description": "string path to a messenger deployer address file" - }, - { - "flag": "--messenger-deployer-tx-path", - "description": "string path to a messenger deployer tx file" - }, - { - "flag": "--private-key", - "description": "string private key to use to fund ICM deploy" - }, - { - "flag": "--registry-bytecode-path", - "description": "string path to a registry bytecode file" - }, - { - "flag": "--rpc-url", - "description": "string use the given RPC URL to connect to the subnet" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--version", - "description": "string version to deploy (default \"latest\")" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "sendMsg": { - "description": "Sends and wait reception for a ICM msg between two blockchains.", - "flags": [ - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--dest-rpc", - "description": "string use the given destination blockchain rpc endpoint" - }, - { - "flag": "--destination-address", - "description": "string deliver the message to the given contract destination address" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "--genesis-key", - "description": "use genesis allocated key as message originator and to pay source blockchain fees" - }, - { - "flag": "-h, --help", - "description": "help for sendMsg" - }, - { - "flag": "--hex-encoded", - "description": "given message is hex encoded" - }, - { - "flag": "--key", - "description": "string CLI stored key to use as message originator and to pay source blockchain fees" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "--private-key", - "description": "string private key to use as message originator and to pay source blockchain fees" - }, - { - "flag": "--source-rpc", - "description": "string use the given source blockchain rpc endpoint" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "relayer": { - "description": "The relayer command suite provides a collection of tools for deploying\nand configuring an ICM relayers.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for relayer" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "deploy": { - "description": "Deploys an ICM Relayer for the given Network.", - "flags": [ - { - "flag": "--allow-private-ips", - "description": "allow relayer to connec to private ips (default true)" - }, - { - "flag": "--amount", - "description": "float automatically fund l1s fee payments with the given amount" - }, - { - "flag": "--bin-path", - "description": "string use the given relayer binary" - }, - { - "flag": "--blockchain-funding-key", - "description": "string key to be used to fund relayer account on all l1s" - }, - { - "flag": "--blockchains", - "description": "strings blockchains to relay as source and destination" - }, - { - "flag": "--cchain", - "description": "relay C-Chain as source and destination" - }, - { - "flag": "--cchain-amount", - "description": "float automatically fund cchain fee payments with the given amount" - }, - { - "flag": "--cchain-funding-key", - "description": "string key to be used to fund relayer account on cchain" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for deploy" - }, - { - "flag": "--key", - "description": "string key to be used by default both for rewards and to pay fees" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "--log-level", - "description": "string log level to use for relayer logs" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--version", - "description": "string version to deploy (default \"latest-prerelease\")" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "logs": { - "description": "Shows pretty formatted AWM relayer logs", - "flags": [ - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "--first", - "description": "uint output first N log lines" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for logs" - }, - { - "flag": "--last", - "description": "uint output last N log lines" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "--raw", - "description": "raw logs output" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "start": { - "description": "Starts AWM relayer on the specified network (Currently only for local network).", - "flags": [ - { - "flag": "--bin-path", - "description": "string use the given relayer binary" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for start" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--version", - "description": "string version to use (default \"latest-prerelease\")" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "stop": { - "description": "Stops AWM relayer on the specified network (Currently only for local network, cluster).", - "flags": [ - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for stop" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "tokenTransferrer": { - "description": "The tokenTransfer command suite provides tools to deploy and manage Token Transferrers.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for tokenTransferrer" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "deploy": { - "description": "Deploys a Token Transferrer into a given Network and Subnets", - "flags": [ - { - "flag": "--c-chain-home", - "description": "set the Transferrer's Home Chain into C-Chain" - }, - { - "flag": "--c-chain-remote", - "description": "set the Transferrer's Remote Chain into C-Chain" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--deploy-erc20-home", - "description": "string deploy a Transferrer Home for the given Chain's ERC20 Token" - }, - { - "flag": "--deploy-native-home", - "description": "deploy a Transferrer Home for the Chain's Native Token" - }, - { - "flag": "--deploy-native-remote", - "description": "deploy a Transferrer Remote for the Chain's Native Token" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for deploy" - }, - { - "flag": "--home-blockchain", - "description": "string set the Transferrer's Home Chain into the given CLI blockchain" - }, - { - "flag": "--home-genesis-key", - "description": "use genesis allocated key to deploy Transferrer Home" - }, - { - "flag": "--home-key", - "description": "string CLI stored key to use to deploy Transferrer Home" - }, - { - "flag": "--home-private-key", - "description": "string private key to use to deploy Transferrer Home" - }, - { - "flag": "--home-rpc", - "description": "string use the given RPC URL to connect to the home blockchain" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "--remote-blockchain", - "description": "string set the Transferrer's Remote Chain into the given CLI blockchain" - }, - { - "flag": "--remote-genesis-key", - "description": "use genesis allocated key to deploy Transferrer Remote" - }, - { - "flag": "--remote-key", - "description": "string CLI stored key to use to deploy Transferrer Remote" - }, - { - "flag": "--remote-private-key", - "description": "string private key to use to deploy Transferrer Remote" - }, - { - "flag": "--remote-rpc", - "description": "string use the given RPC URL to connect to the remote blockchain" - }, - { - "flag": "--remote-token-decimals", - "description": "uint8 use the given number of token decimals for the Transferrer Remote [defaults to token home's decimals (18 for a new wrapped native home token)]" - }, - { - "flag": "--remove-minter-admin", - "description": "remove the native minter precompile admin found on remote blockchain genesis" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--use-home", - "description": "string use the given Transferrer's Home Address" - }, - { - "flag": "--version", - "description": "string tag/branch/commit of Avalanche Interchain Token Transfer (ICTT) to be used (defaults to main branch)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - } - } - }, - "key": { - "description": "The key command suite provides a collection of tools for creating and managing\nsigning keys. You can use these keys to deploy Subnets to the Fuji Testnet,\nbut these keys are NOT suitable to use in production environments. DO NOT use\nthese keys on Mainnet.\n\nTo get started, use the key create command.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for key" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "create": { - "description": "The key create command generates a new private key to use for creating and controlling\ntest Subnets. Keys generated by this command are NOT cryptographically secure enough to\nuse in production environments. DO NOT use these keys on Mainnet.\n\nThe command works by generating a secp256 key and storing it with the provided keyName. You\ncan use this key in other commands by providing this keyName.\n\nIf you'd like to import an existing key instead of generating one from scratch, provide the\n--file flag.", - "flags": [ - { - "flag": "--file", - "description": "string import the key from an existing key file" - }, - { - "flag": "-f, --force", - "description": "overwrite an existing key with the same name" - }, - { - "flag": "-h, --help", - "description": "help for create" - }, - { - "flag": "--skip-balances", - "description": "do not query public network balances for an imported key" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "delete": { - "description": "The key delete command deletes an existing signing key.\n\nTo delete a key, provide the keyName. The command prompts for confirmation\nbefore deleting the key. To skip the confirmation, provide the --force flag.", - "flags": [ - { - "flag": "-f, --force", - "description": "delete the key without confirmation" - }, - { - "flag": "-h, --help", - "description": "help for delete" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "export": { - "description": "The key export command exports a created signing key. You can use an exported key in other\napplications or import it into another instance of Avalanche-CLI.\n\nBy default, the tool writes the hex encoded key to stdout. If you provide the --output\nflag, the command writes the key to a file of your choosing.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for export" - }, - { - "flag": "-o, --output", - "description": "string write the key to the provided file path" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "list": { - "description": "The key list command prints information for all stored signing\nkeys or for the ledger addresses associated to certain indices.", - "flags": [ - { - "flag": "-a, --all-networks", - "description": "list all network addresses" - }, - { - "flag": "--blockchains", - "description": "strings blockchains to show information about (p=p-chain, x=x-chain, c=c-chain, and blockchain names) (default p,x,c)" - }, - { - "flag": "-c, --cchain", - "description": "list C-Chain addresses (default true)" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for list" - }, - { - "flag": "--keys", - "description": "strings list addresses for the given keys" - }, - { - "flag": "-g, --ledger", - "description": "uints list ledger addresses for the given indices (default [])" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--pchain", - "description": "list P-Chain addresses (default true)" - }, - { - "flag": "--subnets", - "description": "strings subnets to show information about (p=p-chain, x=x-chain, c=c-chain, and blockchain names) (default p,x,c)" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--tokens", - "description": "strings provide balance information for the given token contract addresses (Evm only) (default [Native])" - }, - { - "flag": "--use-gwei", - "description": "use gwei for EVM balances" - }, - { - "flag": "-n, --use-nano-avax", - "description": "use nano Avax for balances" - }, - { - "flag": "--xchain", - "description": "list X-Chain addresses (default true)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "transfer": { - "description": "The key transfer command allows to transfer funds between stored keys or ledger addresses.", - "flags": [ - { - "flag": "-o, --amount", - "description": "float amount to send or receive (AVAX or TOKEN units)" - }, - { - "flag": "--c-chain-receiver", - "description": "receive at C-Chain" - }, - { - "flag": "--c-chain-sender", - "description": "send from C-Chain" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "-a, --destination-addr", - "description": "string destination address" - }, - { - "flag": "--destination-key", - "description": "string key associated to a destination address" - }, - { - "flag": "--destination-subnet", - "description": "string subnet where the funds will be sent (token transferrer experimental)" - }, - { - "flag": "--destination-transferrer-address", - "description": "string token transferrer address at the destination subnet (token transferrer experimental)" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for transfer" - }, - { - "flag": "-k, --key", - "description": "string key associated to the sender or receiver address" - }, - { - "flag": "-i, --ledger", - "description": "uint32 ledger index associated to the sender or receiver address (default 32768)" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--origin-subnet", - "description": "string subnet where the funds belong (token transferrer experimental)" - }, - { - "flag": "--origin-transferrer-address", - "description": "string token transferrer address at the origin subnet (token transferrer experimental)" - }, - { - "flag": "--p-chain-receiver", - "description": "receive at P-Chain" - }, - { - "flag": "--p-chain-sender", - "description": "send from P-Chain" - }, - { - "flag": "--receiver-blockchain", - "description": "string receive at the given CLI blockchain" - }, - { - "flag": "--receiver-blockchain-id", - "description": "string receive at the given blockchain ID/Alias" - }, - { - "flag": "--sender-blockchain", - "description": "string send from the given CLI blockchain" - }, - { - "flag": "--sender-blockchain-id", - "description": "string send from the given blockchain ID/Alias" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--x-chain-receiver", - "description": "receive at X-Chain" - }, - { - "flag": "--x-chain-sender", - "description": "send from X-Chain" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "network": { - "description": "The network command suite provides a collection of tools for managing local Blockchain\ndeployments.\n\nWhen you deploy a Blockchain locally, it runs on a local, multi-node Avalanche network. The\nblockchain deploy command starts this network in the background. This command suite allows you\nto shutdown, restart, and clear that network.\n\nThis network currently supports multiple, concurrently deployed Blockchains.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for network" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "clean": { - "description": "The network clean command shuts down your local, multi-node network. All deployed Subnets\nshutdown and delete their state. You can restart the network by deploying a new Subnet\nconfiguration.", - "flags": [ - { - "flag": "--hard", - "description": "Also clean downloaded avalanchego and plugin binaries" - }, - { - "flag": "-h, --help", - "description": "help for clean" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "start": { - "description": "The network start command starts a local, multi-node Avalanche network on your machine.\n\nBy default, the command loads the default snapshot. If you provide the --snapshot-name\nflag, the network loads that snapshot instead. The command fails if the local network is\nalready running.", - "flags": [ - { - "flag": "--avalanchego-path", - "description": "string use this avalanchego binary path" - }, - { - "flag": "--avalanchego-version", - "description": "string use this version of avalanchego (ex: v1.17.12) (default \"latest-prerelease\")" - }, - { - "flag": "-h, --help", - "description": "help for start" - }, - { - "flag": "--num-nodes", - "description": "uint32 number of nodes to be created on local network (default 2)" - }, - { - "flag": "--relayer-path", - "description": "string use this relayer binary path" - }, - { - "flag": "--relayer-version", - "description": "string use this relayer version (default \"latest-prerelease\")" - }, - { - "flag": "--snapshot-name", - "description": "string name of snapshot to use to start the network from (default \"default-1654102509\")" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "status": { - "description": "The network status command prints whether or not a local Avalanche\nnetwork is running and some basic stats about the network.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for status" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "stop": { - "description": "The network stop command shuts down your local, multi-node network.\n\nAll deployed Subnets shutdown gracefully and save their state. If you provide the\n--snapshot-name flag, the network saves its state under this named snapshot. You can\nreload this snapshot with network start --snapshot-name `snapshotName`. Otherwise, the\nnetwork saves to the default snapshot, overwriting any existing state. You can reload the\ndefault snapshot with network start.", - "flags": [ - { - "flag": "--dont-save", - "description": "do not save snapshot, just stop the network" - }, - { - "flag": "-h, --help", - "description": "help for stop" - }, - { - "flag": "--snapshot-name", - "description": "string name of snapshot to use to save network state into (default \"default-1654102509\")" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "node": { - "description": "The node command suite provides a collection of tools for creating and maintaining \nvalidators on Avalanche Network.\n\nTo get started, use the node create command wizard to walk through the\nconfiguration to make your node a primary validator on Avalanche public network. You can use the \nrest of the commands to maintain your node and make your node a Subnet Validator.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for node" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "addDashboard": { - "description": "(ALPHA Warning) This command is currently in experimental mode. \n\nThe node addDashboard command adds custom dashboard to the Grafana monitoring dashboard for the \ncluster.", - "flags": [ - { - "flag": "--add-grafana-dashboard", - "description": "string path to additional grafana dashboard json file" - }, - { - "flag": "-h, --help", - "description": "help for addDashboard" - }, - { - "flag": "--subnet", - "description": "string subnet that the dasbhoard is intended for (if any)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "create": { - "description": "(ALPHA Warning) This command is currently in experimental mode. \n\nThe node create command sets up a validator on a cloud server of your choice. \nThe validator will be validating the Avalanche Primary Network and Subnet \nof your choice. By default, the command runs an interactive wizard. It \nwalks you through all the steps you need to set up a validator.\nOnce this command is completed, you will have to wait for the validator\nto finish bootstrapping on the primary network before running further\ncommands on it, e.g. validating a Subnet. You can check the bootstrapping\nstatus by running avalanche node status \n\nThe created node will be part of group of validators called `clusterName` \nand users can call node commands with `clusterName` so that the command\nwill apply to all nodes in the cluster", - "flags": [ - { - "flag": "--add-grafana-dashboard", - "description": "string path to additional grafana dashboard json file" - }, - { - "flag": "--alternative-key-pair-name", - "description": "string key pair name to use if default one generates conflicts" - }, - { - "flag": "--authorize-access", - "description": "authorize CLI to create cloud resources" - }, - { - "flag": "--auto-replace-keypair", - "description": "automatically replaces key pair to access node if previous key pair is not found" - }, - { - "flag": "--avalanchego-version-from-subnet", - "description": "string install latest avalanchego version, that is compatible with the given subnet, on node/s" - }, - { - "flag": "--aws", - "description": "create node/s in AWS cloud" - }, - { - "flag": "--aws-profile", - "description": "string aws profile to use (default \"default\")" - }, - { - "flag": "--aws-volume-iops", - "description": "int AWS iops (for gp3, io1, and io2 volume types only) (default 3000)" - }, - { - "flag": "--aws-volume-size", - "description": "int AWS volume size in GB (default 1000)" - }, - { - "flag": "--aws-volume-throughput", - "description": "int AWS throughput in MiB/s (for gp3 volume type only) (default 125)" - }, - { - "flag": "--aws-volume-type", - "description": "string AWS volume type (default \"gp3\")" - }, - { - "flag": "--bootstrap-ids", - "description": "stringArray nodeIDs of bootstrap nodes" - }, - { - "flag": "--bootstrap-ips", - "description": "stringArray IP:port pairs of bootstrap nodes" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--custom-avalanchego-version", - "description": "string install given avalanchego version on node/s" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--enable-monitoring", - "description": "set up Prometheus monitoring for created nodes. This option creates a separate monitoring cloud instance and incures additional cost" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "--gcp", - "description": "create node/s in GCP cloud" - }, - { - "flag": "--gcp-credentials", - "description": "string use given GCP credentials" - }, - { - "flag": "--gcp-project", - "description": "string use given GCP project" - }, - { - "flag": "--genesis", - "description": "string path to genesis file" - }, - { - "flag": "--grafana-pkg", - "description": "string use grafana pkg instead of apt repo(by default), for example https://dl.grafana.com/oss/release/grafana_10.4.1_amd64.deb" - }, - { - "flag": "-h, --help", - "description": "help for create" - }, - { - "flag": "--latest-avalanchego-pre-release-version", - "description": "install latest avalanchego pre-release version on node/s" - }, - { - "flag": "--latest-avalanchego-version", - "description": "install latest avalanchego release version on node/s" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--node-type", - "description": "string cloud instance type. Use 'default' to use recommended default instance type" - }, - { - "flag": "--num-apis", - "description": "ints number of API nodes(nodes without stake) to create in the new Devnet" - }, - { - "flag": "--num-validators", - "description": "ints number of nodes to create per region(s). Use comma to separate multiple numbers for each region in the same order as --region flag" - }, - { - "flag": "--partial-sync", - "description": "primary network partial sync (default true)" - }, - { - "flag": "--public-http-port", - "description": "allow public access to avalanchego HTTP port" - }, - { - "flag": "--region", - "description": "strings create node(s) in given region(s). Use comma to separate multiple regions" - }, - { - "flag": "--ssh-agent-identity", - "description": "string use given ssh identity(only for ssh agent). If not set, default will be used" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--upgrade", - "description": "string path to upgrade file" - }, - { - "flag": "--use-ssh-agent", - "description": "use ssh agent(ex: Yubikey) for ssh auth" - }, - { - "flag": "--use-static-ip", - "description": "attach static Public IP on cloud servers (default true)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "destroy": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node destroy command terminates all running nodes in cloud server and deletes all storage disks.\n\nIf there is a static IP address attached, it will be released.", - "flags": [ - { - "flag": "--all", - "description": "destroy all existing clusters created by Avalanche CLI" - }, - { - "flag": "--authorize-access", - "description": "authorize CLI to release cloud resources" - }, - { - "flag": "-y, --authorize-all", - "description": "authorize all CLI requests" - }, - { - "flag": "--authorize-remove", - "description": "authorize CLI to remove all local files related to cloud nodes" - }, - { - "flag": "--aws-profile", - "description": "string aws profile to use (default \"default\")" - }, - { - "flag": "-h, --help", - "description": "help for destroy" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "devnet": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node devnet command suite provides a collection of commands related to devnets.\nYou can check the updated status by calling avalanche node status `clusterName`", - "flags": [ - { - "flag": "-h, --help", - "description": "help for devnet" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "deploy": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node devnet deploy command deploys a subnet into a devnet cluster, creating subnet and blockchain txs for it.\nIt saves the deploy info both locally and remotely.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for deploy" - }, - { - "flag": "--no-checks", - "description": "do not check for healthy status or rpc compatibility of nodes against subnet" - }, - { - "flag": "--subnet-aliases", - "description": "strings additional subnet aliases to be used for RPC calls in addition to subnet blockchain name" - }, - { - "flag": "--subnet-only", - "description": "only create a subnet" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "wiz": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node wiz command creates a devnet and deploys, sync and validate a subnet into it. It creates the subnet if so needed.", - "flags": [ - { - "flag": "--add-grafana-dashboard", - "description": "string path to additional grafana dashboard json file" - }, - { - "flag": "--alternative-key-pair-name", - "description": "string key pair name to use if default one generates conflicts" - }, - { - "flag": "--authorize-access", - "description": "authorize CLI to create cloud resources" - }, - { - "flag": "--auto-replace-keypair", - "description": "automatically replaces key pair to access node if previous key pair is not found" - }, - { - "flag": "--aws", - "description": "create node/s in AWS cloud" - }, - { - "flag": "--aws-profile", - "description": "string aws profile to use (default \"default\")" - }, - { - "flag": "--aws-volume-iops", - "description": "int AWS iops (for gp3, io1, and io2 volume types only) (default 3000)" - }, - { - "flag": "--aws-volume-size", - "description": "int AWS volume size in GB (default 1000)" - }, - { - "flag": "--aws-volume-throughput", - "description": "int AWS throughput in MiB/s (for gp3 volume type only) (default 125)" - }, - { - "flag": "--aws-volume-type", - "description": "string AWS volume type (default \"gp3\")" - }, - { - "flag": "--chain-config", - "description": "string path to the chain configuration for subnet" - }, - { - "flag": "--custom-avalanchego-version", - "description": "string install given avalanchego version on node/s" - }, - { - "flag": "--custom-subnet", - "description": "use a custom VM as the subnet virtual machine" - }, - { - "flag": "--custom-vm-branch", - "description": "string custom vm branch or commit" - }, - { - "flag": "--custom-vm-build-script", - "description": "string custom vm build-script" - }, - { - "flag": "--custom-vm-repo-url", - "description": "string custom vm repository url" - }, - { - "flag": "--default-validator-params", - "description": "use default weight/start/duration params for subnet validator" - }, - { - "flag": "--deploy-icm-messenger", - "description": "deploy Interchain Messenger (default true)" - }, - { - "flag": "--deploy-icm-registry", - "description": "deploy Interchain Registry (default true)" - }, - { - "flag": "--deploy-teleporter-messenger", - "description": "deploy Interchain Messenger (default true)" - }, - { - "flag": "--deploy-teleporter-registry", - "description": "deploy Interchain Registry (default true)" - }, - { - "flag": "--enable-monitoring", - "description": "set up Prometheus monitoring for created nodes. Please note that this option creates a separate monitoring instance and incures additional cost" - }, - { - "flag": "--evm-chain-id", - "description": "uint chain ID to use with Subnet-EVM" - }, - { - "flag": "--evm-defaults", - "description": "use default production settings with Subnet-EVM" - }, - { - "flag": "--evm-production-defaults", - "description": "use default production settings for your blockchain" - }, - { - "flag": "--evm-subnet", - "description": "use Subnet-EVM as the subnet virtual machine" - }, - { - "flag": "--evm-test-defaults", - "description": "use default test settings for your blockchain" - }, - { - "flag": "--evm-token", - "description": "string token name to use with Subnet-EVM" - }, - { - "flag": "--evm-version", - "description": "string version of Subnet-EVM to use" - }, - { - "flag": "--force-subnet-create", - "description": "overwrite the existing subnet configuration if one exists" - }, - { - "flag": "--gcp", - "description": "create node/s in GCP cloud" - }, - { - "flag": "--gcp-credentials", - "description": "string use given GCP credentials" - }, - { - "flag": "--gcp-project", - "description": "string use given GCP project" - }, - { - "flag": "--grafana-pkg", - "description": "string use grafana pkg instead of apt repo(by default), for example https://dl.grafana.com/oss/release/grafana_10.4.1_amd64.deb" - }, - { - "flag": "-h, --help", - "description": "help for wiz" - }, - { - "flag": "--icm", - "description": "generate an icm-ready vm" - }, - { - "flag": "--icm-messenger-contract-address-path", - "description": "string path to an icm messenger contract address file" - }, - { - "flag": "--icm-messenger-deployer-address-path", - "description": "string path to an icm messenger deployer address file" - }, - { - "flag": "--icm-messenger-deployer-tx-path", - "description": "string path to an icm messenger deployer tx file" - }, - { - "flag": "--icm-registry-bytecode-path", - "description": "string path to an icm registry bytecode file" - }, - { - "flag": "--icm-version", - "description": "string icm version to deploy (default \"latest\")" - }, - { - "flag": "--latest-avalanchego-pre-release-version", - "description": "install latest avalanchego pre-release version on node/s" - }, - { - "flag": "--latest-avalanchego-version", - "description": "install latest avalanchego release version on node/s" - }, - { - "flag": "--latest-evm-version", - "description": "use latest Subnet-EVM released version" - }, - { - "flag": "--latest-pre-released-evm-version", - "description": "use latest Subnet-EVM pre-released version" - }, - { - "flag": "--node-config", - "description": "string path to avalanchego node configuration for subnet" - }, - { - "flag": "--node-type", - "description": "string cloud instance type. Use 'default' to use recommended default instance type" - }, - { - "flag": "--num-apis", - "description": "ints number of API nodes(nodes without stake) to create in the new Devnet" - }, - { - "flag": "--num-validators", - "description": "ints number of nodes to create per region(s). Use comma to separate multiple numbers for each region in the same order as --region flag" - }, - { - "flag": "--public-http-port", - "description": "allow public access to avalanchego HTTP port" - }, - { - "flag": "--region", - "description": "strings create node/s in given region(s). Use comma to separate multiple regions" - }, - { - "flag": "--relayer", - "description": "run AWM relayer when deploying the vm" - }, - { - "flag": "--ssh-agent-identity", - "description": "string use given ssh identity(only for ssh agent). If not set, default will be used." - }, - { - "flag": "--subnet-aliases", - "description": "strings additional subnet aliases to be used for RPC calls in addition to subnet blockchain name" - }, - { - "flag": "--subnet-config", - "description": "string path to the subnet configuration for subnet" - }, - { - "flag": "--subnet-genesis", - "description": "string file path of the subnet genesis" - }, - { - "flag": "--teleporter", - "description": "generate an icm-ready vm" - }, - { - "flag": "--teleporter-messenger-contract-address-path", - "description": "string path to an icm messenger contract address file" - }, - { - "flag": "--teleporter-messenger-deployer-address-path", - "description": "string path to an icm messenger deployer address file" - }, - { - "flag": "--teleporter-messenger-deployer-tx-path", - "description": "string path to an icm messenger deployer tx file" - }, - { - "flag": "--teleporter-registry-bytecode-path", - "description": "string path to an icm registry bytecode file" - }, - { - "flag": "--teleporter-version", - "description": "string icm version to deploy (default \"latest\")" - }, - { - "flag": "--use-ssh-agent", - "description": "use ssh agent for ssh" - }, - { - "flag": "--use-static-ip", - "description": "attach static Public IP on cloud servers (default true)" - }, - { - "flag": "--validators", - "description": "strings deploy subnet into given comma separated list of validators. defaults to all cluster nodes" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "export": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node export command exports cluster configuration and its nodes config to a text file.\n\nIf no file is specified, the configuration is printed to the stdout.\n\nUse --include-secrets to include keys in the export. In this case please keep the file secure as it contains sensitive information.\n\nExported cluster configuration without secrets can be imported by another user using node import command.", - "flags": [ - { - "flag": "--file", - "description": "string specify the file to export the cluster configuration to" - }, - { - "flag": "--force", - "description": "overwrite the file if it exists" - }, - { - "flag": "-h, --help", - "description": "help for export" - }, - { - "flag": "--include-secrets", - "description": "include keys in the export" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "import": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node import command imports cluster configuration and its nodes configuration from a text file\ncreated from the node export command.\n\nPrior to calling this command, call node whitelist command to have your SSH public key and IP whitelisted by\nthe cluster owner. This will enable you to use avalanche-cli commands to manage the imported cluster.\n\nPlease note, that this imported cluster will be considered as EXTERNAL by avalanche-cli, so some commands\naffecting cloud nodes like node create or node destroy will be not applicable to it.", - "flags": [ - { - "flag": "--file", - "description": "string specify the file to export the cluster configuration to" - }, - { - "flag": "-h, --help", - "description": "help for import" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "list": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node list command lists all clusters together with their nodes.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for list" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "loadtest": { - "description": "(ALPHA Warning) This command is currently in experimental mode. \n\nThe node loadtest command suite starts and stops a load test for an existing devnet cluster.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for loadtest" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "start": { - "description": "(ALPHA Warning) This command is currently in experimental mode. \n\nThe node loadtest command starts load testing for an existing devnet cluster. If the cluster does \nnot have an existing load test host, the command creates a separate cloud server and builds the load \ntest binary based on the provided load test Git Repo URL and load test binary build command. \n\nThe command will then run the load test binary based on the provided load test run command.", - "flags": [ - { - "flag": "--authorize-access", - "description": "authorize CLI to create cloud resources" - }, - { - "flag": "--aws", - "description": "create loadtest node in AWS cloud" - }, - { - "flag": "--aws-profile", - "description": "string aws profile to use (default \"default\")" - }, - { - "flag": "--gcp", - "description": "create loadtest in GCP cloud" - }, - { - "flag": "-h, --help", - "description": "help for start" - }, - { - "flag": "--load-test-branch", - "description": "string load test branch or commit" - }, - { - "flag": "--load-test-build-cmd", - "description": "string command to build load test binary" - }, - { - "flag": "--load-test-cmd", - "description": "string command to run load test" - }, - { - "flag": "--load-test-repo", - "description": "string load test repo url to use" - }, - { - "flag": "--node-type", - "description": "string cloud instance type for loadtest script" - }, - { - "flag": "--region", - "description": "string create load test node in a given region" - }, - { - "flag": "--ssh-agent-identity", - "description": "string use given ssh identity(only for ssh agent). If not set, default will be used" - }, - { - "flag": "--use-ssh-agent", - "description": "use ssh agent(ex: Yubikey) for ssh auth" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "stop": { - "description": "(ALPHA Warning) This command is currently in experimental mode. \n\nThe node loadtest stop command stops load testing for an existing devnet cluster and terminates the \nseparate cloud server created to host the load test.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for stop" - }, - { - "flag": "--load-test", - "description": "strings stop specified load test node(s). Use comma to separate multiple load test instance names" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "local": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node local command suite provides a collection of commands related to local nodes", - "flags": [ - { - "flag": "-h, --help", - "description": "help for local" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "destroy": { - "description": "Cleanup local node.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for destroy" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "start": { - "description": "(ALPHA Warning) This command is currently in experimental mode. \n\nThe node local start command sets up a validator on a local server. \nThe validator will be validating the Avalanche Primary Network and Subnet \nof your choice. By default, the command runs an interactive wizard. It \nwalks you through all the steps you need to set up a validator.\nOnce this command is completed, you will have to wait for the validator\nto finish bootstrapping on the primary network before running further\ncommands on it, e.g. validating a Subnet. You can check the bootstrapping\nstatus by running avalanche node status local", - "flags": [ - { - "flag": "--avalanchego-path", - "description": "string use this avalanchego binary path" - }, - { - "flag": "--bootstrap-id", - "description": "stringArray nodeIDs of bootstrap nodes" - }, - { - "flag": "--bootstrap-ip", - "description": "stringArray IP:port pairs of bootstrap nodes" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--custom-avalanchego-version", - "description": "string install given avalanchego version on node/s" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "--genesis", - "description": "string path to genesis file" - }, - { - "flag": "-h, --help", - "description": "help for start" - }, - { - "flag": "--latest-avalanchego-pre-release-version", - "description": "install latest avalanchego pre-release version on node/s (default true)" - }, - { - "flag": "--latest-avalanchego-version", - "description": "install latest avalanchego release version on node/s" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--node-config", - "description": "string path to common avalanchego config settings for all nodes" - }, - { - "flag": "--num-nodes", - "description": "uint32 number of nodes to start (default 1)" - }, - { - "flag": "--partial-sync", - "description": "primary network partial sync (default true)" - }, - { - "flag": "--staking-cert-key-path", - "description": "string path to provided staking cert key for node" - }, - { - "flag": "--staking-signer-key-path", - "description": "string path to provided staking signer key for node" - }, - { - "flag": "--staking-tls-key-path", - "description": "string path to provided staking tls key for node" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--upgrade", - "description": "string path to upgrade file" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "status": { - "description": "Get status of local node.", - "flags": [ - { - "flag": "--blockchain", - "description": "string specify the blockchain the node is syncing with" - }, - { - "flag": "-h, --help", - "description": "help for status" - }, - { - "flag": "--subnet", - "description": "string specify the blockchain the node is syncing with" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "stop": { - "description": "Stop local node.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for stop" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "track": { - "description": "(ALPHA Warning) make the local node at the cluster to track given blockchain", - "flags": [ - { - "flag": "--avalanchego-path", - "description": "string use this avalanchego binary path" - }, - { - "flag": "--custom-avalanchego-version", - "description": "string install given avalanchego version on node/s" - }, - { - "flag": "-h, --help", - "description": "help for track" - }, - { - "flag": "--latest-avalanchego-pre-release-version", - "description": "install latest avalanchego pre-release version on node/s (default true)" - }, - { - "flag": "--latest-avalanchego-version", - "description": "install latest avalanchego release version on node/s" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "refresh-ips": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node refresh-ips command obtains the current IP for all nodes with dynamic IPs in the cluster,\nand updates the local node information used by CLI commands.", - "flags": [ - { - "flag": "--aws-profile", - "description": "string aws profile to use (default \"default\")" - }, - { - "flag": "-h, --help", - "description": "help for refresh-ips" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "resize": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node resize command can change the amount of CPU, memory and disk space available for the cluster nodes.", - "flags": [ - { - "flag": "--aws-profile", - "description": "string aws profile to use (default \"default\")" - }, - { - "flag": "--disk-size", - "description": "string Disk size to resize in Gb (e.g. 1000Gb)" - }, - { - "flag": "-h, --help", - "description": "help for resize" - }, - { - "flag": "--node-type", - "description": "string Node type to resize (e.g. t3.2xlarge)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "scp": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node scp command securely copies files to and from nodes. Remote source or destionation can be specified using the following format:\n[clusterName|nodeID|instanceID|IP]:/path/to/file. Regular expressions are supported for the source files like /tmp/*.txt.\nFile transfer to the nodes are parallelized. IF source or destination is cluster, the other should be a local file path. \nIf both destinations are remote, they must be nodes for the same cluster and not clusters themselves.\nFor example:\n$ avalanche node scp [cluster1|node1]:/tmp/file.txt /tmp/file.txt\n$ avalanche node scp /tmp/file.txt [cluster1|NodeID-XXXX]:/tmp/file.txt\n$ avalanche node scp node1:/tmp/file.txt NodeID-XXXX:/tmp/file.txt", - "flags": [ - { - "flag": "--compress", - "description": "use compression for ssh" - }, - { - "flag": "-h, --help", - "description": "help for scp" - }, - { - "flag": "--recursive", - "description": "copy directories recursively" - }, - { - "flag": "--with-loadtest", - "description": "include loadtest node for scp cluster operations" - }, - { - "flag": "--with-monitor", - "description": "include monitoring node for scp cluster operations" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "ssh": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node ssh command execute a given command [cmd] using ssh on all nodes in the cluster if ClusterName is given.\nIf no command is given, just prints the ssh command to be used to connect to each node in the cluster.\nFor provided NodeID or InstanceID or IP, the command [cmd] will be executed on that node.\nIf no [cmd] is provided for the node, it will open ssh shell there.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for ssh" - }, - { - "flag": "--parallel", - "description": "run ssh command on all nodes in parallel" - }, - { - "flag": "--with-loadtest", - "description": "include loadtest node for ssh cluster operations" - }, - { - "flag": "--with-monitor", - "description": "include monitoring node for ssh cluster operations" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "status": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node status command gets the bootstrap status of all nodes in a cluster with the Primary Network. \nIf no cluster is given, defaults to node list behaviour.\n\nTo get the bootstrap status of a node with a Blockchain, use --blockchain flag", - "flags": [ - { - "flag": "--blockchain", - "description": "string specify the blockchain the node is syncing with" - }, - { - "flag": "-h, --help", - "description": "help for status" - }, - { - "flag": "--subnet", - "description": "string specify the blockchain the node is syncing with" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "sync": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node sync command enables all nodes in a cluster to be bootstrapped to a Blockchain.\nYou can check the blockchain bootstrap status by calling avalanche node status `clusterName` --blockchain `blockchainName`", - "flags": [ - { - "flag": "-h, --help", - "description": "help for sync" - }, - { - "flag": "--no-checks", - "description": "do not check for bootstrapped/healthy status or rpc compatibility of nodes against subnet" - }, - { - "flag": "--subnet-aliases", - "description": "strings subnet alias to be used for RPC calls. defaults to subnet blockchain ID" - }, - { - "flag": "--validators", - "description": "strings sync subnet into given comma separated list of validators. defaults to all cluster nodes" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "update": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node update command suite provides a collection of commands for nodes to update\ntheir avalanchego or VM config.\n\nYou can check the status after update by calling avalanche node status", - "flags": [ - { - "flag": "-h, --help", - "description": "help for update" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "subnet": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node update subnet command updates all nodes in a cluster with latest Subnet configuration and VM for custom VM.\nYou can check the updated subnet bootstrap status by calling avalanche node status `clusterName` --subnet `subnetName`", - "flags": [ - { - "flag": "-h, --help", - "description": "help for subnet" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "upgrade": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node update command suite provides a collection of commands for nodes to update\ntheir avalanchego or VM version.\n\nYou can check the status after upgrade by calling avalanche node status", - "flags": [ - { - "flag": "-h, --help", - "description": "help for upgrade" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "validate": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node validate command suite provides a collection of commands for nodes to join\nthe Primary Network and Subnets as validators.\nIf any of the commands is run before the nodes are bootstrapped on the Primary Network, the command \nwill fail. You can check the bootstrap status by calling avalanche node status `clusterName`", - "flags": [ - { - "flag": "-h, --help", - "description": "help for validate" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "primary": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node validate primary command enables all nodes in a cluster to be validators of Primary\nNetwork.", - "flags": [ - { - "flag": "-e, --ewoq", - "description": "use ewoq key [fuji/devnet only]" - }, - { - "flag": "-h, --help", - "description": "help for primary" - }, - { - "flag": "-k, --key", - "description": "string select the key to use [fuji only]" - }, - { - "flag": "-g, --ledger", - "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet)" - }, - { - "flag": "--ledger-addrs", - "description": "strings use the given ledger addresses" - }, - { - "flag": "--stake-amount", - "description": "uint how many AVAX to stake in the validator" - }, - { - "flag": "--staking-period", - "description": "duration how long validator validates for after start time" - }, - { - "flag": "--start-time", - "description": "string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "subnet": { - "description": "(ALPHA Warning) This command is currently in experimental mode.\n\nThe node validate subnet command enables all nodes in a cluster to be validators of a Subnet.\nIf the command is run before the nodes are Primary Network validators, the command will first\nmake the nodes Primary Network validators before making them Subnet validators. \nIf The command is run before the nodes are bootstrapped on the Primary Network, the command will fail. \nYou can check the bootstrap status by calling avalanche node status `clusterName`\nIf The command is run before the nodes are synced to the subnet, the command will fail.\nYou can check the subnet sync status by calling avalanche node status `clusterName` --subnet `subnetName`", - "flags": [ - { - "flag": "--default-validator-params", - "description": "use default weight/start/duration params for subnet validator" - }, - { - "flag": "-e, --ewoq", - "description": "use ewoq key [fuji/devnet only]" - }, - { - "flag": "-h, --help", - "description": "help for subnet" - }, - { - "flag": "-k, --key", - "description": "string select the key to use [fuji/devnet only]" - }, - { - "flag": "-g, --ledger", - "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet)" - }, - { - "flag": "--ledger-addrs", - "description": "strings use the given ledger addresses" - }, - { - "flag": "--no-checks", - "description": "do not check for bootstrapped status or healthy status" - }, - { - "flag": "--no-validation-checks", - "description": "do not check if subnet is already synced or validated (default true)" - }, - { - "flag": "--stake-amount", - "description": "uint how many AVAX to stake in the validator" - }, - { - "flag": "--staking-period", - "description": "duration how long validator validates for after start time" - }, - { - "flag": "--start-time", - "description": "string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format" - }, - { - "flag": "--validators", - "description": "strings validate subnet for the given comma separated list of validators. defaults to all cluster nodes" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "whitelist": { - "description": "(ALPHA Warning) The whitelist command suite provides a collection of tools for granting access to the cluster.\n\n\tCommand adds IP if --ip params provided to cloud security access rules allowing it to access all nodes in the cluster via ssh or http.\n\tIt also command adds SSH public key to all nodes in the cluster if --ssh params is there.\n\tIf no params provided it detects current user IP automaticaly and whitelists it", - "flags": [ - { - "flag": "-y, --current-ip", - "description": "whitelist current host ip" - }, - { - "flag": "-h, --help", - "description": "help for whitelist" - }, - { - "flag": "--ip", - "description": "string ip address to whitelist" - }, - { - "flag": "--ssh", - "description": "string ssh public key to whitelist" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "primary": { - "description": "The primary command suite provides a collection of tools for interacting with the\nPrimary Network", - "flags": [ - { - "flag": "-h, --help", - "description": "help for primary" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "addValidator": { - "description": "The primary addValidator command adds a node as a validator \nin the Primary Network", - "flags": [ - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--delegation-fee", - "description": "uint32 set the delegation fee (20 000 is equivalent to 2%)" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for addValidator" - }, - { - "flag": "-k, --key", - "description": "string select the key to use [fuji only]" - }, - { - "flag": "-g, --ledger", - "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji)" - }, - { - "flag": "--ledger-addrs", - "description": "strings use the given ledger addresses" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--nodeID", - "description": "string set the NodeID of the validator to add" - }, - { - "flag": "--proof-of-possession", - "description": "string set the BLS proof of possession of the validator to add" - }, - { - "flag": "--public-key", - "description": "string set the BLS public key of the validator to add" - }, - { - "flag": "--staking-period", - "description": "duration how long this validator will be staking" - }, - { - "flag": "--start-time", - "description": "string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--weight", - "description": "uint set the staking weight of the validator to add" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "describe": { - "description": "The subnet describe command prints details of the primary network configuration to the console.", - "flags": [ - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "-h, --help", - "description": "help for describe" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "teleporter": { - "description": "The messenger command suite provides a collection of tools for interacting\nwith ICM messenger contracts.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for teleporter" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "deploy": { - "description": "Deploys ICM Messenger and Registry into a given L1.", - "flags": [ - { - "flag": "--blockchain", - "description": "string deploy ICM into the given CLI blockchain" - }, - { - "flag": "--blockchain-id", - "description": "string deploy ICM into the given blockchain ID/Alias" - }, - { - "flag": "--c-chain", - "description": "deploy ICM into C-Chain" - }, - { - "flag": "--cchain-key", - "description": "string key to be used to pay fees to deploy ICM to C-Chain" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--deploy-messenger", - "description": "deploy ICM Messenger (default true)" - }, - { - "flag": "--deploy-registry", - "description": "deploy ICM Registry (default true)" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "--force-registry-deploy", - "description": "deploy ICM Registry even if Messenger has already been deployed" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "--genesis-key", - "description": "use genesis allocated key to fund ICM deploy" - }, - { - "flag": "-h, --help", - "description": "help for deploy" - }, - { - "flag": "--include-cchain", - "description": "deploy ICM also to C-Chain" - }, - { - "flag": "--key", - "description": "string CLI stored key to use to fund ICM deploy" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "--messenger-contract-address-path", - "description": "string path to a messenger contract address file" - }, - { - "flag": "--messenger-deployer-address-path", - "description": "string path to a messenger deployer address file" - }, - { - "flag": "--messenger-deployer-tx-path", - "description": "string path to a messenger deployer tx file" - }, - { - "flag": "--private-key", - "description": "string private key to use to fund ICM deploy" - }, - { - "flag": "--registry-bytecode-path", - "description": "string path to a registry bytecode file" - }, - { - "flag": "--rpc-url", - "description": "string use the given RPC URL to connect to the subnet" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--version", - "description": "string version to deploy (default \"latest\")" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "sendMsg": { - "description": "Sends and wait reception for a ICM msg between two blockchains.", - "flags": [ - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--dest-rpc", - "description": "string use the given destination blockchain rpc endpoint" - }, - { - "flag": "--destination-address", - "description": "string deliver the message to the given contract destination address" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "--genesis-key", - "description": "use genesis allocated key as message originator and to pay source blockchain fees" - }, - { - "flag": "-h, --help", - "description": "help for sendMsg" - }, - { - "flag": "--hex-encoded", - "description": "given message is hex encoded" - }, - { - "flag": "--key", - "description": "string CLI stored key to use as message originator and to pay source blockchain fees" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "--private-key", - "description": "string private key to use as message originator and to pay source blockchain fees" - }, - { - "flag": "--source-rpc", - "description": "string use the given source blockchain rpc endpoint" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "transaction": { - "description": "The transaction command suite provides all of the utilities required to sign multisig transactions.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for transaction" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "commit": { - "description": "The transaction commit command commits a transaction by submitting it to the P-Chain.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for commit" - }, - { - "flag": "--input-tx-filepath", - "description": "string Path to the transaction signed by all signatories" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "sign": { - "description": "The transaction sign command signs a multisig transaction.", - "flags": [ - { - "flag": "-h, --help", - "description": "help for sign" - }, - { - "flag": "--input-tx-filepath", - "description": "string Path to the transaction file for signing" - }, - { - "flag": "-k, --key", - "description": "string select the key to use [fuji only]" - }, - { - "flag": "-g, --ledger", - "description": "use ledger instead of key (always true on mainnet, defaults to false on fuji)" - }, - { - "flag": "--ledger-addrs", - "description": "strings use the given ledger addresses" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - }, - "update": { - "description": "Check if an update is available, and prompt the user to install it", - "flags": [ - { - "flag": "-c, --confirm", - "description": "Assume yes for installation" - }, - { - "flag": "-h, --help", - "description": "help for update" - }, - { - "flag": "-v, --version", - "description": "version for update" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "validator": { - "description": "The validator command suite provides a collection of tools for managing validator\nbalance on P-Chain.\n\nValidator's balance is used to pay for continuous fee to the P-Chain. When this Balance reaches 0, \nthe validator will be considered inactive and will no longer participate in validating the L1", - "flags": [ - { - "flag": "-h, --help", - "description": "help for validator" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": { - "getBalance": { - "description": "This command gets the remaining validator P-Chain balance that is available to pay\nP-Chain continuous fee", - "flags": [ - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for getBalance" - }, - { - "flag": "--l1", - "description": "string name of L1" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--node-id", - "description": "string node ID of the validator" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--validation-id", - "description": "string validation ID of the validator" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "increaseBalance": { - "description": "This command increases the validator P-Chain balance", - "flags": [ - { - "flag": "--balance", - "description": "float amount of AVAX to increase validator's balance by" - }, - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for increaseBalance" - }, - { - "flag": "-k, --key", - "description": "string select the key to use [fuji/devnet deploy only]" - }, - { - "flag": "--l1", - "description": "string name of L1 (to increase balance of bootstrap validators only)" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "--node-id", - "description": "string node ID of the validator" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--validation-id", - "description": "string validationIDStr of the validator" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - }, - "list": { - "description": "This command gets a list of the validators of the L1", - "flags": [ - { - "flag": "--cluster", - "description": "string operate on the given cluster" - }, - { - "flag": "--devnet", - "description": "operate on a devnet network" - }, - { - "flag": "--endpoint", - "description": "string use the given endpoint for network operations" - }, - { - "flag": "-f, --fuji", - "description": "testnet operate on fuji (alias to testnet" - }, - { - "flag": "-h, --help", - "description": "help for list" - }, - { - "flag": "-l, --local", - "description": "operate on a local network" - }, - { - "flag": "-m, --mainnet", - "description": "operate on mainnet" - }, - { - "flag": "-t, --testnet", - "description": "fuji operate on testnet (alias to fuji)" - }, - { - "flag": "--config", - "description": "string config file (default is $HOME/.avalanche-cli/config.json)" - }, - { - "flag": "--log-level", - "description": "string log level for the application (default \"ERROR\")" - }, - { - "flag": "--skip-update-check", - "description": "skip check for new versions" - } - ], - "subcommands": {} - } - } - } - } -} \ No newline at end of file diff --git a/cli_structure.md b/cli_structure.md deleted file mode 100644 index 215f01a24..000000000 --- a/cli_structure.md +++ /dev/null @@ -1,3614 +0,0 @@ - -## avalanche blockchain - -The blockchain command suite provides a collection of tools for developing -and deploying Blockchains. - -To get started, use the blockchain create command wizard to walk through the -configuration of your very first Blockchain. Then, go ahead and deploy it -with the blockchain deploy command. You can use the rest of the commands to -manage your Blockchain configurations and live deployments. - -**Usage:** -```bash -avalanche blockchain [subcommand] [flags] -``` - -**Subcommands:** - -- [`addValidator`](#avalanche-blockchain-addvalidator): The blockchain addValidator command adds a node as a validator to -an L1 of the user provided deployed network. If the network is proof of -authority, the owner of the validator manager contract must sign the -transaction. If the network is proof of stake, the node must stake the L1's -staking token. Both processes will issue a RegisterL1ValidatorTx on the P-Chain. - -This command currently only works on Blockchains deployed to either the Fuji -Testnet or Mainnet. -- [`changeOwner`](#avalanche-blockchain-changeowner): The blockchain changeOwner changes the owner of the deployed Blockchain. -- [`changeWeight`](#avalanche-blockchain-changeweight): The blockchain changeWeight command changes the weight of a L1 Validator. - -The L1 has to be a Proof of Authority L1. -- [`configure`](#avalanche-blockchain-configure): AvalancheGo nodes support several different configuration files. Each network (a Subnet or an L1) has their own config which applies to all blockchains/VMs in the network. Each blockchain within the network -can have its own chain config. A chain can also have special requirements for the AvalancheGo node -configuration itself. This command allows you to set all those files. -- [`create`](#avalanche-blockchain-create): The blockchain create command builds a new genesis file to configure your Blockchain. -By default, the command runs an interactive wizard. It walks you through -all the steps you need to create your first Blockchain. - -The tool supports deploying Subnet-EVM, and custom VMs. You -can create a custom, user-generated genesis with a custom VM by providing -the path to your genesis and VM binaries with the --genesis and --vm flags. - -By default, running the command with a blockchainName that already exists -causes the command to fail. If you'd like to overwrite an existing -configuration, pass the -f flag. -- [`delete`](#avalanche-blockchain-delete): The blockchain delete command deletes an existing blockchain configuration. -- [`deploy`](#avalanche-blockchain-deploy): The blockchain deploy command deploys your Blockchain configuration locally, to Fuji Testnet, or to Mainnet. - -At the end of the call, the command prints the RPC URL you can use to interact with the Subnet. - -Avalanche-CLI only supports deploying an individual Blockchain once per network. Subsequent -attempts to deploy the same Blockchain to the same network (local, Fuji, Mainnet) aren't -allowed. If you'd like to redeploy a Blockchain locally for testing, you must first call -avalanche network clean to reset all deployed chain state. Subsequent local deploys -redeploy the chain with fresh state. You can deploy the same Blockchain to multiple networks, -so you can take your locally tested Blockchain and deploy it on Fuji or Mainnet. -- [`describe`](#avalanche-blockchain-describe): The blockchain describe command prints the details of a Blockchain configuration to the console. -By default, the command prints a summary of the configuration. By providing the --genesis -flag, the command instead prints out the raw genesis file. -- [`export`](#avalanche-blockchain-export): The blockchain export command write the details of an existing Blockchain deploy to a file. - -The command prompts for an output path. You can also provide one with -the --output flag. -- [`import`](#avalanche-blockchain-import): Import blockchain configurations into avalanche-cli. - -This command suite supports importing from a file created on another computer, -or importing from blockchains running public networks -(e.g. created manually or with the deprecated subnet-cli) -- [`join`](#avalanche-blockchain-join): The blockchain join command configures your validator node to begin validating a new Blockchain. - -To complete this process, you must have access to the machine running your validator. If the -CLI is running on the same machine as your validator, it can generate or update your node's -config file automatically. Alternatively, the command can print the necessary instructions -to update your node manually. To complete the validation process, the Blockchain's admins must add -the NodeID of your validator to the Blockchain's allow list by calling addValidator with your -NodeID. - -After you update your validator's config, you need to restart your validator manually. If -you provide the --avalanchego-config flag, this command attempts to edit the config file -at that path. - -This command currently only supports Blockchains deployed on the Fuji Testnet and Mainnet. -- [`list`](#avalanche-blockchain-list): The blockchain list command prints the names of all created Blockchain configurations. Without any flags, -it prints some general, static information about the Blockchain. With the --deployed flag, the command -shows additional information including the VMID, BlockchainID and SubnetID. -- [`publish`](#avalanche-blockchain-publish): The blockchain publish command publishes the Blockchain's VM to a repository. -- [`removeValidator`](#avalanche-blockchain-removevalidator): The blockchain removeValidator command stops a whitelisted blockchain network validator from -validating your deployed Blockchain. - -To remove the validator from the Subnet's allow list, provide the validator's unique NodeID. You can bypass -these prompts by providing the values with flags. -- [`stats`](#avalanche-blockchain-stats): The blockchain stats command prints validator statistics for the given Blockchain. -- [`upgrade`](#avalanche-blockchain-upgrade): The blockchain upgrade command suite provides a collection of tools for -updating your developmental and deployed Blockchains. -- [`validators`](#avalanche-blockchain-validators): The blockchain validators command lists the validators of a blockchain and provides -several statistics about them. -- [`vmid`](#avalanche-blockchain-vmid): The blockchain vmid command prints the virtual machine ID (VMID) for the given Blockchain. - -**Flags:** - -```bash --h, --help help for blockchain ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### addValidator - -The blockchain addValidator command adds a node as a validator to -an L1 of the user provided deployed network. If the network is proof of -authority, the owner of the validator manager contract must sign the -transaction. If the network is proof of stake, the node must stake the L1's -staking token. Both processes will issue a RegisterL1ValidatorTx on the P-Chain. - -This command currently only works on Blockchains deployed to either the Fuji -Testnet or Mainnet. - -**Usage:** -```bash -avalanche blockchain addValidator [subcommand] [flags] -``` - -**Flags:** - -```bash ---aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) ---aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation ---aggregator-log-level string log level to use with signature aggregator (default "Debug") ---aggregator-log-to-stdout use stdout for signature aggregator logs ---balance uint set the AVAX balance of the validator that will be used for continuous fee on P-Chain ---blockchain-genesis-key use genesis allocated key to pay fees for completing the validator's registration (blockchain gas token) ---blockchain-key string CLI stored key to use to pay fees for completing the validator's registration (blockchain gas token) ---blockchain-private-key string private key to use to pay fees for completing the validator's registration (blockchain gas token) ---bls-proof-of-possession string set the BLS proof of possession of the validator to add ---bls-public-key string set the BLS public key of the validator to add ---cluster string operate on the given cluster ---create-local-validator create additional local validator and add it to existing running local node ---default-duration (for Subnets, not L1s) set duration so as to validate until primary validator ends its period ---default-start-time (for Subnets, not L1s) use default start time for subnet validator (5 minutes later for fuji & mainnet, 30 seconds later for devnet) ---default-validator-params (for Subnets, not L1s) use default weight/start/duration params for subnet validator ---delegation-fee uint16 (PoS only) delegation fee (in bips) (default 100) ---devnet operate on a devnet network ---disable-owner string P-Chain address that will able to disable the validator with a P-Chain transaction ---endpoint string use the given endpoint for network operations --e, --ewoq use ewoq key [fuji/devnet only] --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for addValidator --k, --key string select the key to use [fuji/devnet only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) ---ledger-addrs strings use the given ledger addresses --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-endpoint string gather node id/bls from publicly available avalanchego apis on the given endpoint ---node-id string node-id of the validator to add ---output-tx-path string (for Subnets, not L1s) file path of the add validator tx ---partial-sync set primary network partial sync for new validators (default true) ---remaining-balance-owner string P-Chain address that will receive any leftover AVAX from the validator when it is removed from Subnet ---rpc string connect to validator manager at the given rpc endpoint ---stake-amount uint (PoS only) amount of tokens to stake ---staking-period duration how long this validator will be staking ---start-time string (for Subnets, not L1s) UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format ---subnet-auth-keys strings (for Subnets, not L1s) control keys that will be used to authenticate add validator tx --t, --testnet fuji operate on testnet (alias to fuji) ---wait-for-tx-acceptance (for Subnets, not L1s) just issue the add validator tx, without waiting for its acceptance (default true) ---weight uint set the staking weight of the validator to add (default 20) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### changeOwner - -The blockchain changeOwner changes the owner of the deployed Blockchain. - -**Usage:** -```bash -avalanche blockchain changeOwner [subcommand] [flags] -``` - -**Flags:** - -```bash ---auth-keys strings control keys that will be used to authenticate transfer blockchain ownership tx ---cluster string operate on the given cluster ---control-keys strings addresses that may make blockchain changes ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --e, --ewoq use ewoq key [fuji/devnet] --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for changeOwner --k, --key string select the key to use [fuji/devnet] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) ---ledger-addrs strings use the given ledger addresses --l, --local operate on a local network --m, --mainnet operate on mainnet ---output-tx-path string file path of the transfer blockchain ownership tx --s, --same-control-key use the fee-paying key as control key --t, --testnet fuji operate on testnet (alias to fuji) ---threshold uint32 required number of control key signatures to make blockchain changes ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### changeWeight - -The blockchain changeWeight command changes the weight of a L1 Validator. - -The L1 has to be a Proof of Authority L1. - -**Usage:** -```bash -avalanche blockchain changeWeight [subcommand] [flags] -``` - -**Flags:** - -```bash ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --e, --ewoq use ewoq key [fuji/devnet only] --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for changeWeight --k, --key string select the key to use [fuji/devnet only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) ---ledger-addrs strings use the given ledger addresses --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-id string node-id of the validator --t, --testnet fuji operate on testnet (alias to fuji) ---weight uint set the new staking weight of the validator (default 20) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### configure - -AvalancheGo nodes support several different configuration files. Each network (a Subnet or an L1) has their own config which applies to all blockchains/VMs in the network. Each blockchain within the network -can have its own chain config. A chain can also have special requirements for the AvalancheGo node -configuration itself. This command allows you to set all those files. - -**Usage:** -```bash -avalanche blockchain configure [subcommand] [flags] -``` - -**Flags:** - -```bash ---chain-config string path to the chain configuration --h, --help help for configure ---node-config string path to avalanchego node configuration ---per-node-chain-config string path to per node chain configuration for local network ---subnet-config string path to the subnet configuration ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### create - -The blockchain create command builds a new genesis file to configure your Blockchain. -By default, the command runs an interactive wizard. It walks you through -all the steps you need to create your first Blockchain. - -The tool supports deploying Subnet-EVM, and custom VMs. You -can create a custom, user-generated genesis with a custom VM by providing -the path to your genesis and VM binaries with the --genesis and --vm flags. - -By default, running the command with a blockchainName that already exists -causes the command to fail. If you'd like to overwrite an existing -configuration, pass the -f flag. - -**Usage:** -```bash -avalanche blockchain create [subcommand] [flags] -``` - -**Flags:** - -```bash ---custom use a custom VM template ---custom-vm-branch string custom vm branch or commit ---custom-vm-build-script string custom vm build-script ---custom-vm-path string file path of custom vm to use ---custom-vm-repo-url string custom vm repository url ---debug enable blockchain debugging (default true) ---evm use the Subnet-EVM as the base template ---evm-chain-id uint chain ID to use with Subnet-EVM ---evm-defaults deprecation notice: use '--production-defaults' ---evm-token string token symbol to use with Subnet-EVM ---external-gas-token use a gas token from another blockchain --f, --force overwrite the existing configuration if one exists ---from-github-repo generate custom VM binary from github repository ---genesis string file path of genesis to use --h, --help help for create ---icm interoperate with other blockchains using ICM ---icm-registry-at-genesis setup ICM registry smart contract on genesis [experimental] ---latest use latest Subnet-EVM released version, takes precedence over --vm-version ---pre-release use latest Subnet-EVM pre-released version, takes precedence over --vm-version ---production-defaults use default production settings for your blockchain ---proof-of-authority use proof of authority(PoA) for validator management ---proof-of-stake use proof of stake(PoS) for validator management ---proxy-contract-owner string EVM address that controls ProxyAdmin for TransparentProxy of ValidatorManager contract ---reward-basis-points uint (PoS only) reward basis points for PoS Reward Calculator (default 100) ---sovereign set to false if creating non-sovereign blockchain (default true) ---teleporter interoperate with other blockchains using ICM ---test-defaults use default test settings for your blockchain ---validator-manager-owner string EVM address that controls Validator Manager Owner ---vm string file path of custom vm to use. alias to custom-vm-path ---vm-version string version of Subnet-EVM template to use ---warp generate a vm with warp support (needed for ICM) (default true) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### delete - -The blockchain delete command deletes an existing blockchain configuration. - -**Usage:** -```bash -avalanche blockchain delete [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for delete ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### deploy - -The blockchain deploy command deploys your Blockchain configuration locally, to Fuji Testnet, or to Mainnet. - -At the end of the call, the command prints the RPC URL you can use to interact with the Subnet. - -Avalanche-CLI only supports deploying an individual Blockchain once per network. Subsequent -attempts to deploy the same Blockchain to the same network (local, Fuji, Mainnet) aren't -allowed. If you'd like to redeploy a Blockchain locally for testing, you must first call -avalanche network clean to reset all deployed chain state. Subsequent local deploys -redeploy the chain with fresh state. You can deploy the same Blockchain to multiple networks, -so you can take your locally tested Blockchain and deploy it on Fuji or Mainnet. - -**Usage:** -```bash -avalanche blockchain deploy [subcommand] [flags] -``` - -**Flags:** - -```bash ---aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) ---aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation ---aggregator-log-level string log level to use with signature aggregator (default "Debug") ---aggregator-log-to-stdout use stdout for signature aggregator logs ---auth-keys strings control keys that will be used to authenticate chain creation ---avalanchego-path string use this avalanchego binary path ---avalanchego-version string use this version of avalanchego (ex: v1.17.12) (default "latest-prerelease") ---balance float set the AVAX balance of each bootstrap validator that will be used for continuous fee on P-Chain (default 0.1) ---blockchain-genesis-key use genesis allocated key to fund validator manager initialization ---blockchain-key string CLI stored key to use to fund validator manager initialization ---blockchain-private-key string private key to use to fund validator manager initialization ---bootstrap-endpoints strings take validator node info from the given endpoints ---bootstrap-filepath string JSON file path that provides details about bootstrap validators, leave Node-ID and BLS values empty if using --generate-node-id=true ---cchain-funding-key string key to be used to fund relayer account on cchain ---cchain-icm-key string key to be used to pay for ICM deploys on C-Chain ---change-owner-address string address that will receive change if node is no longer L1 validator ---cluster string operate on the given cluster ---control-keys strings addresses that may make blockchain changes ---convert-only avoid node track, restart and poa manager setup ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --e, --ewoq use ewoq key [fuji/devnet deploy only] --f, --fuji testnet operate on fuji (alias to testnet ---generate-node-id whether to create new node id for bootstrap validators (Node-ID and BLS values in bootstrap JSON file will be overridden if --bootstrap-filepath flag is used) --h, --help help for deploy ---icm-key string key to be used to pay for ICM deploys (default "cli-teleporter-deployer") ---icm-version string ICM version to deploy (default "latest") --k, --key string select the key to use [fuji/devnet deploy only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) ---ledger-addrs strings use the given ledger addresses --l, --local operate on a local network --m, --mainnet operate on mainnet ---mainnet-chain-id uint32 use different ChainID for mainnet deployment ---noicm skip automatic ICM deploy ---num-bootstrap-validators int (only if --generate-node-id is true) number of bootstrap validators to set up in sovereign L1 validator) ---num-local-nodes int number of nodes to be created on local machine ---num-nodes uint32 number of nodes to be created on local network deploy (default 2) ---output-tx-path string file path of the blockchain creation tx ---partial-sync set primary network partial sync for new validators (default true) ---pos-maximum-stake-amount uint maximum stake amount (default 1000) ---pos-maximum-stake-multiplier uint8 maximum stake multiplier (default 1) ---pos-minimum-delegation-fee uint16 minimum delegation fee (default 1) ---pos-minimum-stake-amount uint minimum stake amount (default 1) ---pos-minimum-stake-duration uint minimum stake duration (default 100) ---pos-weight-to-value-factor uint weight to value factor (default 1) ---relay-cchain relay C-Chain as source and destination (default true) ---relayer-allow-private-ips allow relayer to connec to private ips (default true) ---relayer-amount float automatically fund relayer fee payments with the given amount ---relayer-key string key to be used by default both for rewards and to pay fees ---relayer-log-level string log level to be used for relayer logs (default "info") ---relayer-path string relayer binary to use ---relayer-version string relayer version to deploy (default "latest-prerelease") --s, --same-control-key use the fee-paying key as control key ---skip-icm-deploy skip automatic ICM deploy ---skip-local-teleporter skip automatic ICM deploy on local networks [to be deprecated] ---skip-relayer skip relayer deploy ---skip-teleporter-deploy skip automatic ICM deploy --u, --subnet-id string do not create a subnet, deploy the blockchain into the given subnet id ---subnet-only only create a subnet ---teleporter-messenger-contract-address-path string path to an ICM Messenger contract address file ---teleporter-messenger-deployer-address-path string path to an ICM Messenger deployer address file ---teleporter-messenger-deployer-tx-path string path to an ICM Messenger deployer tx file ---teleporter-registry-bytecode-path string path to an ICM Registry bytecode file ---teleporter-version string ICM version to deploy (default "latest") --t, --testnet fuji operate on testnet (alias to fuji) ---threshold uint32 required number of control key signatures to make blockchain changes ---use-local-machine use local machine as a blockchain validator ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### describe - -The blockchain describe command prints the details of a Blockchain configuration to the console. -By default, the command prints a summary of the configuration. By providing the --genesis -flag, the command instead prints out the raw genesis file. - -**Usage:** -```bash -avalanche blockchain describe [subcommand] [flags] -``` - -**Flags:** - -```bash --g, --genesis Print the genesis to the console directly instead of the summary --h, --help help for describe ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### export - -The blockchain export command write the details of an existing Blockchain deploy to a file. - -The command prompts for an output path. You can also provide one with -the --output flag. - -**Usage:** -```bash -avalanche blockchain export [subcommand] [flags] -``` - -**Flags:** - -```bash ---custom-vm-branch string custom vm branch ---custom-vm-build-script string custom vm build-script ---custom-vm-repo-url string custom vm repository url --h, --help help for export --o, --output string write the export data to the provided file path ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### import - -Import blockchain configurations into avalanche-cli. - -This command suite supports importing from a file created on another computer, -or importing from blockchains running public networks -(e.g. created manually or with the deprecated subnet-cli) - -**Usage:** -```bash -avalanche blockchain import [subcommand] [flags] -``` - -**Subcommands:** - -- [`file`](#avalanche-blockchain-import-file): The blockchain import command will import a blockchain configuration from a file or a git repository. - -To import from a file, you can optionally provide the path as a command-line argument. -Alternatively, running the command without any arguments triggers an interactive wizard. -To import from a repository, go through the wizard. By default, an imported Blockchain doesn't -overwrite an existing Blockchain with the same name. To allow overwrites, provide the --force -flag. -- [`public`](#avalanche-blockchain-import-public): The blockchain import public command imports a Blockchain configuration from a running network. - -By default, an imported Blockchain -doesn't overwrite an existing Blockchain with the same name. To allow overwrites, provide the --force -flag. - -**Flags:** - -```bash --h, --help help for import ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### import file - -The blockchain import command will import a blockchain configuration from a file or a git repository. - -To import from a file, you can optionally provide the path as a command-line argument. -Alternatively, running the command without any arguments triggers an interactive wizard. -To import from a repository, go through the wizard. By default, an imported Blockchain doesn't -overwrite an existing Blockchain with the same name. To allow overwrites, provide the --force -flag. - -**Usage:** -```bash -avalanche blockchain import file [subcommand] [flags] -``` - -**Flags:** - -```bash ---blockchain string the blockchain configuration to import from the provided repo ---branch string the repo branch to use if downloading a new repo --f, --force overwrite the existing configuration if one exists --h, --help help for file ---repo string the repo to import (ex: ava-labs/avalanche-plugins-core) or url to download the repo from ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### import public - -The blockchain import public command imports a Blockchain configuration from a running network. - -By default, an imported Blockchain -doesn't overwrite an existing Blockchain with the same name. To allow overwrites, provide the --force -flag. - -**Usage:** -```bash -avalanche blockchain import public [subcommand] [flags] -``` - -**Flags:** - -```bash ---blockchain-id string the blockchain ID ---cluster string operate on the given cluster ---custom use a custom VM template ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations ---evm import a subnet-evm ---force overwrite the existing configuration if one exists --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for public --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-url string [optional] URL of an already running validator --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### join - -The blockchain join command configures your validator node to begin validating a new Blockchain. - -To complete this process, you must have access to the machine running your validator. If the -CLI is running on the same machine as your validator, it can generate or update your node's -config file automatically. Alternatively, the command can print the necessary instructions -to update your node manually. To complete the validation process, the Blockchain's admins must add -the NodeID of your validator to the Blockchain's allow list by calling addValidator with your -NodeID. - -After you update your validator's config, you need to restart your validator manually. If -you provide the --avalanchego-config flag, this command attempts to edit the config file -at that path. - -This command currently only supports Blockchains deployed on the Fuji Testnet and Mainnet. - -**Usage:** -```bash -avalanche blockchain join [subcommand] [flags] -``` - -**Flags:** - -```bash ---avalanchego-config string file path of the avalanchego config file ---cluster string operate on the given cluster ---data-dir string path of avalanchego's data dir directory ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations ---force-write if true, skip to prompt to overwrite the config file --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for join --k, --key string select the key to use [fuji only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) ---ledger-addrs strings use the given ledger addresses --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-id string set the NodeID of the validator to check ---plugin-dir string file path of avalanchego's plugin directory ---print if true, print the manual config without prompting ---stake-amount uint amount of tokens to stake on validator ---staking-period duration how long validator validates for after start time ---start-time string start time that validator starts validating --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### list - -The blockchain list command prints the names of all created Blockchain configurations. Without any flags, -it prints some general, static information about the Blockchain. With the --deployed flag, the command -shows additional information including the VMID, BlockchainID and SubnetID. - -**Usage:** -```bash -avalanche blockchain list [subcommand] [flags] -``` - -**Flags:** - -```bash ---deployed show additional deploy information --h, --help help for list ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### publish - -The blockchain publish command publishes the Blockchain's VM to a repository. - -**Usage:** -```bash -avalanche blockchain publish [subcommand] [flags] -``` - -**Flags:** - -```bash ---alias string We publish to a remote repo, but identify the repo locally under a user-provided alias (e.g. myrepo). ---force If true, ignores if the blockchain has been published in the past, and attempts a forced publish. --h, --help help for publish ---no-repo-path string Do not let the tool manage file publishing, but have it only generate the files and put them in the location given by this flag. ---repo-url string The URL of the repo where we are publishing ---subnet-file-path string Path to the Blockchain description file. If not given, a prompting sequence will be initiated. ---vm-file-path string Path to the VM description file. If not given, a prompting sequence will be initiated. ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### removeValidator - -The blockchain removeValidator command stops a whitelisted blockchain network validator from -validating your deployed Blockchain. - -To remove the validator from the Subnet's allow list, provide the validator's unique NodeID. You can bypass -these prompts by providing the values with flags. - -**Usage:** -```bash -avalanche blockchain removeValidator [subcommand] [flags] -``` - -**Flags:** - -```bash ---aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) ---aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation ---aggregator-log-level string log level to use with signature aggregator (default "Debug") ---aggregator-log-to-stdout use stdout for signature aggregator logs ---auth-keys strings (for non-SOV blockchain only) control keys that will be used to authenticate the removeValidator tx ---blockchain-genesis-key use genesis allocated key to pay fees for completing the validator's removal (blockchain gas token) ---blockchain-key string CLI stored key to use to pay fees for completing the validator's removal (blockchain gas token) ---blockchain-private-key string private key to use to pay fees for completing the validator's removal (blockchain gas token) ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations ---force force validator removal even if it's not getting rewarded --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for removeValidator --k, --key string select the key to use [fuji deploy only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) ---ledger-addrs strings use the given ledger addresses --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-endpoint string remove validator that responds to the given endpoint ---node-id string node-id of the validator ---output-tx-path string (for non-SOV blockchain only) file path of the removeValidator tx ---rpc string connect to validator manager at the given rpc endpoint --t, --testnet fuji operate on testnet (alias to fuji) ---uptime uint validator's uptime in seconds. If not provided, it will be automatically calculated ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### stats - -The blockchain stats command prints validator statistics for the given Blockchain. - -**Usage:** -```bash -avalanche blockchain stats [subcommand] [flags] -``` - -**Flags:** - -```bash ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for stats --l, --local operate on a local network --m, --mainnet operate on mainnet --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### upgrade - -The blockchain upgrade command suite provides a collection of tools for -updating your developmental and deployed Blockchains. - -**Usage:** -```bash -avalanche blockchain upgrade [subcommand] [flags] -``` - -**Subcommands:** - -- [`apply`](#avalanche-blockchain-upgrade-apply): Apply generated upgrade bytes to running Blockchain nodes to trigger a network upgrade. - -For public networks (Fuji Testnet or Mainnet), to complete this process, -you must have access to the machine running your validator. -If the CLI is running on the same machine as your validator, it can manipulate your node's -configuration automatically. Alternatively, the command can print the necessary instructions -to upgrade your node manually. - -After you update your validator's configuration, you need to restart your validator manually. -If you provide the --avalanchego-chain-config-dir flag, this command attempts to write the upgrade file at that path. -Refer to https://docs.avax.network/nodes/maintain/chain-config-flags#subnet-chain-configs for related documentation. -- [`export`](#avalanche-blockchain-upgrade-export): Export the upgrade bytes file to a location of choice on disk -- [`generate`](#avalanche-blockchain-upgrade-generate): The blockchain upgrade generate command builds a new upgrade.json file to customize your Blockchain. It -guides the user through the process using an interactive wizard. -- [`import`](#avalanche-blockchain-upgrade-import): Import the upgrade bytes file into the local environment -- [`print`](#avalanche-blockchain-upgrade-print): Print the upgrade.json file content -- [`vm`](#avalanche-blockchain-upgrade-vm): The blockchain upgrade vm command enables the user to upgrade their Blockchain's VM binary. The command -can upgrade both local Blockchains and publicly deployed Blockchains on Fuji and Mainnet. - -The command walks the user through an interactive wizard. The user can skip the wizard by providing -command line flags. - -**Flags:** - -```bash --h, --help help for upgrade ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### upgrade apply - -Apply generated upgrade bytes to running Blockchain nodes to trigger a network upgrade. - -For public networks (Fuji Testnet or Mainnet), to complete this process, -you must have access to the machine running your validator. -If the CLI is running on the same machine as your validator, it can manipulate your node's -configuration automatically. Alternatively, the command can print the necessary instructions -to upgrade your node manually. - -After you update your validator's configuration, you need to restart your validator manually. -If you provide the --avalanchego-chain-config-dir flag, this command attempts to write the upgrade file at that path. -Refer to https://docs.avax.network/nodes/maintain/chain-config-flags#subnet-chain-configs for related documentation. - -**Usage:** -```bash -avalanche blockchain upgrade apply [subcommand] [flags] -``` - -**Flags:** - -```bash ---avalanchego-chain-config-dir string avalanchego's chain config file directory (default "/home/runner/.avalanchego/chains") ---config create upgrade config for future subnet deployments (same as generate) ---force If true, don't prompt for confirmation of timestamps in the past ---fuji fuji apply upgrade existing fuji deployment (alias for `testnet`) --h, --help help for apply ---local local apply upgrade existing local deployment ---mainnet mainnet apply upgrade existing mainnet deployment ---print if true, print the manual config without prompting (for public networks only) ---testnet testnet apply upgrade existing testnet deployment (alias for `fuji`) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### upgrade export - -Export the upgrade bytes file to a location of choice on disk - -**Usage:** -```bash -avalanche blockchain upgrade export [subcommand] [flags] -``` - -**Flags:** - -```bash ---force If true, overwrite a possibly existing file without prompting --h, --help help for export ---upgrade-filepath string Export upgrade bytes file to location of choice on disk ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### upgrade generate - -The blockchain upgrade generate command builds a new upgrade.json file to customize your Blockchain. It -guides the user through the process using an interactive wizard. - -**Usage:** -```bash -avalanche blockchain upgrade generate [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for generate ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### upgrade import - -Import the upgrade bytes file into the local environment - -**Usage:** -```bash -avalanche blockchain upgrade import [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for import ---upgrade-filepath string Import upgrade bytes file into local environment ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### upgrade print - -Print the upgrade.json file content - -**Usage:** -```bash -avalanche blockchain upgrade print [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for print ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### upgrade vm - -The blockchain upgrade vm command enables the user to upgrade their Blockchain's VM binary. The command -can upgrade both local Blockchains and publicly deployed Blockchains on Fuji and Mainnet. - -The command walks the user through an interactive wizard. The user can skip the wizard by providing -command line flags. - -**Usage:** -```bash -avalanche blockchain upgrade vm [subcommand] [flags] -``` - -**Flags:** - -```bash ---binary string Upgrade to custom binary ---config upgrade config for future subnet deployments ---fuji fuji upgrade existing fuji deployment (alias for `testnet`) --h, --help help for vm ---latest upgrade to latest version ---local local upgrade existing local deployment ---mainnet mainnet upgrade existing mainnet deployment ---plugin-dir string plugin directory to automatically upgrade VM ---print print instructions for upgrading ---testnet testnet upgrade existing testnet deployment (alias for `fuji`) ---version string Upgrade to custom version ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### validators - -The blockchain validators command lists the validators of a blockchain and provides -several statistics about them. - -**Usage:** -```bash -avalanche blockchain validators [subcommand] [flags] -``` - -**Flags:** - -```bash ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for validators --l, --local operate on a local network --m, --mainnet operate on mainnet --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### vmid - -The blockchain vmid command prints the virtual machine ID (VMID) for the given Blockchain. - -**Usage:** -```bash -avalanche blockchain vmid [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for vmid ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -## avalanche config - -Customize configuration for Avalanche-CLI - -**Usage:** -```bash -avalanche config [subcommand] [flags] -``` - -**Subcommands:** - -- [`authorize-cloud-access`](#avalanche-config-authorize-cloud-access): set preferences to authorize access to cloud resources -- [`metrics`](#avalanche-config-metrics): set user metrics collection preferences -- [`migrate`](#avalanche-config-migrate): migrate command migrates old ~/.avalanche-cli.json and ~/.avalanche-cli/config to /.avalanche-cli/config.json.. -- [`snapshotsAutoSave`](#avalanche-config-snapshotsautosave): set user preference between auto saving local network snapshots or not -- [`update`](#avalanche-config-update): set user preference between update check or not - -**Flags:** - -```bash --h, --help help for config ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### authorize-cloud-access - -set preferences to authorize access to cloud resources - -**Usage:** -```bash -avalanche config authorize-cloud-access [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for authorize-cloud-access ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### metrics - -set user metrics collection preferences - -**Usage:** -```bash -avalanche config metrics [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for metrics ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### migrate - -migrate command migrates old ~/.avalanche-cli.json and ~/.avalanche-cli/config to /.avalanche-cli/config.json.. - -**Usage:** -```bash -avalanche config migrate [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for migrate ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### snapshotsAutoSave - -set user preference between auto saving local network snapshots or not - -**Usage:** -```bash -avalanche config snapshotsAutoSave [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for snapshotsAutoSave ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### update - -set user preference between update check or not - -**Usage:** -```bash -avalanche config update [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for update ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -## avalanche contract - -The contract command suite provides a collection of tools for deploying -and interacting with smart contracts. - -**Usage:** -```bash -avalanche contract [subcommand] [flags] -``` - -**Subcommands:** - -- [`deploy`](#avalanche-contract-deploy): The contract command suite provides a collection of tools for deploying -smart contracts. -- [`initValidatorManager`](#avalanche-contract-initvalidatormanager): Initializes Proof of Authority(PoA) or Proof of Stake(PoS)Validator Manager contract on a Blockchain and sets up initial validator set on the Blockchain. For more info on Validator Manager, please head to https://github.com/ava-labs/icm-contracts/tree/main/contracts/validator-manager - -**Flags:** - -```bash --h, --help help for contract ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### deploy - -The contract command suite provides a collection of tools for deploying -smart contracts. - -**Usage:** -```bash -avalanche contract deploy [subcommand] [flags] -``` - -**Subcommands:** - -- [`erc20`](#avalanche-contract-deploy-erc20): Deploy an ERC20 token into a given Network and Blockchain - -**Flags:** - -```bash --h, --help help for deploy ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### deploy erc20 - -Deploy an ERC20 token into a given Network and Blockchain - -**Usage:** -```bash -avalanche contract deploy erc20 [subcommand] [flags] -``` - -**Flags:** - -```bash ---blockchain string deploy the ERC20 contract into the given CLI blockchain ---blockchain-id string deploy the ERC20 contract into the given blockchain ID/Alias ---c-chain deploy the ERC20 contract into C-Chain ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet ---funded string set the funded address ---genesis-key use genesis allocated key as contract deployer --h, --help help for erc20 ---key string CLI stored key to use as contract deployer --l, --local operate on a local network ---private-key string private key to use as contract deployer ---rpc string deploy the contract into the given rpc endpoint ---supply uint set the token supply ---symbol string set the token symbol --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### initValidatorManager - -Initializes Proof of Authority(PoA) or Proof of Stake(PoS)Validator Manager contract on a Blockchain and sets up initial validator set on the Blockchain. For more info on Validator Manager, please head to https://github.com/ava-labs/icm-contracts/tree/main/contracts/validator-manager - -**Usage:** -```bash -avalanche contract initValidatorManager [subcommand] [flags] -``` - -**Flags:** - -```bash ---aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) ---aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation ---aggregator-log-level string log level to use with signature aggregator (default "Debug") ---aggregator-log-to-stdout dump signature aggregator logs to stdout ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet ---genesis-key use genesis allocated key as contract deployer --h, --help help for initValidatorManager ---key string CLI stored key to use as contract deployer --l, --local operate on a local network --m, --mainnet operate on mainnet ---pos-maximum-stake-amount uint (PoS only) maximum stake amount (default 1000) ---pos-maximum-stake-multiplier uint8 (PoS only )maximum stake multiplier (default 1) ---pos-minimum-delegation-fee uint16 (PoS only) minimum delegation fee (default 1) ---pos-minimum-stake-amount uint (PoS only) minimum stake amount (default 1) ---pos-minimum-stake-duration uint (PoS only) minimum stake duration (default 100) ---pos-reward-calculator-address string (PoS only) initialize the ValidatorManager with reward calculator address ---pos-weight-to-value-factor uint (PoS only) weight to value factor (default 1) ---private-key string private key to use as contract deployer ---rpc string deploy the contract into the given rpc endpoint --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -## avalanche help - -Help provides help for any command in the application. -Simply type avalanche help [path to command] for full details. - -**Usage:** -```bash -avalanche help [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for help ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -## avalanche icm - -The messenger command suite provides a collection of tools for interacting -with ICM messenger contracts. - -**Usage:** -```bash -avalanche icm [subcommand] [flags] -``` - -**Subcommands:** - -- [`deploy`](#avalanche-icm-deploy): Deploys ICM Messenger and Registry into a given L1. -- [`sendMsg`](#avalanche-icm-sendmsg): Sends and wait reception for a ICM msg between two blockchains. - -**Flags:** - -```bash --h, --help help for icm ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### deploy - -Deploys ICM Messenger and Registry into a given L1. - -**Usage:** -```bash -avalanche icm deploy [subcommand] [flags] -``` - -**Flags:** - -```bash ---blockchain string deploy ICM into the given CLI blockchain ---blockchain-id string deploy ICM into the given blockchain ID/Alias ---c-chain deploy ICM into C-Chain ---cchain-key string key to be used to pay fees to deploy ICM to C-Chain ---cluster string operate on the given cluster ---deploy-messenger deploy ICM Messenger (default true) ---deploy-registry deploy ICM Registry (default true) ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations ---force-registry-deploy deploy ICM Registry even if Messenger has already been deployed --f, --fuji testnet operate on fuji (alias to testnet ---genesis-key use genesis allocated key to fund ICM deploy --h, --help help for deploy ---include-cchain deploy ICM also to C-Chain ---key string CLI stored key to use to fund ICM deploy --l, --local operate on a local network ---messenger-contract-address-path string path to a messenger contract address file ---messenger-deployer-address-path string path to a messenger deployer address file ---messenger-deployer-tx-path string path to a messenger deployer tx file ---private-key string private key to use to fund ICM deploy ---registry-bytecode-path string path to a registry bytecode file ---rpc-url string use the given RPC URL to connect to the subnet --t, --testnet fuji operate on testnet (alias to fuji) ---version string version to deploy (default "latest") ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### sendMsg - -Sends and wait reception for a ICM msg between two blockchains. - -**Usage:** -```bash -avalanche icm sendMsg [subcommand] [flags] -``` - -**Flags:** - -```bash ---cluster string operate on the given cluster ---dest-rpc string use the given destination blockchain rpc endpoint ---destination-address string deliver the message to the given contract destination address ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet ---genesis-key use genesis allocated key as message originator and to pay source blockchain fees --h, --help help for sendMsg ---hex-encoded given message is hex encoded ---key string CLI stored key to use as message originator and to pay source blockchain fees --l, --local operate on a local network ---private-key string private key to use as message originator and to pay source blockchain fees ---source-rpc string use the given source blockchain rpc endpoint --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -## avalanche ictt - -The ictt command suite provides tools to deploy and manage Interchain Token Transferrers. - -**Usage:** -```bash -avalanche ictt [subcommand] [flags] -``` - -**Subcommands:** - -- [`deploy`](#avalanche-ictt-deploy): Deploys a Token Transferrer into a given Network and Subnets - -**Flags:** - -```bash --h, --help help for ictt ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### deploy - -Deploys a Token Transferrer into a given Network and Subnets - -**Usage:** -```bash -avalanche ictt deploy [subcommand] [flags] -``` - -**Flags:** - -```bash ---c-chain-home set the Transferrer's Home Chain into C-Chain ---c-chain-remote set the Transferrer's Remote Chain into C-Chain ---cluster string operate on the given cluster ---deploy-erc20-home string deploy a Transferrer Home for the given Chain's ERC20 Token ---deploy-native-home deploy a Transferrer Home for the Chain's Native Token ---deploy-native-remote deploy a Transferrer Remote for the Chain's Native Token ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for deploy ---home-blockchain string set the Transferrer's Home Chain into the given CLI blockchain ---home-genesis-key use genesis allocated key to deploy Transferrer Home ---home-key string CLI stored key to use to deploy Transferrer Home ---home-private-key string private key to use to deploy Transferrer Home ---home-rpc string use the given RPC URL to connect to the home blockchain --l, --local operate on a local network ---remote-blockchain string set the Transferrer's Remote Chain into the given CLI blockchain ---remote-genesis-key use genesis allocated key to deploy Transferrer Remote ---remote-key string CLI stored key to use to deploy Transferrer Remote ---remote-private-key string private key to use to deploy Transferrer Remote ---remote-rpc string use the given RPC URL to connect to the remote blockchain ---remote-token-decimals uint8 use the given number of token decimals for the Transferrer Remote [defaults to token home's decimals (18 for a new wrapped native home token)] ---remove-minter-admin remove the native minter precompile admin found on remote blockchain genesis --t, --testnet fuji operate on testnet (alias to fuji) ---use-home string use the given Transferrer's Home Address ---version string tag/branch/commit of Avalanche Interchain Token Transfer (ICTT) to be used (defaults to main branch) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -## avalanche interchain - -The interchain command suite provides a collection of tools to -set and manage interoperability between blockchains. - -**Usage:** -```bash -avalanche interchain [subcommand] [flags] -``` - -**Subcommands:** - -- [`messenger`](#avalanche-interchain-messenger): The messenger command suite provides a collection of tools for interacting -with ICM messenger contracts. -- [`relayer`](#avalanche-interchain-relayer): The relayer command suite provides a collection of tools for deploying -and configuring an ICM relayers. -- [`tokenTransferrer`](#avalanche-interchain-tokentransferrer): The tokenTransfer command suite provides tools to deploy and manage Token Transferrers. - -**Flags:** - -```bash --h, --help help for interchain ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### messenger - -The messenger command suite provides a collection of tools for interacting -with ICM messenger contracts. - -**Usage:** -```bash -avalanche interchain messenger [subcommand] [flags] -``` - -**Subcommands:** - -- [`deploy`](#avalanche-interchain-messenger-deploy): Deploys ICM Messenger and Registry into a given L1. -- [`sendMsg`](#avalanche-interchain-messenger-sendmsg): Sends and wait reception for a ICM msg between two blockchains. - -**Flags:** - -```bash --h, --help help for messenger ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### messenger deploy - -Deploys ICM Messenger and Registry into a given L1. - -**Usage:** -```bash -avalanche interchain messenger deploy [subcommand] [flags] -``` - -**Flags:** - -```bash ---blockchain string deploy ICM into the given CLI blockchain ---blockchain-id string deploy ICM into the given blockchain ID/Alias ---c-chain deploy ICM into C-Chain ---cchain-key string key to be used to pay fees to deploy ICM to C-Chain ---cluster string operate on the given cluster ---deploy-messenger deploy ICM Messenger (default true) ---deploy-registry deploy ICM Registry (default true) ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations ---force-registry-deploy deploy ICM Registry even if Messenger has already been deployed --f, --fuji testnet operate on fuji (alias to testnet ---genesis-key use genesis allocated key to fund ICM deploy --h, --help help for deploy ---include-cchain deploy ICM also to C-Chain ---key string CLI stored key to use to fund ICM deploy --l, --local operate on a local network ---messenger-contract-address-path string path to a messenger contract address file ---messenger-deployer-address-path string path to a messenger deployer address file ---messenger-deployer-tx-path string path to a messenger deployer tx file ---private-key string private key to use to fund ICM deploy ---registry-bytecode-path string path to a registry bytecode file ---rpc-url string use the given RPC URL to connect to the subnet --t, --testnet fuji operate on testnet (alias to fuji) ---version string version to deploy (default "latest") ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### messenger sendMsg - -Sends and wait reception for a ICM msg between two blockchains. - -**Usage:** -```bash -avalanche interchain messenger sendMsg [subcommand] [flags] -``` - -**Flags:** - -```bash ---cluster string operate on the given cluster ---dest-rpc string use the given destination blockchain rpc endpoint ---destination-address string deliver the message to the given contract destination address ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet ---genesis-key use genesis allocated key as message originator and to pay source blockchain fees --h, --help help for sendMsg ---hex-encoded given message is hex encoded ---key string CLI stored key to use as message originator and to pay source blockchain fees --l, --local operate on a local network ---private-key string private key to use as message originator and to pay source blockchain fees ---source-rpc string use the given source blockchain rpc endpoint --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### relayer - -The relayer command suite provides a collection of tools for deploying -and configuring an ICM relayers. - -**Usage:** -```bash -avalanche interchain relayer [subcommand] [flags] -``` - -**Subcommands:** - -- [`deploy`](#avalanche-interchain-relayer-deploy): Deploys an ICM Relayer for the given Network. -- [`logs`](#avalanche-interchain-relayer-logs): Shows pretty formatted AWM relayer logs -- [`start`](#avalanche-interchain-relayer-start): Starts AWM relayer on the specified network (Currently only for local network). -- [`stop`](#avalanche-interchain-relayer-stop): Stops AWM relayer on the specified network (Currently only for local network, cluster). - -**Flags:** - -```bash --h, --help help for relayer ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### relayer deploy - -Deploys an ICM Relayer for the given Network. - -**Usage:** -```bash -avalanche interchain relayer deploy [subcommand] [flags] -``` - -**Flags:** - -```bash ---allow-private-ips allow relayer to connec to private ips (default true) ---amount float automatically fund l1s fee payments with the given amount ---bin-path string use the given relayer binary ---blockchain-funding-key string key to be used to fund relayer account on all l1s ---blockchains strings blockchains to relay as source and destination ---cchain relay C-Chain as source and destination ---cchain-amount float automatically fund cchain fee payments with the given amount ---cchain-funding-key string key to be used to fund relayer account on cchain ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for deploy ---key string key to be used by default both for rewards and to pay fees --l, --local operate on a local network ---log-level string log level to use for relayer logs --t, --testnet fuji operate on testnet (alias to fuji) ---version string version to deploy (default "latest-prerelease") ---config string config file (default is $HOME/.avalanche-cli/config.json) ---skip-update-check skip check for new versions -``` - - -#### relayer logs - -Shows pretty formatted AWM relayer logs - -**Usage:** -```bash -avalanche interchain relayer logs [subcommand] [flags] -``` - -**Flags:** - -```bash ---endpoint string use the given endpoint for network operations ---first uint output first N log lines --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for logs ---last uint output last N log lines --l, --local operate on a local network ---raw raw logs output --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### relayer start - -Starts AWM relayer on the specified network (Currently only for local network). - -**Usage:** -```bash -avalanche interchain relayer start [subcommand] [flags] -``` - -**Flags:** - -```bash ---bin-path string use the given relayer binary ---cluster string operate on the given cluster ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for start --l, --local operate on a local network --t, --testnet fuji operate on testnet (alias to fuji) ---version string version to use (default "latest-prerelease") ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### relayer stop - -Stops AWM relayer on the specified network (Currently only for local network, cluster). - -**Usage:** -```bash -avalanche interchain relayer stop [subcommand] [flags] -``` - -**Flags:** - -```bash ---cluster string operate on the given cluster ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for stop --l, --local operate on a local network --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### tokenTransferrer - -The tokenTransfer command suite provides tools to deploy and manage Token Transferrers. - -**Usage:** -```bash -avalanche interchain tokenTransferrer [subcommand] [flags] -``` - -**Subcommands:** - -- [`deploy`](#avalanche-interchain-tokentransferrer-deploy): Deploys a Token Transferrer into a given Network and Subnets - -**Flags:** - -```bash --h, --help help for tokenTransferrer ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### tokenTransferrer deploy - -Deploys a Token Transferrer into a given Network and Subnets - -**Usage:** -```bash -avalanche interchain tokenTransferrer deploy [subcommand] [flags] -``` - -**Flags:** - -```bash ---c-chain-home set the Transferrer's Home Chain into C-Chain ---c-chain-remote set the Transferrer's Remote Chain into C-Chain ---cluster string operate on the given cluster ---deploy-erc20-home string deploy a Transferrer Home for the given Chain's ERC20 Token ---deploy-native-home deploy a Transferrer Home for the Chain's Native Token ---deploy-native-remote deploy a Transferrer Remote for the Chain's Native Token ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for deploy ---home-blockchain string set the Transferrer's Home Chain into the given CLI blockchain ---home-genesis-key use genesis allocated key to deploy Transferrer Home ---home-key string CLI stored key to use to deploy Transferrer Home ---home-private-key string private key to use to deploy Transferrer Home ---home-rpc string use the given RPC URL to connect to the home blockchain --l, --local operate on a local network ---remote-blockchain string set the Transferrer's Remote Chain into the given CLI blockchain ---remote-genesis-key use genesis allocated key to deploy Transferrer Remote ---remote-key string CLI stored key to use to deploy Transferrer Remote ---remote-private-key string private key to use to deploy Transferrer Remote ---remote-rpc string use the given RPC URL to connect to the remote blockchain ---remote-token-decimals uint8 use the given number of token decimals for the Transferrer Remote [defaults to token home's decimals (18 for a new wrapped native home token)] ---remove-minter-admin remove the native minter precompile admin found on remote blockchain genesis --t, --testnet fuji operate on testnet (alias to fuji) ---use-home string use the given Transferrer's Home Address ---version string tag/branch/commit of Avalanche Interchain Token Transfer (ICTT) to be used (defaults to main branch) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -## avalanche key - -The key command suite provides a collection of tools for creating and managing -signing keys. You can use these keys to deploy Subnets to the Fuji Testnet, -but these keys are NOT suitable to use in production environments. DO NOT use -these keys on Mainnet. - -To get started, use the key create command. - -**Usage:** -```bash -avalanche key [subcommand] [flags] -``` - -**Subcommands:** - -- [`create`](#avalanche-key-create): The key create command generates a new private key to use for creating and controlling -test Subnets. Keys generated by this command are NOT cryptographically secure enough to -use in production environments. DO NOT use these keys on Mainnet. - -The command works by generating a secp256 key and storing it with the provided keyName. You -can use this key in other commands by providing this keyName. - -If you'd like to import an existing key instead of generating one from scratch, provide the ---file flag. -- [`delete`](#avalanche-key-delete): The key delete command deletes an existing signing key. - -To delete a key, provide the keyName. The command prompts for confirmation -before deleting the key. To skip the confirmation, provide the --force flag. -- [`export`](#avalanche-key-export): The key export command exports a created signing key. You can use an exported key in other -applications or import it into another instance of Avalanche-CLI. - -By default, the tool writes the hex encoded key to stdout. If you provide the --output -flag, the command writes the key to a file of your choosing. -- [`list`](#avalanche-key-list): The key list command prints information for all stored signing -keys or for the ledger addresses associated to certain indices. -- [`transfer`](#avalanche-key-transfer): The key transfer command allows to transfer funds between stored keys or ledger addresses. - -**Flags:** - -```bash --h, --help help for key ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### create - -The key create command generates a new private key to use for creating and controlling -test Subnets. Keys generated by this command are NOT cryptographically secure enough to -use in production environments. DO NOT use these keys on Mainnet. - -The command works by generating a secp256 key and storing it with the provided keyName. You -can use this key in other commands by providing this keyName. - -If you'd like to import an existing key instead of generating one from scratch, provide the ---file flag. - -**Usage:** -```bash -avalanche key create [subcommand] [flags] -``` - -**Flags:** - -```bash ---file string import the key from an existing key file --f, --force overwrite an existing key with the same name --h, --help help for create ---skip-balances do not query public network balances for an imported key ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### delete - -The key delete command deletes an existing signing key. - -To delete a key, provide the keyName. The command prompts for confirmation -before deleting the key. To skip the confirmation, provide the --force flag. - -**Usage:** -```bash -avalanche key delete [subcommand] [flags] -``` - -**Flags:** - -```bash --f, --force delete the key without confirmation --h, --help help for delete ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### export - -The key export command exports a created signing key. You can use an exported key in other -applications or import it into another instance of Avalanche-CLI. - -By default, the tool writes the hex encoded key to stdout. If you provide the --output -flag, the command writes the key to a file of your choosing. - -**Usage:** -```bash -avalanche key export [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for export --o, --output string write the key to the provided file path ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### list - -The key list command prints information for all stored signing -keys or for the ledger addresses associated to certain indices. - -**Usage:** -```bash -avalanche key list [subcommand] [flags] -``` - -**Flags:** - -```bash --a, --all-networks list all network addresses ---blockchains strings blockchains to show information about (p=p-chain, x=x-chain, c=c-chain, and blockchain names) (default p,x,c) --c, --cchain list C-Chain addresses (default true) ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for list ---keys strings list addresses for the given keys --g, --ledger uints list ledger addresses for the given indices (default []) --l, --local operate on a local network --m, --mainnet operate on mainnet ---pchain list P-Chain addresses (default true) ---subnets strings subnets to show information about (p=p-chain, x=x-chain, c=c-chain, and blockchain names) (default p,x,c) --t, --testnet fuji operate on testnet (alias to fuji) ---tokens strings provide balance information for the given token contract addresses (Evm only) (default [Native]) ---use-gwei use gwei for EVM balances --n, --use-nano-avax use nano Avax for balances ---xchain list X-Chain addresses (default true) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### transfer - -The key transfer command allows to transfer funds between stored keys or ledger addresses. - -**Usage:** -```bash -avalanche key transfer [subcommand] [flags] -``` - -**Flags:** - -```bash --o, --amount float amount to send or receive (AVAX or TOKEN units) ---c-chain-receiver receive at C-Chain ---c-chain-sender send from C-Chain ---cluster string operate on the given cluster --a, --destination-addr string destination address ---destination-key string key associated to a destination address ---destination-subnet string subnet where the funds will be sent (token transferrer experimental) ---destination-transferrer-address string token transferrer address at the destination subnet (token transferrer experimental) ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for transfer --k, --key string key associated to the sender or receiver address --i, --ledger uint32 ledger index associated to the sender or receiver address (default 32768) --l, --local operate on a local network --m, --mainnet operate on mainnet ---origin-subnet string subnet where the funds belong (token transferrer experimental) ---origin-transferrer-address string token transferrer address at the origin subnet (token transferrer experimental) ---p-chain-receiver receive at P-Chain ---p-chain-sender send from P-Chain ---receiver-blockchain string receive at the given CLI blockchain ---receiver-blockchain-id string receive at the given blockchain ID/Alias ---sender-blockchain string send from the given CLI blockchain ---sender-blockchain-id string send from the given blockchain ID/Alias --t, --testnet fuji operate on testnet (alias to fuji) ---x-chain-receiver receive at X-Chain ---x-chain-sender send from X-Chain ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -## avalanche network - -The network command suite provides a collection of tools for managing local Blockchain -deployments. - -When you deploy a Blockchain locally, it runs on a local, multi-node Avalanche network. The -blockchain deploy command starts this network in the background. This command suite allows you -to shutdown, restart, and clear that network. - -This network currently supports multiple, concurrently deployed Blockchains. - -**Usage:** -```bash -avalanche network [subcommand] [flags] -``` - -**Subcommands:** - -- [`clean`](#avalanche-network-clean): The network clean command shuts down your local, multi-node network. All deployed Subnets -shutdown and delete their state. You can restart the network by deploying a new Subnet -configuration. -- [`start`](#avalanche-network-start): The network start command starts a local, multi-node Avalanche network on your machine. - -By default, the command loads the default snapshot. If you provide the --snapshot-name -flag, the network loads that snapshot instead. The command fails if the local network is -already running. -- [`status`](#avalanche-network-status): The network status command prints whether or not a local Avalanche -network is running and some basic stats about the network. -- [`stop`](#avalanche-network-stop): The network stop command shuts down your local, multi-node network. - -All deployed Subnets shutdown gracefully and save their state. If you provide the ---snapshot-name flag, the network saves its state under this named snapshot. You can -reload this snapshot with network start --snapshot-name `snapshotName`. Otherwise, the -network saves to the default snapshot, overwriting any existing state. You can reload the -default snapshot with network start. - -**Flags:** - -```bash --h, --help help for network ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### clean - -The network clean command shuts down your local, multi-node network. All deployed Subnets -shutdown and delete their state. You can restart the network by deploying a new Subnet -configuration. - -**Usage:** -```bash -avalanche network clean [subcommand] [flags] -``` - -**Flags:** - -```bash ---hard Also clean downloaded avalanchego and plugin binaries --h, --help help for clean ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### start - -The network start command starts a local, multi-node Avalanche network on your machine. - -By default, the command loads the default snapshot. If you provide the --snapshot-name -flag, the network loads that snapshot instead. The command fails if the local network is -already running. - -**Usage:** -```bash -avalanche network start [subcommand] [flags] -``` - -**Flags:** - -```bash ---avalanchego-path string use this avalanchego binary path ---avalanchego-version string use this version of avalanchego (ex: v1.17.12) (default "latest-prerelease") --h, --help help for start ---num-nodes uint32 number of nodes to be created on local network (default 2) ---relayer-path string use this relayer binary path ---relayer-version string use this relayer version (default "latest-prerelease") ---snapshot-name string name of snapshot to use to start the network from (default "default-1654102509") ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### status - -The network status command prints whether or not a local Avalanche -network is running and some basic stats about the network. - -**Usage:** -```bash -avalanche network status [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for status ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### stop - -The network stop command shuts down your local, multi-node network. - -All deployed Subnets shutdown gracefully and save their state. If you provide the ---snapshot-name flag, the network saves its state under this named snapshot. You can -reload this snapshot with network start --snapshot-name `snapshotName`. Otherwise, the -network saves to the default snapshot, overwriting any existing state. You can reload the -default snapshot with network start. - -**Usage:** -```bash -avalanche network stop [subcommand] [flags] -``` - -**Flags:** - -```bash ---dont-save do not save snapshot, just stop the network --h, --help help for stop ---snapshot-name string name of snapshot to use to save network state into (default "default-1654102509") ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -## avalanche node - -The node command suite provides a collection of tools for creating and maintaining -validators on Avalanche Network. - -To get started, use the node create command wizard to walk through the -configuration to make your node a primary validator on Avalanche public network. You can use the -rest of the commands to maintain your node and make your node a Subnet Validator. - -**Usage:** -```bash -avalanche node [subcommand] [flags] -``` - -**Subcommands:** - -- [`addDashboard`](#avalanche-node-adddashboard): (ALPHA Warning) This command is currently in experimental mode. - -The node addDashboard command adds custom dashboard to the Grafana monitoring dashboard for the -cluster. -- [`create`](#avalanche-node-create): (ALPHA Warning) This command is currently in experimental mode. - -The node create command sets up a validator on a cloud server of your choice. -The validator will be validating the Avalanche Primary Network and Subnet -of your choice. By default, the command runs an interactive wizard. It -walks you through all the steps you need to set up a validator. -Once this command is completed, you will have to wait for the validator -to finish bootstrapping on the primary network before running further -commands on it, e.g. validating a Subnet. You can check the bootstrapping -status by running avalanche node status - -The created node will be part of group of validators called `clusterName` -and users can call node commands with `clusterName` so that the command -will apply to all nodes in the cluster -- [`destroy`](#avalanche-node-destroy): (ALPHA Warning) This command is currently in experimental mode. - -The node destroy command terminates all running nodes in cloud server and deletes all storage disks. - -If there is a static IP address attached, it will be released. -- [`devnet`](#avalanche-node-devnet): (ALPHA Warning) This command is currently in experimental mode. - -The node devnet command suite provides a collection of commands related to devnets. -You can check the updated status by calling avalanche node status `clusterName` -- [`export`](#avalanche-node-export): (ALPHA Warning) This command is currently in experimental mode. - -The node export command exports cluster configuration and its nodes config to a text file. - -If no file is specified, the configuration is printed to the stdout. - -Use --include-secrets to include keys in the export. In this case please keep the file secure as it contains sensitive information. - -Exported cluster configuration without secrets can be imported by another user using node import command. -- [`import`](#avalanche-node-import): (ALPHA Warning) This command is currently in experimental mode. - -The node import command imports cluster configuration and its nodes configuration from a text file -created from the node export command. - -Prior to calling this command, call node whitelist command to have your SSH public key and IP whitelisted by -the cluster owner. This will enable you to use avalanche-cli commands to manage the imported cluster. - -Please note, that this imported cluster will be considered as EXTERNAL by avalanche-cli, so some commands -affecting cloud nodes like node create or node destroy will be not applicable to it. -- [`list`](#avalanche-node-list): (ALPHA Warning) This command is currently in experimental mode. - -The node list command lists all clusters together with their nodes. -- [`loadtest`](#avalanche-node-loadtest): (ALPHA Warning) This command is currently in experimental mode. - -The node loadtest command suite starts and stops a load test for an existing devnet cluster. -- [`local`](#avalanche-node-local): (ALPHA Warning) This command is currently in experimental mode. - -The node local command suite provides a collection of commands related to local nodes -- [`refresh-ips`](#avalanche-node-refresh-ips): (ALPHA Warning) This command is currently in experimental mode. - -The node refresh-ips command obtains the current IP for all nodes with dynamic IPs in the cluster, -and updates the local node information used by CLI commands. -- [`resize`](#avalanche-node-resize): (ALPHA Warning) This command is currently in experimental mode. - -The node resize command can change the amount of CPU, memory and disk space available for the cluster nodes. -- [`scp`](#avalanche-node-scp): (ALPHA Warning) This command is currently in experimental mode. - -The node scp command securely copies files to and from nodes. Remote source or destionation can be specified using the following format: -[clusterName|nodeID|instanceID|IP]:/path/to/file. Regular expressions are supported for the source files like /tmp/*.txt. -File transfer to the nodes are parallelized. IF source or destination is cluster, the other should be a local file path. -If both destinations are remote, they must be nodes for the same cluster and not clusters themselves. -For example: -$ avalanche node scp [cluster1|node1]:/tmp/file.txt /tmp/file.txt -$ avalanche node scp /tmp/file.txt [cluster1|NodeID-XXXX]:/tmp/file.txt -$ avalanche node scp node1:/tmp/file.txt NodeID-XXXX:/tmp/file.txt -- [`ssh`](#avalanche-node-ssh): (ALPHA Warning) This command is currently in experimental mode. - -The node ssh command execute a given command [cmd] using ssh on all nodes in the cluster if ClusterName is given. -If no command is given, just prints the ssh command to be used to connect to each node in the cluster. -For provided NodeID or InstanceID or IP, the command [cmd] will be executed on that node. -If no [cmd] is provided for the node, it will open ssh shell there. -- [`status`](#avalanche-node-status): (ALPHA Warning) This command is currently in experimental mode. - -The node status command gets the bootstrap status of all nodes in a cluster with the Primary Network. -If no cluster is given, defaults to node list behaviour. - -To get the bootstrap status of a node with a Blockchain, use --blockchain flag -- [`sync`](#avalanche-node-sync): (ALPHA Warning) This command is currently in experimental mode. - -The node sync command enables all nodes in a cluster to be bootstrapped to a Blockchain. -You can check the blockchain bootstrap status by calling avalanche node status `clusterName` --blockchain `blockchainName` -- [`update`](#avalanche-node-update): (ALPHA Warning) This command is currently in experimental mode. - -The node update command suite provides a collection of commands for nodes to update -their avalanchego or VM config. - -You can check the status after update by calling avalanche node status -- [`upgrade`](#avalanche-node-upgrade): (ALPHA Warning) This command is currently in experimental mode. - -The node update command suite provides a collection of commands for nodes to update -their avalanchego or VM version. - -You can check the status after upgrade by calling avalanche node status -- [`validate`](#avalanche-node-validate): (ALPHA Warning) This command is currently in experimental mode. - -The node validate command suite provides a collection of commands for nodes to join -the Primary Network and Subnets as validators. -If any of the commands is run before the nodes are bootstrapped on the Primary Network, the command -will fail. You can check the bootstrap status by calling avalanche node status `clusterName` -- [`whitelist`](#avalanche-node-whitelist): (ALPHA Warning) The whitelist command suite provides a collection of tools for granting access to the cluster. - - Command adds IP if --ip params provided to cloud security access rules allowing it to access all nodes in the cluster via ssh or http. - It also command adds SSH public key to all nodes in the cluster if --ssh params is there. - If no params provided it detects current user IP automaticaly and whitelists it - -**Flags:** - -```bash --h, --help help for node ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### addDashboard - -(ALPHA Warning) This command is currently in experimental mode. - -The node addDashboard command adds custom dashboard to the Grafana monitoring dashboard for the -cluster. - -**Usage:** -```bash -avalanche node addDashboard [subcommand] [flags] -``` - -**Flags:** - -```bash ---add-grafana-dashboard string path to additional grafana dashboard json file --h, --help help for addDashboard ---subnet string subnet that the dasbhoard is intended for (if any) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### create - -(ALPHA Warning) This command is currently in experimental mode. - -The node create command sets up a validator on a cloud server of your choice. -The validator will be validating the Avalanche Primary Network and Subnet -of your choice. By default, the command runs an interactive wizard. It -walks you through all the steps you need to set up a validator. -Once this command is completed, you will have to wait for the validator -to finish bootstrapping on the primary network before running further -commands on it, e.g. validating a Subnet. You can check the bootstrapping -status by running avalanche node status - -The created node will be part of group of validators called `clusterName` -and users can call node commands with `clusterName` so that the command -will apply to all nodes in the cluster - -**Usage:** -```bash -avalanche node create [subcommand] [flags] -``` - -**Flags:** - -```bash ---add-grafana-dashboard string path to additional grafana dashboard json file ---alternative-key-pair-name string key pair name to use if default one generates conflicts ---authorize-access authorize CLI to create cloud resources ---auto-replace-keypair automatically replaces key pair to access node if previous key pair is not found ---avalanchego-version-from-subnet string install latest avalanchego version, that is compatible with the given subnet, on node/s ---aws create node/s in AWS cloud ---aws-profile string aws profile to use (default "default") ---aws-volume-iops int AWS iops (for gp3, io1, and io2 volume types only) (default 3000) ---aws-volume-size int AWS volume size in GB (default 1000) ---aws-volume-throughput int AWS throughput in MiB/s (for gp3 volume type only) (default 125) ---aws-volume-type string AWS volume type (default "gp3") ---bootstrap-ids stringArray nodeIDs of bootstrap nodes ---bootstrap-ips stringArray IP:port pairs of bootstrap nodes ---cluster string operate on the given cluster ---custom-avalanchego-version string install given avalanchego version on node/s ---devnet operate on a devnet network ---enable-monitoring set up Prometheus monitoring for created nodes. This option creates a separate monitoring cloud instance and incures additional cost ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet ---gcp create node/s in GCP cloud ---gcp-credentials string use given GCP credentials ---gcp-project string use given GCP project ---genesis string path to genesis file ---grafana-pkg string use grafana pkg instead of apt repo(by default), for example https://dl.grafana.com/oss/release/grafana_10.4.1_amd64.deb --h, --help help for create ---latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s ---latest-avalanchego-version install latest avalanchego release version on node/s --m, --mainnet operate on mainnet ---node-type string cloud instance type. Use 'default' to use recommended default instance type ---num-apis ints number of API nodes(nodes without stake) to create in the new Devnet ---num-validators ints number of nodes to create per region(s). Use comma to separate multiple numbers for each region in the same order as --region flag ---partial-sync primary network partial sync (default true) ---public-http-port allow public access to avalanchego HTTP port ---region strings create node(s) in given region(s). Use comma to separate multiple regions ---ssh-agent-identity string use given ssh identity(only for ssh agent). If not set, default will be used --t, --testnet fuji operate on testnet (alias to fuji) ---upgrade string path to upgrade file ---use-ssh-agent use ssh agent(ex: Yubikey) for ssh auth ---use-static-ip attach static Public IP on cloud servers (default true) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### destroy - -(ALPHA Warning) This command is currently in experimental mode. - -The node destroy command terminates all running nodes in cloud server and deletes all storage disks. - -If there is a static IP address attached, it will be released. - -**Usage:** -```bash -avalanche node destroy [subcommand] [flags] -``` - -**Flags:** - -```bash ---all destroy all existing clusters created by Avalanche CLI ---authorize-access authorize CLI to release cloud resources --y, --authorize-all authorize all CLI requests ---authorize-remove authorize CLI to remove all local files related to cloud nodes ---aws-profile string aws profile to use (default "default") --h, --help help for destroy ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### devnet - -(ALPHA Warning) This command is currently in experimental mode. - -The node devnet command suite provides a collection of commands related to devnets. -You can check the updated status by calling avalanche node status `clusterName` - -**Usage:** -```bash -avalanche node devnet [subcommand] [flags] -``` - -**Subcommands:** - -- [`deploy`](#avalanche-node-devnet-deploy): (ALPHA Warning) This command is currently in experimental mode. - -The node devnet deploy command deploys a subnet into a devnet cluster, creating subnet and blockchain txs for it. -It saves the deploy info both locally and remotely. -- [`wiz`](#avalanche-node-devnet-wiz): (ALPHA Warning) This command is currently in experimental mode. - -The node wiz command creates a devnet and deploys, sync and validate a subnet into it. It creates the subnet if so needed. - -**Flags:** - -```bash --h, --help help for devnet ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### devnet deploy - -(ALPHA Warning) This command is currently in experimental mode. - -The node devnet deploy command deploys a subnet into a devnet cluster, creating subnet and blockchain txs for it. -It saves the deploy info both locally and remotely. - -**Usage:** -```bash -avalanche node devnet deploy [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for deploy ---no-checks do not check for healthy status or rpc compatibility of nodes against subnet ---subnet-aliases strings additional subnet aliases to be used for RPC calls in addition to subnet blockchain name ---subnet-only only create a subnet ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### devnet wiz - -(ALPHA Warning) This command is currently in experimental mode. - -The node wiz command creates a devnet and deploys, sync and validate a subnet into it. It creates the subnet if so needed. - -**Usage:** -```bash -avalanche node devnet wiz [subcommand] [flags] -``` - -**Flags:** - -```bash ---add-grafana-dashboard string path to additional grafana dashboard json file ---alternative-key-pair-name string key pair name to use if default one generates conflicts ---authorize-access authorize CLI to create cloud resources ---auto-replace-keypair automatically replaces key pair to access node if previous key pair is not found ---aws create node/s in AWS cloud ---aws-profile string aws profile to use (default "default") ---aws-volume-iops int AWS iops (for gp3, io1, and io2 volume types only) (default 3000) ---aws-volume-size int AWS volume size in GB (default 1000) ---aws-volume-throughput int AWS throughput in MiB/s (for gp3 volume type only) (default 125) ---aws-volume-type string AWS volume type (default "gp3") ---chain-config string path to the chain configuration for subnet ---custom-avalanchego-version string install given avalanchego version on node/s ---custom-subnet use a custom VM as the subnet virtual machine ---custom-vm-branch string custom vm branch or commit ---custom-vm-build-script string custom vm build-script ---custom-vm-repo-url string custom vm repository url ---default-validator-params use default weight/start/duration params for subnet validator ---deploy-icm-messenger deploy Interchain Messenger (default true) ---deploy-icm-registry deploy Interchain Registry (default true) ---deploy-teleporter-messenger deploy Interchain Messenger (default true) ---deploy-teleporter-registry deploy Interchain Registry (default true) ---enable-monitoring set up Prometheus monitoring for created nodes. Please note that this option creates a separate monitoring instance and incures additional cost ---evm-chain-id uint chain ID to use with Subnet-EVM ---evm-defaults use default production settings with Subnet-EVM ---evm-production-defaults use default production settings for your blockchain ---evm-subnet use Subnet-EVM as the subnet virtual machine ---evm-test-defaults use default test settings for your blockchain ---evm-token string token name to use with Subnet-EVM ---evm-version string version of Subnet-EVM to use ---force-subnet-create overwrite the existing subnet configuration if one exists ---gcp create node/s in GCP cloud ---gcp-credentials string use given GCP credentials ---gcp-project string use given GCP project ---grafana-pkg string use grafana pkg instead of apt repo(by default), for example https://dl.grafana.com/oss/release/grafana_10.4.1_amd64.deb --h, --help help for wiz ---icm generate an icm-ready vm ---icm-messenger-contract-address-path string path to an icm messenger contract address file ---icm-messenger-deployer-address-path string path to an icm messenger deployer address file ---icm-messenger-deployer-tx-path string path to an icm messenger deployer tx file ---icm-registry-bytecode-path string path to an icm registry bytecode file ---icm-version string icm version to deploy (default "latest") ---latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s ---latest-avalanchego-version install latest avalanchego release version on node/s ---latest-evm-version use latest Subnet-EVM released version ---latest-pre-released-evm-version use latest Subnet-EVM pre-released version ---node-config string path to avalanchego node configuration for subnet ---node-type string cloud instance type. Use 'default' to use recommended default instance type ---num-apis ints number of API nodes(nodes without stake) to create in the new Devnet ---num-validators ints number of nodes to create per region(s). Use comma to separate multiple numbers for each region in the same order as --region flag ---public-http-port allow public access to avalanchego HTTP port ---region strings create node/s in given region(s). Use comma to separate multiple regions ---relayer run AWM relayer when deploying the vm ---ssh-agent-identity string use given ssh identity(only for ssh agent). If not set, default will be used. ---subnet-aliases strings additional subnet aliases to be used for RPC calls in addition to subnet blockchain name ---subnet-config string path to the subnet configuration for subnet ---subnet-genesis string file path of the subnet genesis ---teleporter generate an icm-ready vm ---teleporter-messenger-contract-address-path string path to an icm messenger contract address file ---teleporter-messenger-deployer-address-path string path to an icm messenger deployer address file ---teleporter-messenger-deployer-tx-path string path to an icm messenger deployer tx file ---teleporter-registry-bytecode-path string path to an icm registry bytecode file ---teleporter-version string icm version to deploy (default "latest") ---use-ssh-agent use ssh agent for ssh ---use-static-ip attach static Public IP on cloud servers (default true) ---validators strings deploy subnet into given comma separated list of validators. defaults to all cluster nodes ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### export - -(ALPHA Warning) This command is currently in experimental mode. - -The node export command exports cluster configuration and its nodes config to a text file. - -If no file is specified, the configuration is printed to the stdout. - -Use --include-secrets to include keys in the export. In this case please keep the file secure as it contains sensitive information. - -Exported cluster configuration without secrets can be imported by another user using node import command. - -**Usage:** -```bash -avalanche node export [subcommand] [flags] -``` - -**Flags:** - -```bash ---file string specify the file to export the cluster configuration to ---force overwrite the file if it exists --h, --help help for export ---include-secrets include keys in the export ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### import - -(ALPHA Warning) This command is currently in experimental mode. - -The node import command imports cluster configuration and its nodes configuration from a text file -created from the node export command. - -Prior to calling this command, call node whitelist command to have your SSH public key and IP whitelisted by -the cluster owner. This will enable you to use avalanche-cli commands to manage the imported cluster. - -Please note, that this imported cluster will be considered as EXTERNAL by avalanche-cli, so some commands -affecting cloud nodes like node create or node destroy will be not applicable to it. - -**Usage:** -```bash -avalanche node import [subcommand] [flags] -``` - -**Flags:** - -```bash ---file string specify the file to export the cluster configuration to --h, --help help for import ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### list - -(ALPHA Warning) This command is currently in experimental mode. - -The node list command lists all clusters together with their nodes. - -**Usage:** -```bash -avalanche node list [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for list ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### loadtest - -(ALPHA Warning) This command is currently in experimental mode. - -The node loadtest command suite starts and stops a load test for an existing devnet cluster. - -**Usage:** -```bash -avalanche node loadtest [subcommand] [flags] -``` - -**Subcommands:** - -- [`start`](#avalanche-node-loadtest-start): (ALPHA Warning) This command is currently in experimental mode. - -The node loadtest command starts load testing for an existing devnet cluster. If the cluster does -not have an existing load test host, the command creates a separate cloud server and builds the load -test binary based on the provided load test Git Repo URL and load test binary build command. - -The command will then run the load test binary based on the provided load test run command. -- [`stop`](#avalanche-node-loadtest-stop): (ALPHA Warning) This command is currently in experimental mode. - -The node loadtest stop command stops load testing for an existing devnet cluster and terminates the -separate cloud server created to host the load test. - -**Flags:** - -```bash --h, --help help for loadtest ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### loadtest start - -(ALPHA Warning) This command is currently in experimental mode. - -The node loadtest command starts load testing for an existing devnet cluster. If the cluster does -not have an existing load test host, the command creates a separate cloud server and builds the load -test binary based on the provided load test Git Repo URL and load test binary build command. - -The command will then run the load test binary based on the provided load test run command. - -**Usage:** -```bash -avalanche node loadtest start [subcommand] [flags] -``` - -**Flags:** - -```bash ---authorize-access authorize CLI to create cloud resources ---aws create loadtest node in AWS cloud ---aws-profile string aws profile to use (default "default") ---gcp create loadtest in GCP cloud --h, --help help for start ---load-test-branch string load test branch or commit ---load-test-build-cmd string command to build load test binary ---load-test-cmd string command to run load test ---load-test-repo string load test repo url to use ---node-type string cloud instance type for loadtest script ---region string create load test node in a given region ---ssh-agent-identity string use given ssh identity(only for ssh agent). If not set, default will be used ---use-ssh-agent use ssh agent(ex: Yubikey) for ssh auth ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### loadtest stop - -(ALPHA Warning) This command is currently in experimental mode. - -The node loadtest stop command stops load testing for an existing devnet cluster and terminates the -separate cloud server created to host the load test. - -**Usage:** -```bash -avalanche node loadtest stop [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for stop ---load-test strings stop specified load test node(s). Use comma to separate multiple load test instance names ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### local - -(ALPHA Warning) This command is currently in experimental mode. - -The node local command suite provides a collection of commands related to local nodes - -**Usage:** -```bash -avalanche node local [subcommand] [flags] -``` - -**Subcommands:** - -- [`destroy`](#avalanche-node-local-destroy): Cleanup local node. -- [`start`](#avalanche-node-local-start): (ALPHA Warning) This command is currently in experimental mode. - -The node local start command sets up a validator on a local server. -The validator will be validating the Avalanche Primary Network and Subnet -of your choice. By default, the command runs an interactive wizard. It -walks you through all the steps you need to set up a validator. -Once this command is completed, you will have to wait for the validator -to finish bootstrapping on the primary network before running further -commands on it, e.g. validating a Subnet. You can check the bootstrapping -status by running avalanche node status local -- [`status`](#avalanche-node-local-status): Get status of local node. -- [`stop`](#avalanche-node-local-stop): Stop local node. -- [`track`](#avalanche-node-local-track): (ALPHA Warning) make the local node at the cluster to track given blockchain - -**Flags:** - -```bash --h, --help help for local ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### local destroy - -Cleanup local node. - -**Usage:** -```bash -avalanche node local destroy [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for destroy ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### local start - -(ALPHA Warning) This command is currently in experimental mode. - -The node local start command sets up a validator on a local server. -The validator will be validating the Avalanche Primary Network and Subnet -of your choice. By default, the command runs an interactive wizard. It -walks you through all the steps you need to set up a validator. -Once this command is completed, you will have to wait for the validator -to finish bootstrapping on the primary network before running further -commands on it, e.g. validating a Subnet. You can check the bootstrapping -status by running avalanche node status local - -**Usage:** -```bash -avalanche node local start [subcommand] [flags] -``` - -**Flags:** - -```bash ---avalanchego-path string use this avalanchego binary path ---bootstrap-id stringArray nodeIDs of bootstrap nodes ---bootstrap-ip stringArray IP:port pairs of bootstrap nodes ---cluster string operate on the given cluster ---custom-avalanchego-version string install given avalanchego version on node/s ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet ---genesis string path to genesis file --h, --help help for start ---latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s (default true) ---latest-avalanchego-version install latest avalanchego release version on node/s --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-config string path to common avalanchego config settings for all nodes ---num-nodes uint32 number of nodes to start (default 1) ---partial-sync primary network partial sync (default true) ---staking-cert-key-path string path to provided staking cert key for node ---staking-signer-key-path string path to provided staking signer key for node ---staking-tls-key-path string path to provided staking tls key for node --t, --testnet fuji operate on testnet (alias to fuji) ---upgrade string path to upgrade file ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### local status - -Get status of local node. - -**Usage:** -```bash -avalanche node local status [subcommand] [flags] -``` - -**Flags:** - -```bash ---blockchain string specify the blockchain the node is syncing with --h, --help help for status ---subnet string specify the blockchain the node is syncing with ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### local stop - -Stop local node. - -**Usage:** -```bash -avalanche node local stop [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for stop ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### local track - -(ALPHA Warning) make the local node at the cluster to track given blockchain - -**Usage:** -```bash -avalanche node local track [subcommand] [flags] -``` - -**Flags:** - -```bash ---avalanchego-path string use this avalanchego binary path ---custom-avalanchego-version string install given avalanchego version on node/s --h, --help help for track ---latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s (default true) ---latest-avalanchego-version install latest avalanchego release version on node/s ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### refresh-ips - -(ALPHA Warning) This command is currently in experimental mode. - -The node refresh-ips command obtains the current IP for all nodes with dynamic IPs in the cluster, -and updates the local node information used by CLI commands. - -**Usage:** -```bash -avalanche node refresh-ips [subcommand] [flags] -``` - -**Flags:** - -```bash ---aws-profile string aws profile to use (default "default") --h, --help help for refresh-ips ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### resize - -(ALPHA Warning) This command is currently in experimental mode. - -The node resize command can change the amount of CPU, memory and disk space available for the cluster nodes. - -**Usage:** -```bash -avalanche node resize [subcommand] [flags] -``` - -**Flags:** - -```bash ---aws-profile string aws profile to use (default "default") ---disk-size string Disk size to resize in Gb (e.g. 1000Gb) --h, --help help for resize ---node-type string Node type to resize (e.g. t3.2xlarge) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### scp - -(ALPHA Warning) This command is currently in experimental mode. - -The node scp command securely copies files to and from nodes. Remote source or destionation can be specified using the following format: -[clusterName|nodeID|instanceID|IP]:/path/to/file. Regular expressions are supported for the source files like /tmp/*.txt. -File transfer to the nodes are parallelized. IF source or destination is cluster, the other should be a local file path. -If both destinations are remote, they must be nodes for the same cluster and not clusters themselves. -For example: -$ avalanche node scp [cluster1|node1]:/tmp/file.txt /tmp/file.txt -$ avalanche node scp /tmp/file.txt [cluster1|NodeID-XXXX]:/tmp/file.txt -$ avalanche node scp node1:/tmp/file.txt NodeID-XXXX:/tmp/file.txt - -**Usage:** -```bash -avalanche node scp [subcommand] [flags] -``` - -**Flags:** - -```bash ---compress use compression for ssh --h, --help help for scp ---recursive copy directories recursively ---with-loadtest include loadtest node for scp cluster operations ---with-monitor include monitoring node for scp cluster operations ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### ssh - -(ALPHA Warning) This command is currently in experimental mode. - -The node ssh command execute a given command [cmd] using ssh on all nodes in the cluster if ClusterName is given. -If no command is given, just prints the ssh command to be used to connect to each node in the cluster. -For provided NodeID or InstanceID or IP, the command [cmd] will be executed on that node. -If no [cmd] is provided for the node, it will open ssh shell there. - -**Usage:** -```bash -avalanche node ssh [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for ssh ---parallel run ssh command on all nodes in parallel ---with-loadtest include loadtest node for ssh cluster operations ---with-monitor include monitoring node for ssh cluster operations ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### status - -(ALPHA Warning) This command is currently in experimental mode. - -The node status command gets the bootstrap status of all nodes in a cluster with the Primary Network. -If no cluster is given, defaults to node list behaviour. - -To get the bootstrap status of a node with a Blockchain, use --blockchain flag - -**Usage:** -```bash -avalanche node status [subcommand] [flags] -``` - -**Flags:** - -```bash ---blockchain string specify the blockchain the node is syncing with --h, --help help for status ---subnet string specify the blockchain the node is syncing with ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### sync - -(ALPHA Warning) This command is currently in experimental mode. - -The node sync command enables all nodes in a cluster to be bootstrapped to a Blockchain. -You can check the blockchain bootstrap status by calling avalanche node status `clusterName` --blockchain `blockchainName` - -**Usage:** -```bash -avalanche node sync [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for sync ---no-checks do not check for bootstrapped/healthy status or rpc compatibility of nodes against subnet ---subnet-aliases strings subnet alias to be used for RPC calls. defaults to subnet blockchain ID ---validators strings sync subnet into given comma separated list of validators. defaults to all cluster nodes ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### update - -(ALPHA Warning) This command is currently in experimental mode. - -The node update command suite provides a collection of commands for nodes to update -their avalanchego or VM config. - -You can check the status after update by calling avalanche node status - -**Usage:** -```bash -avalanche node update [subcommand] [flags] -``` - -**Subcommands:** - -- [`subnet`](#avalanche-node-update-subnet): (ALPHA Warning) This command is currently in experimental mode. - -The node update subnet command updates all nodes in a cluster with latest Subnet configuration and VM for custom VM. -You can check the updated subnet bootstrap status by calling avalanche node status `clusterName` --subnet `subnetName` - -**Flags:** - -```bash --h, --help help for update ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### update subnet - -(ALPHA Warning) This command is currently in experimental mode. - -The node update subnet command updates all nodes in a cluster with latest Subnet configuration and VM for custom VM. -You can check the updated subnet bootstrap status by calling avalanche node status `clusterName` --subnet `subnetName` - -**Usage:** -```bash -avalanche node update subnet [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for subnet ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### upgrade - -(ALPHA Warning) This command is currently in experimental mode. - -The node update command suite provides a collection of commands for nodes to update -their avalanchego or VM version. - -You can check the status after upgrade by calling avalanche node status - -**Usage:** -```bash -avalanche node upgrade [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for upgrade ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### validate - -(ALPHA Warning) This command is currently in experimental mode. - -The node validate command suite provides a collection of commands for nodes to join -the Primary Network and Subnets as validators. -If any of the commands is run before the nodes are bootstrapped on the Primary Network, the command -will fail. You can check the bootstrap status by calling avalanche node status `clusterName` - -**Usage:** -```bash -avalanche node validate [subcommand] [flags] -``` - -**Subcommands:** - -- [`primary`](#avalanche-node-validate-primary): (ALPHA Warning) This command is currently in experimental mode. - -The node validate primary command enables all nodes in a cluster to be validators of Primary -Network. -- [`subnet`](#avalanche-node-validate-subnet): (ALPHA Warning) This command is currently in experimental mode. - -The node validate subnet command enables all nodes in a cluster to be validators of a Subnet. -If the command is run before the nodes are Primary Network validators, the command will first -make the nodes Primary Network validators before making them Subnet validators. -If The command is run before the nodes are bootstrapped on the Primary Network, the command will fail. -You can check the bootstrap status by calling avalanche node status `clusterName` -If The command is run before the nodes are synced to the subnet, the command will fail. -You can check the subnet sync status by calling avalanche node status `clusterName` --subnet `subnetName` - -**Flags:** - -```bash --h, --help help for validate ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### validate primary - -(ALPHA Warning) This command is currently in experimental mode. - -The node validate primary command enables all nodes in a cluster to be validators of Primary -Network. - -**Usage:** -```bash -avalanche node validate primary [subcommand] [flags] -``` - -**Flags:** - -```bash --e, --ewoq use ewoq key [fuji/devnet only] --h, --help help for primary --k, --key string select the key to use [fuji only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) ---ledger-addrs strings use the given ledger addresses ---stake-amount uint how many AVAX to stake in the validator ---staking-period duration how long validator validates for after start time ---start-time string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -#### validate subnet - -(ALPHA Warning) This command is currently in experimental mode. - -The node validate subnet command enables all nodes in a cluster to be validators of a Subnet. -If the command is run before the nodes are Primary Network validators, the command will first -make the nodes Primary Network validators before making them Subnet validators. -If The command is run before the nodes are bootstrapped on the Primary Network, the command will fail. -You can check the bootstrap status by calling avalanche node status `clusterName` -If The command is run before the nodes are synced to the subnet, the command will fail. -You can check the subnet sync status by calling avalanche node status `clusterName` --subnet `subnetName` - -**Usage:** -```bash -avalanche node validate subnet [subcommand] [flags] -``` - -**Flags:** - -```bash ---default-validator-params use default weight/start/duration params for subnet validator --e, --ewoq use ewoq key [fuji/devnet only] --h, --help help for subnet --k, --key string select the key to use [fuji/devnet only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) ---ledger-addrs strings use the given ledger addresses ---no-checks do not check for bootstrapped status or healthy status ---no-validation-checks do not check if subnet is already synced or validated (default true) ---stake-amount uint how many AVAX to stake in the validator ---staking-period duration how long validator validates for after start time ---start-time string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format ---validators strings validate subnet for the given comma separated list of validators. defaults to all cluster nodes ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### whitelist - -(ALPHA Warning) The whitelist command suite provides a collection of tools for granting access to the cluster. - - Command adds IP if --ip params provided to cloud security access rules allowing it to access all nodes in the cluster via ssh or http. - It also command adds SSH public key to all nodes in the cluster if --ssh params is there. - If no params provided it detects current user IP automaticaly and whitelists it - -**Usage:** -```bash -avalanche node whitelist [subcommand] [flags] -``` - -**Flags:** - -```bash --y, --current-ip whitelist current host ip --h, --help help for whitelist ---ip string ip address to whitelist ---ssh string ssh public key to whitelist ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -## avalanche primary - -The primary command suite provides a collection of tools for interacting with the -Primary Network - -**Usage:** -```bash -avalanche primary [subcommand] [flags] -``` - -**Subcommands:** - -- [`addValidator`](#avalanche-primary-addvalidator): The primary addValidator command adds a node as a validator -in the Primary Network -- [`describe`](#avalanche-primary-describe): The subnet describe command prints details of the primary network configuration to the console. - -**Flags:** - -```bash --h, --help help for primary ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### addValidator - -The primary addValidator command adds a node as a validator -in the Primary Network - -**Usage:** -```bash -avalanche primary addValidator [subcommand] [flags] -``` - -**Flags:** - -```bash ---cluster string operate on the given cluster ---delegation-fee uint32 set the delegation fee (20 000 is equivalent to 2%) ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for addValidator --k, --key string select the key to use [fuji only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) ---ledger-addrs strings use the given ledger addresses --m, --mainnet operate on mainnet ---nodeID string set the NodeID of the validator to add ---proof-of-possession string set the BLS proof of possession of the validator to add ---public-key string set the BLS public key of the validator to add ---staking-period duration how long this validator will be staking ---start-time string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format --t, --testnet fuji operate on testnet (alias to fuji) ---weight uint set the staking weight of the validator to add ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### describe - -The subnet describe command prints details of the primary network configuration to the console. - -**Usage:** -```bash -avalanche primary describe [subcommand] [flags] -``` - -**Flags:** - -```bash ---cluster string operate on the given cluster --h, --help help for describe --l, --local operate on a local network ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -## avalanche teleporter - -The messenger command suite provides a collection of tools for interacting -with ICM messenger contracts. - -**Usage:** -```bash -avalanche teleporter [subcommand] [flags] -``` - -**Subcommands:** - -- [`deploy`](#avalanche-teleporter-deploy): Deploys ICM Messenger and Registry into a given L1. -- [`sendMsg`](#avalanche-teleporter-sendmsg): Sends and wait reception for a ICM msg between two blockchains. - -**Flags:** - -```bash --h, --help help for teleporter ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### deploy - -Deploys ICM Messenger and Registry into a given L1. - -**Usage:** -```bash -avalanche teleporter deploy [subcommand] [flags] -``` - -**Flags:** - -```bash ---blockchain string deploy ICM into the given CLI blockchain ---blockchain-id string deploy ICM into the given blockchain ID/Alias ---c-chain deploy ICM into C-Chain ---cchain-key string key to be used to pay fees to deploy ICM to C-Chain ---cluster string operate on the given cluster ---deploy-messenger deploy ICM Messenger (default true) ---deploy-registry deploy ICM Registry (default true) ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations ---force-registry-deploy deploy ICM Registry even if Messenger has already been deployed --f, --fuji testnet operate on fuji (alias to testnet ---genesis-key use genesis allocated key to fund ICM deploy --h, --help help for deploy ---include-cchain deploy ICM also to C-Chain ---key string CLI stored key to use to fund ICM deploy --l, --local operate on a local network ---messenger-contract-address-path string path to a messenger contract address file ---messenger-deployer-address-path string path to a messenger deployer address file ---messenger-deployer-tx-path string path to a messenger deployer tx file ---private-key string private key to use to fund ICM deploy ---registry-bytecode-path string path to a registry bytecode file ---rpc-url string use the given RPC URL to connect to the subnet --t, --testnet fuji operate on testnet (alias to fuji) ---version string version to deploy (default "latest") ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### sendMsg - -Sends and wait reception for a ICM msg between two blockchains. - -**Usage:** -```bash -avalanche teleporter sendMsg [subcommand] [flags] -``` - -**Flags:** - -```bash ---cluster string operate on the given cluster ---dest-rpc string use the given destination blockchain rpc endpoint ---destination-address string deliver the message to the given contract destination address ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet ---genesis-key use genesis allocated key as message originator and to pay source blockchain fees --h, --help help for sendMsg ---hex-encoded given message is hex encoded ---key string CLI stored key to use as message originator and to pay source blockchain fees --l, --local operate on a local network ---private-key string private key to use as message originator and to pay source blockchain fees ---source-rpc string use the given source blockchain rpc endpoint --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -## avalanche transaction - -The transaction command suite provides all of the utilities required to sign multisig transactions. - -**Usage:** -```bash -avalanche transaction [subcommand] [flags] -``` - -**Subcommands:** - -- [`commit`](#avalanche-transaction-commit): The transaction commit command commits a transaction by submitting it to the P-Chain. -- [`sign`](#avalanche-transaction-sign): The transaction sign command signs a multisig transaction. - -**Flags:** - -```bash --h, --help help for transaction ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### commit - -The transaction commit command commits a transaction by submitting it to the P-Chain. - -**Usage:** -```bash -avalanche transaction commit [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for commit ---input-tx-filepath string Path to the transaction signed by all signatories ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### sign - -The transaction sign command signs a multisig transaction. - -**Usage:** -```bash -avalanche transaction sign [subcommand] [flags] -``` - -**Flags:** - -```bash --h, --help help for sign ---input-tx-filepath string Path to the transaction file for signing --k, --key string select the key to use [fuji only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) ---ledger-addrs strings use the given ledger addresses ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -## avalanche update - -Check if an update is available, and prompt the user to install it - -**Usage:** -```bash -avalanche update [subcommand] [flags] -``` - -**Flags:** - -```bash --c, --confirm Assume yes for installation --h, --help help for update --v, --version version for update ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -## avalanche validator - -The validator command suite provides a collection of tools for managing validator -balance on P-Chain. - -Validator's balance is used to pay for continuous fee to the P-Chain. When this Balance reaches 0, -the validator will be considered inactive and will no longer participate in validating the L1 - -**Usage:** -```bash -avalanche validator [subcommand] [flags] -``` - -**Subcommands:** - -- [`getBalance`](#avalanche-validator-getbalance): This command gets the remaining validator P-Chain balance that is available to pay -P-Chain continuous fee -- [`increaseBalance`](#avalanche-validator-increasebalance): This command increases the validator P-Chain balance -- [`list`](#avalanche-validator-list): This command gets a list of the validators of the L1 - -**Flags:** - -```bash --h, --help help for validator ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### getBalance - -This command gets the remaining validator P-Chain balance that is available to pay -P-Chain continuous fee - -**Usage:** -```bash -avalanche validator getBalance [subcommand] [flags] -``` - -**Flags:** - -```bash ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for getBalance ---l1 string name of L1 --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-id string node ID of the validator --t, --testnet fuji operate on testnet (alias to fuji) ---validation-id string validation ID of the validator ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### increaseBalance - -This command increases the validator P-Chain balance - -**Usage:** -```bash -avalanche validator increaseBalance [subcommand] [flags] -``` - -**Flags:** - -```bash ---balance float amount of AVAX to increase validator's balance by ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for increaseBalance --k, --key string select the key to use [fuji/devnet deploy only] ---l1 string name of L1 (to increase balance of bootstrap validators only) --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-id string node ID of the validator --t, --testnet fuji operate on testnet (alias to fuji) ---validation-id string validationIDStr of the validator ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - - -### list - -This command gets a list of the validators of the L1 - -**Usage:** -```bash -avalanche validator list [subcommand] [flags] -``` - -**Flags:** - -```bash ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for list --l, --local operate on a local network --m, --mainnet operate on mainnet --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions -``` - From b2657aa296b7fa567b9bd71170ee750aef8738cf Mon Sep 17 00:00:00 2001 From: github-actions Date: Mon, 13 Jan 2025 15:52:50 +0000 Subject: [PATCH 12/15] chore: Update MD file [skip ci] --- cmd/commands.md | 3614 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 3614 insertions(+) create mode 100644 cmd/commands.md diff --git a/cmd/commands.md b/cmd/commands.md new file mode 100644 index 000000000..215f01a24 --- /dev/null +++ b/cmd/commands.md @@ -0,0 +1,3614 @@ + +## avalanche blockchain + +The blockchain command suite provides a collection of tools for developing +and deploying Blockchains. + +To get started, use the blockchain create command wizard to walk through the +configuration of your very first Blockchain. Then, go ahead and deploy it +with the blockchain deploy command. You can use the rest of the commands to +manage your Blockchain configurations and live deployments. + +**Usage:** +```bash +avalanche blockchain [subcommand] [flags] +``` + +**Subcommands:** + +- [`addValidator`](#avalanche-blockchain-addvalidator): The blockchain addValidator command adds a node as a validator to +an L1 of the user provided deployed network. If the network is proof of +authority, the owner of the validator manager contract must sign the +transaction. If the network is proof of stake, the node must stake the L1's +staking token. Both processes will issue a RegisterL1ValidatorTx on the P-Chain. + +This command currently only works on Blockchains deployed to either the Fuji +Testnet or Mainnet. +- [`changeOwner`](#avalanche-blockchain-changeowner): The blockchain changeOwner changes the owner of the deployed Blockchain. +- [`changeWeight`](#avalanche-blockchain-changeweight): The blockchain changeWeight command changes the weight of a L1 Validator. + +The L1 has to be a Proof of Authority L1. +- [`configure`](#avalanche-blockchain-configure): AvalancheGo nodes support several different configuration files. Each network (a Subnet or an L1) has their own config which applies to all blockchains/VMs in the network. Each blockchain within the network +can have its own chain config. A chain can also have special requirements for the AvalancheGo node +configuration itself. This command allows you to set all those files. +- [`create`](#avalanche-blockchain-create): The blockchain create command builds a new genesis file to configure your Blockchain. +By default, the command runs an interactive wizard. It walks you through +all the steps you need to create your first Blockchain. + +The tool supports deploying Subnet-EVM, and custom VMs. You +can create a custom, user-generated genesis with a custom VM by providing +the path to your genesis and VM binaries with the --genesis and --vm flags. + +By default, running the command with a blockchainName that already exists +causes the command to fail. If you'd like to overwrite an existing +configuration, pass the -f flag. +- [`delete`](#avalanche-blockchain-delete): The blockchain delete command deletes an existing blockchain configuration. +- [`deploy`](#avalanche-blockchain-deploy): The blockchain deploy command deploys your Blockchain configuration locally, to Fuji Testnet, or to Mainnet. + +At the end of the call, the command prints the RPC URL you can use to interact with the Subnet. + +Avalanche-CLI only supports deploying an individual Blockchain once per network. Subsequent +attempts to deploy the same Blockchain to the same network (local, Fuji, Mainnet) aren't +allowed. If you'd like to redeploy a Blockchain locally for testing, you must first call +avalanche network clean to reset all deployed chain state. Subsequent local deploys +redeploy the chain with fresh state. You can deploy the same Blockchain to multiple networks, +so you can take your locally tested Blockchain and deploy it on Fuji or Mainnet. +- [`describe`](#avalanche-blockchain-describe): The blockchain describe command prints the details of a Blockchain configuration to the console. +By default, the command prints a summary of the configuration. By providing the --genesis +flag, the command instead prints out the raw genesis file. +- [`export`](#avalanche-blockchain-export): The blockchain export command write the details of an existing Blockchain deploy to a file. + +The command prompts for an output path. You can also provide one with +the --output flag. +- [`import`](#avalanche-blockchain-import): Import blockchain configurations into avalanche-cli. + +This command suite supports importing from a file created on another computer, +or importing from blockchains running public networks +(e.g. created manually or with the deprecated subnet-cli) +- [`join`](#avalanche-blockchain-join): The blockchain join command configures your validator node to begin validating a new Blockchain. + +To complete this process, you must have access to the machine running your validator. If the +CLI is running on the same machine as your validator, it can generate or update your node's +config file automatically. Alternatively, the command can print the necessary instructions +to update your node manually. To complete the validation process, the Blockchain's admins must add +the NodeID of your validator to the Blockchain's allow list by calling addValidator with your +NodeID. + +After you update your validator's config, you need to restart your validator manually. If +you provide the --avalanchego-config flag, this command attempts to edit the config file +at that path. + +This command currently only supports Blockchains deployed on the Fuji Testnet and Mainnet. +- [`list`](#avalanche-blockchain-list): The blockchain list command prints the names of all created Blockchain configurations. Without any flags, +it prints some general, static information about the Blockchain. With the --deployed flag, the command +shows additional information including the VMID, BlockchainID and SubnetID. +- [`publish`](#avalanche-blockchain-publish): The blockchain publish command publishes the Blockchain's VM to a repository. +- [`removeValidator`](#avalanche-blockchain-removevalidator): The blockchain removeValidator command stops a whitelisted blockchain network validator from +validating your deployed Blockchain. + +To remove the validator from the Subnet's allow list, provide the validator's unique NodeID. You can bypass +these prompts by providing the values with flags. +- [`stats`](#avalanche-blockchain-stats): The blockchain stats command prints validator statistics for the given Blockchain. +- [`upgrade`](#avalanche-blockchain-upgrade): The blockchain upgrade command suite provides a collection of tools for +updating your developmental and deployed Blockchains. +- [`validators`](#avalanche-blockchain-validators): The blockchain validators command lists the validators of a blockchain and provides +several statistics about them. +- [`vmid`](#avalanche-blockchain-vmid): The blockchain vmid command prints the virtual machine ID (VMID) for the given Blockchain. + +**Flags:** + +```bash +-h, --help help for blockchain +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### addValidator + +The blockchain addValidator command adds a node as a validator to +an L1 of the user provided deployed network. If the network is proof of +authority, the owner of the validator manager contract must sign the +transaction. If the network is proof of stake, the node must stake the L1's +staking token. Both processes will issue a RegisterL1ValidatorTx on the P-Chain. + +This command currently only works on Blockchains deployed to either the Fuji +Testnet or Mainnet. + +**Usage:** +```bash +avalanche blockchain addValidator [subcommand] [flags] +``` + +**Flags:** + +```bash +--aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) +--aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation +--aggregator-log-level string log level to use with signature aggregator (default "Debug") +--aggregator-log-to-stdout use stdout for signature aggregator logs +--balance uint set the AVAX balance of the validator that will be used for continuous fee on P-Chain +--blockchain-genesis-key use genesis allocated key to pay fees for completing the validator's registration (blockchain gas token) +--blockchain-key string CLI stored key to use to pay fees for completing the validator's registration (blockchain gas token) +--blockchain-private-key string private key to use to pay fees for completing the validator's registration (blockchain gas token) +--bls-proof-of-possession string set the BLS proof of possession of the validator to add +--bls-public-key string set the BLS public key of the validator to add +--cluster string operate on the given cluster +--create-local-validator create additional local validator and add it to existing running local node +--default-duration (for Subnets, not L1s) set duration so as to validate until primary validator ends its period +--default-start-time (for Subnets, not L1s) use default start time for subnet validator (5 minutes later for fuji & mainnet, 30 seconds later for devnet) +--default-validator-params (for Subnets, not L1s) use default weight/start/duration params for subnet validator +--delegation-fee uint16 (PoS only) delegation fee (in bips) (default 100) +--devnet operate on a devnet network +--disable-owner string P-Chain address that will able to disable the validator with a P-Chain transaction +--endpoint string use the given endpoint for network operations +-e, --ewoq use ewoq key [fuji/devnet only] +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for addValidator +-k, --key string select the key to use [fuji/devnet only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-endpoint string gather node id/bls from publicly available avalanchego apis on the given endpoint +--node-id string node-id of the validator to add +--output-tx-path string (for Subnets, not L1s) file path of the add validator tx +--partial-sync set primary network partial sync for new validators (default true) +--remaining-balance-owner string P-Chain address that will receive any leftover AVAX from the validator when it is removed from Subnet +--rpc string connect to validator manager at the given rpc endpoint +--stake-amount uint (PoS only) amount of tokens to stake +--staking-period duration how long this validator will be staking +--start-time string (for Subnets, not L1s) UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format +--subnet-auth-keys strings (for Subnets, not L1s) control keys that will be used to authenticate add validator tx +-t, --testnet fuji operate on testnet (alias to fuji) +--wait-for-tx-acceptance (for Subnets, not L1s) just issue the add validator tx, without waiting for its acceptance (default true) +--weight uint set the staking weight of the validator to add (default 20) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### changeOwner + +The blockchain changeOwner changes the owner of the deployed Blockchain. + +**Usage:** +```bash +avalanche blockchain changeOwner [subcommand] [flags] +``` + +**Flags:** + +```bash +--auth-keys strings control keys that will be used to authenticate transfer blockchain ownership tx +--cluster string operate on the given cluster +--control-keys strings addresses that may make blockchain changes +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-e, --ewoq use ewoq key [fuji/devnet] +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for changeOwner +-k, --key string select the key to use [fuji/devnet] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--output-tx-path string file path of the transfer blockchain ownership tx +-s, --same-control-key use the fee-paying key as control key +-t, --testnet fuji operate on testnet (alias to fuji) +--threshold uint32 required number of control key signatures to make blockchain changes +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### changeWeight + +The blockchain changeWeight command changes the weight of a L1 Validator. + +The L1 has to be a Proof of Authority L1. + +**Usage:** +```bash +avalanche blockchain changeWeight [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-e, --ewoq use ewoq key [fuji/devnet only] +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for changeWeight +-k, --key string select the key to use [fuji/devnet only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-id string node-id of the validator +-t, --testnet fuji operate on testnet (alias to fuji) +--weight uint set the new staking weight of the validator (default 20) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### configure + +AvalancheGo nodes support several different configuration files. Each network (a Subnet or an L1) has their own config which applies to all blockchains/VMs in the network. Each blockchain within the network +can have its own chain config. A chain can also have special requirements for the AvalancheGo node +configuration itself. This command allows you to set all those files. + +**Usage:** +```bash +avalanche blockchain configure [subcommand] [flags] +``` + +**Flags:** + +```bash +--chain-config string path to the chain configuration +-h, --help help for configure +--node-config string path to avalanchego node configuration +--per-node-chain-config string path to per node chain configuration for local network +--subnet-config string path to the subnet configuration +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### create + +The blockchain create command builds a new genesis file to configure your Blockchain. +By default, the command runs an interactive wizard. It walks you through +all the steps you need to create your first Blockchain. + +The tool supports deploying Subnet-EVM, and custom VMs. You +can create a custom, user-generated genesis with a custom VM by providing +the path to your genesis and VM binaries with the --genesis and --vm flags. + +By default, running the command with a blockchainName that already exists +causes the command to fail. If you'd like to overwrite an existing +configuration, pass the -f flag. + +**Usage:** +```bash +avalanche blockchain create [subcommand] [flags] +``` + +**Flags:** + +```bash +--custom use a custom VM template +--custom-vm-branch string custom vm branch or commit +--custom-vm-build-script string custom vm build-script +--custom-vm-path string file path of custom vm to use +--custom-vm-repo-url string custom vm repository url +--debug enable blockchain debugging (default true) +--evm use the Subnet-EVM as the base template +--evm-chain-id uint chain ID to use with Subnet-EVM +--evm-defaults deprecation notice: use '--production-defaults' +--evm-token string token symbol to use with Subnet-EVM +--external-gas-token use a gas token from another blockchain +-f, --force overwrite the existing configuration if one exists +--from-github-repo generate custom VM binary from github repository +--genesis string file path of genesis to use +-h, --help help for create +--icm interoperate with other blockchains using ICM +--icm-registry-at-genesis setup ICM registry smart contract on genesis [experimental] +--latest use latest Subnet-EVM released version, takes precedence over --vm-version +--pre-release use latest Subnet-EVM pre-released version, takes precedence over --vm-version +--production-defaults use default production settings for your blockchain +--proof-of-authority use proof of authority(PoA) for validator management +--proof-of-stake use proof of stake(PoS) for validator management +--proxy-contract-owner string EVM address that controls ProxyAdmin for TransparentProxy of ValidatorManager contract +--reward-basis-points uint (PoS only) reward basis points for PoS Reward Calculator (default 100) +--sovereign set to false if creating non-sovereign blockchain (default true) +--teleporter interoperate with other blockchains using ICM +--test-defaults use default test settings for your blockchain +--validator-manager-owner string EVM address that controls Validator Manager Owner +--vm string file path of custom vm to use. alias to custom-vm-path +--vm-version string version of Subnet-EVM template to use +--warp generate a vm with warp support (needed for ICM) (default true) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### delete + +The blockchain delete command deletes an existing blockchain configuration. + +**Usage:** +```bash +avalanche blockchain delete [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for delete +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### deploy + +The blockchain deploy command deploys your Blockchain configuration locally, to Fuji Testnet, or to Mainnet. + +At the end of the call, the command prints the RPC URL you can use to interact with the Subnet. + +Avalanche-CLI only supports deploying an individual Blockchain once per network. Subsequent +attempts to deploy the same Blockchain to the same network (local, Fuji, Mainnet) aren't +allowed. If you'd like to redeploy a Blockchain locally for testing, you must first call +avalanche network clean to reset all deployed chain state. Subsequent local deploys +redeploy the chain with fresh state. You can deploy the same Blockchain to multiple networks, +so you can take your locally tested Blockchain and deploy it on Fuji or Mainnet. + +**Usage:** +```bash +avalanche blockchain deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +--aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) +--aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation +--aggregator-log-level string log level to use with signature aggregator (default "Debug") +--aggregator-log-to-stdout use stdout for signature aggregator logs +--auth-keys strings control keys that will be used to authenticate chain creation +--avalanchego-path string use this avalanchego binary path +--avalanchego-version string use this version of avalanchego (ex: v1.17.12) (default "latest-prerelease") +--balance float set the AVAX balance of each bootstrap validator that will be used for continuous fee on P-Chain (default 0.1) +--blockchain-genesis-key use genesis allocated key to fund validator manager initialization +--blockchain-key string CLI stored key to use to fund validator manager initialization +--blockchain-private-key string private key to use to fund validator manager initialization +--bootstrap-endpoints strings take validator node info from the given endpoints +--bootstrap-filepath string JSON file path that provides details about bootstrap validators, leave Node-ID and BLS values empty if using --generate-node-id=true +--cchain-funding-key string key to be used to fund relayer account on cchain +--cchain-icm-key string key to be used to pay for ICM deploys on C-Chain +--change-owner-address string address that will receive change if node is no longer L1 validator +--cluster string operate on the given cluster +--control-keys strings addresses that may make blockchain changes +--convert-only avoid node track, restart and poa manager setup +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-e, --ewoq use ewoq key [fuji/devnet deploy only] +-f, --fuji testnet operate on fuji (alias to testnet +--generate-node-id whether to create new node id for bootstrap validators (Node-ID and BLS values in bootstrap JSON file will be overridden if --bootstrap-filepath flag is used) +-h, --help help for deploy +--icm-key string key to be used to pay for ICM deploys (default "cli-teleporter-deployer") +--icm-version string ICM version to deploy (default "latest") +-k, --key string select the key to use [fuji/devnet deploy only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--mainnet-chain-id uint32 use different ChainID for mainnet deployment +--noicm skip automatic ICM deploy +--num-bootstrap-validators int (only if --generate-node-id is true) number of bootstrap validators to set up in sovereign L1 validator) +--num-local-nodes int number of nodes to be created on local machine +--num-nodes uint32 number of nodes to be created on local network deploy (default 2) +--output-tx-path string file path of the blockchain creation tx +--partial-sync set primary network partial sync for new validators (default true) +--pos-maximum-stake-amount uint maximum stake amount (default 1000) +--pos-maximum-stake-multiplier uint8 maximum stake multiplier (default 1) +--pos-minimum-delegation-fee uint16 minimum delegation fee (default 1) +--pos-minimum-stake-amount uint minimum stake amount (default 1) +--pos-minimum-stake-duration uint minimum stake duration (default 100) +--pos-weight-to-value-factor uint weight to value factor (default 1) +--relay-cchain relay C-Chain as source and destination (default true) +--relayer-allow-private-ips allow relayer to connec to private ips (default true) +--relayer-amount float automatically fund relayer fee payments with the given amount +--relayer-key string key to be used by default both for rewards and to pay fees +--relayer-log-level string log level to be used for relayer logs (default "info") +--relayer-path string relayer binary to use +--relayer-version string relayer version to deploy (default "latest-prerelease") +-s, --same-control-key use the fee-paying key as control key +--skip-icm-deploy skip automatic ICM deploy +--skip-local-teleporter skip automatic ICM deploy on local networks [to be deprecated] +--skip-relayer skip relayer deploy +--skip-teleporter-deploy skip automatic ICM deploy +-u, --subnet-id string do not create a subnet, deploy the blockchain into the given subnet id +--subnet-only only create a subnet +--teleporter-messenger-contract-address-path string path to an ICM Messenger contract address file +--teleporter-messenger-deployer-address-path string path to an ICM Messenger deployer address file +--teleporter-messenger-deployer-tx-path string path to an ICM Messenger deployer tx file +--teleporter-registry-bytecode-path string path to an ICM Registry bytecode file +--teleporter-version string ICM version to deploy (default "latest") +-t, --testnet fuji operate on testnet (alias to fuji) +--threshold uint32 required number of control key signatures to make blockchain changes +--use-local-machine use local machine as a blockchain validator +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### describe + +The blockchain describe command prints the details of a Blockchain configuration to the console. +By default, the command prints a summary of the configuration. By providing the --genesis +flag, the command instead prints out the raw genesis file. + +**Usage:** +```bash +avalanche blockchain describe [subcommand] [flags] +``` + +**Flags:** + +```bash +-g, --genesis Print the genesis to the console directly instead of the summary +-h, --help help for describe +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### export + +The blockchain export command write the details of an existing Blockchain deploy to a file. + +The command prompts for an output path. You can also provide one with +the --output flag. + +**Usage:** +```bash +avalanche blockchain export [subcommand] [flags] +``` + +**Flags:** + +```bash +--custom-vm-branch string custom vm branch +--custom-vm-build-script string custom vm build-script +--custom-vm-repo-url string custom vm repository url +-h, --help help for export +-o, --output string write the export data to the provided file path +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### import + +Import blockchain configurations into avalanche-cli. + +This command suite supports importing from a file created on another computer, +or importing from blockchains running public networks +(e.g. created manually or with the deprecated subnet-cli) + +**Usage:** +```bash +avalanche blockchain import [subcommand] [flags] +``` + +**Subcommands:** + +- [`file`](#avalanche-blockchain-import-file): The blockchain import command will import a blockchain configuration from a file or a git repository. + +To import from a file, you can optionally provide the path as a command-line argument. +Alternatively, running the command without any arguments triggers an interactive wizard. +To import from a repository, go through the wizard. By default, an imported Blockchain doesn't +overwrite an existing Blockchain with the same name. To allow overwrites, provide the --force +flag. +- [`public`](#avalanche-blockchain-import-public): The blockchain import public command imports a Blockchain configuration from a running network. + +By default, an imported Blockchain +doesn't overwrite an existing Blockchain with the same name. To allow overwrites, provide the --force +flag. + +**Flags:** + +```bash +-h, --help help for import +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### import file + +The blockchain import command will import a blockchain configuration from a file or a git repository. + +To import from a file, you can optionally provide the path as a command-line argument. +Alternatively, running the command without any arguments triggers an interactive wizard. +To import from a repository, go through the wizard. By default, an imported Blockchain doesn't +overwrite an existing Blockchain with the same name. To allow overwrites, provide the --force +flag. + +**Usage:** +```bash +avalanche blockchain import file [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain string the blockchain configuration to import from the provided repo +--branch string the repo branch to use if downloading a new repo +-f, --force overwrite the existing configuration if one exists +-h, --help help for file +--repo string the repo to import (ex: ava-labs/avalanche-plugins-core) or url to download the repo from +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### import public + +The blockchain import public command imports a Blockchain configuration from a running network. + +By default, an imported Blockchain +doesn't overwrite an existing Blockchain with the same name. To allow overwrites, provide the --force +flag. + +**Usage:** +```bash +avalanche blockchain import public [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain-id string the blockchain ID +--cluster string operate on the given cluster +--custom use a custom VM template +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +--evm import a subnet-evm +--force overwrite the existing configuration if one exists +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for public +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-url string [optional] URL of an already running validator +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### join + +The blockchain join command configures your validator node to begin validating a new Blockchain. + +To complete this process, you must have access to the machine running your validator. If the +CLI is running on the same machine as your validator, it can generate or update your node's +config file automatically. Alternatively, the command can print the necessary instructions +to update your node manually. To complete the validation process, the Blockchain's admins must add +the NodeID of your validator to the Blockchain's allow list by calling addValidator with your +NodeID. + +After you update your validator's config, you need to restart your validator manually. If +you provide the --avalanchego-config flag, this command attempts to edit the config file +at that path. + +This command currently only supports Blockchains deployed on the Fuji Testnet and Mainnet. + +**Usage:** +```bash +avalanche blockchain join [subcommand] [flags] +``` + +**Flags:** + +```bash +--avalanchego-config string file path of the avalanchego config file +--cluster string operate on the given cluster +--data-dir string path of avalanchego's data dir directory +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +--force-write if true, skip to prompt to overwrite the config file +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for join +-k, --key string select the key to use [fuji only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-id string set the NodeID of the validator to check +--plugin-dir string file path of avalanchego's plugin directory +--print if true, print the manual config without prompting +--stake-amount uint amount of tokens to stake on validator +--staking-period duration how long validator validates for after start time +--start-time string start time that validator starts validating +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### list + +The blockchain list command prints the names of all created Blockchain configurations. Without any flags, +it prints some general, static information about the Blockchain. With the --deployed flag, the command +shows additional information including the VMID, BlockchainID and SubnetID. + +**Usage:** +```bash +avalanche blockchain list [subcommand] [flags] +``` + +**Flags:** + +```bash +--deployed show additional deploy information +-h, --help help for list +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### publish + +The blockchain publish command publishes the Blockchain's VM to a repository. + +**Usage:** +```bash +avalanche blockchain publish [subcommand] [flags] +``` + +**Flags:** + +```bash +--alias string We publish to a remote repo, but identify the repo locally under a user-provided alias (e.g. myrepo). +--force If true, ignores if the blockchain has been published in the past, and attempts a forced publish. +-h, --help help for publish +--no-repo-path string Do not let the tool manage file publishing, but have it only generate the files and put them in the location given by this flag. +--repo-url string The URL of the repo where we are publishing +--subnet-file-path string Path to the Blockchain description file. If not given, a prompting sequence will be initiated. +--vm-file-path string Path to the VM description file. If not given, a prompting sequence will be initiated. +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### removeValidator + +The blockchain removeValidator command stops a whitelisted blockchain network validator from +validating your deployed Blockchain. + +To remove the validator from the Subnet's allow list, provide the validator's unique NodeID. You can bypass +these prompts by providing the values with flags. + +**Usage:** +```bash +avalanche blockchain removeValidator [subcommand] [flags] +``` + +**Flags:** + +```bash +--aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) +--aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation +--aggregator-log-level string log level to use with signature aggregator (default "Debug") +--aggregator-log-to-stdout use stdout for signature aggregator logs +--auth-keys strings (for non-SOV blockchain only) control keys that will be used to authenticate the removeValidator tx +--blockchain-genesis-key use genesis allocated key to pay fees for completing the validator's removal (blockchain gas token) +--blockchain-key string CLI stored key to use to pay fees for completing the validator's removal (blockchain gas token) +--blockchain-private-key string private key to use to pay fees for completing the validator's removal (blockchain gas token) +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +--force force validator removal even if it's not getting rewarded +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for removeValidator +-k, --key string select the key to use [fuji deploy only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-endpoint string remove validator that responds to the given endpoint +--node-id string node-id of the validator +--output-tx-path string (for non-SOV blockchain only) file path of the removeValidator tx +--rpc string connect to validator manager at the given rpc endpoint +-t, --testnet fuji operate on testnet (alias to fuji) +--uptime uint validator's uptime in seconds. If not provided, it will be automatically calculated +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### stats + +The blockchain stats command prints validator statistics for the given Blockchain. + +**Usage:** +```bash +avalanche blockchain stats [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for stats +-l, --local operate on a local network +-m, --mainnet operate on mainnet +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### upgrade + +The blockchain upgrade command suite provides a collection of tools for +updating your developmental and deployed Blockchains. + +**Usage:** +```bash +avalanche blockchain upgrade [subcommand] [flags] +``` + +**Subcommands:** + +- [`apply`](#avalanche-blockchain-upgrade-apply): Apply generated upgrade bytes to running Blockchain nodes to trigger a network upgrade. + +For public networks (Fuji Testnet or Mainnet), to complete this process, +you must have access to the machine running your validator. +If the CLI is running on the same machine as your validator, it can manipulate your node's +configuration automatically. Alternatively, the command can print the necessary instructions +to upgrade your node manually. + +After you update your validator's configuration, you need to restart your validator manually. +If you provide the --avalanchego-chain-config-dir flag, this command attempts to write the upgrade file at that path. +Refer to https://docs.avax.network/nodes/maintain/chain-config-flags#subnet-chain-configs for related documentation. +- [`export`](#avalanche-blockchain-upgrade-export): Export the upgrade bytes file to a location of choice on disk +- [`generate`](#avalanche-blockchain-upgrade-generate): The blockchain upgrade generate command builds a new upgrade.json file to customize your Blockchain. It +guides the user through the process using an interactive wizard. +- [`import`](#avalanche-blockchain-upgrade-import): Import the upgrade bytes file into the local environment +- [`print`](#avalanche-blockchain-upgrade-print): Print the upgrade.json file content +- [`vm`](#avalanche-blockchain-upgrade-vm): The blockchain upgrade vm command enables the user to upgrade their Blockchain's VM binary. The command +can upgrade both local Blockchains and publicly deployed Blockchains on Fuji and Mainnet. + +The command walks the user through an interactive wizard. The user can skip the wizard by providing +command line flags. + +**Flags:** + +```bash +-h, --help help for upgrade +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### upgrade apply + +Apply generated upgrade bytes to running Blockchain nodes to trigger a network upgrade. + +For public networks (Fuji Testnet or Mainnet), to complete this process, +you must have access to the machine running your validator. +If the CLI is running on the same machine as your validator, it can manipulate your node's +configuration automatically. Alternatively, the command can print the necessary instructions +to upgrade your node manually. + +After you update your validator's configuration, you need to restart your validator manually. +If you provide the --avalanchego-chain-config-dir flag, this command attempts to write the upgrade file at that path. +Refer to https://docs.avax.network/nodes/maintain/chain-config-flags#subnet-chain-configs for related documentation. + +**Usage:** +```bash +avalanche blockchain upgrade apply [subcommand] [flags] +``` + +**Flags:** + +```bash +--avalanchego-chain-config-dir string avalanchego's chain config file directory (default "/home/runner/.avalanchego/chains") +--config create upgrade config for future subnet deployments (same as generate) +--force If true, don't prompt for confirmation of timestamps in the past +--fuji fuji apply upgrade existing fuji deployment (alias for `testnet`) +-h, --help help for apply +--local local apply upgrade existing local deployment +--mainnet mainnet apply upgrade existing mainnet deployment +--print if true, print the manual config without prompting (for public networks only) +--testnet testnet apply upgrade existing testnet deployment (alias for `fuji`) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### upgrade export + +Export the upgrade bytes file to a location of choice on disk + +**Usage:** +```bash +avalanche blockchain upgrade export [subcommand] [flags] +``` + +**Flags:** + +```bash +--force If true, overwrite a possibly existing file without prompting +-h, --help help for export +--upgrade-filepath string Export upgrade bytes file to location of choice on disk +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### upgrade generate + +The blockchain upgrade generate command builds a new upgrade.json file to customize your Blockchain. It +guides the user through the process using an interactive wizard. + +**Usage:** +```bash +avalanche blockchain upgrade generate [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for generate +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### upgrade import + +Import the upgrade bytes file into the local environment + +**Usage:** +```bash +avalanche blockchain upgrade import [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for import +--upgrade-filepath string Import upgrade bytes file into local environment +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### upgrade print + +Print the upgrade.json file content + +**Usage:** +```bash +avalanche blockchain upgrade print [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for print +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### upgrade vm + +The blockchain upgrade vm command enables the user to upgrade their Blockchain's VM binary. The command +can upgrade both local Blockchains and publicly deployed Blockchains on Fuji and Mainnet. + +The command walks the user through an interactive wizard. The user can skip the wizard by providing +command line flags. + +**Usage:** +```bash +avalanche blockchain upgrade vm [subcommand] [flags] +``` + +**Flags:** + +```bash +--binary string Upgrade to custom binary +--config upgrade config for future subnet deployments +--fuji fuji upgrade existing fuji deployment (alias for `testnet`) +-h, --help help for vm +--latest upgrade to latest version +--local local upgrade existing local deployment +--mainnet mainnet upgrade existing mainnet deployment +--plugin-dir string plugin directory to automatically upgrade VM +--print print instructions for upgrading +--testnet testnet upgrade existing testnet deployment (alias for `fuji`) +--version string Upgrade to custom version +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### validators + +The blockchain validators command lists the validators of a blockchain and provides +several statistics about them. + +**Usage:** +```bash +avalanche blockchain validators [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for validators +-l, --local operate on a local network +-m, --mainnet operate on mainnet +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### vmid + +The blockchain vmid command prints the virtual machine ID (VMID) for the given Blockchain. + +**Usage:** +```bash +avalanche blockchain vmid [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for vmid +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche config + +Customize configuration for Avalanche-CLI + +**Usage:** +```bash +avalanche config [subcommand] [flags] +``` + +**Subcommands:** + +- [`authorize-cloud-access`](#avalanche-config-authorize-cloud-access): set preferences to authorize access to cloud resources +- [`metrics`](#avalanche-config-metrics): set user metrics collection preferences +- [`migrate`](#avalanche-config-migrate): migrate command migrates old ~/.avalanche-cli.json and ~/.avalanche-cli/config to /.avalanche-cli/config.json.. +- [`snapshotsAutoSave`](#avalanche-config-snapshotsautosave): set user preference between auto saving local network snapshots or not +- [`update`](#avalanche-config-update): set user preference between update check or not + +**Flags:** + +```bash +-h, --help help for config +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### authorize-cloud-access + +set preferences to authorize access to cloud resources + +**Usage:** +```bash +avalanche config authorize-cloud-access [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for authorize-cloud-access +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### metrics + +set user metrics collection preferences + +**Usage:** +```bash +avalanche config metrics [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for metrics +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### migrate + +migrate command migrates old ~/.avalanche-cli.json and ~/.avalanche-cli/config to /.avalanche-cli/config.json.. + +**Usage:** +```bash +avalanche config migrate [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for migrate +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### snapshotsAutoSave + +set user preference between auto saving local network snapshots or not + +**Usage:** +```bash +avalanche config snapshotsAutoSave [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for snapshotsAutoSave +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### update + +set user preference between update check or not + +**Usage:** +```bash +avalanche config update [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for update +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche contract + +The contract command suite provides a collection of tools for deploying +and interacting with smart contracts. + +**Usage:** +```bash +avalanche contract [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-contract-deploy): The contract command suite provides a collection of tools for deploying +smart contracts. +- [`initValidatorManager`](#avalanche-contract-initvalidatormanager): Initializes Proof of Authority(PoA) or Proof of Stake(PoS)Validator Manager contract on a Blockchain and sets up initial validator set on the Blockchain. For more info on Validator Manager, please head to https://github.com/ava-labs/icm-contracts/tree/main/contracts/validator-manager + +**Flags:** + +```bash +-h, --help help for contract +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### deploy + +The contract command suite provides a collection of tools for deploying +smart contracts. + +**Usage:** +```bash +avalanche contract deploy [subcommand] [flags] +``` + +**Subcommands:** + +- [`erc20`](#avalanche-contract-deploy-erc20): Deploy an ERC20 token into a given Network and Blockchain + +**Flags:** + +```bash +-h, --help help for deploy +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### deploy erc20 + +Deploy an ERC20 token into a given Network and Blockchain + +**Usage:** +```bash +avalanche contract deploy erc20 [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain string deploy the ERC20 contract into the given CLI blockchain +--blockchain-id string deploy the ERC20 contract into the given blockchain ID/Alias +--c-chain deploy the ERC20 contract into C-Chain +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--funded string set the funded address +--genesis-key use genesis allocated key as contract deployer +-h, --help help for erc20 +--key string CLI stored key to use as contract deployer +-l, --local operate on a local network +--private-key string private key to use as contract deployer +--rpc string deploy the contract into the given rpc endpoint +--supply uint set the token supply +--symbol string set the token symbol +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### initValidatorManager + +Initializes Proof of Authority(PoA) or Proof of Stake(PoS)Validator Manager contract on a Blockchain and sets up initial validator set on the Blockchain. For more info on Validator Manager, please head to https://github.com/ava-labs/icm-contracts/tree/main/contracts/validator-manager + +**Usage:** +```bash +avalanche contract initValidatorManager [subcommand] [flags] +``` + +**Flags:** + +```bash +--aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) +--aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation +--aggregator-log-level string log level to use with signature aggregator (default "Debug") +--aggregator-log-to-stdout dump signature aggregator logs to stdout +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key as contract deployer +-h, --help help for initValidatorManager +--key string CLI stored key to use as contract deployer +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--pos-maximum-stake-amount uint (PoS only) maximum stake amount (default 1000) +--pos-maximum-stake-multiplier uint8 (PoS only )maximum stake multiplier (default 1) +--pos-minimum-delegation-fee uint16 (PoS only) minimum delegation fee (default 1) +--pos-minimum-stake-amount uint (PoS only) minimum stake amount (default 1) +--pos-minimum-stake-duration uint (PoS only) minimum stake duration (default 100) +--pos-reward-calculator-address string (PoS only) initialize the ValidatorManager with reward calculator address +--pos-weight-to-value-factor uint (PoS only) weight to value factor (default 1) +--private-key string private key to use as contract deployer +--rpc string deploy the contract into the given rpc endpoint +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche help + +Help provides help for any command in the application. +Simply type avalanche help [path to command] for full details. + +**Usage:** +```bash +avalanche help [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for help +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche icm + +The messenger command suite provides a collection of tools for interacting +with ICM messenger contracts. + +**Usage:** +```bash +avalanche icm [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-icm-deploy): Deploys ICM Messenger and Registry into a given L1. +- [`sendMsg`](#avalanche-icm-sendmsg): Sends and wait reception for a ICM msg between two blockchains. + +**Flags:** + +```bash +-h, --help help for icm +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### deploy + +Deploys ICM Messenger and Registry into a given L1. + +**Usage:** +```bash +avalanche icm deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain string deploy ICM into the given CLI blockchain +--blockchain-id string deploy ICM into the given blockchain ID/Alias +--c-chain deploy ICM into C-Chain +--cchain-key string key to be used to pay fees to deploy ICM to C-Chain +--cluster string operate on the given cluster +--deploy-messenger deploy ICM Messenger (default true) +--deploy-registry deploy ICM Registry (default true) +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +--force-registry-deploy deploy ICM Registry even if Messenger has already been deployed +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key to fund ICM deploy +-h, --help help for deploy +--include-cchain deploy ICM also to C-Chain +--key string CLI stored key to use to fund ICM deploy +-l, --local operate on a local network +--messenger-contract-address-path string path to a messenger contract address file +--messenger-deployer-address-path string path to a messenger deployer address file +--messenger-deployer-tx-path string path to a messenger deployer tx file +--private-key string private key to use to fund ICM deploy +--registry-bytecode-path string path to a registry bytecode file +--rpc-url string use the given RPC URL to connect to the subnet +-t, --testnet fuji operate on testnet (alias to fuji) +--version string version to deploy (default "latest") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### sendMsg + +Sends and wait reception for a ICM msg between two blockchains. + +**Usage:** +```bash +avalanche icm sendMsg [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--dest-rpc string use the given destination blockchain rpc endpoint +--destination-address string deliver the message to the given contract destination address +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key as message originator and to pay source blockchain fees +-h, --help help for sendMsg +--hex-encoded given message is hex encoded +--key string CLI stored key to use as message originator and to pay source blockchain fees +-l, --local operate on a local network +--private-key string private key to use as message originator and to pay source blockchain fees +--source-rpc string use the given source blockchain rpc endpoint +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche ictt + +The ictt command suite provides tools to deploy and manage Interchain Token Transferrers. + +**Usage:** +```bash +avalanche ictt [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-ictt-deploy): Deploys a Token Transferrer into a given Network and Subnets + +**Flags:** + +```bash +-h, --help help for ictt +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### deploy + +Deploys a Token Transferrer into a given Network and Subnets + +**Usage:** +```bash +avalanche ictt deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +--c-chain-home set the Transferrer's Home Chain into C-Chain +--c-chain-remote set the Transferrer's Remote Chain into C-Chain +--cluster string operate on the given cluster +--deploy-erc20-home string deploy a Transferrer Home for the given Chain's ERC20 Token +--deploy-native-home deploy a Transferrer Home for the Chain's Native Token +--deploy-native-remote deploy a Transferrer Remote for the Chain's Native Token +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for deploy +--home-blockchain string set the Transferrer's Home Chain into the given CLI blockchain +--home-genesis-key use genesis allocated key to deploy Transferrer Home +--home-key string CLI stored key to use to deploy Transferrer Home +--home-private-key string private key to use to deploy Transferrer Home +--home-rpc string use the given RPC URL to connect to the home blockchain +-l, --local operate on a local network +--remote-blockchain string set the Transferrer's Remote Chain into the given CLI blockchain +--remote-genesis-key use genesis allocated key to deploy Transferrer Remote +--remote-key string CLI stored key to use to deploy Transferrer Remote +--remote-private-key string private key to use to deploy Transferrer Remote +--remote-rpc string use the given RPC URL to connect to the remote blockchain +--remote-token-decimals uint8 use the given number of token decimals for the Transferrer Remote [defaults to token home's decimals (18 for a new wrapped native home token)] +--remove-minter-admin remove the native minter precompile admin found on remote blockchain genesis +-t, --testnet fuji operate on testnet (alias to fuji) +--use-home string use the given Transferrer's Home Address +--version string tag/branch/commit of Avalanche Interchain Token Transfer (ICTT) to be used (defaults to main branch) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche interchain + +The interchain command suite provides a collection of tools to +set and manage interoperability between blockchains. + +**Usage:** +```bash +avalanche interchain [subcommand] [flags] +``` + +**Subcommands:** + +- [`messenger`](#avalanche-interchain-messenger): The messenger command suite provides a collection of tools for interacting +with ICM messenger contracts. +- [`relayer`](#avalanche-interchain-relayer): The relayer command suite provides a collection of tools for deploying +and configuring an ICM relayers. +- [`tokenTransferrer`](#avalanche-interchain-tokentransferrer): The tokenTransfer command suite provides tools to deploy and manage Token Transferrers. + +**Flags:** + +```bash +-h, --help help for interchain +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### messenger + +The messenger command suite provides a collection of tools for interacting +with ICM messenger contracts. + +**Usage:** +```bash +avalanche interchain messenger [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-interchain-messenger-deploy): Deploys ICM Messenger and Registry into a given L1. +- [`sendMsg`](#avalanche-interchain-messenger-sendmsg): Sends and wait reception for a ICM msg between two blockchains. + +**Flags:** + +```bash +-h, --help help for messenger +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### messenger deploy + +Deploys ICM Messenger and Registry into a given L1. + +**Usage:** +```bash +avalanche interchain messenger deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain string deploy ICM into the given CLI blockchain +--blockchain-id string deploy ICM into the given blockchain ID/Alias +--c-chain deploy ICM into C-Chain +--cchain-key string key to be used to pay fees to deploy ICM to C-Chain +--cluster string operate on the given cluster +--deploy-messenger deploy ICM Messenger (default true) +--deploy-registry deploy ICM Registry (default true) +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +--force-registry-deploy deploy ICM Registry even if Messenger has already been deployed +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key to fund ICM deploy +-h, --help help for deploy +--include-cchain deploy ICM also to C-Chain +--key string CLI stored key to use to fund ICM deploy +-l, --local operate on a local network +--messenger-contract-address-path string path to a messenger contract address file +--messenger-deployer-address-path string path to a messenger deployer address file +--messenger-deployer-tx-path string path to a messenger deployer tx file +--private-key string private key to use to fund ICM deploy +--registry-bytecode-path string path to a registry bytecode file +--rpc-url string use the given RPC URL to connect to the subnet +-t, --testnet fuji operate on testnet (alias to fuji) +--version string version to deploy (default "latest") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### messenger sendMsg + +Sends and wait reception for a ICM msg between two blockchains. + +**Usage:** +```bash +avalanche interchain messenger sendMsg [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--dest-rpc string use the given destination blockchain rpc endpoint +--destination-address string deliver the message to the given contract destination address +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key as message originator and to pay source blockchain fees +-h, --help help for sendMsg +--hex-encoded given message is hex encoded +--key string CLI stored key to use as message originator and to pay source blockchain fees +-l, --local operate on a local network +--private-key string private key to use as message originator and to pay source blockchain fees +--source-rpc string use the given source blockchain rpc endpoint +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### relayer + +The relayer command suite provides a collection of tools for deploying +and configuring an ICM relayers. + +**Usage:** +```bash +avalanche interchain relayer [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-interchain-relayer-deploy): Deploys an ICM Relayer for the given Network. +- [`logs`](#avalanche-interchain-relayer-logs): Shows pretty formatted AWM relayer logs +- [`start`](#avalanche-interchain-relayer-start): Starts AWM relayer on the specified network (Currently only for local network). +- [`stop`](#avalanche-interchain-relayer-stop): Stops AWM relayer on the specified network (Currently only for local network, cluster). + +**Flags:** + +```bash +-h, --help help for relayer +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### relayer deploy + +Deploys an ICM Relayer for the given Network. + +**Usage:** +```bash +avalanche interchain relayer deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +--allow-private-ips allow relayer to connec to private ips (default true) +--amount float automatically fund l1s fee payments with the given amount +--bin-path string use the given relayer binary +--blockchain-funding-key string key to be used to fund relayer account on all l1s +--blockchains strings blockchains to relay as source and destination +--cchain relay C-Chain as source and destination +--cchain-amount float automatically fund cchain fee payments with the given amount +--cchain-funding-key string key to be used to fund relayer account on cchain +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for deploy +--key string key to be used by default both for rewards and to pay fees +-l, --local operate on a local network +--log-level string log level to use for relayer logs +-t, --testnet fuji operate on testnet (alias to fuji) +--version string version to deploy (default "latest-prerelease") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--skip-update-check skip check for new versions +``` + + +#### relayer logs + +Shows pretty formatted AWM relayer logs + +**Usage:** +```bash +avalanche interchain relayer logs [subcommand] [flags] +``` + +**Flags:** + +```bash +--endpoint string use the given endpoint for network operations +--first uint output first N log lines +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for logs +--last uint output last N log lines +-l, --local operate on a local network +--raw raw logs output +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### relayer start + +Starts AWM relayer on the specified network (Currently only for local network). + +**Usage:** +```bash +avalanche interchain relayer start [subcommand] [flags] +``` + +**Flags:** + +```bash +--bin-path string use the given relayer binary +--cluster string operate on the given cluster +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for start +-l, --local operate on a local network +-t, --testnet fuji operate on testnet (alias to fuji) +--version string version to use (default "latest-prerelease") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### relayer stop + +Stops AWM relayer on the specified network (Currently only for local network, cluster). + +**Usage:** +```bash +avalanche interchain relayer stop [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for stop +-l, --local operate on a local network +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### tokenTransferrer + +The tokenTransfer command suite provides tools to deploy and manage Token Transferrers. + +**Usage:** +```bash +avalanche interchain tokenTransferrer [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-interchain-tokentransferrer-deploy): Deploys a Token Transferrer into a given Network and Subnets + +**Flags:** + +```bash +-h, --help help for tokenTransferrer +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### tokenTransferrer deploy + +Deploys a Token Transferrer into a given Network and Subnets + +**Usage:** +```bash +avalanche interchain tokenTransferrer deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +--c-chain-home set the Transferrer's Home Chain into C-Chain +--c-chain-remote set the Transferrer's Remote Chain into C-Chain +--cluster string operate on the given cluster +--deploy-erc20-home string deploy a Transferrer Home for the given Chain's ERC20 Token +--deploy-native-home deploy a Transferrer Home for the Chain's Native Token +--deploy-native-remote deploy a Transferrer Remote for the Chain's Native Token +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for deploy +--home-blockchain string set the Transferrer's Home Chain into the given CLI blockchain +--home-genesis-key use genesis allocated key to deploy Transferrer Home +--home-key string CLI stored key to use to deploy Transferrer Home +--home-private-key string private key to use to deploy Transferrer Home +--home-rpc string use the given RPC URL to connect to the home blockchain +-l, --local operate on a local network +--remote-blockchain string set the Transferrer's Remote Chain into the given CLI blockchain +--remote-genesis-key use genesis allocated key to deploy Transferrer Remote +--remote-key string CLI stored key to use to deploy Transferrer Remote +--remote-private-key string private key to use to deploy Transferrer Remote +--remote-rpc string use the given RPC URL to connect to the remote blockchain +--remote-token-decimals uint8 use the given number of token decimals for the Transferrer Remote [defaults to token home's decimals (18 for a new wrapped native home token)] +--remove-minter-admin remove the native minter precompile admin found on remote blockchain genesis +-t, --testnet fuji operate on testnet (alias to fuji) +--use-home string use the given Transferrer's Home Address +--version string tag/branch/commit of Avalanche Interchain Token Transfer (ICTT) to be used (defaults to main branch) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche key + +The key command suite provides a collection of tools for creating and managing +signing keys. You can use these keys to deploy Subnets to the Fuji Testnet, +but these keys are NOT suitable to use in production environments. DO NOT use +these keys on Mainnet. + +To get started, use the key create command. + +**Usage:** +```bash +avalanche key [subcommand] [flags] +``` + +**Subcommands:** + +- [`create`](#avalanche-key-create): The key create command generates a new private key to use for creating and controlling +test Subnets. Keys generated by this command are NOT cryptographically secure enough to +use in production environments. DO NOT use these keys on Mainnet. + +The command works by generating a secp256 key and storing it with the provided keyName. You +can use this key in other commands by providing this keyName. + +If you'd like to import an existing key instead of generating one from scratch, provide the +--file flag. +- [`delete`](#avalanche-key-delete): The key delete command deletes an existing signing key. + +To delete a key, provide the keyName. The command prompts for confirmation +before deleting the key. To skip the confirmation, provide the --force flag. +- [`export`](#avalanche-key-export): The key export command exports a created signing key. You can use an exported key in other +applications or import it into another instance of Avalanche-CLI. + +By default, the tool writes the hex encoded key to stdout. If you provide the --output +flag, the command writes the key to a file of your choosing. +- [`list`](#avalanche-key-list): The key list command prints information for all stored signing +keys or for the ledger addresses associated to certain indices. +- [`transfer`](#avalanche-key-transfer): The key transfer command allows to transfer funds between stored keys or ledger addresses. + +**Flags:** + +```bash +-h, --help help for key +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### create + +The key create command generates a new private key to use for creating and controlling +test Subnets. Keys generated by this command are NOT cryptographically secure enough to +use in production environments. DO NOT use these keys on Mainnet. + +The command works by generating a secp256 key and storing it with the provided keyName. You +can use this key in other commands by providing this keyName. + +If you'd like to import an existing key instead of generating one from scratch, provide the +--file flag. + +**Usage:** +```bash +avalanche key create [subcommand] [flags] +``` + +**Flags:** + +```bash +--file string import the key from an existing key file +-f, --force overwrite an existing key with the same name +-h, --help help for create +--skip-balances do not query public network balances for an imported key +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### delete + +The key delete command deletes an existing signing key. + +To delete a key, provide the keyName. The command prompts for confirmation +before deleting the key. To skip the confirmation, provide the --force flag. + +**Usage:** +```bash +avalanche key delete [subcommand] [flags] +``` + +**Flags:** + +```bash +-f, --force delete the key without confirmation +-h, --help help for delete +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### export + +The key export command exports a created signing key. You can use an exported key in other +applications or import it into another instance of Avalanche-CLI. + +By default, the tool writes the hex encoded key to stdout. If you provide the --output +flag, the command writes the key to a file of your choosing. + +**Usage:** +```bash +avalanche key export [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for export +-o, --output string write the key to the provided file path +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### list + +The key list command prints information for all stored signing +keys or for the ledger addresses associated to certain indices. + +**Usage:** +```bash +avalanche key list [subcommand] [flags] +``` + +**Flags:** + +```bash +-a, --all-networks list all network addresses +--blockchains strings blockchains to show information about (p=p-chain, x=x-chain, c=c-chain, and blockchain names) (default p,x,c) +-c, --cchain list C-Chain addresses (default true) +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for list +--keys strings list addresses for the given keys +-g, --ledger uints list ledger addresses for the given indices (default []) +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--pchain list P-Chain addresses (default true) +--subnets strings subnets to show information about (p=p-chain, x=x-chain, c=c-chain, and blockchain names) (default p,x,c) +-t, --testnet fuji operate on testnet (alias to fuji) +--tokens strings provide balance information for the given token contract addresses (Evm only) (default [Native]) +--use-gwei use gwei for EVM balances +-n, --use-nano-avax use nano Avax for balances +--xchain list X-Chain addresses (default true) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### transfer + +The key transfer command allows to transfer funds between stored keys or ledger addresses. + +**Usage:** +```bash +avalanche key transfer [subcommand] [flags] +``` + +**Flags:** + +```bash +-o, --amount float amount to send or receive (AVAX or TOKEN units) +--c-chain-receiver receive at C-Chain +--c-chain-sender send from C-Chain +--cluster string operate on the given cluster +-a, --destination-addr string destination address +--destination-key string key associated to a destination address +--destination-subnet string subnet where the funds will be sent (token transferrer experimental) +--destination-transferrer-address string token transferrer address at the destination subnet (token transferrer experimental) +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for transfer +-k, --key string key associated to the sender or receiver address +-i, --ledger uint32 ledger index associated to the sender or receiver address (default 32768) +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--origin-subnet string subnet where the funds belong (token transferrer experimental) +--origin-transferrer-address string token transferrer address at the origin subnet (token transferrer experimental) +--p-chain-receiver receive at P-Chain +--p-chain-sender send from P-Chain +--receiver-blockchain string receive at the given CLI blockchain +--receiver-blockchain-id string receive at the given blockchain ID/Alias +--sender-blockchain string send from the given CLI blockchain +--sender-blockchain-id string send from the given blockchain ID/Alias +-t, --testnet fuji operate on testnet (alias to fuji) +--x-chain-receiver receive at X-Chain +--x-chain-sender send from X-Chain +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche network + +The network command suite provides a collection of tools for managing local Blockchain +deployments. + +When you deploy a Blockchain locally, it runs on a local, multi-node Avalanche network. The +blockchain deploy command starts this network in the background. This command suite allows you +to shutdown, restart, and clear that network. + +This network currently supports multiple, concurrently deployed Blockchains. + +**Usage:** +```bash +avalanche network [subcommand] [flags] +``` + +**Subcommands:** + +- [`clean`](#avalanche-network-clean): The network clean command shuts down your local, multi-node network. All deployed Subnets +shutdown and delete their state. You can restart the network by deploying a new Subnet +configuration. +- [`start`](#avalanche-network-start): The network start command starts a local, multi-node Avalanche network on your machine. + +By default, the command loads the default snapshot. If you provide the --snapshot-name +flag, the network loads that snapshot instead. The command fails if the local network is +already running. +- [`status`](#avalanche-network-status): The network status command prints whether or not a local Avalanche +network is running and some basic stats about the network. +- [`stop`](#avalanche-network-stop): The network stop command shuts down your local, multi-node network. + +All deployed Subnets shutdown gracefully and save their state. If you provide the +--snapshot-name flag, the network saves its state under this named snapshot. You can +reload this snapshot with network start --snapshot-name `snapshotName`. Otherwise, the +network saves to the default snapshot, overwriting any existing state. You can reload the +default snapshot with network start. + +**Flags:** + +```bash +-h, --help help for network +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### clean + +The network clean command shuts down your local, multi-node network. All deployed Subnets +shutdown and delete their state. You can restart the network by deploying a new Subnet +configuration. + +**Usage:** +```bash +avalanche network clean [subcommand] [flags] +``` + +**Flags:** + +```bash +--hard Also clean downloaded avalanchego and plugin binaries +-h, --help help for clean +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### start + +The network start command starts a local, multi-node Avalanche network on your machine. + +By default, the command loads the default snapshot. If you provide the --snapshot-name +flag, the network loads that snapshot instead. The command fails if the local network is +already running. + +**Usage:** +```bash +avalanche network start [subcommand] [flags] +``` + +**Flags:** + +```bash +--avalanchego-path string use this avalanchego binary path +--avalanchego-version string use this version of avalanchego (ex: v1.17.12) (default "latest-prerelease") +-h, --help help for start +--num-nodes uint32 number of nodes to be created on local network (default 2) +--relayer-path string use this relayer binary path +--relayer-version string use this relayer version (default "latest-prerelease") +--snapshot-name string name of snapshot to use to start the network from (default "default-1654102509") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### status + +The network status command prints whether or not a local Avalanche +network is running and some basic stats about the network. + +**Usage:** +```bash +avalanche network status [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for status +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### stop + +The network stop command shuts down your local, multi-node network. + +All deployed Subnets shutdown gracefully and save their state. If you provide the +--snapshot-name flag, the network saves its state under this named snapshot. You can +reload this snapshot with network start --snapshot-name `snapshotName`. Otherwise, the +network saves to the default snapshot, overwriting any existing state. You can reload the +default snapshot with network start. + +**Usage:** +```bash +avalanche network stop [subcommand] [flags] +``` + +**Flags:** + +```bash +--dont-save do not save snapshot, just stop the network +-h, --help help for stop +--snapshot-name string name of snapshot to use to save network state into (default "default-1654102509") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche node + +The node command suite provides a collection of tools for creating and maintaining +validators on Avalanche Network. + +To get started, use the node create command wizard to walk through the +configuration to make your node a primary validator on Avalanche public network. You can use the +rest of the commands to maintain your node and make your node a Subnet Validator. + +**Usage:** +```bash +avalanche node [subcommand] [flags] +``` + +**Subcommands:** + +- [`addDashboard`](#avalanche-node-adddashboard): (ALPHA Warning) This command is currently in experimental mode. + +The node addDashboard command adds custom dashboard to the Grafana monitoring dashboard for the +cluster. +- [`create`](#avalanche-node-create): (ALPHA Warning) This command is currently in experimental mode. + +The node create command sets up a validator on a cloud server of your choice. +The validator will be validating the Avalanche Primary Network and Subnet +of your choice. By default, the command runs an interactive wizard. It +walks you through all the steps you need to set up a validator. +Once this command is completed, you will have to wait for the validator +to finish bootstrapping on the primary network before running further +commands on it, e.g. validating a Subnet. You can check the bootstrapping +status by running avalanche node status + +The created node will be part of group of validators called `clusterName` +and users can call node commands with `clusterName` so that the command +will apply to all nodes in the cluster +- [`destroy`](#avalanche-node-destroy): (ALPHA Warning) This command is currently in experimental mode. + +The node destroy command terminates all running nodes in cloud server and deletes all storage disks. + +If there is a static IP address attached, it will be released. +- [`devnet`](#avalanche-node-devnet): (ALPHA Warning) This command is currently in experimental mode. + +The node devnet command suite provides a collection of commands related to devnets. +You can check the updated status by calling avalanche node status `clusterName` +- [`export`](#avalanche-node-export): (ALPHA Warning) This command is currently in experimental mode. + +The node export command exports cluster configuration and its nodes config to a text file. + +If no file is specified, the configuration is printed to the stdout. + +Use --include-secrets to include keys in the export. In this case please keep the file secure as it contains sensitive information. + +Exported cluster configuration without secrets can be imported by another user using node import command. +- [`import`](#avalanche-node-import): (ALPHA Warning) This command is currently in experimental mode. + +The node import command imports cluster configuration and its nodes configuration from a text file +created from the node export command. + +Prior to calling this command, call node whitelist command to have your SSH public key and IP whitelisted by +the cluster owner. This will enable you to use avalanche-cli commands to manage the imported cluster. + +Please note, that this imported cluster will be considered as EXTERNAL by avalanche-cli, so some commands +affecting cloud nodes like node create or node destroy will be not applicable to it. +- [`list`](#avalanche-node-list): (ALPHA Warning) This command is currently in experimental mode. + +The node list command lists all clusters together with their nodes. +- [`loadtest`](#avalanche-node-loadtest): (ALPHA Warning) This command is currently in experimental mode. + +The node loadtest command suite starts and stops a load test for an existing devnet cluster. +- [`local`](#avalanche-node-local): (ALPHA Warning) This command is currently in experimental mode. + +The node local command suite provides a collection of commands related to local nodes +- [`refresh-ips`](#avalanche-node-refresh-ips): (ALPHA Warning) This command is currently in experimental mode. + +The node refresh-ips command obtains the current IP for all nodes with dynamic IPs in the cluster, +and updates the local node information used by CLI commands. +- [`resize`](#avalanche-node-resize): (ALPHA Warning) This command is currently in experimental mode. + +The node resize command can change the amount of CPU, memory and disk space available for the cluster nodes. +- [`scp`](#avalanche-node-scp): (ALPHA Warning) This command is currently in experimental mode. + +The node scp command securely copies files to and from nodes. Remote source or destionation can be specified using the following format: +[clusterName|nodeID|instanceID|IP]:/path/to/file. Regular expressions are supported for the source files like /tmp/*.txt. +File transfer to the nodes are parallelized. IF source or destination is cluster, the other should be a local file path. +If both destinations are remote, they must be nodes for the same cluster and not clusters themselves. +For example: +$ avalanche node scp [cluster1|node1]:/tmp/file.txt /tmp/file.txt +$ avalanche node scp /tmp/file.txt [cluster1|NodeID-XXXX]:/tmp/file.txt +$ avalanche node scp node1:/tmp/file.txt NodeID-XXXX:/tmp/file.txt +- [`ssh`](#avalanche-node-ssh): (ALPHA Warning) This command is currently in experimental mode. + +The node ssh command execute a given command [cmd] using ssh on all nodes in the cluster if ClusterName is given. +If no command is given, just prints the ssh command to be used to connect to each node in the cluster. +For provided NodeID or InstanceID or IP, the command [cmd] will be executed on that node. +If no [cmd] is provided for the node, it will open ssh shell there. +- [`status`](#avalanche-node-status): (ALPHA Warning) This command is currently in experimental mode. + +The node status command gets the bootstrap status of all nodes in a cluster with the Primary Network. +If no cluster is given, defaults to node list behaviour. + +To get the bootstrap status of a node with a Blockchain, use --blockchain flag +- [`sync`](#avalanche-node-sync): (ALPHA Warning) This command is currently in experimental mode. + +The node sync command enables all nodes in a cluster to be bootstrapped to a Blockchain. +You can check the blockchain bootstrap status by calling avalanche node status `clusterName` --blockchain `blockchainName` +- [`update`](#avalanche-node-update): (ALPHA Warning) This command is currently in experimental mode. + +The node update command suite provides a collection of commands for nodes to update +their avalanchego or VM config. + +You can check the status after update by calling avalanche node status +- [`upgrade`](#avalanche-node-upgrade): (ALPHA Warning) This command is currently in experimental mode. + +The node update command suite provides a collection of commands for nodes to update +their avalanchego or VM version. + +You can check the status after upgrade by calling avalanche node status +- [`validate`](#avalanche-node-validate): (ALPHA Warning) This command is currently in experimental mode. + +The node validate command suite provides a collection of commands for nodes to join +the Primary Network and Subnets as validators. +If any of the commands is run before the nodes are bootstrapped on the Primary Network, the command +will fail. You can check the bootstrap status by calling avalanche node status `clusterName` +- [`whitelist`](#avalanche-node-whitelist): (ALPHA Warning) The whitelist command suite provides a collection of tools for granting access to the cluster. + + Command adds IP if --ip params provided to cloud security access rules allowing it to access all nodes in the cluster via ssh or http. + It also command adds SSH public key to all nodes in the cluster if --ssh params is there. + If no params provided it detects current user IP automaticaly and whitelists it + +**Flags:** + +```bash +-h, --help help for node +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### addDashboard + +(ALPHA Warning) This command is currently in experimental mode. + +The node addDashboard command adds custom dashboard to the Grafana monitoring dashboard for the +cluster. + +**Usage:** +```bash +avalanche node addDashboard [subcommand] [flags] +``` + +**Flags:** + +```bash +--add-grafana-dashboard string path to additional grafana dashboard json file +-h, --help help for addDashboard +--subnet string subnet that the dasbhoard is intended for (if any) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### create + +(ALPHA Warning) This command is currently in experimental mode. + +The node create command sets up a validator on a cloud server of your choice. +The validator will be validating the Avalanche Primary Network and Subnet +of your choice. By default, the command runs an interactive wizard. It +walks you through all the steps you need to set up a validator. +Once this command is completed, you will have to wait for the validator +to finish bootstrapping on the primary network before running further +commands on it, e.g. validating a Subnet. You can check the bootstrapping +status by running avalanche node status + +The created node will be part of group of validators called `clusterName` +and users can call node commands with `clusterName` so that the command +will apply to all nodes in the cluster + +**Usage:** +```bash +avalanche node create [subcommand] [flags] +``` + +**Flags:** + +```bash +--add-grafana-dashboard string path to additional grafana dashboard json file +--alternative-key-pair-name string key pair name to use if default one generates conflicts +--authorize-access authorize CLI to create cloud resources +--auto-replace-keypair automatically replaces key pair to access node if previous key pair is not found +--avalanchego-version-from-subnet string install latest avalanchego version, that is compatible with the given subnet, on node/s +--aws create node/s in AWS cloud +--aws-profile string aws profile to use (default "default") +--aws-volume-iops int AWS iops (for gp3, io1, and io2 volume types only) (default 3000) +--aws-volume-size int AWS volume size in GB (default 1000) +--aws-volume-throughput int AWS throughput in MiB/s (for gp3 volume type only) (default 125) +--aws-volume-type string AWS volume type (default "gp3") +--bootstrap-ids stringArray nodeIDs of bootstrap nodes +--bootstrap-ips stringArray IP:port pairs of bootstrap nodes +--cluster string operate on the given cluster +--custom-avalanchego-version string install given avalanchego version on node/s +--devnet operate on a devnet network +--enable-monitoring set up Prometheus monitoring for created nodes. This option creates a separate monitoring cloud instance and incures additional cost +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--gcp create node/s in GCP cloud +--gcp-credentials string use given GCP credentials +--gcp-project string use given GCP project +--genesis string path to genesis file +--grafana-pkg string use grafana pkg instead of apt repo(by default), for example https://dl.grafana.com/oss/release/grafana_10.4.1_amd64.deb +-h, --help help for create +--latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s +--latest-avalanchego-version install latest avalanchego release version on node/s +-m, --mainnet operate on mainnet +--node-type string cloud instance type. Use 'default' to use recommended default instance type +--num-apis ints number of API nodes(nodes without stake) to create in the new Devnet +--num-validators ints number of nodes to create per region(s). Use comma to separate multiple numbers for each region in the same order as --region flag +--partial-sync primary network partial sync (default true) +--public-http-port allow public access to avalanchego HTTP port +--region strings create node(s) in given region(s). Use comma to separate multiple regions +--ssh-agent-identity string use given ssh identity(only for ssh agent). If not set, default will be used +-t, --testnet fuji operate on testnet (alias to fuji) +--upgrade string path to upgrade file +--use-ssh-agent use ssh agent(ex: Yubikey) for ssh auth +--use-static-ip attach static Public IP on cloud servers (default true) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### destroy + +(ALPHA Warning) This command is currently in experimental mode. + +The node destroy command terminates all running nodes in cloud server and deletes all storage disks. + +If there is a static IP address attached, it will be released. + +**Usage:** +```bash +avalanche node destroy [subcommand] [flags] +``` + +**Flags:** + +```bash +--all destroy all existing clusters created by Avalanche CLI +--authorize-access authorize CLI to release cloud resources +-y, --authorize-all authorize all CLI requests +--authorize-remove authorize CLI to remove all local files related to cloud nodes +--aws-profile string aws profile to use (default "default") +-h, --help help for destroy +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### devnet + +(ALPHA Warning) This command is currently in experimental mode. + +The node devnet command suite provides a collection of commands related to devnets. +You can check the updated status by calling avalanche node status `clusterName` + +**Usage:** +```bash +avalanche node devnet [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-node-devnet-deploy): (ALPHA Warning) This command is currently in experimental mode. + +The node devnet deploy command deploys a subnet into a devnet cluster, creating subnet and blockchain txs for it. +It saves the deploy info both locally and remotely. +- [`wiz`](#avalanche-node-devnet-wiz): (ALPHA Warning) This command is currently in experimental mode. + +The node wiz command creates a devnet and deploys, sync and validate a subnet into it. It creates the subnet if so needed. + +**Flags:** + +```bash +-h, --help help for devnet +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### devnet deploy + +(ALPHA Warning) This command is currently in experimental mode. + +The node devnet deploy command deploys a subnet into a devnet cluster, creating subnet and blockchain txs for it. +It saves the deploy info both locally and remotely. + +**Usage:** +```bash +avalanche node devnet deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for deploy +--no-checks do not check for healthy status or rpc compatibility of nodes against subnet +--subnet-aliases strings additional subnet aliases to be used for RPC calls in addition to subnet blockchain name +--subnet-only only create a subnet +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### devnet wiz + +(ALPHA Warning) This command is currently in experimental mode. + +The node wiz command creates a devnet and deploys, sync and validate a subnet into it. It creates the subnet if so needed. + +**Usage:** +```bash +avalanche node devnet wiz [subcommand] [flags] +``` + +**Flags:** + +```bash +--add-grafana-dashboard string path to additional grafana dashboard json file +--alternative-key-pair-name string key pair name to use if default one generates conflicts +--authorize-access authorize CLI to create cloud resources +--auto-replace-keypair automatically replaces key pair to access node if previous key pair is not found +--aws create node/s in AWS cloud +--aws-profile string aws profile to use (default "default") +--aws-volume-iops int AWS iops (for gp3, io1, and io2 volume types only) (default 3000) +--aws-volume-size int AWS volume size in GB (default 1000) +--aws-volume-throughput int AWS throughput in MiB/s (for gp3 volume type only) (default 125) +--aws-volume-type string AWS volume type (default "gp3") +--chain-config string path to the chain configuration for subnet +--custom-avalanchego-version string install given avalanchego version on node/s +--custom-subnet use a custom VM as the subnet virtual machine +--custom-vm-branch string custom vm branch or commit +--custom-vm-build-script string custom vm build-script +--custom-vm-repo-url string custom vm repository url +--default-validator-params use default weight/start/duration params for subnet validator +--deploy-icm-messenger deploy Interchain Messenger (default true) +--deploy-icm-registry deploy Interchain Registry (default true) +--deploy-teleporter-messenger deploy Interchain Messenger (default true) +--deploy-teleporter-registry deploy Interchain Registry (default true) +--enable-monitoring set up Prometheus monitoring for created nodes. Please note that this option creates a separate monitoring instance and incures additional cost +--evm-chain-id uint chain ID to use with Subnet-EVM +--evm-defaults use default production settings with Subnet-EVM +--evm-production-defaults use default production settings for your blockchain +--evm-subnet use Subnet-EVM as the subnet virtual machine +--evm-test-defaults use default test settings for your blockchain +--evm-token string token name to use with Subnet-EVM +--evm-version string version of Subnet-EVM to use +--force-subnet-create overwrite the existing subnet configuration if one exists +--gcp create node/s in GCP cloud +--gcp-credentials string use given GCP credentials +--gcp-project string use given GCP project +--grafana-pkg string use grafana pkg instead of apt repo(by default), for example https://dl.grafana.com/oss/release/grafana_10.4.1_amd64.deb +-h, --help help for wiz +--icm generate an icm-ready vm +--icm-messenger-contract-address-path string path to an icm messenger contract address file +--icm-messenger-deployer-address-path string path to an icm messenger deployer address file +--icm-messenger-deployer-tx-path string path to an icm messenger deployer tx file +--icm-registry-bytecode-path string path to an icm registry bytecode file +--icm-version string icm version to deploy (default "latest") +--latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s +--latest-avalanchego-version install latest avalanchego release version on node/s +--latest-evm-version use latest Subnet-EVM released version +--latest-pre-released-evm-version use latest Subnet-EVM pre-released version +--node-config string path to avalanchego node configuration for subnet +--node-type string cloud instance type. Use 'default' to use recommended default instance type +--num-apis ints number of API nodes(nodes without stake) to create in the new Devnet +--num-validators ints number of nodes to create per region(s). Use comma to separate multiple numbers for each region in the same order as --region flag +--public-http-port allow public access to avalanchego HTTP port +--region strings create node/s in given region(s). Use comma to separate multiple regions +--relayer run AWM relayer when deploying the vm +--ssh-agent-identity string use given ssh identity(only for ssh agent). If not set, default will be used. +--subnet-aliases strings additional subnet aliases to be used for RPC calls in addition to subnet blockchain name +--subnet-config string path to the subnet configuration for subnet +--subnet-genesis string file path of the subnet genesis +--teleporter generate an icm-ready vm +--teleporter-messenger-contract-address-path string path to an icm messenger contract address file +--teleporter-messenger-deployer-address-path string path to an icm messenger deployer address file +--teleporter-messenger-deployer-tx-path string path to an icm messenger deployer tx file +--teleporter-registry-bytecode-path string path to an icm registry bytecode file +--teleporter-version string icm version to deploy (default "latest") +--use-ssh-agent use ssh agent for ssh +--use-static-ip attach static Public IP on cloud servers (default true) +--validators strings deploy subnet into given comma separated list of validators. defaults to all cluster nodes +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### export + +(ALPHA Warning) This command is currently in experimental mode. + +The node export command exports cluster configuration and its nodes config to a text file. + +If no file is specified, the configuration is printed to the stdout. + +Use --include-secrets to include keys in the export. In this case please keep the file secure as it contains sensitive information. + +Exported cluster configuration without secrets can be imported by another user using node import command. + +**Usage:** +```bash +avalanche node export [subcommand] [flags] +``` + +**Flags:** + +```bash +--file string specify the file to export the cluster configuration to +--force overwrite the file if it exists +-h, --help help for export +--include-secrets include keys in the export +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### import + +(ALPHA Warning) This command is currently in experimental mode. + +The node import command imports cluster configuration and its nodes configuration from a text file +created from the node export command. + +Prior to calling this command, call node whitelist command to have your SSH public key and IP whitelisted by +the cluster owner. This will enable you to use avalanche-cli commands to manage the imported cluster. + +Please note, that this imported cluster will be considered as EXTERNAL by avalanche-cli, so some commands +affecting cloud nodes like node create or node destroy will be not applicable to it. + +**Usage:** +```bash +avalanche node import [subcommand] [flags] +``` + +**Flags:** + +```bash +--file string specify the file to export the cluster configuration to +-h, --help help for import +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### list + +(ALPHA Warning) This command is currently in experimental mode. + +The node list command lists all clusters together with their nodes. + +**Usage:** +```bash +avalanche node list [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for list +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### loadtest + +(ALPHA Warning) This command is currently in experimental mode. + +The node loadtest command suite starts and stops a load test for an existing devnet cluster. + +**Usage:** +```bash +avalanche node loadtest [subcommand] [flags] +``` + +**Subcommands:** + +- [`start`](#avalanche-node-loadtest-start): (ALPHA Warning) This command is currently in experimental mode. + +The node loadtest command starts load testing for an existing devnet cluster. If the cluster does +not have an existing load test host, the command creates a separate cloud server and builds the load +test binary based on the provided load test Git Repo URL and load test binary build command. + +The command will then run the load test binary based on the provided load test run command. +- [`stop`](#avalanche-node-loadtest-stop): (ALPHA Warning) This command is currently in experimental mode. + +The node loadtest stop command stops load testing for an existing devnet cluster and terminates the +separate cloud server created to host the load test. + +**Flags:** + +```bash +-h, --help help for loadtest +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### loadtest start + +(ALPHA Warning) This command is currently in experimental mode. + +The node loadtest command starts load testing for an existing devnet cluster. If the cluster does +not have an existing load test host, the command creates a separate cloud server and builds the load +test binary based on the provided load test Git Repo URL and load test binary build command. + +The command will then run the load test binary based on the provided load test run command. + +**Usage:** +```bash +avalanche node loadtest start [subcommand] [flags] +``` + +**Flags:** + +```bash +--authorize-access authorize CLI to create cloud resources +--aws create loadtest node in AWS cloud +--aws-profile string aws profile to use (default "default") +--gcp create loadtest in GCP cloud +-h, --help help for start +--load-test-branch string load test branch or commit +--load-test-build-cmd string command to build load test binary +--load-test-cmd string command to run load test +--load-test-repo string load test repo url to use +--node-type string cloud instance type for loadtest script +--region string create load test node in a given region +--ssh-agent-identity string use given ssh identity(only for ssh agent). If not set, default will be used +--use-ssh-agent use ssh agent(ex: Yubikey) for ssh auth +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### loadtest stop + +(ALPHA Warning) This command is currently in experimental mode. + +The node loadtest stop command stops load testing for an existing devnet cluster and terminates the +separate cloud server created to host the load test. + +**Usage:** +```bash +avalanche node loadtest stop [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for stop +--load-test strings stop specified load test node(s). Use comma to separate multiple load test instance names +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### local + +(ALPHA Warning) This command is currently in experimental mode. + +The node local command suite provides a collection of commands related to local nodes + +**Usage:** +```bash +avalanche node local [subcommand] [flags] +``` + +**Subcommands:** + +- [`destroy`](#avalanche-node-local-destroy): Cleanup local node. +- [`start`](#avalanche-node-local-start): (ALPHA Warning) This command is currently in experimental mode. + +The node local start command sets up a validator on a local server. +The validator will be validating the Avalanche Primary Network and Subnet +of your choice. By default, the command runs an interactive wizard. It +walks you through all the steps you need to set up a validator. +Once this command is completed, you will have to wait for the validator +to finish bootstrapping on the primary network before running further +commands on it, e.g. validating a Subnet. You can check the bootstrapping +status by running avalanche node status local +- [`status`](#avalanche-node-local-status): Get status of local node. +- [`stop`](#avalanche-node-local-stop): Stop local node. +- [`track`](#avalanche-node-local-track): (ALPHA Warning) make the local node at the cluster to track given blockchain + +**Flags:** + +```bash +-h, --help help for local +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### local destroy + +Cleanup local node. + +**Usage:** +```bash +avalanche node local destroy [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for destroy +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### local start + +(ALPHA Warning) This command is currently in experimental mode. + +The node local start command sets up a validator on a local server. +The validator will be validating the Avalanche Primary Network and Subnet +of your choice. By default, the command runs an interactive wizard. It +walks you through all the steps you need to set up a validator. +Once this command is completed, you will have to wait for the validator +to finish bootstrapping on the primary network before running further +commands on it, e.g. validating a Subnet. You can check the bootstrapping +status by running avalanche node status local + +**Usage:** +```bash +avalanche node local start [subcommand] [flags] +``` + +**Flags:** + +```bash +--avalanchego-path string use this avalanchego binary path +--bootstrap-id stringArray nodeIDs of bootstrap nodes +--bootstrap-ip stringArray IP:port pairs of bootstrap nodes +--cluster string operate on the given cluster +--custom-avalanchego-version string install given avalanchego version on node/s +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--genesis string path to genesis file +-h, --help help for start +--latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s (default true) +--latest-avalanchego-version install latest avalanchego release version on node/s +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-config string path to common avalanchego config settings for all nodes +--num-nodes uint32 number of nodes to start (default 1) +--partial-sync primary network partial sync (default true) +--staking-cert-key-path string path to provided staking cert key for node +--staking-signer-key-path string path to provided staking signer key for node +--staking-tls-key-path string path to provided staking tls key for node +-t, --testnet fuji operate on testnet (alias to fuji) +--upgrade string path to upgrade file +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### local status + +Get status of local node. + +**Usage:** +```bash +avalanche node local status [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain string specify the blockchain the node is syncing with +-h, --help help for status +--subnet string specify the blockchain the node is syncing with +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### local stop + +Stop local node. + +**Usage:** +```bash +avalanche node local stop [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for stop +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### local track + +(ALPHA Warning) make the local node at the cluster to track given blockchain + +**Usage:** +```bash +avalanche node local track [subcommand] [flags] +``` + +**Flags:** + +```bash +--avalanchego-path string use this avalanchego binary path +--custom-avalanchego-version string install given avalanchego version on node/s +-h, --help help for track +--latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s (default true) +--latest-avalanchego-version install latest avalanchego release version on node/s +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### refresh-ips + +(ALPHA Warning) This command is currently in experimental mode. + +The node refresh-ips command obtains the current IP for all nodes with dynamic IPs in the cluster, +and updates the local node information used by CLI commands. + +**Usage:** +```bash +avalanche node refresh-ips [subcommand] [flags] +``` + +**Flags:** + +```bash +--aws-profile string aws profile to use (default "default") +-h, --help help for refresh-ips +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### resize + +(ALPHA Warning) This command is currently in experimental mode. + +The node resize command can change the amount of CPU, memory and disk space available for the cluster nodes. + +**Usage:** +```bash +avalanche node resize [subcommand] [flags] +``` + +**Flags:** + +```bash +--aws-profile string aws profile to use (default "default") +--disk-size string Disk size to resize in Gb (e.g. 1000Gb) +-h, --help help for resize +--node-type string Node type to resize (e.g. t3.2xlarge) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### scp + +(ALPHA Warning) This command is currently in experimental mode. + +The node scp command securely copies files to and from nodes. Remote source or destionation can be specified using the following format: +[clusterName|nodeID|instanceID|IP]:/path/to/file. Regular expressions are supported for the source files like /tmp/*.txt. +File transfer to the nodes are parallelized. IF source or destination is cluster, the other should be a local file path. +If both destinations are remote, they must be nodes for the same cluster and not clusters themselves. +For example: +$ avalanche node scp [cluster1|node1]:/tmp/file.txt /tmp/file.txt +$ avalanche node scp /tmp/file.txt [cluster1|NodeID-XXXX]:/tmp/file.txt +$ avalanche node scp node1:/tmp/file.txt NodeID-XXXX:/tmp/file.txt + +**Usage:** +```bash +avalanche node scp [subcommand] [flags] +``` + +**Flags:** + +```bash +--compress use compression for ssh +-h, --help help for scp +--recursive copy directories recursively +--with-loadtest include loadtest node for scp cluster operations +--with-monitor include monitoring node for scp cluster operations +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### ssh + +(ALPHA Warning) This command is currently in experimental mode. + +The node ssh command execute a given command [cmd] using ssh on all nodes in the cluster if ClusterName is given. +If no command is given, just prints the ssh command to be used to connect to each node in the cluster. +For provided NodeID or InstanceID or IP, the command [cmd] will be executed on that node. +If no [cmd] is provided for the node, it will open ssh shell there. + +**Usage:** +```bash +avalanche node ssh [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for ssh +--parallel run ssh command on all nodes in parallel +--with-loadtest include loadtest node for ssh cluster operations +--with-monitor include monitoring node for ssh cluster operations +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### status + +(ALPHA Warning) This command is currently in experimental mode. + +The node status command gets the bootstrap status of all nodes in a cluster with the Primary Network. +If no cluster is given, defaults to node list behaviour. + +To get the bootstrap status of a node with a Blockchain, use --blockchain flag + +**Usage:** +```bash +avalanche node status [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain string specify the blockchain the node is syncing with +-h, --help help for status +--subnet string specify the blockchain the node is syncing with +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### sync + +(ALPHA Warning) This command is currently in experimental mode. + +The node sync command enables all nodes in a cluster to be bootstrapped to a Blockchain. +You can check the blockchain bootstrap status by calling avalanche node status `clusterName` --blockchain `blockchainName` + +**Usage:** +```bash +avalanche node sync [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for sync +--no-checks do not check for bootstrapped/healthy status or rpc compatibility of nodes against subnet +--subnet-aliases strings subnet alias to be used for RPC calls. defaults to subnet blockchain ID +--validators strings sync subnet into given comma separated list of validators. defaults to all cluster nodes +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### update + +(ALPHA Warning) This command is currently in experimental mode. + +The node update command suite provides a collection of commands for nodes to update +their avalanchego or VM config. + +You can check the status after update by calling avalanche node status + +**Usage:** +```bash +avalanche node update [subcommand] [flags] +``` + +**Subcommands:** + +- [`subnet`](#avalanche-node-update-subnet): (ALPHA Warning) This command is currently in experimental mode. + +The node update subnet command updates all nodes in a cluster with latest Subnet configuration and VM for custom VM. +You can check the updated subnet bootstrap status by calling avalanche node status `clusterName` --subnet `subnetName` + +**Flags:** + +```bash +-h, --help help for update +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### update subnet + +(ALPHA Warning) This command is currently in experimental mode. + +The node update subnet command updates all nodes in a cluster with latest Subnet configuration and VM for custom VM. +You can check the updated subnet bootstrap status by calling avalanche node status `clusterName` --subnet `subnetName` + +**Usage:** +```bash +avalanche node update subnet [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for subnet +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### upgrade + +(ALPHA Warning) This command is currently in experimental mode. + +The node update command suite provides a collection of commands for nodes to update +their avalanchego or VM version. + +You can check the status after upgrade by calling avalanche node status + +**Usage:** +```bash +avalanche node upgrade [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for upgrade +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### validate + +(ALPHA Warning) This command is currently in experimental mode. + +The node validate command suite provides a collection of commands for nodes to join +the Primary Network and Subnets as validators. +If any of the commands is run before the nodes are bootstrapped on the Primary Network, the command +will fail. You can check the bootstrap status by calling avalanche node status `clusterName` + +**Usage:** +```bash +avalanche node validate [subcommand] [flags] +``` + +**Subcommands:** + +- [`primary`](#avalanche-node-validate-primary): (ALPHA Warning) This command is currently in experimental mode. + +The node validate primary command enables all nodes in a cluster to be validators of Primary +Network. +- [`subnet`](#avalanche-node-validate-subnet): (ALPHA Warning) This command is currently in experimental mode. + +The node validate subnet command enables all nodes in a cluster to be validators of a Subnet. +If the command is run before the nodes are Primary Network validators, the command will first +make the nodes Primary Network validators before making them Subnet validators. +If The command is run before the nodes are bootstrapped on the Primary Network, the command will fail. +You can check the bootstrap status by calling avalanche node status `clusterName` +If The command is run before the nodes are synced to the subnet, the command will fail. +You can check the subnet sync status by calling avalanche node status `clusterName` --subnet `subnetName` + +**Flags:** + +```bash +-h, --help help for validate +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### validate primary + +(ALPHA Warning) This command is currently in experimental mode. + +The node validate primary command enables all nodes in a cluster to be validators of Primary +Network. + +**Usage:** +```bash +avalanche node validate primary [subcommand] [flags] +``` + +**Flags:** + +```bash +-e, --ewoq use ewoq key [fuji/devnet only] +-h, --help help for primary +-k, --key string select the key to use [fuji only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +--stake-amount uint how many AVAX to stake in the validator +--staking-period duration how long validator validates for after start time +--start-time string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +#### validate subnet + +(ALPHA Warning) This command is currently in experimental mode. + +The node validate subnet command enables all nodes in a cluster to be validators of a Subnet. +If the command is run before the nodes are Primary Network validators, the command will first +make the nodes Primary Network validators before making them Subnet validators. +If The command is run before the nodes are bootstrapped on the Primary Network, the command will fail. +You can check the bootstrap status by calling avalanche node status `clusterName` +If The command is run before the nodes are synced to the subnet, the command will fail. +You can check the subnet sync status by calling avalanche node status `clusterName` --subnet `subnetName` + +**Usage:** +```bash +avalanche node validate subnet [subcommand] [flags] +``` + +**Flags:** + +```bash +--default-validator-params use default weight/start/duration params for subnet validator +-e, --ewoq use ewoq key [fuji/devnet only] +-h, --help help for subnet +-k, --key string select the key to use [fuji/devnet only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +--no-checks do not check for bootstrapped status or healthy status +--no-validation-checks do not check if subnet is already synced or validated (default true) +--stake-amount uint how many AVAX to stake in the validator +--staking-period duration how long validator validates for after start time +--start-time string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format +--validators strings validate subnet for the given comma separated list of validators. defaults to all cluster nodes +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### whitelist + +(ALPHA Warning) The whitelist command suite provides a collection of tools for granting access to the cluster. + + Command adds IP if --ip params provided to cloud security access rules allowing it to access all nodes in the cluster via ssh or http. + It also command adds SSH public key to all nodes in the cluster if --ssh params is there. + If no params provided it detects current user IP automaticaly and whitelists it + +**Usage:** +```bash +avalanche node whitelist [subcommand] [flags] +``` + +**Flags:** + +```bash +-y, --current-ip whitelist current host ip +-h, --help help for whitelist +--ip string ip address to whitelist +--ssh string ssh public key to whitelist +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche primary + +The primary command suite provides a collection of tools for interacting with the +Primary Network + +**Usage:** +```bash +avalanche primary [subcommand] [flags] +``` + +**Subcommands:** + +- [`addValidator`](#avalanche-primary-addvalidator): The primary addValidator command adds a node as a validator +in the Primary Network +- [`describe`](#avalanche-primary-describe): The subnet describe command prints details of the primary network configuration to the console. + +**Flags:** + +```bash +-h, --help help for primary +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### addValidator + +The primary addValidator command adds a node as a validator +in the Primary Network + +**Usage:** +```bash +avalanche primary addValidator [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--delegation-fee uint32 set the delegation fee (20 000 is equivalent to 2%) +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for addValidator +-k, --key string select the key to use [fuji only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) +--ledger-addrs strings use the given ledger addresses +-m, --mainnet operate on mainnet +--nodeID string set the NodeID of the validator to add +--proof-of-possession string set the BLS proof of possession of the validator to add +--public-key string set the BLS public key of the validator to add +--staking-period duration how long this validator will be staking +--start-time string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format +-t, --testnet fuji operate on testnet (alias to fuji) +--weight uint set the staking weight of the validator to add +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### describe + +The subnet describe command prints details of the primary network configuration to the console. + +**Usage:** +```bash +avalanche primary describe [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +-h, --help help for describe +-l, --local operate on a local network +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche teleporter + +The messenger command suite provides a collection of tools for interacting +with ICM messenger contracts. + +**Usage:** +```bash +avalanche teleporter [subcommand] [flags] +``` + +**Subcommands:** + +- [`deploy`](#avalanche-teleporter-deploy): Deploys ICM Messenger and Registry into a given L1. +- [`sendMsg`](#avalanche-teleporter-sendmsg): Sends and wait reception for a ICM msg between two blockchains. + +**Flags:** + +```bash +-h, --help help for teleporter +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### deploy + +Deploys ICM Messenger and Registry into a given L1. + +**Usage:** +```bash +avalanche teleporter deploy [subcommand] [flags] +``` + +**Flags:** + +```bash +--blockchain string deploy ICM into the given CLI blockchain +--blockchain-id string deploy ICM into the given blockchain ID/Alias +--c-chain deploy ICM into C-Chain +--cchain-key string key to be used to pay fees to deploy ICM to C-Chain +--cluster string operate on the given cluster +--deploy-messenger deploy ICM Messenger (default true) +--deploy-registry deploy ICM Registry (default true) +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +--force-registry-deploy deploy ICM Registry even if Messenger has already been deployed +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key to fund ICM deploy +-h, --help help for deploy +--include-cchain deploy ICM also to C-Chain +--key string CLI stored key to use to fund ICM deploy +-l, --local operate on a local network +--messenger-contract-address-path string path to a messenger contract address file +--messenger-deployer-address-path string path to a messenger deployer address file +--messenger-deployer-tx-path string path to a messenger deployer tx file +--private-key string private key to use to fund ICM deploy +--registry-bytecode-path string path to a registry bytecode file +--rpc-url string use the given RPC URL to connect to the subnet +-t, --testnet fuji operate on testnet (alias to fuji) +--version string version to deploy (default "latest") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### sendMsg + +Sends and wait reception for a ICM msg between two blockchains. + +**Usage:** +```bash +avalanche teleporter sendMsg [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--dest-rpc string use the given destination blockchain rpc endpoint +--destination-address string deliver the message to the given contract destination address +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key as message originator and to pay source blockchain fees +-h, --help help for sendMsg +--hex-encoded given message is hex encoded +--key string CLI stored key to use as message originator and to pay source blockchain fees +-l, --local operate on a local network +--private-key string private key to use as message originator and to pay source blockchain fees +--source-rpc string use the given source blockchain rpc endpoint +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche transaction + +The transaction command suite provides all of the utilities required to sign multisig transactions. + +**Usage:** +```bash +avalanche transaction [subcommand] [flags] +``` + +**Subcommands:** + +- [`commit`](#avalanche-transaction-commit): The transaction commit command commits a transaction by submitting it to the P-Chain. +- [`sign`](#avalanche-transaction-sign): The transaction sign command signs a multisig transaction. + +**Flags:** + +```bash +-h, --help help for transaction +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### commit + +The transaction commit command commits a transaction by submitting it to the P-Chain. + +**Usage:** +```bash +avalanche transaction commit [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for commit +--input-tx-filepath string Path to the transaction signed by all signatories +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### sign + +The transaction sign command signs a multisig transaction. + +**Usage:** +```bash +avalanche transaction sign [subcommand] [flags] +``` + +**Flags:** + +```bash +-h, --help help for sign +--input-tx-filepath string Path to the transaction file for signing +-k, --key string select the key to use [fuji only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) +--ledger-addrs strings use the given ledger addresses +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche update + +Check if an update is available, and prompt the user to install it + +**Usage:** +```bash +avalanche update [subcommand] [flags] +``` + +**Flags:** + +```bash +-c, --confirm Assume yes for installation +-h, --help help for update +-v, --version version for update +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +## avalanche validator + +The validator command suite provides a collection of tools for managing validator +balance on P-Chain. + +Validator's balance is used to pay for continuous fee to the P-Chain. When this Balance reaches 0, +the validator will be considered inactive and will no longer participate in validating the L1 + +**Usage:** +```bash +avalanche validator [subcommand] [flags] +``` + +**Subcommands:** + +- [`getBalance`](#avalanche-validator-getbalance): This command gets the remaining validator P-Chain balance that is available to pay +P-Chain continuous fee +- [`increaseBalance`](#avalanche-validator-increasebalance): This command increases the validator P-Chain balance +- [`list`](#avalanche-validator-list): This command gets a list of the validators of the L1 + +**Flags:** + +```bash +-h, --help help for validator +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### getBalance + +This command gets the remaining validator P-Chain balance that is available to pay +P-Chain continuous fee + +**Usage:** +```bash +avalanche validator getBalance [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for getBalance +--l1 string name of L1 +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-id string node ID of the validator +-t, --testnet fuji operate on testnet (alias to fuji) +--validation-id string validation ID of the validator +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### increaseBalance + +This command increases the validator P-Chain balance + +**Usage:** +```bash +avalanche validator increaseBalance [subcommand] [flags] +``` + +**Flags:** + +```bash +--balance float amount of AVAX to increase validator's balance by +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for increaseBalance +-k, --key string select the key to use [fuji/devnet deploy only] +--l1 string name of L1 (to increase balance of bootstrap validators only) +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-id string node ID of the validator +-t, --testnet fuji operate on testnet (alias to fuji) +--validation-id string validationIDStr of the validator +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + + +### list + +This command gets a list of the validators of the L1 + +**Usage:** +```bash +avalanche validator list [subcommand] [flags] +``` + +**Flags:** + +```bash +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for list +-l, --local operate on a local network +-m, --mainnet operate on mainnet +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions +``` + From 8af541c956cee828f863dee08acc6adc81fe288b Mon Sep 17 00:00:00 2001 From: owenwahlgren Date: Mon, 13 Jan 2025 14:03:42 -0500 Subject: [PATCH 13/15] format fix --- .github/scripts/cli_scraper.py | 48 ++++++++++++++++++---------------- 1 file changed, 26 insertions(+), 22 deletions(-) diff --git a/.github/scripts/cli_scraper.py b/.github/scripts/cli_scraper.py index 845ca071e..f0a61eb3b 100644 --- a/.github/scripts/cli_scraper.py +++ b/.github/scripts/cli_scraper.py @@ -151,6 +151,13 @@ def generate_markdown(cli_structure, cli_tool, file_path): Generate a Markdown file from the CLI structure JSON object in a developer-friendly format. No top-level subcommand bullet list. """ + # Define a set of known type keywords. Adjust as needed. + known_types = { + "string", "bool", "int", "uint", "float", "duration", + "strings", "uint16", "uint32", "uint64", "int16", "int32", "int64", + "float32", "float64" + } + def write_section(structure, file, command_chain=None): if command_chain is None: command_chain = [] @@ -181,19 +188,16 @@ def write_section(structure, file, command_chain=None): file.write("**Usage:**\n") file.write(f"```bash\n{full_command} [subcommand] [flags]\n```\n\n") - # If there are subcommands, list them only if we're not at the root - # (which we aren't, because command_chain is non-empty). + # Subcommands index subcommands = structure.get('subcommands', {}) if subcommands: file.write("**Subcommands:**\n\n") - # Index of subcommands for subcmd in sorted(subcommands.keys()): sub_desc = subcommands[subcmd].get('description', '') sub_anchor = generate_anchor_id(cli_tool, command_chain + [subcmd]) file.write(f"- [`{subcmd}`](#{sub_anchor}): {sub_desc}\n") file.write("\n") else: - # Root level: do NOT print bullet list or heading. subcommands = structure.get('subcommands', {}) # Flags (only if we have a command chain) @@ -202,15 +206,21 @@ def write_section(structure, file, command_chain=None): flag_lines = [] for flag_dict in structure['flags']: flag_names = flag_dict['flag'] - description = flag_dict['description'] - - # Attempt to parse a type from the first word if present - desc_match = re.match(r'^(\w+)\s+(.*)', description) - if desc_match: - flag_type = desc_match.group(1) - flag_desc = desc_match.group(2) + description = flag_dict['description'].strip() + + # Attempt to parse a recognized "type" from the first word. + desc_parts = description.split(None, 1) # Split once on whitespace + if len(desc_parts) == 2: + first_word, rest = desc_parts + # Check if the first word is in known_types + if first_word.lower() in known_types: + flag_type = first_word + flag_desc = rest + else: + flag_type = "" + flag_desc = description else: - flag_type = '' + flag_type = "" flag_desc = description if flag_type: @@ -220,13 +230,14 @@ def write_section(structure, file, command_chain=None): flag_lines.append((flag_line, flag_desc)) - max_len = max(len(f[0]) for f in flag_lines) if flag_lines else 0 + # Determine formatting width + max_len = max(len(fl[0]) for fl in flag_lines) if flag_lines else 0 file.write("```bash\n") for fl, fd in flag_lines: file.write(f"{fl.ljust(max_len)} {fd}\n") file.write("```\n\n") - # Recurse into subcommands (so their headings will appear) + # Recurse into subcommands subcommands = structure.get('subcommands', {}) for subcmd in sorted(subcommands.keys()): write_section(subcommands[subcmd], file, command_chain + [subcmd]) @@ -241,18 +252,11 @@ def main(): # Build the nested command structure cli_structure = get_command_structure(cli_tool, max_depth=max_depth) if cli_structure: - # Save JSON - - # with open("cli_structure.json", "w", encoding="utf-8") as json_file: - # json.dump(cli_structure, json_file, indent=4) - # print("CLI structure saved to cli_structure.json") - # Generate Markdown generate_markdown(cli_structure, cli_tool, "cmd/commands.md") - print("Markdown documentation saved to cli_structure.md") + print("Markdown documentation saved to cmd/commands.md") else: print("[ERROR] Failed to retrieve CLI structure") if __name__ == "__main__": main() - From 0755965b3852359086b7fdeff06ee5a95afaa90b Mon Sep 17 00:00:00 2001 From: github-actions Date: Mon, 13 Jan 2025 19:09:09 +0000 Subject: [PATCH 14/15] chore: Update MD file [skip ci] --- cmd/commands.md | 1886 +++++++++++++++++++++++------------------------ 1 file changed, 943 insertions(+), 943 deletions(-) diff --git a/cmd/commands.md b/cmd/commands.md index 215f01a24..5b689338b 100644 --- a/cmd/commands.md +++ b/cmd/commands.md @@ -98,10 +98,10 @@ several statistics about them. **Flags:** ```bash --h, --help help for blockchain ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for blockchain +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -124,49 +124,49 @@ avalanche blockchain addValidator [subcommand] [flags] **Flags:** ```bash ---aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) ---aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation ---aggregator-log-level string log level to use with signature aggregator (default "Debug") ---aggregator-log-to-stdout use stdout for signature aggregator logs ---balance uint set the AVAX balance of the validator that will be used for continuous fee on P-Chain ---blockchain-genesis-key use genesis allocated key to pay fees for completing the validator's registration (blockchain gas token) ---blockchain-key string CLI stored key to use to pay fees for completing the validator's registration (blockchain gas token) ---blockchain-private-key string private key to use to pay fees for completing the validator's registration (blockchain gas token) ---bls-proof-of-possession string set the BLS proof of possession of the validator to add ---bls-public-key string set the BLS public key of the validator to add ---cluster string operate on the given cluster ---create-local-validator create additional local validator and add it to existing running local node ---default-duration (for Subnets, not L1s) set duration so as to validate until primary validator ends its period ---default-start-time (for Subnets, not L1s) use default start time for subnet validator (5 minutes later for fuji & mainnet, 30 seconds later for devnet) ---default-validator-params (for Subnets, not L1s) use default weight/start/duration params for subnet validator ---delegation-fee uint16 (PoS only) delegation fee (in bips) (default 100) ---devnet operate on a devnet network ---disable-owner string P-Chain address that will able to disable the validator with a P-Chain transaction ---endpoint string use the given endpoint for network operations --e, --ewoq use ewoq key [fuji/devnet only] --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for addValidator --k, --key string select the key to use [fuji/devnet only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) ---ledger-addrs strings use the given ledger addresses --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-endpoint string gather node id/bls from publicly available avalanchego apis on the given endpoint ---node-id string node-id of the validator to add ---output-tx-path string (for Subnets, not L1s) file path of the add validator tx ---partial-sync set primary network partial sync for new validators (default true) ---remaining-balance-owner string P-Chain address that will receive any leftover AVAX from the validator when it is removed from Subnet ---rpc string connect to validator manager at the given rpc endpoint ---stake-amount uint (PoS only) amount of tokens to stake ---staking-period duration how long this validator will be staking ---start-time string (for Subnets, not L1s) UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format ---subnet-auth-keys strings (for Subnets, not L1s) control keys that will be used to authenticate add validator tx --t, --testnet fuji operate on testnet (alias to fuji) ---wait-for-tx-acceptance (for Subnets, not L1s) just issue the add validator tx, without waiting for its acceptance (default true) ---weight uint set the staking weight of the validator to add (default 20) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) +--aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation +--aggregator-log-level string log level to use with signature aggregator (default "Debug") +--aggregator-log-to-stdout use stdout for signature aggregator logs +--balance uint set the AVAX balance of the validator that will be used for continuous fee on P-Chain +--blockchain-genesis-key use genesis allocated key to pay fees for completing the validator's registration (blockchain gas token) +--blockchain-key string CLI stored key to use to pay fees for completing the validator's registration (blockchain gas token) +--blockchain-private-key string private key to use to pay fees for completing the validator's registration (blockchain gas token) +--bls-proof-of-possession string set the BLS proof of possession of the validator to add +--bls-public-key string set the BLS public key of the validator to add +--cluster string operate on the given cluster +--create-local-validator create additional local validator and add it to existing running local node +--default-duration (for Subnets, not L1s) set duration so as to validate until primary validator ends its period +--default-start-time (for Subnets, not L1s) use default start time for subnet validator (5 minutes later for fuji & mainnet, 30 seconds later for devnet) +--default-validator-params (for Subnets, not L1s) use default weight/start/duration params for subnet validator +--delegation-fee uint16 (PoS only) delegation fee (in bips) (default 100) +--devnet operate on a devnet network +--disable-owner string P-Chain address that will able to disable the validator with a P-Chain transaction +--endpoint string use the given endpoint for network operations +-e, --ewoq use ewoq key [fuji/devnet only] +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for addValidator +-k, --key string select the key to use [fuji/devnet only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-endpoint string gather node id/bls from publicly available avalanchego apis on the given endpoint +--node-id string node-id of the validator to add +--output-tx-path string (for Subnets, not L1s) file path of the add validator tx +--partial-sync set primary network partial sync for new validators (default true) +--remaining-balance-owner string P-Chain address that will receive any leftover AVAX from the validator when it is removed from Subnet +--rpc string connect to validator manager at the given rpc endpoint +--stake-amount uint (PoS only) amount of tokens to stake +--staking-period duration how long this validator will be staking +--start-time string (for Subnets, not L1s) UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format +--subnet-auth-keys strings (for Subnets, not L1s) control keys that will be used to authenticate add validator tx +-t, --testnet fuji operate on testnet (alias to fuji) +--wait-for-tx-acceptance (for Subnets, not L1s) just issue the add validator tx, without waiting for its acceptance (default true) +--weight uint set the staking weight of the validator to add (default 20) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -182,26 +182,26 @@ avalanche blockchain changeOwner [subcommand] [flags] **Flags:** ```bash ---auth-keys strings control keys that will be used to authenticate transfer blockchain ownership tx ---cluster string operate on the given cluster ---control-keys strings addresses that may make blockchain changes ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --e, --ewoq use ewoq key [fuji/devnet] --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for changeOwner --k, --key string select the key to use [fuji/devnet] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) ---ledger-addrs strings use the given ledger addresses --l, --local operate on a local network --m, --mainnet operate on mainnet ---output-tx-path string file path of the transfer blockchain ownership tx --s, --same-control-key use the fee-paying key as control key --t, --testnet fuji operate on testnet (alias to fuji) ---threshold uint32 required number of control key signatures to make blockchain changes ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--auth-keys strings control keys that will be used to authenticate transfer blockchain ownership tx +--cluster string operate on the given cluster +--control-keys strings addresses that may make blockchain changes +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-e, --ewoq use ewoq key [fuji/devnet] +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for changeOwner +-k, --key string select the key to use [fuji/devnet] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--output-tx-path string file path of the transfer blockchain ownership tx +-s, --same-control-key use the fee-paying key as control key +-t, --testnet fuji operate on testnet (alias to fuji) +--threshold uint32 required number of control key signatures to make blockchain changes +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -219,23 +219,23 @@ avalanche blockchain changeWeight [subcommand] [flags] **Flags:** ```bash ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --e, --ewoq use ewoq key [fuji/devnet only] --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for changeWeight --k, --key string select the key to use [fuji/devnet only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) ---ledger-addrs strings use the given ledger addresses --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-id string node-id of the validator --t, --testnet fuji operate on testnet (alias to fuji) ---weight uint set the new staking weight of the validator (default 20) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-e, --ewoq use ewoq key [fuji/devnet only] +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for changeWeight +-k, --key string select the key to use [fuji/devnet only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-id string node-id of the validator +-t, --testnet fuji operate on testnet (alias to fuji) +--weight uint set the new staking weight of the validator (default 20) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -254,13 +254,13 @@ avalanche blockchain configure [subcommand] [flags] ```bash --chain-config string path to the chain configuration --h, --help help for configure +-h, --help help for configure --node-config string path to avalanchego node configuration --per-node-chain-config string path to per node chain configuration for local network --subnet-config string path to the subnet configuration --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -286,40 +286,40 @@ avalanche blockchain create [subcommand] [flags] **Flags:** ```bash ---custom use a custom VM template +--custom use a custom VM template --custom-vm-branch string custom vm branch or commit --custom-vm-build-script string custom vm build-script --custom-vm-path string file path of custom vm to use --custom-vm-repo-url string custom vm repository url ---debug enable blockchain debugging (default true) ---evm use the Subnet-EVM as the base template +--debug enable blockchain debugging (default true) +--evm use the Subnet-EVM as the base template --evm-chain-id uint chain ID to use with Subnet-EVM ---evm-defaults deprecation notice: use '--production-defaults' +--evm-defaults deprecation notice: use '--production-defaults' --evm-token string token symbol to use with Subnet-EVM ---external-gas-token use a gas token from another blockchain --f, --force overwrite the existing configuration if one exists ---from-github-repo generate custom VM binary from github repository +--external-gas-token use a gas token from another blockchain +-f, --force overwrite the existing configuration if one exists +--from-github-repo generate custom VM binary from github repository --genesis string file path of genesis to use --h, --help help for create ---icm interoperate with other blockchains using ICM ---icm-registry-at-genesis setup ICM registry smart contract on genesis [experimental] ---latest use latest Subnet-EVM released version, takes precedence over --vm-version ---pre-release use latest Subnet-EVM pre-released version, takes precedence over --vm-version ---production-defaults use default production settings for your blockchain ---proof-of-authority use proof of authority(PoA) for validator management ---proof-of-stake use proof of stake(PoS) for validator management +-h, --help help for create +--icm interoperate with other blockchains using ICM +--icm-registry-at-genesis setup ICM registry smart contract on genesis [experimental] +--latest use latest Subnet-EVM released version, takes precedence over --vm-version +--pre-release use latest Subnet-EVM pre-released version, takes precedence over --vm-version +--production-defaults use default production settings for your blockchain +--proof-of-authority use proof of authority(PoA) for validator management +--proof-of-stake use proof of stake(PoS) for validator management --proxy-contract-owner string EVM address that controls ProxyAdmin for TransparentProxy of ValidatorManager contract --reward-basis-points uint (PoS only) reward basis points for PoS Reward Calculator (default 100) ---sovereign set to false if creating non-sovereign blockchain (default true) ---teleporter interoperate with other blockchains using ICM ---test-defaults use default test settings for your blockchain +--sovereign set to false if creating non-sovereign blockchain (default true) +--teleporter interoperate with other blockchains using ICM +--test-defaults use default test settings for your blockchain --validator-manager-owner string EVM address that controls Validator Manager Owner --vm string file path of custom vm to use. alias to custom-vm-path --vm-version string version of Subnet-EVM template to use ---warp generate a vm with warp support (needed for ICM) (default true) +--warp generate a vm with warp support (needed for ICM) (default true) --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -335,10 +335,10 @@ avalanche blockchain delete [subcommand] [flags] **Flags:** ```bash --h, --help help for delete ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for delete +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -363,15 +363,15 @@ avalanche blockchain deploy [subcommand] [flags] **Flags:** ```bash ---aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) +--aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) --aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation --aggregator-log-level string log level to use with signature aggregator (default "Debug") ---aggregator-log-to-stdout use stdout for signature aggregator logs +--aggregator-log-to-stdout use stdout for signature aggregator logs --auth-keys strings control keys that will be used to authenticate chain creation --avalanchego-path string use this avalanchego binary path --avalanchego-version string use this version of avalanchego (ex: v1.17.12) (default "latest-prerelease") --balance float set the AVAX balance of each bootstrap validator that will be used for continuous fee on P-Chain (default 0.1) ---blockchain-genesis-key use genesis allocated key to fund validator manager initialization +--blockchain-genesis-key use genesis allocated key to fund validator manager initialization --blockchain-key string CLI stored key to use to fund validator manager initialization --blockchain-private-key string private key to use to fund validator manager initialization --bootstrap-endpoints strings take validator node info from the given endpoints @@ -381,58 +381,58 @@ avalanche blockchain deploy [subcommand] [flags] --change-owner-address string address that will receive change if node is no longer L1 validator --cluster string operate on the given cluster --control-keys strings addresses that may make blockchain changes ---convert-only avoid node track, restart and poa manager setup ---devnet operate on a devnet network +--convert-only avoid node track, restart and poa manager setup +--devnet operate on a devnet network --endpoint string use the given endpoint for network operations --e, --ewoq use ewoq key [fuji/devnet deploy only] --f, --fuji testnet operate on fuji (alias to testnet ---generate-node-id whether to create new node id for bootstrap validators (Node-ID and BLS values in bootstrap JSON file will be overridden if --bootstrap-filepath flag is used) --h, --help help for deploy +-e, --ewoq use ewoq key [fuji/devnet deploy only] +-f, --fuji testnet operate on fuji (alias to testnet +--generate-node-id whether to create new node id for bootstrap validators (Node-ID and BLS values in bootstrap JSON file will be overridden if --bootstrap-filepath flag is used) +-h, --help help for deploy --icm-key string key to be used to pay for ICM deploys (default "cli-teleporter-deployer") --icm-version string ICM version to deploy (default "latest") -k, --key string select the key to use [fuji/devnet deploy only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) --ledger-addrs strings use the given ledger addresses --l, --local operate on a local network --m, --mainnet operate on mainnet +-l, --local operate on a local network +-m, --mainnet operate on mainnet --mainnet-chain-id uint32 use different ChainID for mainnet deployment ---noicm skip automatic ICM deploy +--noicm skip automatic ICM deploy --num-bootstrap-validators int (only if --generate-node-id is true) number of bootstrap validators to set up in sovereign L1 validator) --num-local-nodes int number of nodes to be created on local machine --num-nodes uint32 number of nodes to be created on local network deploy (default 2) --output-tx-path string file path of the blockchain creation tx ---partial-sync set primary network partial sync for new validators (default true) +--partial-sync set primary network partial sync for new validators (default true) --pos-maximum-stake-amount uint maximum stake amount (default 1000) ---pos-maximum-stake-multiplier uint8 maximum stake multiplier (default 1) +--pos-maximum-stake-multiplier uint8 maximum stake multiplier (default 1) --pos-minimum-delegation-fee uint16 minimum delegation fee (default 1) --pos-minimum-stake-amount uint minimum stake amount (default 1) --pos-minimum-stake-duration uint minimum stake duration (default 100) --pos-weight-to-value-factor uint weight to value factor (default 1) ---relay-cchain relay C-Chain as source and destination (default true) ---relayer-allow-private-ips allow relayer to connec to private ips (default true) +--relay-cchain relay C-Chain as source and destination (default true) +--relayer-allow-private-ips allow relayer to connec to private ips (default true) --relayer-amount float automatically fund relayer fee payments with the given amount --relayer-key string key to be used by default both for rewards and to pay fees --relayer-log-level string log level to be used for relayer logs (default "info") --relayer-path string relayer binary to use --relayer-version string relayer version to deploy (default "latest-prerelease") --s, --same-control-key use the fee-paying key as control key ---skip-icm-deploy skip automatic ICM deploy ---skip-local-teleporter skip automatic ICM deploy on local networks [to be deprecated] ---skip-relayer skip relayer deploy ---skip-teleporter-deploy skip automatic ICM deploy +-s, --same-control-key use the fee-paying key as control key +--skip-icm-deploy skip automatic ICM deploy +--skip-local-teleporter skip automatic ICM deploy on local networks [to be deprecated] +--skip-relayer skip relayer deploy +--skip-teleporter-deploy skip automatic ICM deploy -u, --subnet-id string do not create a subnet, deploy the blockchain into the given subnet id ---subnet-only only create a subnet +--subnet-only only create a subnet --teleporter-messenger-contract-address-path string path to an ICM Messenger contract address file --teleporter-messenger-deployer-address-path string path to an ICM Messenger deployer address file --teleporter-messenger-deployer-tx-path string path to an ICM Messenger deployer tx file --teleporter-registry-bytecode-path string path to an ICM Registry bytecode file --teleporter-version string ICM version to deploy (default "latest") --t, --testnet fuji operate on testnet (alias to fuji) +-t, --testnet fuji operate on testnet (alias to fuji) --threshold uint32 required number of control key signatures to make blockchain changes ---use-local-machine use local machine as a blockchain validator +--use-local-machine use local machine as a blockchain validator --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -450,11 +450,11 @@ avalanche blockchain describe [subcommand] [flags] **Flags:** ```bash --g, --genesis Print the genesis to the console directly instead of the summary --h, --help help for describe ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-g, --genesis Print the genesis to the console directly instead of the summary +-h, --help help for describe +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -476,11 +476,11 @@ avalanche blockchain export [subcommand] [flags] --custom-vm-branch string custom vm branch --custom-vm-build-script string custom vm build-script --custom-vm-repo-url string custom vm repository url --h, --help help for export +-h, --help help for export -o, --output string write the export data to the provided file path --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -515,10 +515,10 @@ flag. **Flags:** ```bash --h, --help help for import ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for import +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -540,14 +540,14 @@ avalanche blockchain import file [subcommand] [flags] **Flags:** ```bash ---blockchain string the blockchain configuration to import from the provided repo ---branch string the repo branch to use if downloading a new repo --f, --force overwrite the existing configuration if one exists --h, --help help for file ---repo string the repo to import (ex: ava-labs/avalanche-plugins-core) or url to download the repo from ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--blockchain string the blockchain configuration to import from the provided repo +--branch string the repo branch to use if downloading a new repo +-f, --force overwrite the existing configuration if one exists +-h, --help help for file +--repo string the repo to import (ex: ava-labs/avalanche-plugins-core) or url to download the repo from +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -567,22 +567,22 @@ avalanche blockchain import public [subcommand] [flags] **Flags:** ```bash ---blockchain-id string the blockchain ID ---cluster string operate on the given cluster ---custom use a custom VM template ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations ---evm import a subnet-evm ---force overwrite the existing configuration if one exists --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for public --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-url string [optional] URL of an already running validator --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--blockchain-id string the blockchain ID +--cluster string operate on the given cluster +--custom use a custom VM template +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +--evm import a subnet-evm +--force overwrite the existing configuration if one exists +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for public +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-url string [optional] URL of an already running validator +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -614,26 +614,26 @@ avalanche blockchain join [subcommand] [flags] --avalanchego-config string file path of the avalanchego config file --cluster string operate on the given cluster --data-dir string path of avalanchego's data dir directory ---devnet operate on a devnet network +--devnet operate on a devnet network --endpoint string use the given endpoint for network operations ---force-write if true, skip to prompt to overwrite the config file --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for join +--force-write if true, skip to prompt to overwrite the config file +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for join -k, --key string select the key to use [fuji only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) --ledger-addrs strings use the given ledger addresses --l, --local operate on a local network --m, --mainnet operate on mainnet +-l, --local operate on a local network +-m, --mainnet operate on mainnet --node-id string set the NodeID of the validator to check --plugin-dir string file path of avalanchego's plugin directory ---print if true, print the manual config without prompting +--print if true, print the manual config without prompting --stake-amount uint amount of tokens to stake on validator --staking-period duration how long validator validates for after start time --start-time string start time that validator starts validating --t, --testnet fuji operate on testnet (alias to fuji) +-t, --testnet fuji operate on testnet (alias to fuji) --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -651,11 +651,11 @@ avalanche blockchain list [subcommand] [flags] **Flags:** ```bash ---deployed show additional deploy information --h, --help help for list ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--deployed show additional deploy information +-h, --help help for list +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -672,15 +672,15 @@ avalanche blockchain publish [subcommand] [flags] ```bash --alias string We publish to a remote repo, but identify the repo locally under a user-provided alias (e.g. myrepo). ---force If true, ignores if the blockchain has been published in the past, and attempts a forced publish. --h, --help help for publish +--force If true, ignores if the blockchain has been published in the past, and attempts a forced publish. +-h, --help help for publish --no-repo-path string Do not let the tool manage file publishing, but have it only generate the files and put them in the location given by this flag. --repo-url string The URL of the repo where we are publishing --subnet-file-path string Path to the Blockchain description file. If not given, a prompting sequence will be initiated. --vm-file-path string Path to the VM description file. If not given, a prompting sequence will be initiated. --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -700,34 +700,34 @@ avalanche blockchain removeValidator [subcommand] [flags] **Flags:** ```bash ---aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) ---aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation ---aggregator-log-level string log level to use with signature aggregator (default "Debug") ---aggregator-log-to-stdout use stdout for signature aggregator logs ---auth-keys strings (for non-SOV blockchain only) control keys that will be used to authenticate the removeValidator tx ---blockchain-genesis-key use genesis allocated key to pay fees for completing the validator's removal (blockchain gas token) ---blockchain-key string CLI stored key to use to pay fees for completing the validator's removal (blockchain gas token) ---blockchain-private-key string private key to use to pay fees for completing the validator's removal (blockchain gas token) ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations ---force force validator removal even if it's not getting rewarded --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for removeValidator --k, --key string select the key to use [fuji deploy only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) ---ledger-addrs strings use the given ledger addresses --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-endpoint string remove validator that responds to the given endpoint ---node-id string node-id of the validator ---output-tx-path string (for non-SOV blockchain only) file path of the removeValidator tx ---rpc string connect to validator manager at the given rpc endpoint --t, --testnet fuji operate on testnet (alias to fuji) ---uptime uint validator's uptime in seconds. If not provided, it will be automatically calculated ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) +--aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation +--aggregator-log-level string log level to use with signature aggregator (default "Debug") +--aggregator-log-to-stdout use stdout for signature aggregator logs +--auth-keys strings (for non-SOV blockchain only) control keys that will be used to authenticate the removeValidator tx +--blockchain-genesis-key use genesis allocated key to pay fees for completing the validator's removal (blockchain gas token) +--blockchain-key string CLI stored key to use to pay fees for completing the validator's removal (blockchain gas token) +--blockchain-private-key string private key to use to pay fees for completing the validator's removal (blockchain gas token) +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +--force force validator removal even if it's not getting rewarded +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for removeValidator +-k, --key string select the key to use [fuji deploy only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) +--ledger-addrs strings use the given ledger addresses +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-endpoint string remove validator that responds to the given endpoint +--node-id string node-id of the validator +--output-tx-path string (for non-SOV blockchain only) file path of the removeValidator tx +--rpc string connect to validator manager at the given rpc endpoint +-t, --testnet fuji operate on testnet (alias to fuji) +--uptime uint validator's uptime in seconds. If not provided, it will be automatically calculated +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -743,17 +743,17 @@ avalanche blockchain stats [subcommand] [flags] **Flags:** ```bash ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for stats --l, --local operate on a local network --m, --mainnet operate on mainnet --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for stats +-l, --local operate on a local network +-m, --mainnet operate on mainnet +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -794,10 +794,10 @@ command line flags. **Flags:** ```bash --h, --help help for upgrade ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for upgrade +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -824,16 +824,16 @@ avalanche blockchain upgrade apply [subcommand] [flags] ```bash --avalanchego-chain-config-dir string avalanchego's chain config file directory (default "/home/runner/.avalanchego/chains") ---config create upgrade config for future subnet deployments (same as generate) ---force If true, don't prompt for confirmation of timestamps in the past ---fuji fuji apply upgrade existing fuji deployment (alias for `testnet`) --h, --help help for apply ---local local apply upgrade existing local deployment ---mainnet mainnet apply upgrade existing mainnet deployment ---print if true, print the manual config without prompting (for public networks only) ---testnet testnet apply upgrade existing testnet deployment (alias for `fuji`) +--config create upgrade config for future subnet deployments (same as generate) +--force If true, don't prompt for confirmation of timestamps in the past +--fuji fuji apply upgrade existing fuji deployment (alias for `testnet`) +-h, --help help for apply +--local local apply upgrade existing local deployment +--mainnet mainnet apply upgrade existing mainnet deployment +--print if true, print the manual config without prompting (for public networks only) +--testnet testnet apply upgrade existing testnet deployment (alias for `fuji`) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -849,12 +849,12 @@ avalanche blockchain upgrade export [subcommand] [flags] **Flags:** ```bash ---force If true, overwrite a possibly existing file without prompting --h, --help help for export +--force If true, overwrite a possibly existing file without prompting +-h, --help help for export --upgrade-filepath string Export upgrade bytes file to location of choice on disk --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -871,10 +871,10 @@ avalanche blockchain upgrade generate [subcommand] [flags] **Flags:** ```bash --h, --help help for generate ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for generate +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -890,11 +890,11 @@ avalanche blockchain upgrade import [subcommand] [flags] **Flags:** ```bash --h, --help help for import +-h, --help help for import --upgrade-filepath string Import upgrade bytes file into local environment --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -910,10 +910,10 @@ avalanche blockchain upgrade print [subcommand] [flags] **Flags:** ```bash --h, --help help for print ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for print +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -933,19 +933,19 @@ avalanche blockchain upgrade vm [subcommand] [flags] **Flags:** ```bash ---binary string Upgrade to custom binary ---config upgrade config for future subnet deployments ---fuji fuji upgrade existing fuji deployment (alias for `testnet`) --h, --help help for vm ---latest upgrade to latest version ---local local upgrade existing local deployment ---mainnet mainnet upgrade existing mainnet deployment ---plugin-dir string plugin directory to automatically upgrade VM ---print print instructions for upgrading ---testnet testnet upgrade existing testnet deployment (alias for `fuji`) ---version string Upgrade to custom version ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--binary string Upgrade to custom binary +--config upgrade config for future subnet deployments +--fuji fuji upgrade existing fuji deployment (alias for `testnet`) +-h, --help help for vm +--latest upgrade to latest version +--local local upgrade existing local deployment +--mainnet mainnet upgrade existing mainnet deployment +--plugin-dir string plugin directory to automatically upgrade VM +--print print instructions for upgrading +--testnet testnet upgrade existing testnet deployment (alias for `fuji`) +--version string Upgrade to custom version +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -962,17 +962,17 @@ avalanche blockchain validators [subcommand] [flags] **Flags:** ```bash ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for validators --l, --local operate on a local network --m, --mainnet operate on mainnet --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for validators +-l, --local operate on a local network +-m, --mainnet operate on mainnet +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -988,10 +988,10 @@ avalanche blockchain vmid [subcommand] [flags] **Flags:** ```bash --h, --help help for vmid ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for vmid +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1015,10 +1015,10 @@ avalanche config [subcommand] [flags] **Flags:** ```bash --h, --help help for config ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for config +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1034,10 +1034,10 @@ avalanche config authorize-cloud-access [subcommand] [flags] **Flags:** ```bash --h, --help help for authorize-cloud-access ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for authorize-cloud-access +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1053,10 +1053,10 @@ avalanche config metrics [subcommand] [flags] **Flags:** ```bash --h, --help help for metrics ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for metrics +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1072,10 +1072,10 @@ avalanche config migrate [subcommand] [flags] **Flags:** ```bash --h, --help help for migrate ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for migrate +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1091,10 +1091,10 @@ avalanche config snapshotsAutoSave [subcommand] [flags] **Flags:** ```bash --h, --help help for snapshotsAutoSave ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for snapshotsAutoSave +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1110,10 +1110,10 @@ avalanche config update [subcommand] [flags] **Flags:** ```bash --h, --help help for update ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for update +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1136,10 +1136,10 @@ smart contracts. **Flags:** ```bash --h, --help help for contract ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for contract +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1160,10 +1160,10 @@ avalanche contract deploy [subcommand] [flags] **Flags:** ```bash --h, --help help for deploy ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for deploy +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1179,26 +1179,26 @@ avalanche contract deploy erc20 [subcommand] [flags] **Flags:** ```bash ---blockchain string deploy the ERC20 contract into the given CLI blockchain ---blockchain-id string deploy the ERC20 contract into the given blockchain ID/Alias ---c-chain deploy the ERC20 contract into C-Chain ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet ---funded string set the funded address ---genesis-key use genesis allocated key as contract deployer --h, --help help for erc20 ---key string CLI stored key to use as contract deployer --l, --local operate on a local network ---private-key string private key to use as contract deployer ---rpc string deploy the contract into the given rpc endpoint ---supply uint set the token supply ---symbol string set the token symbol --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--blockchain string deploy the ERC20 contract into the given CLI blockchain +--blockchain-id string deploy the ERC20 contract into the given blockchain ID/Alias +--c-chain deploy the ERC20 contract into C-Chain +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--funded string set the funded address +--genesis-key use genesis allocated key as contract deployer +-h, --help help for erc20 +--key string CLI stored key to use as contract deployer +-l, --local operate on a local network +--private-key string private key to use as contract deployer +--rpc string deploy the contract into the given rpc endpoint +--supply uint set the token supply +--symbol string set the token symbol +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1214,21 +1214,21 @@ avalanche contract initValidatorManager [subcommand] [flags] **Flags:** ```bash ---aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) +--aggregator-allow-private-peers allow the signature aggregator to connect to peers with private IP (default true) --aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation --aggregator-log-level string log level to use with signature aggregator (default "Debug") ---aggregator-log-to-stdout dump signature aggregator logs to stdout +--aggregator-log-to-stdout dump signature aggregator logs to stdout --cluster string operate on the given cluster ---devnet operate on a devnet network +--devnet operate on a devnet network --endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet ---genesis-key use genesis allocated key as contract deployer --h, --help help for initValidatorManager +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key as contract deployer +-h, --help help for initValidatorManager --key string CLI stored key to use as contract deployer --l, --local operate on a local network --m, --mainnet operate on mainnet +-l, --local operate on a local network +-m, --mainnet operate on mainnet --pos-maximum-stake-amount uint (PoS only) maximum stake amount (default 1000) ---pos-maximum-stake-multiplier uint8 (PoS only )maximum stake multiplier (default 1) +--pos-maximum-stake-multiplier uint8 (PoS only )maximum stake multiplier (default 1) --pos-minimum-delegation-fee uint16 (PoS only) minimum delegation fee (default 1) --pos-minimum-stake-amount uint (PoS only) minimum stake amount (default 1) --pos-minimum-stake-duration uint (PoS only) minimum stake duration (default 100) @@ -1236,10 +1236,10 @@ avalanche contract initValidatorManager [subcommand] [flags] --pos-weight-to-value-factor uint (PoS only) weight to value factor (default 1) --private-key string private key to use as contract deployer --rpc string deploy the contract into the given rpc endpoint --t, --testnet fuji operate on testnet (alias to fuji) +-t, --testnet fuji operate on testnet (alias to fuji) --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -1256,10 +1256,10 @@ avalanche help [subcommand] [flags] **Flags:** ```bash --h, --help help for help ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for help +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1281,10 +1281,10 @@ avalanche icm [subcommand] [flags] **Flags:** ```bash --h, --help help for icm ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for icm +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1302,31 +1302,31 @@ avalanche icm deploy [subcommand] [flags] ```bash --blockchain string deploy ICM into the given CLI blockchain --blockchain-id string deploy ICM into the given blockchain ID/Alias ---c-chain deploy ICM into C-Chain +--c-chain deploy ICM into C-Chain --cchain-key string key to be used to pay fees to deploy ICM to C-Chain --cluster string operate on the given cluster ---deploy-messenger deploy ICM Messenger (default true) ---deploy-registry deploy ICM Registry (default true) ---devnet operate on a devnet network +--deploy-messenger deploy ICM Messenger (default true) +--deploy-registry deploy ICM Registry (default true) +--devnet operate on a devnet network --endpoint string use the given endpoint for network operations ---force-registry-deploy deploy ICM Registry even if Messenger has already been deployed --f, --fuji testnet operate on fuji (alias to testnet ---genesis-key use genesis allocated key to fund ICM deploy --h, --help help for deploy ---include-cchain deploy ICM also to C-Chain +--force-registry-deploy deploy ICM Registry even if Messenger has already been deployed +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key to fund ICM deploy +-h, --help help for deploy +--include-cchain deploy ICM also to C-Chain --key string CLI stored key to use to fund ICM deploy --l, --local operate on a local network +-l, --local operate on a local network --messenger-contract-address-path string path to a messenger contract address file --messenger-deployer-address-path string path to a messenger deployer address file --messenger-deployer-tx-path string path to a messenger deployer tx file --private-key string private key to use to fund ICM deploy --registry-bytecode-path string path to a registry bytecode file --rpc-url string use the given RPC URL to connect to the subnet --t, --testnet fuji operate on testnet (alias to fuji) +-t, --testnet fuji operate on testnet (alias to fuji) --version string version to deploy (default "latest") --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -1345,20 +1345,20 @@ avalanche icm sendMsg [subcommand] [flags] --cluster string operate on the given cluster --dest-rpc string use the given destination blockchain rpc endpoint --destination-address string deliver the message to the given contract destination address ---devnet operate on a devnet network +--devnet operate on a devnet network --endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet ---genesis-key use genesis allocated key as message originator and to pay source blockchain fees --h, --help help for sendMsg ---hex-encoded given message is hex encoded +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key as message originator and to pay source blockchain fees +-h, --help help for sendMsg +--hex-encoded given message is hex encoded --key string CLI stored key to use as message originator and to pay source blockchain fees --l, --local operate on a local network +-l, --local operate on a local network --private-key string private key to use as message originator and to pay source blockchain fees --source-rpc string use the given source blockchain rpc endpoint --t, --testnet fuji operate on testnet (alias to fuji) +-t, --testnet fuji operate on testnet (alias to fuji) --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -1378,10 +1378,10 @@ avalanche ictt [subcommand] [flags] **Flags:** ```bash --h, --help help for ictt ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for ictt +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1397,35 +1397,35 @@ avalanche ictt deploy [subcommand] [flags] **Flags:** ```bash ---c-chain-home set the Transferrer's Home Chain into C-Chain ---c-chain-remote set the Transferrer's Remote Chain into C-Chain ---cluster string operate on the given cluster ---deploy-erc20-home string deploy a Transferrer Home for the given Chain's ERC20 Token ---deploy-native-home deploy a Transferrer Home for the Chain's Native Token ---deploy-native-remote deploy a Transferrer Remote for the Chain's Native Token ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for deploy ---home-blockchain string set the Transferrer's Home Chain into the given CLI blockchain ---home-genesis-key use genesis allocated key to deploy Transferrer Home ---home-key string CLI stored key to use to deploy Transferrer Home ---home-private-key string private key to use to deploy Transferrer Home ---home-rpc string use the given RPC URL to connect to the home blockchain --l, --local operate on a local network ---remote-blockchain string set the Transferrer's Remote Chain into the given CLI blockchain ---remote-genesis-key use genesis allocated key to deploy Transferrer Remote ---remote-key string CLI stored key to use to deploy Transferrer Remote ---remote-private-key string private key to use to deploy Transferrer Remote ---remote-rpc string use the given RPC URL to connect to the remote blockchain ---remote-token-decimals uint8 use the given number of token decimals for the Transferrer Remote [defaults to token home's decimals (18 for a new wrapped native home token)] ---remove-minter-admin remove the native minter precompile admin found on remote blockchain genesis --t, --testnet fuji operate on testnet (alias to fuji) ---use-home string use the given Transferrer's Home Address ---version string tag/branch/commit of Avalanche Interchain Token Transfer (ICTT) to be used (defaults to main branch) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--c-chain-home set the Transferrer's Home Chain into C-Chain +--c-chain-remote set the Transferrer's Remote Chain into C-Chain +--cluster string operate on the given cluster +--deploy-erc20-home string deploy a Transferrer Home for the given Chain's ERC20 Token +--deploy-native-home deploy a Transferrer Home for the Chain's Native Token +--deploy-native-remote deploy a Transferrer Remote for the Chain's Native Token +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for deploy +--home-blockchain string set the Transferrer's Home Chain into the given CLI blockchain +--home-genesis-key use genesis allocated key to deploy Transferrer Home +--home-key string CLI stored key to use to deploy Transferrer Home +--home-private-key string private key to use to deploy Transferrer Home +--home-rpc string use the given RPC URL to connect to the home blockchain +-l, --local operate on a local network +--remote-blockchain string set the Transferrer's Remote Chain into the given CLI blockchain +--remote-genesis-key use genesis allocated key to deploy Transferrer Remote +--remote-key string CLI stored key to use to deploy Transferrer Remote +--remote-private-key string private key to use to deploy Transferrer Remote +--remote-rpc string use the given RPC URL to connect to the remote blockchain +--remote-token-decimals uint8 use the given number of token decimals for the Transferrer Remote [defaults to token home's decimals (18 for a new wrapped native home token)] +--remove-minter-admin remove the native minter precompile admin found on remote blockchain genesis +-t, --testnet fuji operate on testnet (alias to fuji) +--use-home string use the given Transferrer's Home Address +--version string tag/branch/commit of Avalanche Interchain Token Transfer (ICTT) to be used (defaults to main branch) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1450,10 +1450,10 @@ and configuring an ICM relayers. **Flags:** ```bash --h, --help help for interchain ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for interchain +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1475,10 +1475,10 @@ avalanche interchain messenger [subcommand] [flags] **Flags:** ```bash --h, --help help for messenger ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for messenger +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1496,31 +1496,31 @@ avalanche interchain messenger deploy [subcommand] [flags] ```bash --blockchain string deploy ICM into the given CLI blockchain --blockchain-id string deploy ICM into the given blockchain ID/Alias ---c-chain deploy ICM into C-Chain +--c-chain deploy ICM into C-Chain --cchain-key string key to be used to pay fees to deploy ICM to C-Chain --cluster string operate on the given cluster ---deploy-messenger deploy ICM Messenger (default true) ---deploy-registry deploy ICM Registry (default true) ---devnet operate on a devnet network +--deploy-messenger deploy ICM Messenger (default true) +--deploy-registry deploy ICM Registry (default true) +--devnet operate on a devnet network --endpoint string use the given endpoint for network operations ---force-registry-deploy deploy ICM Registry even if Messenger has already been deployed --f, --fuji testnet operate on fuji (alias to testnet ---genesis-key use genesis allocated key to fund ICM deploy --h, --help help for deploy ---include-cchain deploy ICM also to C-Chain +--force-registry-deploy deploy ICM Registry even if Messenger has already been deployed +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key to fund ICM deploy +-h, --help help for deploy +--include-cchain deploy ICM also to C-Chain --key string CLI stored key to use to fund ICM deploy --l, --local operate on a local network +-l, --local operate on a local network --messenger-contract-address-path string path to a messenger contract address file --messenger-deployer-address-path string path to a messenger deployer address file --messenger-deployer-tx-path string path to a messenger deployer tx file --private-key string private key to use to fund ICM deploy --registry-bytecode-path string path to a registry bytecode file --rpc-url string use the given RPC URL to connect to the subnet --t, --testnet fuji operate on testnet (alias to fuji) +-t, --testnet fuji operate on testnet (alias to fuji) --version string version to deploy (default "latest") --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -1539,20 +1539,20 @@ avalanche interchain messenger sendMsg [subcommand] [flags] --cluster string operate on the given cluster --dest-rpc string use the given destination blockchain rpc endpoint --destination-address string deliver the message to the given contract destination address ---devnet operate on a devnet network +--devnet operate on a devnet network --endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet ---genesis-key use genesis allocated key as message originator and to pay source blockchain fees --h, --help help for sendMsg ---hex-encoded given message is hex encoded +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key as message originator and to pay source blockchain fees +-h, --help help for sendMsg +--hex-encoded given message is hex encoded --key string CLI stored key to use as message originator and to pay source blockchain fees --l, --local operate on a local network +-l, --local operate on a local network --private-key string private key to use as message originator and to pay source blockchain fees --source-rpc string use the given source blockchain rpc endpoint --t, --testnet fuji operate on testnet (alias to fuji) +-t, --testnet fuji operate on testnet (alias to fuji) --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -1576,10 +1576,10 @@ avalanche interchain relayer [subcommand] [flags] **Flags:** ```bash --h, --help help for relayer ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for relayer +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1595,26 +1595,26 @@ avalanche interchain relayer deploy [subcommand] [flags] **Flags:** ```bash ---allow-private-ips allow relayer to connec to private ips (default true) +--allow-private-ips allow relayer to connec to private ips (default true) --amount float automatically fund l1s fee payments with the given amount --bin-path string use the given relayer binary --blockchain-funding-key string key to be used to fund relayer account on all l1s --blockchains strings blockchains to relay as source and destination ---cchain relay C-Chain as source and destination +--cchain relay C-Chain as source and destination --cchain-amount float automatically fund cchain fee payments with the given amount --cchain-funding-key string key to be used to fund relayer account on cchain --cluster string operate on the given cluster ---devnet operate on a devnet network +--devnet operate on a devnet network --endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for deploy +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for deploy --key string key to be used by default both for rewards and to pay fees --l, --local operate on a local network +-l, --local operate on a local network --log-level string log level to use for relayer logs --t, --testnet fuji operate on testnet (alias to fuji) +-t, --testnet fuji operate on testnet (alias to fuji) --version string version to deploy (default "latest-prerelease") --config string config file (default is $HOME/.avalanche-cli/config.json) ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -1630,17 +1630,17 @@ avalanche interchain relayer logs [subcommand] [flags] **Flags:** ```bash ---endpoint string use the given endpoint for network operations ---first uint output first N log lines --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for logs ---last uint output last N log lines --l, --local operate on a local network ---raw raw logs output --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--endpoint string use the given endpoint for network operations +--first uint output first N log lines +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for logs +--last uint output last N log lines +-l, --local operate on a local network +--raw raw logs output +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1656,17 +1656,17 @@ avalanche interchain relayer start [subcommand] [flags] **Flags:** ```bash ---bin-path string use the given relayer binary ---cluster string operate on the given cluster ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for start --l, --local operate on a local network --t, --testnet fuji operate on testnet (alias to fuji) ---version string version to use (default "latest-prerelease") ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--bin-path string use the given relayer binary +--cluster string operate on the given cluster +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for start +-l, --local operate on a local network +-t, --testnet fuji operate on testnet (alias to fuji) +--version string version to use (default "latest-prerelease") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1682,15 +1682,15 @@ avalanche interchain relayer stop [subcommand] [flags] **Flags:** ```bash ---cluster string operate on the given cluster ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for stop --l, --local operate on a local network --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--cluster string operate on the given cluster +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for stop +-l, --local operate on a local network +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1710,10 +1710,10 @@ avalanche interchain tokenTransferrer [subcommand] [flags] **Flags:** ```bash --h, --help help for tokenTransferrer ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for tokenTransferrer +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1729,35 +1729,35 @@ avalanche interchain tokenTransferrer deploy [subcommand] [flags] **Flags:** ```bash ---c-chain-home set the Transferrer's Home Chain into C-Chain ---c-chain-remote set the Transferrer's Remote Chain into C-Chain ---cluster string operate on the given cluster ---deploy-erc20-home string deploy a Transferrer Home for the given Chain's ERC20 Token ---deploy-native-home deploy a Transferrer Home for the Chain's Native Token ---deploy-native-remote deploy a Transferrer Remote for the Chain's Native Token ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for deploy ---home-blockchain string set the Transferrer's Home Chain into the given CLI blockchain ---home-genesis-key use genesis allocated key to deploy Transferrer Home ---home-key string CLI stored key to use to deploy Transferrer Home ---home-private-key string private key to use to deploy Transferrer Home ---home-rpc string use the given RPC URL to connect to the home blockchain --l, --local operate on a local network ---remote-blockchain string set the Transferrer's Remote Chain into the given CLI blockchain ---remote-genesis-key use genesis allocated key to deploy Transferrer Remote ---remote-key string CLI stored key to use to deploy Transferrer Remote ---remote-private-key string private key to use to deploy Transferrer Remote ---remote-rpc string use the given RPC URL to connect to the remote blockchain ---remote-token-decimals uint8 use the given number of token decimals for the Transferrer Remote [defaults to token home's decimals (18 for a new wrapped native home token)] ---remove-minter-admin remove the native minter precompile admin found on remote blockchain genesis --t, --testnet fuji operate on testnet (alias to fuji) ---use-home string use the given Transferrer's Home Address ---version string tag/branch/commit of Avalanche Interchain Token Transfer (ICTT) to be used (defaults to main branch) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--c-chain-home set the Transferrer's Home Chain into C-Chain +--c-chain-remote set the Transferrer's Remote Chain into C-Chain +--cluster string operate on the given cluster +--deploy-erc20-home string deploy a Transferrer Home for the given Chain's ERC20 Token +--deploy-native-home deploy a Transferrer Home for the Chain's Native Token +--deploy-native-remote deploy a Transferrer Remote for the Chain's Native Token +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for deploy +--home-blockchain string set the Transferrer's Home Chain into the given CLI blockchain +--home-genesis-key use genesis allocated key to deploy Transferrer Home +--home-key string CLI stored key to use to deploy Transferrer Home +--home-private-key string private key to use to deploy Transferrer Home +--home-rpc string use the given RPC URL to connect to the home blockchain +-l, --local operate on a local network +--remote-blockchain string set the Transferrer's Remote Chain into the given CLI blockchain +--remote-genesis-key use genesis allocated key to deploy Transferrer Remote +--remote-key string CLI stored key to use to deploy Transferrer Remote +--remote-private-key string private key to use to deploy Transferrer Remote +--remote-rpc string use the given RPC URL to connect to the remote blockchain +--remote-token-decimals uint8 use the given number of token decimals for the Transferrer Remote [defaults to token home's decimals (18 for a new wrapped native home token)] +--remove-minter-admin remove the native minter precompile admin found on remote blockchain genesis +-t, --testnet fuji operate on testnet (alias to fuji) +--use-home string use the given Transferrer's Home Address +--version string tag/branch/commit of Avalanche Interchain Token Transfer (ICTT) to be used (defaults to main branch) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1802,10 +1802,10 @@ keys or for the ledger addresses associated to certain indices. **Flags:** ```bash --h, --help help for key ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for key +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1829,13 +1829,13 @@ avalanche key create [subcommand] [flags] **Flags:** ```bash ---file string import the key from an existing key file --f, --force overwrite an existing key with the same name --h, --help help for create ---skip-balances do not query public network balances for an imported key ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--file string import the key from an existing key file +-f, --force overwrite an existing key with the same name +-h, --help help for create +--skip-balances do not query public network balances for an imported key +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1854,11 +1854,11 @@ avalanche key delete [subcommand] [flags] **Flags:** ```bash --f, --force delete the key without confirmation --h, --help help for delete ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-f, --force delete the key without confirmation +-h, --help help for delete +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1878,11 +1878,11 @@ avalanche key export [subcommand] [flags] **Flags:** ```bash --h, --help help for export --o, --output string write the key to the provided file path ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for export +-o, --output string write the key to the provided file path +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1899,28 +1899,28 @@ avalanche key list [subcommand] [flags] **Flags:** ```bash --a, --all-networks list all network addresses ---blockchains strings blockchains to show information about (p=p-chain, x=x-chain, c=c-chain, and blockchain names) (default p,x,c) --c, --cchain list C-Chain addresses (default true) ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for list ---keys strings list addresses for the given keys --g, --ledger uints list ledger addresses for the given indices (default []) --l, --local operate on a local network --m, --mainnet operate on mainnet ---pchain list P-Chain addresses (default true) ---subnets strings subnets to show information about (p=p-chain, x=x-chain, c=c-chain, and blockchain names) (default p,x,c) --t, --testnet fuji operate on testnet (alias to fuji) ---tokens strings provide balance information for the given token contract addresses (Evm only) (default [Native]) ---use-gwei use gwei for EVM balances --n, --use-nano-avax use nano Avax for balances ---xchain list X-Chain addresses (default true) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-a, --all-networks list all network addresses +--blockchains strings blockchains to show information about (p=p-chain, x=x-chain, c=c-chain, and blockchain names) (default p,x,c) +-c, --cchain list C-Chain addresses (default true) +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for list +--keys strings list addresses for the given keys +-g, --ledger uints list ledger addresses for the given indices (default []) +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--pchain list P-Chain addresses (default true) +--subnets strings subnets to show information about (p=p-chain, x=x-chain, c=c-chain, and blockchain names) (default p,x,c) +-t, --testnet fuji operate on testnet (alias to fuji) +--tokens strings provide balance information for the given token contract addresses (Evm only) (default [Native]) +--use-gwei use gwei for EVM balances +-n, --use-nano-avax use nano Avax for balances +--xchain list X-Chain addresses (default true) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -1937,35 +1937,35 @@ avalanche key transfer [subcommand] [flags] ```bash -o, --amount float amount to send or receive (AVAX or TOKEN units) ---c-chain-receiver receive at C-Chain ---c-chain-sender send from C-Chain +--c-chain-receiver receive at C-Chain +--c-chain-sender send from C-Chain --cluster string operate on the given cluster -a, --destination-addr string destination address --destination-key string key associated to a destination address --destination-subnet string subnet where the funds will be sent (token transferrer experimental) --destination-transferrer-address string token transferrer address at the destination subnet (token transferrer experimental) ---devnet operate on a devnet network +--devnet operate on a devnet network --endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for transfer +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for transfer -k, --key string key associated to the sender or receiver address -i, --ledger uint32 ledger index associated to the sender or receiver address (default 32768) --l, --local operate on a local network --m, --mainnet operate on mainnet +-l, --local operate on a local network +-m, --mainnet operate on mainnet --origin-subnet string subnet where the funds belong (token transferrer experimental) --origin-transferrer-address string token transferrer address at the origin subnet (token transferrer experimental) ---p-chain-receiver receive at P-Chain ---p-chain-sender send from P-Chain +--p-chain-receiver receive at P-Chain +--p-chain-sender send from P-Chain --receiver-blockchain string receive at the given CLI blockchain --receiver-blockchain-id string receive at the given blockchain ID/Alias --sender-blockchain string send from the given CLI blockchain --sender-blockchain-id string send from the given blockchain ID/Alias --t, --testnet fuji operate on testnet (alias to fuji) ---x-chain-receiver receive at X-Chain ---x-chain-sender send from X-Chain +-t, --testnet fuji operate on testnet (alias to fuji) +--x-chain-receiver receive at X-Chain +--x-chain-sender send from X-Chain --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -2008,10 +2008,10 @@ default snapshot with network start. **Flags:** ```bash --h, --help help for network ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for network +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2029,11 +2029,11 @@ avalanche network clean [subcommand] [flags] **Flags:** ```bash ---hard Also clean downloaded avalanchego and plugin binaries --h, --help help for clean ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--hard Also clean downloaded avalanchego and plugin binaries +-h, --help help for clean +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2055,14 +2055,14 @@ avalanche network start [subcommand] [flags] ```bash --avalanchego-path string use this avalanchego binary path --avalanchego-version string use this version of avalanchego (ex: v1.17.12) (default "latest-prerelease") --h, --help help for start +-h, --help help for start --num-nodes uint32 number of nodes to be created on local network (default 2) --relayer-path string use this relayer binary path --relayer-version string use this relayer version (default "latest-prerelease") --snapshot-name string name of snapshot to use to start the network from (default "default-1654102509") --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -2079,10 +2079,10 @@ avalanche network status [subcommand] [flags] **Flags:** ```bash --h, --help help for status ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for status +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2104,12 +2104,12 @@ avalanche network stop [subcommand] [flags] **Flags:** ```bash ---dont-save do not save snapshot, just stop the network --h, --help help for stop ---snapshot-name string name of snapshot to use to save network state into (default "default-1654102509") ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--dont-save do not save snapshot, just stop the network +-h, --help help for stop +--snapshot-name string name of snapshot to use to save network state into (default "default-1654102509") +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2244,10 +2244,10 @@ will fail. You can check the bootstrap status by calling avalanche node status ` **Flags:** ```bash --h, --help help for node ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for node +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2267,11 +2267,11 @@ avalanche node addDashboard [subcommand] [flags] ```bash --add-grafana-dashboard string path to additional grafana dashboard json file --h, --help help for addDashboard +-h, --help help for addDashboard --subnet string subnet that the dasbhoard is intended for (if any) --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -2300,48 +2300,48 @@ avalanche node create [subcommand] [flags] **Flags:** ```bash ---add-grafana-dashboard string path to additional grafana dashboard json file ---alternative-key-pair-name string key pair name to use if default one generates conflicts ---authorize-access authorize CLI to create cloud resources ---auto-replace-keypair automatically replaces key pair to access node if previous key pair is not found ---avalanchego-version-from-subnet string install latest avalanchego version, that is compatible with the given subnet, on node/s ---aws create node/s in AWS cloud ---aws-profile string aws profile to use (default "default") ---aws-volume-iops int AWS iops (for gp3, io1, and io2 volume types only) (default 3000) ---aws-volume-size int AWS volume size in GB (default 1000) ---aws-volume-throughput int AWS throughput in MiB/s (for gp3 volume type only) (default 125) ---aws-volume-type string AWS volume type (default "gp3") ---bootstrap-ids stringArray nodeIDs of bootstrap nodes ---bootstrap-ips stringArray IP:port pairs of bootstrap nodes ---cluster string operate on the given cluster ---custom-avalanchego-version string install given avalanchego version on node/s ---devnet operate on a devnet network ---enable-monitoring set up Prometheus monitoring for created nodes. This option creates a separate monitoring cloud instance and incures additional cost ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet ---gcp create node/s in GCP cloud ---gcp-credentials string use given GCP credentials ---gcp-project string use given GCP project ---genesis string path to genesis file ---grafana-pkg string use grafana pkg instead of apt repo(by default), for example https://dl.grafana.com/oss/release/grafana_10.4.1_amd64.deb --h, --help help for create ---latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s ---latest-avalanchego-version install latest avalanchego release version on node/s --m, --mainnet operate on mainnet ---node-type string cloud instance type. Use 'default' to use recommended default instance type ---num-apis ints number of API nodes(nodes without stake) to create in the new Devnet ---num-validators ints number of nodes to create per region(s). Use comma to separate multiple numbers for each region in the same order as --region flag ---partial-sync primary network partial sync (default true) ---public-http-port allow public access to avalanchego HTTP port ---region strings create node(s) in given region(s). Use comma to separate multiple regions ---ssh-agent-identity string use given ssh identity(only for ssh agent). If not set, default will be used --t, --testnet fuji operate on testnet (alias to fuji) ---upgrade string path to upgrade file ---use-ssh-agent use ssh agent(ex: Yubikey) for ssh auth ---use-static-ip attach static Public IP on cloud servers (default true) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--add-grafana-dashboard string path to additional grafana dashboard json file +--alternative-key-pair-name string key pair name to use if default one generates conflicts +--authorize-access authorize CLI to create cloud resources +--auto-replace-keypair automatically replaces key pair to access node if previous key pair is not found +--avalanchego-version-from-subnet string install latest avalanchego version, that is compatible with the given subnet, on node/s +--aws create node/s in AWS cloud +--aws-profile string aws profile to use (default "default") +--aws-volume-iops int AWS iops (for gp3, io1, and io2 volume types only) (default 3000) +--aws-volume-size int AWS volume size in GB (default 1000) +--aws-volume-throughput int AWS throughput in MiB/s (for gp3 volume type only) (default 125) +--aws-volume-type string AWS volume type (default "gp3") +--bootstrap-ids stringArray nodeIDs of bootstrap nodes +--bootstrap-ips stringArray IP:port pairs of bootstrap nodes +--cluster string operate on the given cluster +--custom-avalanchego-version string install given avalanchego version on node/s +--devnet operate on a devnet network +--enable-monitoring set up Prometheus monitoring for created nodes. This option creates a separate monitoring cloud instance and incures additional cost +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--gcp create node/s in GCP cloud +--gcp-credentials string use given GCP credentials +--gcp-project string use given GCP project +--genesis string path to genesis file +--grafana-pkg string use grafana pkg instead of apt repo(by default), for example https://dl.grafana.com/oss/release/grafana_10.4.1_amd64.deb +-h, --help help for create +--latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s +--latest-avalanchego-version install latest avalanchego release version on node/s +-m, --mainnet operate on mainnet +--node-type string cloud instance type. Use 'default' to use recommended default instance type +--num-apis ints number of API nodes(nodes without stake) to create in the new Devnet +--num-validators ints number of nodes to create per region(s). Use comma to separate multiple numbers for each region in the same order as --region flag +--partial-sync primary network partial sync (default true) +--public-http-port allow public access to avalanchego HTTP port +--region strings create node(s) in given region(s). Use comma to separate multiple regions +--ssh-agent-identity string use given ssh identity(only for ssh agent). If not set, default will be used +-t, --testnet fuji operate on testnet (alias to fuji) +--upgrade string path to upgrade file +--use-ssh-agent use ssh agent(ex: Yubikey) for ssh auth +--use-static-ip attach static Public IP on cloud servers (default true) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2361,15 +2361,15 @@ avalanche node destroy [subcommand] [flags] **Flags:** ```bash ---all destroy all existing clusters created by Avalanche CLI ---authorize-access authorize CLI to release cloud resources --y, --authorize-all authorize all CLI requests ---authorize-remove authorize CLI to remove all local files related to cloud nodes ---aws-profile string aws profile to use (default "default") --h, --help help for destroy ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--all destroy all existing clusters created by Avalanche CLI +--authorize-access authorize CLI to release cloud resources +-y, --authorize-all authorize all CLI requests +--authorize-remove authorize CLI to remove all local files related to cloud nodes +--aws-profile string aws profile to use (default "default") +-h, --help help for destroy +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2398,10 +2398,10 @@ The node wiz command creates a devnet and deploys, sync and validate a subnet in **Flags:** ```bash --h, --help help for devnet ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for devnet +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2420,13 +2420,13 @@ avalanche node devnet deploy [subcommand] [flags] **Flags:** ```bash --h, --help help for deploy ---no-checks do not check for healthy status or rpc compatibility of nodes against subnet +-h, --help help for deploy +--no-checks do not check for healthy status or rpc compatibility of nodes against subnet --subnet-aliases strings additional subnet aliases to be used for RPC calls in addition to subnet blockchain name ---subnet-only only create a subnet +--subnet-only only create a subnet --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -2446,9 +2446,9 @@ avalanche node devnet wiz [subcommand] [flags] ```bash --add-grafana-dashboard string path to additional grafana dashboard json file --alternative-key-pair-name string key pair name to use if default one generates conflicts ---authorize-access authorize CLI to create cloud resources ---auto-replace-keypair automatically replaces key pair to access node if previous key pair is not found ---aws create node/s in AWS cloud +--authorize-access authorize CLI to create cloud resources +--auto-replace-keypair automatically replaces key pair to access node if previous key pair is not found +--aws create node/s in AWS cloud --aws-profile string aws profile to use (default "default") --aws-volume-iops int AWS iops (for gp3, io1, and io2 volume types only) (default 3000) --aws-volume-size int AWS volume size in GB (default 1000) @@ -2456,62 +2456,62 @@ avalanche node devnet wiz [subcommand] [flags] --aws-volume-type string AWS volume type (default "gp3") --chain-config string path to the chain configuration for subnet --custom-avalanchego-version string install given avalanchego version on node/s ---custom-subnet use a custom VM as the subnet virtual machine +--custom-subnet use a custom VM as the subnet virtual machine --custom-vm-branch string custom vm branch or commit --custom-vm-build-script string custom vm build-script --custom-vm-repo-url string custom vm repository url ---default-validator-params use default weight/start/duration params for subnet validator ---deploy-icm-messenger deploy Interchain Messenger (default true) ---deploy-icm-registry deploy Interchain Registry (default true) ---deploy-teleporter-messenger deploy Interchain Messenger (default true) ---deploy-teleporter-registry deploy Interchain Registry (default true) ---enable-monitoring set up Prometheus monitoring for created nodes. Please note that this option creates a separate monitoring instance and incures additional cost +--default-validator-params use default weight/start/duration params for subnet validator +--deploy-icm-messenger deploy Interchain Messenger (default true) +--deploy-icm-registry deploy Interchain Registry (default true) +--deploy-teleporter-messenger deploy Interchain Messenger (default true) +--deploy-teleporter-registry deploy Interchain Registry (default true) +--enable-monitoring set up Prometheus monitoring for created nodes. Please note that this option creates a separate monitoring instance and incures additional cost --evm-chain-id uint chain ID to use with Subnet-EVM ---evm-defaults use default production settings with Subnet-EVM ---evm-production-defaults use default production settings for your blockchain ---evm-subnet use Subnet-EVM as the subnet virtual machine ---evm-test-defaults use default test settings for your blockchain +--evm-defaults use default production settings with Subnet-EVM +--evm-production-defaults use default production settings for your blockchain +--evm-subnet use Subnet-EVM as the subnet virtual machine +--evm-test-defaults use default test settings for your blockchain --evm-token string token name to use with Subnet-EVM --evm-version string version of Subnet-EVM to use ---force-subnet-create overwrite the existing subnet configuration if one exists ---gcp create node/s in GCP cloud +--force-subnet-create overwrite the existing subnet configuration if one exists +--gcp create node/s in GCP cloud --gcp-credentials string use given GCP credentials --gcp-project string use given GCP project --grafana-pkg string use grafana pkg instead of apt repo(by default), for example https://dl.grafana.com/oss/release/grafana_10.4.1_amd64.deb --h, --help help for wiz ---icm generate an icm-ready vm +-h, --help help for wiz +--icm generate an icm-ready vm --icm-messenger-contract-address-path string path to an icm messenger contract address file --icm-messenger-deployer-address-path string path to an icm messenger deployer address file --icm-messenger-deployer-tx-path string path to an icm messenger deployer tx file --icm-registry-bytecode-path string path to an icm registry bytecode file --icm-version string icm version to deploy (default "latest") ---latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s ---latest-avalanchego-version install latest avalanchego release version on node/s ---latest-evm-version use latest Subnet-EVM released version ---latest-pre-released-evm-version use latest Subnet-EVM pre-released version +--latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s +--latest-avalanchego-version install latest avalanchego release version on node/s +--latest-evm-version use latest Subnet-EVM released version +--latest-pre-released-evm-version use latest Subnet-EVM pre-released version --node-config string path to avalanchego node configuration for subnet --node-type string cloud instance type. Use 'default' to use recommended default instance type ---num-apis ints number of API nodes(nodes without stake) to create in the new Devnet ---num-validators ints number of nodes to create per region(s). Use comma to separate multiple numbers for each region in the same order as --region flag ---public-http-port allow public access to avalanchego HTTP port +--num-apis ints number of API nodes(nodes without stake) to create in the new Devnet +--num-validators ints number of nodes to create per region(s). Use comma to separate multiple numbers for each region in the same order as --region flag +--public-http-port allow public access to avalanchego HTTP port --region strings create node/s in given region(s). Use comma to separate multiple regions ---relayer run AWM relayer when deploying the vm +--relayer run AWM relayer when deploying the vm --ssh-agent-identity string use given ssh identity(only for ssh agent). If not set, default will be used. --subnet-aliases strings additional subnet aliases to be used for RPC calls in addition to subnet blockchain name --subnet-config string path to the subnet configuration for subnet --subnet-genesis string file path of the subnet genesis ---teleporter generate an icm-ready vm +--teleporter generate an icm-ready vm --teleporter-messenger-contract-address-path string path to an icm messenger contract address file --teleporter-messenger-deployer-address-path string path to an icm messenger deployer address file --teleporter-messenger-deployer-tx-path string path to an icm messenger deployer tx file --teleporter-registry-bytecode-path string path to an icm registry bytecode file --teleporter-version string icm version to deploy (default "latest") ---use-ssh-agent use ssh agent for ssh ---use-static-ip attach static Public IP on cloud servers (default true) +--use-ssh-agent use ssh agent for ssh +--use-static-ip attach static Public IP on cloud servers (default true) --validators strings deploy subnet into given comma separated list of validators. defaults to all cluster nodes --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -2535,13 +2535,13 @@ avalanche node export [subcommand] [flags] **Flags:** ```bash ---file string specify the file to export the cluster configuration to ---force overwrite the file if it exists --h, --help help for export ---include-secrets include keys in the export ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--file string specify the file to export the cluster configuration to +--force overwrite the file if it exists +-h, --help help for export +--include-secrets include keys in the export +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2566,11 +2566,11 @@ avalanche node import [subcommand] [flags] **Flags:** ```bash ---file string specify the file to export the cluster configuration to --h, --help help for import ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--file string specify the file to export the cluster configuration to +-h, --help help for import +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2588,10 +2588,10 @@ avalanche node list [subcommand] [flags] **Flags:** ```bash --h, --help help for list ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for list +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2623,10 +2623,10 @@ separate cloud server created to host the load test. **Flags:** ```bash --h, --help help for loadtest ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for loadtest +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2648,11 +2648,11 @@ avalanche node loadtest start [subcommand] [flags] **Flags:** ```bash ---authorize-access authorize CLI to create cloud resources ---aws create loadtest node in AWS cloud +--authorize-access authorize CLI to create cloud resources +--aws create loadtest node in AWS cloud --aws-profile string aws profile to use (default "default") ---gcp create loadtest in GCP cloud --h, --help help for start +--gcp create loadtest in GCP cloud +-h, --help help for start --load-test-branch string load test branch or commit --load-test-build-cmd string command to build load test binary --load-test-cmd string command to run load test @@ -2660,10 +2660,10 @@ avalanche node loadtest start [subcommand] [flags] --node-type string cloud instance type for loadtest script --region string create load test node in a given region --ssh-agent-identity string use given ssh identity(only for ssh agent). If not set, default will be used ---use-ssh-agent use ssh agent(ex: Yubikey) for ssh auth +--use-ssh-agent use ssh agent(ex: Yubikey) for ssh auth --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -2682,11 +2682,11 @@ avalanche node loadtest stop [subcommand] [flags] **Flags:** ```bash --h, --help help for stop ---load-test strings stop specified load test node(s). Use comma to separate multiple load test instance names ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for stop +--load-test strings stop specified load test node(s). Use comma to separate multiple load test instance names +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2721,10 +2721,10 @@ status by running avalanche node status local **Flags:** ```bash --h, --help help for local ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for local +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2740,10 +2740,10 @@ avalanche node local destroy [subcommand] [flags] **Flags:** ```bash --h, --help help for destroy ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for destroy +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2768,31 +2768,31 @@ avalanche node local start [subcommand] [flags] **Flags:** ```bash ---avalanchego-path string use this avalanchego binary path ---bootstrap-id stringArray nodeIDs of bootstrap nodes ---bootstrap-ip stringArray IP:port pairs of bootstrap nodes ---cluster string operate on the given cluster ---custom-avalanchego-version string install given avalanchego version on node/s ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet ---genesis string path to genesis file --h, --help help for start ---latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s (default true) ---latest-avalanchego-version install latest avalanchego release version on node/s --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-config string path to common avalanchego config settings for all nodes ---num-nodes uint32 number of nodes to start (default 1) ---partial-sync primary network partial sync (default true) ---staking-cert-key-path string path to provided staking cert key for node ---staking-signer-key-path string path to provided staking signer key for node ---staking-tls-key-path string path to provided staking tls key for node --t, --testnet fuji operate on testnet (alias to fuji) ---upgrade string path to upgrade file ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--avalanchego-path string use this avalanchego binary path +--bootstrap-id stringArray nodeIDs of bootstrap nodes +--bootstrap-ip stringArray IP:port pairs of bootstrap nodes +--cluster string operate on the given cluster +--custom-avalanchego-version string install given avalanchego version on node/s +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +--genesis string path to genesis file +-h, --help help for start +--latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s (default true) +--latest-avalanchego-version install latest avalanchego release version on node/s +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-config string path to common avalanchego config settings for all nodes +--num-nodes uint32 number of nodes to start (default 1) +--partial-sync primary network partial sync (default true) +--staking-cert-key-path string path to provided staking cert key for node +--staking-signer-key-path string path to provided staking signer key for node +--staking-tls-key-path string path to provided staking tls key for node +-t, --testnet fuji operate on testnet (alias to fuji) +--upgrade string path to upgrade file +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2808,12 +2808,12 @@ avalanche node local status [subcommand] [flags] **Flags:** ```bash ---blockchain string specify the blockchain the node is syncing with --h, --help help for status ---subnet string specify the blockchain the node is syncing with ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--blockchain string specify the blockchain the node is syncing with +-h, --help help for status +--subnet string specify the blockchain the node is syncing with +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2829,10 +2829,10 @@ avalanche node local stop [subcommand] [flags] **Flags:** ```bash --h, --help help for stop ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for stop +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2848,14 +2848,14 @@ avalanche node local track [subcommand] [flags] **Flags:** ```bash ---avalanchego-path string use this avalanchego binary path ---custom-avalanchego-version string install given avalanchego version on node/s --h, --help help for track ---latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s (default true) ---latest-avalanchego-version install latest avalanchego release version on node/s ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--avalanchego-path string use this avalanchego binary path +--custom-avalanchego-version string install given avalanchego version on node/s +-h, --help help for track +--latest-avalanchego-pre-release-version install latest avalanchego pre-release version on node/s (default true) +--latest-avalanchego-version install latest avalanchego release version on node/s +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2874,11 +2874,11 @@ avalanche node refresh-ips [subcommand] [flags] **Flags:** ```bash ---aws-profile string aws profile to use (default "default") --h, --help help for refresh-ips ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--aws-profile string aws profile to use (default "default") +-h, --help help for refresh-ips +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2896,13 +2896,13 @@ avalanche node resize [subcommand] [flags] **Flags:** ```bash ---aws-profile string aws profile to use (default "default") ---disk-size string Disk size to resize in Gb (e.g. 1000Gb) --h, --help help for resize ---node-type string Node type to resize (e.g. t3.2xlarge) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--aws-profile string aws profile to use (default "default") +--disk-size string Disk size to resize in Gb (e.g. 1000Gb) +-h, --help help for resize +--node-type string Node type to resize (e.g. t3.2xlarge) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2927,14 +2927,14 @@ avalanche node scp [subcommand] [flags] **Flags:** ```bash ---compress use compression for ssh --h, --help help for scp ---recursive copy directories recursively ---with-loadtest include loadtest node for scp cluster operations ---with-monitor include monitoring node for scp cluster operations ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--compress use compression for ssh +-h, --help help for scp +--recursive copy directories recursively +--with-loadtest include loadtest node for scp cluster operations +--with-monitor include monitoring node for scp cluster operations +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2955,13 +2955,13 @@ avalanche node ssh [subcommand] [flags] **Flags:** ```bash --h, --help help for ssh ---parallel run ssh command on all nodes in parallel ---with-loadtest include loadtest node for ssh cluster operations ---with-monitor include monitoring node for ssh cluster operations ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for ssh +--parallel run ssh command on all nodes in parallel +--with-loadtest include loadtest node for ssh cluster operations +--with-monitor include monitoring node for ssh cluster operations +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -2982,12 +2982,12 @@ avalanche node status [subcommand] [flags] **Flags:** ```bash ---blockchain string specify the blockchain the node is syncing with --h, --help help for status ---subnet string specify the blockchain the node is syncing with ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--blockchain string specify the blockchain the node is syncing with +-h, --help help for status +--subnet string specify the blockchain the node is syncing with +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3006,13 +3006,13 @@ avalanche node sync [subcommand] [flags] **Flags:** ```bash --h, --help help for sync ---no-checks do not check for bootstrapped/healthy status or rpc compatibility of nodes against subnet +-h, --help help for sync +--no-checks do not check for bootstrapped/healthy status or rpc compatibility of nodes against subnet --subnet-aliases strings subnet alias to be used for RPC calls. defaults to subnet blockchain ID --validators strings sync subnet into given comma separated list of validators. defaults to all cluster nodes --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -3040,10 +3040,10 @@ You can check the updated subnet bootstrap status by calling avalanche node stat **Flags:** ```bash --h, --help help for update ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for update +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3062,10 +3062,10 @@ avalanche node update subnet [subcommand] [flags] **Flags:** ```bash --h, --help help for subnet ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for subnet +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3086,10 +3086,10 @@ avalanche node upgrade [subcommand] [flags] **Flags:** ```bash --h, --help help for upgrade ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for upgrade +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3126,10 +3126,10 @@ You can check the subnet sync status by calling avalanche node status `clusterNa **Flags:** ```bash --h, --help help for validate ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for validate +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3148,17 +3148,17 @@ avalanche node validate primary [subcommand] [flags] **Flags:** ```bash --e, --ewoq use ewoq key [fuji/devnet only] --h, --help help for primary +-e, --ewoq use ewoq key [fuji/devnet only] +-h, --help help for primary -k, --key string select the key to use [fuji only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) --ledger-addrs strings use the given ledger addresses --stake-amount uint how many AVAX to stake in the validator --staking-period duration how long validator validates for after start time --start-time string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -3182,21 +3182,21 @@ avalanche node validate subnet [subcommand] [flags] **Flags:** ```bash ---default-validator-params use default weight/start/duration params for subnet validator --e, --ewoq use ewoq key [fuji/devnet only] --h, --help help for subnet --k, --key string select the key to use [fuji/devnet only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) ---ledger-addrs strings use the given ledger addresses ---no-checks do not check for bootstrapped status or healthy status ---no-validation-checks do not check if subnet is already synced or validated (default true) ---stake-amount uint how many AVAX to stake in the validator ---staking-period duration how long validator validates for after start time ---start-time string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format ---validators strings validate subnet for the given comma separated list of validators. defaults to all cluster nodes ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--default-validator-params use default weight/start/duration params for subnet validator +-e, --ewoq use ewoq key [fuji/devnet only] +-h, --help help for subnet +-k, --key string select the key to use [fuji/devnet only] +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji/devnet) +--ledger-addrs strings use the given ledger addresses +--no-checks do not check for bootstrapped status or healthy status +--no-validation-checks do not check if subnet is already synced or validated (default true) +--stake-amount uint how many AVAX to stake in the validator +--staking-period duration how long validator validates for after start time +--start-time string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format +--validators strings validate subnet for the given comma separated list of validators. defaults to all cluster nodes +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3216,13 +3216,13 @@ avalanche node whitelist [subcommand] [flags] **Flags:** ```bash --y, --current-ip whitelist current host ip --h, --help help for whitelist ---ip string ip address to whitelist ---ssh string ssh public key to whitelist ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-y, --current-ip whitelist current host ip +-h, --help help for whitelist +--ip string ip address to whitelist +--ssh string ssh public key to whitelist +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3245,10 +3245,10 @@ in the Primary Network **Flags:** ```bash --h, --help help for primary ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for primary +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3267,24 +3267,24 @@ avalanche primary addValidator [subcommand] [flags] ```bash --cluster string operate on the given cluster --delegation-fee uint32 set the delegation fee (20 000 is equivalent to 2%) ---devnet operate on a devnet network +--devnet operate on a devnet network --endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for addValidator +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for addValidator -k, --key string select the key to use [fuji only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) --ledger-addrs strings use the given ledger addresses --m, --mainnet operate on mainnet +-m, --mainnet operate on mainnet --nodeID string set the NodeID of the validator to add --proof-of-possession string set the BLS proof of possession of the validator to add --public-key string set the BLS public key of the validator to add --staking-period duration how long this validator will be staking --start-time string UTC start time when this validator starts validating, in 'YYYY-MM-DD HH:MM:SS' format --t, --testnet fuji operate on testnet (alias to fuji) +-t, --testnet fuji operate on testnet (alias to fuji) --weight uint set the staking weight of the validator to add --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -3300,12 +3300,12 @@ avalanche primary describe [subcommand] [flags] **Flags:** ```bash ---cluster string operate on the given cluster --h, --help help for describe --l, --local operate on a local network ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--cluster string operate on the given cluster +-h, --help help for describe +-l, --local operate on a local network +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3327,10 +3327,10 @@ avalanche teleporter [subcommand] [flags] **Flags:** ```bash --h, --help help for teleporter ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for teleporter +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3348,31 +3348,31 @@ avalanche teleporter deploy [subcommand] [flags] ```bash --blockchain string deploy ICM into the given CLI blockchain --blockchain-id string deploy ICM into the given blockchain ID/Alias ---c-chain deploy ICM into C-Chain +--c-chain deploy ICM into C-Chain --cchain-key string key to be used to pay fees to deploy ICM to C-Chain --cluster string operate on the given cluster ---deploy-messenger deploy ICM Messenger (default true) ---deploy-registry deploy ICM Registry (default true) ---devnet operate on a devnet network +--deploy-messenger deploy ICM Messenger (default true) +--deploy-registry deploy ICM Registry (default true) +--devnet operate on a devnet network --endpoint string use the given endpoint for network operations ---force-registry-deploy deploy ICM Registry even if Messenger has already been deployed --f, --fuji testnet operate on fuji (alias to testnet ---genesis-key use genesis allocated key to fund ICM deploy --h, --help help for deploy ---include-cchain deploy ICM also to C-Chain +--force-registry-deploy deploy ICM Registry even if Messenger has already been deployed +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key to fund ICM deploy +-h, --help help for deploy +--include-cchain deploy ICM also to C-Chain --key string CLI stored key to use to fund ICM deploy --l, --local operate on a local network +-l, --local operate on a local network --messenger-contract-address-path string path to a messenger contract address file --messenger-deployer-address-path string path to a messenger deployer address file --messenger-deployer-tx-path string path to a messenger deployer tx file --private-key string private key to use to fund ICM deploy --registry-bytecode-path string path to a registry bytecode file --rpc-url string use the given RPC URL to connect to the subnet --t, --testnet fuji operate on testnet (alias to fuji) +-t, --testnet fuji operate on testnet (alias to fuji) --version string version to deploy (default "latest") --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -3391,20 +3391,20 @@ avalanche teleporter sendMsg [subcommand] [flags] --cluster string operate on the given cluster --dest-rpc string use the given destination blockchain rpc endpoint --destination-address string deliver the message to the given contract destination address ---devnet operate on a devnet network +--devnet operate on a devnet network --endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet ---genesis-key use genesis allocated key as message originator and to pay source blockchain fees --h, --help help for sendMsg ---hex-encoded given message is hex encoded +-f, --fuji testnet operate on fuji (alias to testnet +--genesis-key use genesis allocated key as message originator and to pay source blockchain fees +-h, --help help for sendMsg +--hex-encoded given message is hex encoded --key string CLI stored key to use as message originator and to pay source blockchain fees --l, --local operate on a local network +-l, --local operate on a local network --private-key string private key to use as message originator and to pay source blockchain fees --source-rpc string use the given source blockchain rpc endpoint --t, --testnet fuji operate on testnet (alias to fuji) +-t, --testnet fuji operate on testnet (alias to fuji) --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -3425,10 +3425,10 @@ avalanche transaction [subcommand] [flags] **Flags:** ```bash --h, --help help for transaction ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for transaction +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3444,11 +3444,11 @@ avalanche transaction commit [subcommand] [flags] **Flags:** ```bash --h, --help help for commit +-h, --help help for commit --input-tx-filepath string Path to the transaction signed by all signatories --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -3464,14 +3464,14 @@ avalanche transaction sign [subcommand] [flags] **Flags:** ```bash --h, --help help for sign +-h, --help help for sign --input-tx-filepath string Path to the transaction file for signing -k, --key string select the key to use [fuji only] --g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) +-g, --ledger use ledger instead of key (always true on mainnet, defaults to false on fuji) --ledger-addrs strings use the given ledger addresses --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--skip-update-check skip check for new versions ``` @@ -3487,12 +3487,12 @@ avalanche update [subcommand] [flags] **Flags:** ```bash --c, --confirm Assume yes for installation --h, --help help for update --v, --version version for update ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-c, --confirm Assume yes for installation +-h, --help help for update +-v, --version version for update +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3519,10 +3519,10 @@ P-Chain continuous fee **Flags:** ```bash --h, --help help for validator ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +-h, --help help for validator +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3539,20 +3539,20 @@ avalanche validator getBalance [subcommand] [flags] **Flags:** ```bash ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for getBalance ---l1 string name of L1 --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-id string node ID of the validator --t, --testnet fuji operate on testnet (alias to fuji) ---validation-id string validation ID of the validator ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for getBalance +--l1 string name of L1 +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-id string node ID of the validator +-t, --testnet fuji operate on testnet (alias to fuji) +--validation-id string validation ID of the validator +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3568,22 +3568,22 @@ avalanche validator increaseBalance [subcommand] [flags] **Flags:** ```bash ---balance float amount of AVAX to increase validator's balance by ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for increaseBalance --k, --key string select the key to use [fuji/devnet deploy only] ---l1 string name of L1 (to increase balance of bootstrap validators only) --l, --local operate on a local network --m, --mainnet operate on mainnet ---node-id string node ID of the validator --t, --testnet fuji operate on testnet (alias to fuji) ---validation-id string validationIDStr of the validator ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--balance float amount of AVAX to increase validator's balance by +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for increaseBalance +-k, --key string select the key to use [fuji/devnet deploy only] +--l1 string name of L1 (to increase balance of bootstrap validators only) +-l, --local operate on a local network +-m, --mainnet operate on mainnet +--node-id string node ID of the validator +-t, --testnet fuji operate on testnet (alias to fuji) +--validation-id string validationIDStr of the validator +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` @@ -3599,16 +3599,16 @@ avalanche validator list [subcommand] [flags] **Flags:** ```bash ---cluster string operate on the given cluster ---devnet operate on a devnet network ---endpoint string use the given endpoint for network operations --f, --fuji testnet operate on fuji (alias to testnet --h, --help help for list --l, --local operate on a local network --m, --mainnet operate on mainnet --t, --testnet fuji operate on testnet (alias to fuji) ---config string config file (default is $HOME/.avalanche-cli/config.json) ---log-level string log level for the application (default "ERROR") ---skip-update-check skip check for new versions +--cluster string operate on the given cluster +--devnet operate on a devnet network +--endpoint string use the given endpoint for network operations +-f, --fuji testnet operate on fuji (alias to testnet +-h, --help help for list +-l, --local operate on a local network +-m, --mainnet operate on mainnet +-t, --testnet fuji operate on testnet (alias to fuji) +--config string config file (default is $HOME/.avalanche-cli/config.json) +--log-level string log level for the application (default "ERROR") +--skip-update-check skip check for new versions ``` From 9914afc72f5845c72915a5f7d3968d2ba45db0da Mon Sep 17 00:00:00 2001 From: github-actions Date: Wed, 15 Jan 2025 18:12:54 +0000 Subject: [PATCH 15/15] chore: Update MD file [skip ci] --- cmd/commands.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/cmd/commands.md b/cmd/commands.md index 5b689338b..1d36de039 100644 --- a/cmd/commands.md +++ b/cmd/commands.md @@ -128,7 +128,7 @@ avalanche blockchain addValidator [subcommand] [flags] --aggregator-extra-endpoints strings endpoints for extra nodes that are needed in signature aggregation --aggregator-log-level string log level to use with signature aggregator (default "Debug") --aggregator-log-to-stdout use stdout for signature aggregator logs ---balance uint set the AVAX balance of the validator that will be used for continuous fee on P-Chain +--balance float set the AVAX balance of the validator that will be used for continuous fee on P-Chain --blockchain-genesis-key use genesis allocated key to pay fees for completing the validator's registration (blockchain gas token) --blockchain-key string CLI stored key to use to pay fees for completing the validator's registration (blockchain gas token) --blockchain-private-key string private key to use to pay fees for completing the validator's registration (blockchain gas token) @@ -230,9 +230,10 @@ avalanche blockchain changeWeight [subcommand] [flags] --ledger-addrs strings use the given ledger addresses -l, --local operate on a local network -m, --mainnet operate on mainnet +--node-endpoint string gather node id/bls from publicly available avalanchego apis on the given endpoint --node-id string node-id of the validator -t, --testnet fuji operate on testnet (alias to fuji) ---weight uint set the new staking weight of the validator (default 20) +--weight uint set the new staking weight of the validator --config string config file (default is $HOME/.avalanche-cli/config.json) --log-level string log level for the application (default "ERROR") --skip-update-check skip check for new versions @@ -1191,6 +1192,7 @@ avalanche contract deploy erc20 [subcommand] [flags] -h, --help help for erc20 --key string CLI stored key to use as contract deployer -l, --local operate on a local network +-m, --mainnet operate on mainnet --private-key string private key to use as contract deployer --rpc string deploy the contract into the given rpc endpoint --supply uint set the token supply @@ -1316,6 +1318,7 @@ avalanche icm deploy [subcommand] [flags] --include-cchain deploy ICM also to C-Chain --key string CLI stored key to use to fund ICM deploy -l, --local operate on a local network +-m, --mainnet operate on mainnet --messenger-contract-address-path string path to a messenger contract address file --messenger-deployer-address-path string path to a messenger deployer address file --messenger-deployer-tx-path string path to a messenger deployer tx file @@ -1353,6 +1356,7 @@ avalanche icm sendMsg [subcommand] [flags] --hex-encoded given message is hex encoded --key string CLI stored key to use as message originator and to pay source blockchain fees -l, --local operate on a local network +-m, --mainnet operate on mainnet --private-key string private key to use as message originator and to pay source blockchain fees --source-rpc string use the given source blockchain rpc endpoint -t, --testnet fuji operate on testnet (alias to fuji) @@ -1413,6 +1417,7 @@ avalanche ictt deploy [subcommand] [flags] --home-private-key string private key to use to deploy Transferrer Home --home-rpc string use the given RPC URL to connect to the home blockchain -l, --local operate on a local network +-m, --mainnet operate on mainnet --remote-blockchain string set the Transferrer's Remote Chain into the given CLI blockchain --remote-genesis-key use genesis allocated key to deploy Transferrer Remote --remote-key string CLI stored key to use to deploy Transferrer Remote @@ -1510,6 +1515,7 @@ avalanche interchain messenger deploy [subcommand] [flags] --include-cchain deploy ICM also to C-Chain --key string CLI stored key to use to fund ICM deploy -l, --local operate on a local network +-m, --mainnet operate on mainnet --messenger-contract-address-path string path to a messenger contract address file --messenger-deployer-address-path string path to a messenger deployer address file --messenger-deployer-tx-path string path to a messenger deployer tx file @@ -1547,6 +1553,7 @@ avalanche interchain messenger sendMsg [subcommand] [flags] --hex-encoded given message is hex encoded --key string CLI stored key to use as message originator and to pay source blockchain fees -l, --local operate on a local network +-m, --mainnet operate on mainnet --private-key string private key to use as message originator and to pay source blockchain fees --source-rpc string use the given source blockchain rpc endpoint -t, --testnet fuji operate on testnet (alias to fuji) @@ -1745,6 +1752,7 @@ avalanche interchain tokenTransferrer deploy [subcommand] [flags] --home-private-key string private key to use to deploy Transferrer Home --home-rpc string use the given RPC URL to connect to the home blockchain -l, --local operate on a local network +-m, --mainnet operate on mainnet --remote-blockchain string set the Transferrer's Remote Chain into the given CLI blockchain --remote-genesis-key use genesis allocated key to deploy Transferrer Remote --remote-key string CLI stored key to use to deploy Transferrer Remote @@ -3362,6 +3370,7 @@ avalanche teleporter deploy [subcommand] [flags] --include-cchain deploy ICM also to C-Chain --key string CLI stored key to use to fund ICM deploy -l, --local operate on a local network +-m, --mainnet operate on mainnet --messenger-contract-address-path string path to a messenger contract address file --messenger-deployer-address-path string path to a messenger deployer address file --messenger-deployer-tx-path string path to a messenger deployer tx file @@ -3399,6 +3408,7 @@ avalanche teleporter sendMsg [subcommand] [flags] --hex-encoded given message is hex encoded --key string CLI stored key to use as message originator and to pay source blockchain fees -l, --local operate on a local network +-m, --mainnet operate on mainnet --private-key string private key to use as message originator and to pay source blockchain fees --source-rpc string use the given source blockchain rpc endpoint -t, --testnet fuji operate on testnet (alias to fuji)