# Zwallet CLI

**ZwalletCLI** is a command-line interface (CLI) that demonstrates the wallet functionalities of the **Züs Network**. Built using the **Züs GoSDK**, it provides a convenient way to interact with the blockchain, the Bridge protocol, and Züs smart contracts.

### Core Features

#### Creating and Managing Your Wallet

* Create a new wallet or recover one from existing mnemonics.
* View wallet information and check balances.

#### Bridge Protocol (ERC-20 DEX)

* Exchange **ZCN tokens** with ERC-20 tokens using the Bridge protocol.
* Mint and burn tokens on both native ZCN smart contracts and Züs ERC-20 smart contracts.

#### Managing Miners and Sharders

* List available miners and sharders in the network.
* Configure or shut down your nodes.
* Node ownership is required to perform administrative actions.

#### Managing Authorizers

* Register a new authorizer.
* List all registered authorizers.
* Update authorizer configurations.

#### Staking

* Stake tokens on miners or sharders.
* Earn rewards for supporting network security and consensus.

***

### Architecture

ZwalletCLI operates as a thin client that interacts with the Züs Network through configuration and wallet files stored locally.

<figure><img src="/files/MZukwD9rirkZOTiXqxtj" alt=""><figcaption></figcaption></figure>

1. **Local Context**
   * Wallet and configuration files are stored under `~/.zcn/`.
   * Private keys remain local; transactions are signed client-side.
2. **Network Discovery**
   * Uses the **block worker (0dns)** to discover miners and sharders.
   * Optional: a custom `network.yaml` can override default discovery.
3. **Transaction Flow**
   * Transactions are signed locally and submitted to **miners**.
   * **Miners** validate and propose blocks.
   * **Sharders** confirm and finalize transactions on chain.
4. **Smart Contracts in Use**
   * **Wallet & Token SCs**: Manage balances, transfers, and faucet operations.
   * **Miner SC**: Handles staking, node lifecycle, and rewards.
   * **Storage SC**: Manages blobbers and allocation parameters.
   * **Bridge SC**: Enables cross-chain operations with Ethereum/ERC-20 tokens.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.zus.network/zus-docs/clis/zwalletcli.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
