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

# CLI Reference

> Complete command reference for Cline CLI including all commands, flags, and configuration options.

```bash theme={"system"}
cline --help           # Show all commands
cline <command> --help # Show help for a specific command
```

## Synopsis

```bash theme={"system"}
cline [options] [command] [prompt]
```

## Help Menu (Source of Truth)

```text theme={"system"}
Usage: cline [options] [command] [prompt]

Cline CLI - AI coding assistant in your terminal

Arguments:
  prompt                       Your prompt. Default to start in act mode with auto-approve enabled.

Options:
  -V, --version                Output the version number
  -p, --plan                   Run in plan mode
  --json                       Output messages as JSON instead of styled text
  --auto-approve <boolean>     Set tool auto-approval for all tools (default: true)
  -t, --timeout <seconds>      Optional timeout in seconds (default: 0 for no timeout)
  -m, --model <model-id>       Model to use for the session with the selected provider
  -v, --verbose                Show verbose output
  -c, --cwd <path>             Working directory
  --config <path>              Configuration directory (default: ~/.cline/data/settings)
  --data-dir <path>            Use isolated local state at this directory path (default: ~/.cline)
  --thinking <level>           Set reasoning effort level between none|low|medium|high|xhigh (default: medium)
  --retries <count>            Maximum consecutive mistakes (retries) before halting
  --hooks-dir <path>           Directory path to additional hooks for runtime hook injection (default: ~/.cline/hooks)
  --acp                        Run in Agent Client Protocol (ACP) mode for editor integration
  -i, --tui                    Open the terminal user interface (TUI) for interactive sessions
  --id <session-id>            Resume an existing session by ID
  -k, --key <api-key>          API key override for this run
  -P, --provider <id>          Provider id (default: cline)
  -s, --system <system-prompt> Override the default system prompt
  -z, --zen                    Start a session that runs in the background hub
  -h, --help                   display help for command

Commands:
  auth [options] [provider]    Authenticate a provider and configure what model is used
  config [options]             Show current configuration
  connect [options] [adapter]  Connect to an editor or IDE adapter
  mcp                          Manage MCP servers
  dev                          Developer tools and utilities
  doctor                       Diagnose and fix configuration issues
  history|h [options]          List session history or manage saved sessions
  hook                         Handle a hook payload from stdin
  plugin                       Manage Cline Plugins
  schedule                     Manage scheduled tasks
  hub                          Manage the local hub daemon
  update [options]             Check for updates and install if available
  version                      Show Cline CLI version number
  kanban                       Launch the kanban app and exit
```

## Global Options

| Option                         | Description                                                                               |
| ------------------------------ | ----------------------------------------------------------------------------------------- |
| `-V, --version`                | Output the version number                                                                 |
| `-p, --plan`                   | Run in plan mode                                                                          |
| `--json`                       | Output messages as JSON instead of styled text                                            |
| `--auto-approve <boolean>`     | Set tool auto-approval for all tools (default: `true`)                                    |
| `-t, --timeout <seconds>`      | Optional timeout in seconds (default: `0` for no timeout)                                 |
| `-m, --model <model-id>`       | Model to use for the session with the selected provider                                   |
| `-v, --verbose`                | Show verbose output                                                                       |
| `-c, --cwd <path>`             | Working directory                                                                         |
| `--config <path>`              | Configuration directory (default: `~/.cline/data/settings`)                               |
| `--data-dir <path>`            | Use isolated local state at this directory path (default: `~/.cline`)                     |
| `--thinking <level>`           | Set reasoning effort: `none\|low\|medium\|high\|xhigh` (default `medium`)                 |
| `--retries <count>`            | Maximum consecutive mistakes (retries) before halting                                     |
| `--hooks-dir <path>`           | Directory path to additional hooks for runtime hook injection (default: `~/.cline/hooks`) |
| `--acp`                        | Run in Agent Client Protocol (ACP) mode for editor integration                            |
| `-i, --tui`                    | Open the terminal user interface (TUI) for interactive sessions                           |
| `--id <session-id>`            | Resume an existing session by ID                                                          |
| `-k, --key <api-key>`          | API key override for this run                                                             |
| `-P, --provider <id>`          | Provider id (default: `cline`)                                                            |
| `-s, --system <system-prompt>` | Override the default system prompt                                                        |
| `-z, --zen`                    | Start a session that runs in the background hub                                           |
| `-h, --help`                   | Display help for command                                                                  |

## Commands

### `cline` (default)

Start a task or enter interactive mode.

```bash theme={"system"}
cline
cline "your prompt here"
cline "Run tests and fix failures"
echo "prompt" | cline
```

### `auth [options] [provider]`

Configure authentication with an AI provider.

```bash theme={"system"}
cline auth
```

### `config [options]`

Show current configuration.

```bash theme={"system"}
cline config
```

### `connect [options] [adapter]`

Connect to messaging platforms. See [Connectors](/cli/connectors).

```bash theme={"system"}
cline connect
cline connect [adapter]
```

### `mcp`

