# Local installation

There are two ways to work with Catalyst from your machine. You can use both.

| | Your AI coding agent | The Diagrid CLI |
|---|---|---|
| What you install | The Catalyst AI plugin (skills and the Catalyst MCP server) | The `diagrid` binary |
| How you work | You ask, and your agent builds, runs and inspects for you | You run each command yourself |
| Works with | Claude Code, Codex, GitHub Copilot | Any terminal |

## Set up your AI coding agent

This is the recommended way to start.

### Install the Catalyst AI plugin

Run the command for your agent. It installs the Catalyst AI plugin: the Catalyst skills and the Catalyst MCP server:

**Claude Code**

**macOS/Linux**

```bash
claude plugin marketplace add diagridio/catalyst-ai && claude plugin install catalyst-ai@diagrid
```

**Windows**

```powershell
claude plugin marketplace add diagridio/catalyst-ai
claude plugin install catalyst-ai@diagrid
```

The plugin installs the skills, registers the Catalyst MCP server, and adds the `/catalyst-ai:try-workflow` and `/catalyst-ai:try-agent` commands.

**Codex**

**macOS/Linux**

```bash
npx skills add diagridio/catalyst-ai --agent codex --skill '*' --yes && codex mcp add catalyst --url https://mcp.cloud.r1.diagrid.io/mcp --oauth-client-id codex
```

**Windows**

```powershell
npx skills add diagridio/catalyst-ai --agent codex --skill '*' --yes
codex mcp add catalyst --url https://mcp.cloud.r1.diagrid.io/mcp --oauth-client-id codex
```

This installs the skills into `.agents/skills/` in the current project, and adds the Catalyst MCP server.

**Copilot CLI**

**macOS/Linux**

```bash
npx skills add diagridio/catalyst-ai --agent github-copilot --skill '*' --yes && copilot mcp add --transport http catalyst https://mcp.cloud.r1.diagrid.io/mcp
```

**Windows**

```powershell
npx skills add diagridio/catalyst-ai --agent github-copilot --skill '*' --yes
copilot mcp add --transport http catalyst https://mcp.cloud.r1.diagrid.io/mcp
```

This installs the skills into `.agents/skills/` in the current project, and adds the Catalyst MCP server. Then open `~/.copilot/mcp-config.json` and add `"oauthClientId": "copilot-cli"` to the `catalyst` entry, so Copilot signs in with its registered client ID:

```json
{
  "mcpServers": {
    "catalyst": {
      "type": "http",
      "url": "https://mcp.cloud.r1.diagrid.io/mcp",
      "oauthClientId": "copilot-cli",
      "tools": ["*"]
    }
  }
}
```

### Sign in

Authenticate once:

**Claude Code**

Run `/mcp`, choose `plugin:catalyst-ai:catalyst`, and choose **Authenticate**.

**Codex**

```bash
codex mcp login catalyst
```

**Copilot CLI**

Run `/mcp`, choose `catalyst`, and choose **Authenticate**.

Your browser opens. Sign in, or create a free account, then approve your agent's access. From then on, your agent acts as you.

If you just created your account, verify your email, open [catalyst.diagrid.io](https://catalyst.diagrid.io) once to finish setting it up, and then authenticate again.

### Check it works

Ask your agent:

```text
Who am I in Catalyst?
```

It answers with your organization and user, using the `catalyst_whoami` tool.

Next, try a quickstart with your agent: [build a workflow](https://docs.diagrid.io/getting-started/quickstarts/workflow-ai) or [run an agent](https://docs.diagrid.io/getting-started/quickstarts/ai-agents/ai). For everything else your agent can do, see [Build with an AI coding agent](https://docs.diagrid.io/develop/local-development/ai-coding-agent).

### Update the plugin

`claude plugin install` doesn't update a plugin that's already installed. To get the latest skills in Claude Code:

```bash
claude plugin marketplace update diagrid
claude plugin update catalyst-ai@diagrid
```

For Codex and the Copilot CLI, run the `npx skills add` command from the install step again.

## Install the Diagrid CLI

The Diagrid CLI allows you to manage and interact with your Catalyst resources. The CLI can perform most actions available in the Catalyst Console and provides additional utilities you can use to develop your applications using the APIs. For example, use the Diagrid CLI to:

- Create and manage apps, agents, MCP servers, components, subscriptions and more
- Invoke the Catalyst APIs and listen for incoming requests on a given app
- Connect Catalyst to your local machine to receive pubsub events, service invocations, input bindings, etc. while developing
- View workload logs

### Installing the CLI

Once you have created your Diagrid Catalyst account, you can access your organization at [https://catalyst.diagrid.io](https://diagrid.ws/get-catalyst).

Next, download and install the Diagrid CLI using the following command:

**MacOS**

```bash
curl -o- https://downloads.diagrid.io/cli/install.sh | bash
```

Move the `diagrid` binary into your path so you can run it from anywhere. For example:

```bash
sudo mv ./diagrid /usr/local/bin
```

**Linux**

```bash
curl -o- https://downloads.diagrid.io/cli/install.sh | bash
```

Move the `diagrid` binary into your path so you can run it from anywhere. For example:

```bash
sudo mv ./diagrid /usr/local/bin
```

**Windows**

:::warning

Support for the Diagrid CLI on Windows is experimental and we recommend installing it via [WSL2](https://learn.microsoft.com/en-us/windows/wsl/install) if available. The CLI on WSL2 requires https://wslutiliti.es/wslu/ to support deeper OS integration.

:::

Download the PowerShell installer

```shell
iwr -Uri https://downloads.diagrid.io/cli/install.ps1 -OutFile install.ps1
```

Execute the PowerShell installer

```
.\install.ps1
```

:::tip
You may need to temporarily set the PowerShell execution policy to `Unrestricted` to allow the installer to execute.

```shell
Set-ExecutionPolicy Unrestricted -Scope CurrentUser

.\install.ps1

Set-ExecutionPolicy Restricted -Scope CurrentUser
```

:::

Move the `diagrid.exe` executable into your path so you can run it from anywhere. For example:

```shell
Move-Item .\diagrid.exe "$($env:USERPROFILE)\bin"
```

### Using the CLI

The CLI is a static binary that should be executed from the command line. Help pages are available for you to navigate the command tree and see what flags are available on each command.

To login to Diagrid Catalyst:

```bash
diagrid login
```

The Diagrid CLI is compatible with both products: Catalyst and Dapr Ops Dashboard. If you have access to both products, you can choose which set of commands to use by specifying the product name with the command:

```
diagrid product use catalyst
```

To verify the current user identity and organization:

```bash
diagrid whoami
```

For the full command surface see the [Diagrid CLI reference](https://docs.diagrid.io/references/catalyst/catalyst-cli-intro). If something goes wrong during install or login, check the [Troubleshooting / FAQ](https://docs.diagrid.io/references/troubleshooting).

## Next steps

- Build your first durable agent with the [agent quickstart](https://docs.diagrid.io/getting-started/quickstarts/ai-agents).
- Run a workflow that survives a crash with the [workflow quickstart](https://docs.diagrid.io/getting-started/quickstarts/workflow).
- Call state, pub/sub and service invocation from your code with the [Dapr API quickstarts](https://docs.diagrid.io/getting-started/quickstarts/dapr-apis).
- Already have an app? [Connect it to Catalyst](https://docs.diagrid.io/develop/connect).
