> For the complete documentation index, see [llms.txt](https://tools.docs.sendbird.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://tools.docs.sendbird.com/plugins/cli.md).

# Sendbird CLI plugin

The Sendbird CLI plugin lets Claude Code or Codex run Sendbird CLI tasks for you. Describe the task in the conversation, for example "create two test users" or "check which app is selected". Claude Code or Codex then runs the CLI commands.

## What it does

* **Sets up the CLI:** The Sendbird CLI plugin setup installs the CLI if it's missing, logs you in, has you choose your Sendbird organization and app, and offers an optional first Chat test.
* **Runs CLI tasks:** Claude Code or Codex runs the Sendbird CLI commands for your request, such as managing users and channels, testing messages, or checking Calls settings.
* **Reports results:** Claude Code or Codex shows the command results, such as message IDs and received events, so you can check them.

{% hint style="info" %}
The Sendbird CLI plugin works only on your Sendbird account and its resources, such as apps, users, and channels. It doesn't change your app's code, so to add or build Chat or Calls features in your app, use the [Sendbird Client plugin](/plugins/client.md).
{% endhint %}

## How to use the plugin

Install the plugin, run its setup to log in and choose your app, and then ask Claude Code or Codex to run CLI tasks in the conversation.

### Before you begin

* Claude Code or Codex on your own computer. Login needs a browser on the same computer, so cloud-hosted environments, such as Claude Code on the web or Codex cloud, can't complete it.
* Node.js 22.23.4 or a later 22.x release, or 24.22.1 or a later 24.x release. The Sendbird CLI plugin setup installs the CLI with npm if it's missing.
* A Sendbird account.
* A Sendbird app that doesn't serve real users, because test tasks create users, channels, and messages in it. If you don't have one, [create one with the CLI](/readme/quickstart.md#create-a-sendbird-app).

### Install the plugin

Install the plugin from the terminal, or ask your AI coding agent to install it.

#### Install from the terminal

Run the commands for Claude Code or Codex. The first command adds the plugin source, and the second installs the plugin.

{% tabs %}
{% tab title="Claude Code" %}

```bash
claude plugin marketplace add sendbird/sendbird-plugins
claude plugin install sendbird-cli@sendbird
```

{% endtab %}

{% tab title="Codex" %}

```bash
codex plugin marketplace add sendbird/sendbird-plugins
codex plugin add sendbird-cli@sendbird
```

{% endtab %}
{% endtabs %}

The `sendbird/sendbird-plugins` source has both the Sendbird CLI plugin and the Sendbird Client plugin, so you can install both from it. If you added an older Sendbird plugin source, remove it first with `claude plugin marketplace remove sendbird` or `codex plugin marketplace remove sendbird`.

#### Ask your AI coding agent

In Claude Code or Codex, type:

```
Install the Sendbird CLI plugin for me.
Use sendbird/sendbird-plugins as the plugin source.
```

Review the installation permission request before approving it, and wait for the installation to finish.

### Start the Sendbird CLI plugin setup

The plugin loads when a session starts, so start a new session in Claude Code or Codex after you install it. Then enter the Sendbird CLI plugin setup command:

{% tabs %}
{% tab title="Claude Code" %}

```
/sendbird-cli:sendbird-setup
```

{% endtab %}

{% tab title="Codex" %}

```
$sendbird-cli:sendbird-setup
```

{% endtab %}
{% endtabs %}

The Sendbird CLI plugin setup installs the CLI if it's missing.

### Log in and choose your Sendbird app

When the browser opens, approve the login yourself, then return to the conversation. Select your organization and app when the Sendbird CLI plugin setup asks. Choose the test app from [Before you begin](#before-you-begin).

The Sendbird CLI plugin setup asks whether to save your organization and app as the profile's default, or to use them only in this session. If you save them, later sessions use them without asking.

### Optional: Run a first Chat test

At the end, the Sendbird CLI plugin setup offers an optional Chat test. It asks before it creates any test data in your app.

* **To run the test:** Agree when it asks. It shows the target app and the test users and channel it plans to create. Then it creates two test users and a private Group channel, sends a message as each user, and checks that the other user receives it. It deletes the test data only when you agree.
* **To skip the test:** Decline or don't answer. Setup finishes without changing your app. You can ask for the same test later in the conversation.

Either way, continue with [Ask it to run a task](#ask-it-to-run-a-task).

### Ask it to run a task

Describe the task in the conversation in plain words. Here are two examples of tasks you can ask for.

To check which account you're logged in with and which app is selected, ask:

```
Check my Sendbird login and tell me which app is selected.
```

To test that a message sent by one user reaches another user, ask:

```
Create two test users in my tutorial app and verify that one receives a message from the other.
```

Claude Code or Codex runs the CLI commands for you and shows the results. The two-user test worked when the results show the sent message's ID and a `message_received` event for the other user with the same message ID.

To run the same steps yourself, see the [Quickstart](/readme/quickstart.md) and [Send and receive messages](/readme/chat/send-and-receive-messages.md).

## Manage the plugin

### Update the plugin

The plugin stays at its installed version until you update it.

{% tabs %}
{% tab title="Claude Code" %}

```bash
claude plugin marketplace update sendbird
claude plugin update sendbird-cli@sendbird
```

Then run `/reload-plugins` in your session, or start a new session.
{% endtab %}

{% tab title="Codex" %}

```bash
codex plugin marketplace upgrade sendbird
```

{% endtab %}
{% endtabs %}

### Remove the plugin

{% tabs %}
{% tab title="Claude Code" %}

```bash
claude plugin uninstall sendbird-cli@sendbird
```

To also remove the plugin source, run `claude plugin marketplace remove sendbird`.
{% endtab %}

{% tab title="Codex" %}

```bash
codex plugin remove sendbird-cli@sendbird
```

To also remove the plugin source, run `codex plugin marketplace remove sendbird`.
{% endtab %}
{% endtabs %}

## Next steps

* Add Chat or Calls features to your app's code with the [Sendbird Client plugin](/plugins/client.md).
* Try more Chat tasks in the [Chat tutorials](/readme/chat.md).
* See other ways to work on app code in [Choose how to work on your app code](/readme/ai-agents.md#choose-how-to-work-on-your-app-code).
