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

# CLI overview

> Command-line interface for Botpress development

The Botpress CLI (`bp`) is your primary tool for building, testing, and deploying bots, integrations, and plugins.

## Installation

Install the CLI globally:

```bash theme={null}
npm install -g @botpress/cli
```

Or use with npx:

```bash theme={null}
npx @botpress/cli <command>
```

## Available commands

### Project management

* `bp init` - Initialize a new project
* `bp build` - Build project
* `bp bundle` - Bundle code
* `bp generate` - Generate types

### Development

* `bp dev` - Run in development mode
* `bp serve` - Serve project locally

### Deployment

* `bp deploy` - Deploy to cloud
* `bp login` - Login to Botpress
* `bp logout` - Logout from Botpress

### Resource management

* `bp bots` - Manage bots
* `bp integrations` - Manage integrations
* `bp interfaces` - Manage interfaces
* `bp plugins` - Manage plugins

### Utilities

* `bp add` - Add dependencies
* `bp remove` - Remove dependencies
* `bp read` - Read integration definition
* `bp lint` - Lint project

## Getting help

Get help for any command:

```bash theme={null}
bp --help
bp <command> --help
```

## Authentication

Login to Botpress Cloud:

```bash theme={null}
bp login
```

The CLI will open a browser for authentication.

## Project types

The CLI supports four project types:

* **Bot** - Conversational AI applications
* **Integration** - Connect to external platforms
* **Plugin** - Reusable bot functionality
* **Interface** - Define contracts between integrations

## Common workflows

### Create and deploy bot

```bash theme={null}
bp init --type bot
cd my-bot
npm install
bp build
bp deploy
```

### Create and deploy integration

```bash theme={null}
bp init --type integration
cd my-integration
npm install
bp build
bp deploy
```

### Development workflow

```bash theme={null}
bp dev  # Start development server
# Make changes to code
# Server auto-reloads
```

## Global options

The following options are available for all CLI commands:

### Authentication options

<ParamField path="--token" type="string">
  Personal Access Token for authentication. Can also be set via `BP_TOKEN` environment variable.
</ParamField>

<ParamField path="--workspaceId" type="string">
  Workspace ID to use for the command. Can also be set via `BP_WORKSPACE_ID` environment variable.
</ParamField>

<ParamField path="--apiUrl" type="string">
  API URL for Botpress Cloud. Defaults to `https://api.botpress.cloud`.
</ParamField>

### Output options

<ParamField path="--verbose" type="boolean">
  Enable verbose logging for debugging.
</ParamField>

<ParamField path="--json" type="boolean">
  Output results in JSON format (where applicable).
</ParamField>

<ParamField path="--yes" type="boolean">
  Skip confirmation prompts and accept defaults.
</ParamField>

<Note>
  Environment variables can be used as an alternative to command-line flags. This is especially useful for CI/CD environments.
</Note>
