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

# CLI

> Drive Notte browser sessions, functions, and vaults from your terminal

> [!TIP]
>
> Read [the Notte skill](https://notte.cc/skill.md) and follow its setup instructions when setting up Notte or building browser automation. This is the shared source for CLI setup, authentication, and the browser-to-code workflow.

The [Notte CLI](https://github.com/nottelabs/notte-cli) gives you every Notte resource from the command line. Pair it with shell scripts, CI pipelines, or coding agents.

## Installation

Install with one of:

```bash Install script theme={null}
# macOS and Linux
curl -fsSL https://notte.cc/install-cli.sh | sh
```

```bash Homebrew theme={null}
brew tap nottelabs/notte-cli https://github.com/nottelabs/notte-cli.git
brew install notte
```

```bash Go theme={null}
go install github.com/nottelabs/notte-cli/cmd/notte@latest
```

Verify the installation:

```bash theme={null}
notte version
```

Upgrade to the latest release with `notte upgrade`. It uses Homebrew when notte was installed with it, and otherwise re-runs the install script.

## Authentication

The CLI reads your API key from, in order: the `NOTTE_API_KEY` environment variable, the system keyring (set by `notte auth login`), then `~/.notte/cli/config.json`. See [Authentication](https://docs.notte.cc/api-reference/authentication.md) to get a key.

```bash theme={null}
export NOTTE_API_KEY=your_api_key_here
# or, for local development
notte auth login
```

## Commands

> [card] [Auth](https://docs.notte.cc/cli-reference/auth.md)
>
> Manage authentication

> [card] [Files](https://docs.notte.cc/cli-reference/files.md)
>
> Manage stored files

> [card] [Functions](https://docs.notte.cc/cli-reference/functions.md)
>
> Manage functions

> [card] [Page](https://docs.notte.cc/cli-reference/page.md)
>
> Execute page actions (syntactic sugar for sessions execute)

> [card] [Payment](https://docs.notte.cc/cli-reference/payment.md)
>
> Request a temporary card for a browser session

> [card] [Personas](https://docs.notte.cc/cli-reference/personas.md)
>
> Manage personas

> [card] [Profiles](https://docs.notte.cc/cli-reference/profiles.md)
>
> Manage browser profiles

> [card] [Sessions](https://docs.notte.cc/cli-reference/sessions.md)
>
> Manage browser sessions

> [card] [Skill](https://docs.notte.cc/cli-reference/skill.md)
>
> Manage Notte skills for AI coding assistants

> [card] [Tunnel](https://docs.notte.cc/cli-reference/tunnel.md)
>
> Route sessions through this machine's internet connection

> [card] [Usage](https://docs.notte.cc/cli-reference/usage.md)
>
> Show API usage statistics

> [card] [Vaults](https://docs.notte.cc/cli-reference/vaults.md)
>
> Manage vaults

> [card] [Other commands](https://docs.notte.cc/cli-reference/other.md)
>
> `clear`, `health`, `search`, `upgrade`, `version`

## Global flags

These flags work with every command.

| Flag | Description |
| - | - |
| `--no-color` | Disable color output |
| `--output <string>`, `-o` | Output format (text, json) (default: `text`) |
| `--timeout <int>` | API request timeout in seconds (default: `60`) |
| `--verbose`, `-v` | Verbose output |
| `--yes`, `-y` | Skip confirmation prompts |

## JSON output

Commands that return data accept `--output json` (or `-o json`) for machine-readable output. Commands that wrap another tool, such as `skill add`, print that tool's output as is:

```bash theme={null}
notte sessions start -o json
notte functions list -o json
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.