Who can use it#
Rovara v0.3.4 includes the native workflow. This page follows the inspected mainline source, which may include later changes. Deployment settings and feature flags still apply. Release and coverage details →
A developer connects their own ChatGPT plan, and the coding tasks they start run on it instead of the installation’s model. People who have not connected a plan keep using the installation’s model.
- A ChatGPT Plus or Pro plan, under OpenAI’s eligibility rules. Rovara checks the plan when you connect.
- One person’s own plan: only their tasks use it, including tasks they share. One plan never serves a team.
- An installation where an admin turned it on. It is off by default.
Turn it on (admins)#
With the admin sign-in (login --admin):
npx @preplabsai/rovara-code --env <env> config set models.chatgpt.enabled true
The change shows its effect and asks first, and is recorded like every admin change. Turning it off stops new connections and sends every task back to the installation’s model; existing connections are kept.
The preferred model is gpt-6.1-sol; change it with config set models.chatgpt.preferredModel <model>. A task uses it only where the person’s plan allows. doctor shows whether the feature is on, how many people connected, and whether the control plane reaches OpenAI.
Connect your plan#
From the CLI, which catches the sign-in on 127.0.0.1:1455 itself:
npx @preplabsai/rovara-code chatgpt connect
--no-browser prints the link instead. If the port is busy (the Codex CLI uses it while signing in) or your browser is on another computer, the CLI asks you to paste the address. chatgpt status and chatgpt disconnect show and remove the connection.
From Slack, mention Rovara with connect chatgpt in a project channel (only you see the answer). Press Sign in with ChatGPT and allow Rovara. Your browser then shows an error such as can’t connect to 127.0.0.1: that is expected. Copy the whole address, press Paste the address, paste it and press Connect. The link works for 10 minutes and only for you.
When your plan cannot serve a task#
The rest of the task runs on the installation’s model in the same turn, without starting over, when:
- the plan reaches its usage limit (your next tasks use the installation’s model for an hour, then try your plan again);
- the connection was revoked or expired (connect again);
- the plan no longer allows the model (your next task picks one it allows).
AgentX says so once in the task’s Slack thread. An OpenAI outage does not trigger the fallback: the task fails as on any provider.
How the connection is kept#
- The control plane keeps your ChatGPT tokens encrypted with a key only it can use. The refresh token never leaves the control plane.
- The machine running your task gets a short-lived access token, kept only in memory.
- No Slack message, CLI output or API answer includes the tokens.
Disconnecting deletes the stored tokens. To also withdraw the permission at OpenAI, remove Rovara under ChatGPT’s Settings → Connected apps. Full Sign in with ChatGPT guide →