---
title: CLI Overview
description: Get oriented with thru, how the command tree is organized, and
  where to jump next
source_url:
  html: https://thru.org/docs/cli-reference/overview/
  md: https://thru.org/docs/cli-reference/overview.md
---

# CLI Overview

The `thru` command is the main command-line interface for interacting with the Thru network.

Use this page to decide which command family fits your task before you load a more detailed reference page.

Use this page to decide which command family fits your task before you load a more detailed reference page.

## Prerequisites

- [CLI setup](https://thru.org/docs/program-development/setting-up-thru-devkit.md)

## Start Here

Read [Global Flags and configuration](https://thru.org/docs/cli-reference/global-flags-and-config.md) first if you need to understand:

- `--json`, `--quiet`, `--url`, and `--network`
- where config lives on disk
- how named networks override the default RPC target
- when a command accepts key names versus raw `ta...` addresses

## Command Families

- [RPC](https://thru.org/docs/cli-reference/rpc-commands.md): Query node state, account data, balances, slot metrics, and use the top-level native transfer command.
- [Program](https://thru.org/docs/cli-reference/program-commands.md): Create, upgrade, pause, finalize, destroy, and derive managed program accounts.
- [Uploader](https://thru.org/docs/cli-reference/uploader-commands.md): Upload raw program binaries and inspect or clean up uploader accounts.
- [ABI](https://thru.org/docs/cli-reference/abi-commands.md): Publish or inspect on-chain ABI accounts, or use ABI tooling such as codegen, reflection, flattening, and bundling.
- [Keys](https://thru.org/docs/cli-reference/keys-commands.md): List, add, generate, inspect, and remove keys stored in CLI config.
- [Account](https://thru.org/docs/cli-reference/account-commands.md): Create accounts, inspect them, list transactions, and work with compression flows.
- [Transaction](https://thru.org/docs/cli-reference/transaction-commands.md): Sign, execute, inspect, and sort transaction inputs, or generate state proofs.
- [Utility](https://thru.org/docs/cli-reference/utility-commands.md): Convert public keys and signatures between hex and Thru address formats.
- [Token](https://thru.org/docs/cli-reference/token-commands.md): Create mints, manage token accounts, and transfer, mint, burn, freeze, or thaw tokens.
- [Faucet](https://thru.org/docs/cli-reference/faucet-commands.md): Deposit to or withdraw from the faucet program.
- [Registrar](https://thru.org/docs/cli-reference/registrar-commands.md): Initialize the \`.thru\` registry and manage lease lifecycle commands.
- [Name Service](https://thru.org/docs/cli-reference/name-service-commands.md): Initialize root registrars, manage records, register subdomains, and derive addresses.
- [Wrapped Thru](https://thru.org/docs/cli-reference/wthru-commands.md): Initialize wrapped Thru infrastructure, then deposit and withdraw wrapped balances.
- [Dev](https://thru.org/docs/cli-reference/dev-commands.md): Install toolchains and SDKs, inspect install paths, and scaffold projects.
- [Network](https://thru.org/docs/cli-reference/network-commands.md): Configure named RPC endpoints and choose the default network for future commands.
- [Debug](https://thru.org/docs/cli-reference/debug-commands.md): Re-execute transactions and resolve DWARF-backed debug traces.

## Choose The Right Family

| If your task is… | Open this page |
| - | - |
| Query a node or inspect account state | [RPC](https://thru.org/docs/cli-reference/rpc-commands.md) |
| Deploy or manage a program | [Program](https://thru.org/docs/cli-reference/program-commands.md) |
| Work with raw upload buffers | [Uploader](https://thru.org/docs/cli-reference/uploader-commands.md) |
| Publish or inspect ABIs, or work with ABI YAML tooling | [ABI](https://thru.org/docs/cli-reference/abi-commands.md) |
| Manage local signing keys | [Keys](https://thru.org/docs/cli-reference/keys-commands.md) |
| Create or compress accounts | [Account](https://thru.org/docs/cli-reference/account-commands.md) |
| Build or submit a transaction directly | [Transaction](https://thru.org/docs/cli-reference/transaction-commands.md) |
| Manage token mints and token accounts | [Token](https://thru.org/docs/cli-reference/token-commands.md) |
| Work with name registration or DNS-style records | [Registrar](https://thru.org/docs/cli-reference/registrar-commands.md) or [Name Service](https://thru.org/docs/cli-reference/name-service-commands.md) |
| Install the `dev` toolchain or scaffold a project | [`dev`](https://thru.org/docs/cli-reference/dev-commands.md) |
| Re-execute or symbolicate a failing transaction | [Debug](https://thru.org/docs/cli-reference/debug-commands.md) |

## Typical Workflow For Agents

1. Configure an RPC endpoint with [network commands](https://thru.org/docs/cli-reference/network-commands.md).
2. Check [Global Flags and configuration](https://thru.org/docs/cli-reference/global-flags-and-config.md) if you need to know how config, key lookup, or `--json` output works.
3. Jump to the relevant command family page instead of scanning the whole CLI surface.
4. Only load the detailed command section you need for the task at hand.

> **Tip:**
>
> Most commands share `--json`, `--quiet`, `--network`, and `--url`, but command-specific flags and accepted identifier formats vary by family.
