> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dzap.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Interactive Shell

> Use slash commands and natural language in the dzap interactive shell.

The interactive shell is the default mode for `dzap`, `dzapai`, and `DzapAI`.

## Input types

| Input      | Behavior                    |
| ---------- | --------------------------- |
| Plain text | Sent to ZapBot              |
| `/command` | Handled directly by the CLI |

Example:

```text theme={null}
>> what's the price of ETH?
>> /tools
>> /set wallet 0xabc...
```

## Common slash commands

<AccordionGroup>
  <Accordion title="/help">
    Show available commands.
  </Accordion>

  <Accordion title="/tools">
    List current tool catalog names.
  </Accordion>

  <Accordion title="/tool <Name> [JSON]">
    Execute a tool directly with optional JSON input.
  </Accordion>

  <Accordion title="/debug <on|off|show>">
    Toggle or inspect verbose tool payload output.
  </Accordion>

  <Accordion title="/confirmmode <on|off|show>">
    Enable or disable interactive transaction confirmations.
  </Accordion>

  <Accordion title="/profile">
    Show current profile values.
  </Accordion>

  <Accordion title="/set wallet|chain|blockchain|privatekey <value>">
    Update active wallet profile fields.
  </Accordion>

  <Accordion title="/session show|new|history">
    Inspect or rotate chat sessions.
  </Accordion>

  <Accordion title="/save, /init, /clear, /exit">
    Persist config, reinitialize, clear screen, or exit.
  </Accordion>
</AccordionGroup>

## Confirmation behavior

For interactive execution flows, the CLI can present a confirmation card before completing the action.

Use `/confirmmode on` to force prompts, or `/confirmmode off` to disable them.

## Typical workflow

```text theme={null}
>> show my USDC balance on Ethereum
>> swap 10 USDC to WETH on Arbitrum
>> yes
```

## Tips

* Use `/tool PriceTool {"tokenAddresses":"0xA0b8...","chainId":1}` for direct tool debugging
* Use `/debug on` when inspecting structured step payloads
* Use `/session new` before switching users/accounts