Manage MCP servers. See [MCP](/mcp/mcp-overview).

```bash theme={"system"}
cline mcp
```

### `dev`

Developer tools and utilities.

```bash theme={"system"}
cline dev
```

### `doctor`

Diagnose and fix configuration issues.

```bash theme={"system"}
cline doctor
```

### `history|h [options]`

List session history or manage saved sessions.

```bash theme={"system"}
cline history
cline h
```

### `hook`

Handle a hook payload from stdin.

```bash theme={"system"}
cat payload.json | cline hook
```

### `plugin`

Manage Cline plugins. Install plugins from file URLs, npm, git repositories, or local paths. See [Plugins](/customization/plugins) for full details and the plugin manifest format.

```bash theme={"system"}
cline plugin install <source>  # Install a plugin
cline plugin i <source>        # Shorthand alias
```

| Option         | Description                                                        |
| -------------- | ------------------------------------------------------------------ |
| `--npm`        | Treat source as an npm package                                     |
| `--git`        | Treat source as a git repository                                   |
| `--force`      | Replace an existing install for the same source                    |
| `--json`       | Output result as JSON                                              |
| `--cwd <path>` | Install to `<path>/.cline/plugins` instead of the global directory |

Try it with the [TypeScript Navigation Plugin](https://github.com/cline/typescript-lsp-plugin):

```bash theme={"system"}
cline plugin install https://github.com/cline/typescript-lsp-plugin.git
```

### `schedule`

Manage scheduled agents. See [Scheduling](/cli/scheduling).

```bash theme={"system"}
cline schedule
```

### `hub`

Manage the local hub daemon.

```bash theme={"system"}
cline hub
```

### `update [options]`

Check for updates and install if available.

```bash theme={"system"}
cline update
```

### `version`

Show Cline CLI version number.

```bash theme={"system"}
cline version
cline -V
```

### `kanban`

Launch the kanban app and exit.

```bash theme={"system"}
cline kanban
```

## Environment Variables

| Variable                     | Description                                                |
| ---------------------------- | ---------------------------------------------------------- |
| `CLINE_DATA_DIR`             | Custom configuration directory (replaces `~/.cline/data/`) |
| `CLINE_HUB_ADDRESS`          | Override hub address (default: `127.0.0.1:25463`)          |
| `CLINE_SESSION_BACKEND_MODE` | Force backend mode (`local`, `hub`, `remote`, `auto`)      |
| `CLINE_SANDBOX_DATA_DIR`     | Sandbox session storage directory                          |
| `CLINE_SANDBOX`              | Enable sandbox mode                                        |
| `CLINE_HOOKS_DIR`            | Additional hooks directory                                 |
| `CLINE_BUILD_ENV`            | Set to `development` for debug features                    |
| `CLINE_DEBUG_PORT_BASE`      | Base port for Node.js inspector                            |
| `CLINE_COMMAND_PERMISSIONS`  | JSON policy restricting shell commands (see below)         |

### CLINE\_COMMAND\_PERMISSIONS

Restrict which shell commands the agent can execute:

```bash theme={"system"}
export CLINE_COMMAND_PERMISSIONS='{"allow": ["npm *", "git *"], "deny": ["rm -rf *", "sudo *"]}'
```

| Field            | Type       | Description                                                                       |
| ---------------- | ---------- | --------------------------------------------------------------------------------- |
| `allow`          | `string[]` | Glob patterns for allowed commands. If set, only matching commands are permitted. |
| `deny`           | `string[]` | Glob patterns for denied commands. Deny rules always take precedence.             |
| `allowRedirects` | `boolean`  | Whether to allow shell redirects (`>`, `>>`, `<`). Default: `false`.              |

## JSON Output Format

When using `--json`, each message is a JSON object on its own line:

```json theme={"system"}
{"type": "say", "text": "I'll create the file now.", "ts": 1760501486669, "say": "text"}
```

| Field       | Type               | Description                    |
| ----------- | ------------------ | ------------------------------ |
| `type`      | `"ask"` or `"say"` | Message category               |
| `text`      | `string`           | Message content                |
| `ts`        | `number`           | Unix timestamp in milliseconds |
| `say`       | `string`           | Subtype when `type` is `"say"` |
| `ask`       | `string`           | Subtype when `type` is `"ask"` |
| `reasoning` | `string`           | Model reasoning (if available) |
| `partial`   | `boolean`          | `true` while streaming         |

## Configuration Files

```
~/.cline/
  data/
    settings/
      providers.json             # API keys and provider config
      rules/                     # Global rules
      skills/                    # Global skills
    teams/                       # Team state
    sessions/                    # Session database (SQLite)
    logs/
      hub-daemon.log             # Hub logs
  plugins/                       # Global plugins
    _installed/                  # Managed by `cline plugin install`

.cline/                          # Project root
  rules/                         # Project rules
  skills/                        # Project skills
  hooks/                         # Lifecycle hooks
  plugins/                       # Project plugins
  mcp.json                       # MCP server config
  agents.yaml                    # Agent definitions
```
