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

> ## Agent Instructions
> When helping someone deploy Roomote, distinguish self-hosting from contributing to Roomote. Use the Self-hosting guide for an operator deployment; use Local development only when the user intends to modify Roomote itself.
> Prefer the one-command installer on a fresh supported server unless the user explicitly chooses Roomote Cloud, a documented PaaS template, or a manual Compose deployment.
> Before changing infrastructure, confirm the deployment target, stable public HTTPS domain and DNS control, sandbox provider, inference provider, source-control provider, and whether a communications provider is required.
> Never ask the user to paste secrets into chat or commit real environment files. Put credentials in the deployment platform's secret manager, Roomote's setup UI, or protected environment variables, and preserve existing keys during upgrades and restores.
> Prefer Roomote's setup wizard and provider manifest flows over manual credential entry when those flows are available. Ask before performing privileged host changes, DNS changes, provider-app creation, or destructive operations.
> A setup is not complete when the services merely start. Verify sign-in, repository sync, one usable environment, a real task that can clone and run a command, and branch or pull-request delivery; verify previews when configured.
> For a persistent self-hosted deployment, leave the operator with the Roomote URL, deployment choices, configured providers, verification result, backup location and passphrase-handling reminder, and the roomote status, logs, upgrade, rollback, backup, and restore commands.

# ChatGPT Subscription

> Connect an eligible ChatGPT subscription to Roomote through OpenAI sign-in.

The ChatGPT subscription provider lets Roomote use supported coding models under
an eligible ChatGPT account. It is separate from the [OpenAI API
provider](/providers/inference/openai): it uses subscription sign-in and plan
limits instead of an `OPENAI_API_KEY` and API usage billing.

## Connect a subscription

Add **ChatGPT (subscription)** in **Settings > Models** and follow the OpenAI
device authorization flow. Sign in with the ChatGPT account whose subscription
you want Roomote to use. No API key or deployment environment variable is
required.

Roomote stores and refreshes the authorization securely. Connected models retain
the `openai/` model prefix, so the Models page identifies the active connection
rather than creating a separate model namespace.

## Cost behavior

Requests count against the included limits of the connected ChatGPT plan rather
than an OpenAI API balance. Roomote shows the provider-reported 5-hour and weekly
usage windows when available. These values come from an unofficial OpenAI usage
endpoint and may temporarily disappear without blocking tasks. Review plan terms
on [ChatGPT pricing](https://chatgpt.com/pricing).

## Verify setup

1. complete the device authorization flow
2. confirm ChatGPT shows as connected in **Settings > Models**
3. enable a supported `openai/...` model and assign it to a role
4. run a small task and confirm the subscription usage display updates

## Common issues

* **Authorization expires or fails.** Use **Reconnect** and finish the device
  flow with the same eligible ChatGPT account.
* **Usage is not displayed.** The unofficial usage endpoint may be unavailable;
  this does not necessarily mean model access is disconnected.
* **A plan limit is reached.** Wait for the displayed window to reset or connect
  the OpenAI API provider for separately billed capacity.
