---
title: "RedReplier CLI"
description: "Install the RedReplier CLI, log in with an API token, and run every part of RedReplier from your terminal or a script. JSON output and real exit codes."
url: "https://redreplier.com/features/cli/docs"
---

[Back to AI agents](https://redreplier.com/features/agents)

# RedReplier CLI

Drive RedReplier from your terminal or a script. One binary, no runtime to manage, and every command can print JSON.

## Install

Pick whichever fits your machine. The Homebrew and curl routes install a standalone binary, so Node is not needed.

npm

```
npm install -g @redreplier/cli
```

Homebrew (macOS, Linux)

```
brew trust RedReplier/tap && brew install RedReplier/tap/redreplier
```

Install script (macOS, Linux)

```
curl -fsSL https://redreplier.com/install.sh | sh
```

Run once, without installing

```
npx -p @redreplier/cli redreplier --help
```

Homebrew 7 refuses to load a formula from a third-party tap until you trust it, which is what brew trust does. Skip it and both install and upgrade stop with "Refusing to load formula from untrusted tap".

The install gives you two names for the same program. The short one is `rr`.

## Authentication

Create an API token and hand it to login. Tokens live in your workspace settings: [API & AI Agents](https://redreplier.com/api-tokens).

```
redreplier login
```

The command opens the token page, reads the token from a hidden prompt, checks the `redreplier_` prefix locally, then verifies it with one API call before writing it to disk at mode 0600\. Nothing is stored if the check fails.

In CI, pipe the token in and skip the prompt

```
echo "$MY_SECRET" | redreplier login --token-stdin
```

Or skip storage entirely and pass it per command

```
REDREPLIER_API_TOKEN=redreplier_your_token redreplier whoami
```

## Quick start

List the strongest untriaged leads and print score and link, one per line.

```
redreplier mentions --min-score 70 --status NEW --json \
  | jq -r '.data[] | "\(.score)\t\(.url)"'
```

## Commands

Every command takes --help, and most take --json. Run redreplier doctor first if something looks wrong.

Getting in

| redreplier login  | Store an API token on this machine, after checking it works |
| ----------------- | ----------------------------------------------------------- |
| redreplier logout | Remove the stored token                                     |
| redreplier whoami | Show which token is in use and what it can see              |

Everyday work

| redreplier site    | Monitored websites and the description mentions are scored against              |
| ------------------ | ------------------------------------------------------------------------------- |
| redreplier keyword | Add, reword, disable and activate the keywords a site listens for               |
| redreplier mention | Read, filter and triage lead mentions across Reddit, Hacker News, X and Bluesky |
| redreplier alerts  | How often email digests go out                                                  |

Escape hatches

| redreplier api  | Send an authenticated request to any API endpoint |
| --------------- | ------------------------------------------------- |
| redreplier mcp  | Print the MCP server config for your editor       |
| redreplier open | Open a page of the web app in your browser        |

This machine

| redreplier config     | Read and write CLI preferences                   |
| --------------------- | ------------------------------------------------ |
| redreplier doctor     | Check this machine, the config files and the API |
| redreplier completion | Print the shell completion script                |

Each command lists its own flags under `redreplier <command> --help`.

## Scripting

Add --json to any command and you get a stable envelope with ok, command and data, ready for jq.

```
redreplier whoami --json
```

You rarely need the flag. Output switches to JSON on its own when stdout is not a terminal or CI is set, so a piped command already gives you JSON.

Exit codes

| 0 | Success                                        |
| - | ---------------------------------------------- |
| 2 | Usage error, such as a missing or unknown flag |
| 3 | The token was rejected or is missing           |
| 4 | Nothing matched that id                        |
| 5 | The API rejected the input                     |
| 7 | Too many requests                              |
| 8 | Network failure or timeout                     |
| 9 | Plan or quota limit reached                    |

## Next steps

Create a token, or wire the same account into an AI agent instead.

[Create an API token](https://redreplier.com/api-tokens)[AI agents and MCP](https://redreplier.com/features/agents)
