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

# CC Safety Net Status Line: Real-Time Mode Indicators

> Display CC Safety Net's active protection mode in Claude Code's status line using bunx, npx, or claude x. Pipe alongside any existing status line command.

CC Safety Net can display its status in Claude Code's status line, showing which protection mode is active at a glance. This gives you a persistent, at-a-glance view of whether the safety hook is running and exactly which modes are engaged — without having to run a separate diagnostic command.

The status line is **Claude Code only**. It reads the `enabledPlugins["safety-net@cc-marketplace"]` entry from `~/.claude/settings.json` (or `$CLAUDE_SETTINGS_PATH`) to decide whether the Claude Code plugin is enabled. If you installed CC Safety Net for a different agent, or as a manual Claude Code hook rather than the marketplace plugin, this indicator is not relevant to you.

## Setup

Add a `statusLine` entry to your `~/.claude/settings.json`. Choose the runner that matches your environment:

<Tabs>
  <Tab title="Bun (recommended)">
    ```json theme={"dark"}
    {
      "statusLine": {
        "type": "command",
        "command": "bunx cc-safety-net statusline --claude-code"
      }
    }
    ```
  </Tab>

  <Tab title="Claude X">
    ```json theme={"dark"}
    {
      "statusLine": {
        "type": "command",
        "command": "BUN_BE_BUN=1 claude x cc-safety-net statusline --claude-code"
      }
    }
    ```

    <Note>
      The `claude x` command is only compatible with the native (non-npm) version of Claude Code. If you installed Claude Code via npm, use `bunx` or `npx` instead.
    </Note>
  </Tab>

  <Tab title="NPM">
    ```json theme={"dark"}
    {
      "statusLine": {
        "type": "command",
        "command": "npx -y cc-safety-net statusline --claude-code"
      }
    }
    ```
  </Tab>

  <Tab title="Pipe with existing command">
    If you already have a status line command, pipe CC Safety Net at the end so both outputs are shown together:

    ```json theme={"dark"}
    {
      "statusLine": {
        "type": "command",
        "command": "your-existing-command | bunx cc-safety-net statusline --claude-code"
      }
    }
    ```
  </Tab>
</Tabs>

## Mode Indicators

The status line displays a different emoji depending on which environment variables are set. When multiple modes are active, their emojis are combined.

| Status                | Display                 | Meaning                                                                                                       |
| --------------------- | ----------------------- | ------------------------------------------------------------------------------------------------------------- |
| Plugin disabled       | 🛡️ CC Safety Net ❌     | The Claude Code plugin `safety-net@cc-marketplace` is not enabled in `~/.claude/settings.json`                |
| Default mode          | 🛡️ CC Safety Net ✅     | Plugin enabled, default settings                                                                              |
| Strict mode           | 🛡️ CC Safety Net 🔒    | `CC_SAFETY_NET_STRICT=1` — fail-closed on unparseable commands                                                |
| Paranoid mode         | 🛡️ CC Safety Net 👁️   | `CC_SAFETY_NET_PARANOID=1`, or both `CC_SAFETY_NET_PARANOID_RM=1` and `CC_SAFETY_NET_PARANOID_INTERPRETERS=1` |
| Paranoid RM only      | 🛡️ CC Safety Net 🗑️   | `CC_SAFETY_NET_PARANOID_RM=1` — blocks `rm -rf` even within cwd                                               |
| Paranoid interpreters | 🛡️ CC Safety Net 🐚    | `CC_SAFETY_NET_PARANOID_INTERPRETERS=1` — blocks interpreter one-liners                                       |
| Worktree mode         | 🛡️ CC Safety Net 🌳    | `CC_SAFETY_NET_WORKTREE=1` — relax local git discards in linked worktrees                                     |
| Strict + Paranoid     | 🛡️ CC Safety Net 🔒👁️ | Both strict and paranoid modes enabled                                                                        |

Multiple mode emojis are combined when multiple environment variables are set. Mode flags use `CC_SAFETY_NET_*` names; legacy `SAFETY_NET_*` names are still accepted.

For more information on what each mode does and when to use it, see [Modes](/docs/configuration/modes).

<Note>
  The `❌` state specifically means the Claude Code marketplace plugin is disabled. If you run CC Safety Net as a manual Claude Code hook (not the marketplace plugin), or for a different agent entirely, the status line may show `❌` even though protection is active — it only reflects the `enabledPlugins` entry in `~/.claude/settings.json`.
</Note>

<Note>
  Changes to `~/.claude/settings.json` take effect immediately — no restart of Claude Code is needed. The `statusline` command accepts `-cc` as a short alias for `--claude-code`.
</Note>
