<!-- Markdown mirror. Canonical: https://empryo.com/docs/providers/proxy -->

# Proxy

> Use Claude, ChatGPT, Gemini and Grok subscriptions through the optional proxy add-on, and read the plan limits and reset times it reports.

The proxy is an optional add-on. It runs [CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI), a local relay on your machine that signs in to your chat subscriptions. Models named `proxy/*` then use those subscriptions instead of API credit. Empryo reads your plan limits from the relay and shows how much is left.

For Claude and ChatGPT you usually do not need the proxy. Both can sign in directly with `/login`, with no add-on. See [Subscriptions](/docs/providers/subscriptions). The proxy is still useful for Gemini and Grok subscriptions, and for running several accounts per provider through one relay.

> **Warning:**
> **Use at your own risk.** The relay sends your subscription credentials to services built for the vendor's own apps. Empryo is not affiliated with Anthropic, OpenAI, Google, or xAI, and none of them has approved this use.

> Whether your plan allows it is between you and the vendor. Read your subscription terms before you sign in. Rate limits, revoked sign-ins, and account suspension are all possible. Empryo cannot restore a suspended account.

## Set it up

1. Install the add-on:

```bash
empryo addon install proxy
```

2. Inside Empryo, run `/proxy login` and sign in to each subscription you want to use.
3. Press `Ctrl+L` and pick a `proxy/*` model.

Other commands you will use:

| Command | What it does |
|---------|--------------|
| `/proxy status` | Lists the connected accounts |
| `/proxy quota` | Fetches your current plan limits |
| `/proxy logout` | Signs out of an account |
| `/proxy restart` | Restarts the relay |

## The plan meter

```
plan  [▰▰▰▰▱] 78% weekly ↺3d
ctx   [▰▰▰▱▱] 42% ~12k/200k
```

The first line is the plan meter in the status bar. It shows the percentage of your plan you have used, which limit it is (here, the weekly one), and when that limit resets. The line below it is the context meter, which shows how full the conversation is.

> **Note:**
> This page covers `proxy/*` models. [GitHub Copilot](/docs/providers/copilot#usage-and-quota) has a similar meter, but its allowance resets monthly. Providers you pay per token show dollars in [`/usage`](/docs/concepts/cost-tracking) instead.

## What each account reports

Every account behind the relay reports its **health**: whether its sign-in works right now. Some providers also report **usage limits**: how much of a time-based limit you have used.

| Report | Providers | What you see |
|--------|-----------|--------------|
| Health | all | ready, cooling down, disabled, or error, plus success and failure counts |
| Usage limits | Claude, ChatGPT (Codex) | percentage used, reset time, and per-model limits |

If a provider does not report usage, Empryo says so instead of guessing:

```
● you@example.com (xai) — ready
    no quota reported by this provider
```

## Per-model limits

On a Claude subscription, the weekly allowance is not a single number. Anthropic also limits **each model family separately**, on top of the account-wide limits:

```
Subscriptions · proxy
  ● claude   you@example.com
  ▸ weekly · fable [▰▰▰▰▰▰▰▰▰▰] spent  ↺ 3d
    5h             [▰▰▰▰▰▰▰▱▱▱]   73%  ↺ 1h
    weekly         [▰▰▰▰▰▰▰▰▱▱]   78%  ↺ 3d
```

In this example, the Fable limit is used up, but Sonnet and Opus are still available. Same account, same week.

The `▸` marks the limit that applies to the model you are using right now. When you switch models, the marker moves and the status bar updates right away.

> **Tip:**
> A used-up limit only moves to the top of the list when it affects your current model. If your Fable limit is used up but you are on Sonnet, Empryo does not warn you.

## Which account pays

The relay can rotate between several accounts of the same provider, but never between providers. A `proxy/gpt-5.6` turn always bills your ChatGPT subscription, never your Claude one.

| Model | Billed to |
|-------|-----------|
| `proxy/claude-*` | Claude subscription |
| `proxy/gpt-*`, `proxy/*-codex` | ChatGPT (Codex) subscription |
| `proxy/gemini-*` | Gemini subscription |
| `proxy/grok-*` | xAI subscription |

## Where to see your limits

**Terminal**

- **Status bar**: the plan meter next to the context meter.
- **`/usage`**: every account and every limit, with the one that applies to your model marked.
- **`/status`**: the plan meter next to the relay's status.
- **`/proxy quota`**: fetches fresh numbers and prints them all.

**Desktop**

- **Status bar**: click the plan meter to open the proxy page.
- **Usage page**: a Subscriptions card with one row per account.
- **Proxy page**: a bar for each account, with the limit that applies to your tab's model highlighted.

**Headless & chat**

- `empryo --headless --proxy-quota` prints your limits and exits. Add `--json` for machine-readable output.
- A proxy turn ends with a warning line when a limit is almost used up.

## Warning levels

| Used | What you see |
|------|--------------|
| under 75% | normal |
| 75% or more | warning color |
| 90% or more, or used up | critical color |
| used up | the word `spent` instead of `100%` |

## Refreshing the numbers

Vendors limit how often you can ask for usage data, and the numbers change slowly. So Empryo keeps each report for **5 minutes**. Opening a panel shows the saved report. These actions fetch fresh numbers:

- `/proxy quota`
- the refresh button on the desktop proxy and usage pages
- `empryo --headless --proxy-quota`

## Privacy

Empryo asks the relay for your usage. The relay adds your sign-in token itself when it contacts the vendor, so the token stays inside the relay and Empryo never sees it. The relay's admin password is created automatically the first time and stored with the proxy settings.

## Troubleshooting

**Nothing shows in the status bar**

The plan meter only appears for `proxy/*` models with at least one signed-in account. Run `/proxy status`. If no accounts are listed, run `/proxy login`.

**Subscriptions unavailable: management API disabled**

The relay only answers usage questions when it starts with an admin password. Empryo creates one for you. Run `/proxy restart` so the relay picks it up.

**An account shows no limits**

This is expected for providers that do not report usage. Health and the success and failure counts still work. Only the percentage bars are missing.

**rate limited by Anthropic, retrying later**

Anthropic refused the usage request because it came too often. Empryo keeps showing the last report and tries again later. Avoid running `/proxy quota` many times in a row.

## Related

- [Subscriptions](/docs/providers/subscriptions): sign in to Claude, ChatGPT, and more without the proxy
- [Add-ons](/docs/tools/addons): installing and managing add-ons
- [GitHub Copilot](/docs/providers/copilot#usage-and-quota): Copilot's monthly allowance
- [Cost tracking](/docs/concepts/cost-tracking): spending on per-token providers
- [Providers overview](/docs/providers/overview): every way to connect a model
