Skip to content

docs: document connecting a ChatGPT subscription - #815

Open
hongyi-chen wants to merge 6 commits into
mainfrom
missing-docs/chatgpt-subscription
Open

hongyi-chen wants to merge 6 commits into
mainfrom
missing-docs/chatgpt-subscription

Conversation

@hongyi-chen

@hongyi-chen hongyi-chen commented Oct 2, 2026 •

Copy link
Copy Markdown
Collaborator

What this feature does

Connecting a ChatGPT plan lets eligible OpenAI requests in Warp Agent conversations in the Warp app count against your ChatGPT usage limits instead of Warp credits. Connect from Settings > Agents > Warp Agent with Continue with ChatGPT. This does not connect Claude subscriptions, and the docs make no claim about cloud agent runs. Shipped in v0.2026.09.30.08.29.stable_01 (2026-09-30).

Why now

The previous drift-watch run (#768) deferred this feature because it could not be verified. At warp master 7cef787ea the public repo held only inert plumbing — hardcoded false flags and an error arm — with no settings control, no OAuth flow, and no gating flag. Drafting then would have meant inventing the labels and the steps.

At 38b2c55e4 the whole surface is present, so the deferral has cleared and the page is written from source rather than from the changelog.

Content design plan

Reader and job: A developer who already pays for ChatGPT and wants OpenAI models in Warp to bill to that plan instead of drawing down their Warp credits.

Gap today: Nothing documents the feature, and bring-your-own-api-key.mdx actively said it was impossible ("Can I sign in with a ChatGPT or Claude subscription? No."). A reader who saw Continue with ChatGPT in Settings and then checked the docs was told the button could not exist.

Goals: The reader can connect and disconnect a plan, knows which requests bill to it and which still cost Warp credits, can recover from the documented connection failures, and understands what OpenAI is told about their usage.

Purpose and value: New page rather than a section on the BYOK page. The information architecture already gives each BYO inference path its own page (grok-subscription.mdx, custom-inference-endpoint.mdx, custom-routers.mdx), and this one carries a connect procedure, a billing model, an error-recovery flow, and four troubleshooting entries — more than a section on an already-long page can hold. The BYOK page gets a comparison-table row and a corrected note instead.

Content type: Feature documentation (combined). The reader needs both the concept (what gets billed where) and the procedure (how to connect).

Scenarios covered: Connecting; what the plan does and does not cover; recovering when OpenAI refuses a request; disconnecting; account-link, email-verification, permission, and account-mismatch failures. Excluded: whether a connected plan applies to cloud agent runs — see Unverified claims.

Gate verdict

Gate 1 + Gate 2 + Gate 3. Full evidence is recorded in the ledger row on the bookkeeping PR. In brief:

  • Gate 0 — chatgpt_subscription is in the default = [...] feature list (app/Cargo.toml:694), bridged at app/src/features.rs:512-513, and in none of RELEASE_FLAGS / PREVIEW_FLAGS / DOGFOOD_FLAGS. GA.
  • Gate 1 — Continue with ChatGPT and Disconnect on the "Use OpenAI ChatGPT plan" row (warp_agent_page.rs:5676-5791, buttons at 5199-5221).
  • Gate 2 — distinct account-link, email-verification, permission, and account-mismatch failures, each needing a different response (on_chatgpt_connect_failed, warp_agent_page.rs).
  • Gate 3 — inference billing moves off Warp credits for eligible OpenAI models; tier-gated OpenAI models become selectable on connect; background work the reader never initiated (titles, compaction, tool-result summaries) is billed to their plan and labeled for OpenAI.

Changes

  • New agents/inference/chatgpt-subscription.mdx
  • agents/inference/bring-your-own-api-key.mdx — corrected the now-false "No" note, added a comparison-table row and two cross-references
  • agents/getting-started/faqs.mdx — distinguished supported ChatGPT subscriptions from unsupported Claude subscriptions
  • support-and-community/plans-and-billing/platform-credits.mdx — added connected ChatGPT plans to local customer-supplied inference
  • src/sidebar.ts — one entry under Inference & providers

Reviewer

suggest_reviewers.py resolved only @warpdotdev/oss-maintainers (the root rule) for every source file behind this finding. Teams are never requested, so this PR opens with no requested reviewer.

Deferred findings from this run

  • Cloud agent coverage for a connected plan — not asserted either way (see Unverified claims).
  • POST /factory-setup/azure-devops-creation-requests — removed from warp-server; dead map entry pruned on the bookkeeping PR.
  • 24 potentially_stale_docs — unchanged and style_lint-owned.
  • Nine bug-fix bullets and two UI-affordance improvements from this release — all verdicted no, recorded on the bookkeeping PR.
  • The audit's changelog blind spot — changelog_review returned zero for the third consecutive release because changelog/2026.mdx lags behind the weekly-release PRs. Worth a skill fix.

Unverified claims

  • The page deliberately makes no claim about whether a connected ChatGPT plan applies to cloud agent runs. The credential is server-held rather than device-local, so the SuperGrok page's "tokens are local, therefore cloud runs use Warp credits" reasoning does not transfer. Confirm cloud-run support before documenting it.

No {/* VERIFY */} markers are present in the changed content.

Documentation risk

Risk: engineering-review-required
Rationale: New feature page making billing, credential-handling, data-sharing, and plan-eligibility claims.
Source files consulted: warp/app/Cargo.toml@c157d411d988, warp/app/src/features.rs@c157d411d988, warp/app/src/settings_view/warp_agent_page.rs@c157d411d988, warp/app/src/ai/llms.rs@c157d411d988, warp/app/src/ai/agent/mod.rs@c157d411d988, warp/app/src/ai/blocklist/view_util.rs@c157d411d988, warp/app/src/workspace/one_time_modal_model.rs@c157d411d988, warp/app/src/workspace/view/chatgpt_plan_modal/view.rs@c157d411d988, warp/crates/ai/src/api_keys.rs@c157d411d988, warp-server/logic/chatgpt_sign_in.go@0e74ab46c1c3, warp-server/logic/chatgpt_subscription_errors.go@0e74ab46c1c3, warp-server/logic/ai/llm/user_api_keys/util.go@0e74ab46c1c3, warp-server/logic/ai/llm/llm_output/subscription_sharing.go@0e74ab46c1c3, warp-server/logic/ai/model_choices/model_choices.go@0e74ab46c1c3, warp-server/logic/ai/multi_agent/request/model_config.go@0e74ab46c1c3, warp-server/model/types/ai/internal_llm_types.go@0e74ab46c1c3, warp-server/router/handlers/generate_multi_agent_output.go@0e74ab46c1c3, warp-server/logic/ai/ambient_agents/billing/platform.go@0e74ab46c1c3, warp-server/model/types/billing.go@0e74ab46c1c3
Requested engineering reviewers: none (only a team resolved)
Engineering review status: pending
Docs override: none

Co-Authored-By: Oz oz-agent@warp.dev

Sign in with ChatGPT shipped in v0.2026.09.30.08.29.stable_01 and is GA
in the public client repo (chatgpt_subscription is a default cargo
feature). Adds a page for it alongside the SuperGrok equivalent and
corrects the BYOK page, which asserted the feature did not exist.

Co-Authored-By: Warp <agent@warp.dev>
@cla-bot cla-bot Bot added the cla-signed label Oct 2, 2026
@vercel

vercel Bot commented Oct 2, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
docs Ready Ready Preview Oct 2, 2026 7:09pm UTC

Request Review

@hongyi-chen hongyi-chen added the warpy-factory Opened by the Warp factory agents label Oct 2, 2026 — with Warp Agent Staging

Copy link
Copy Markdown
Collaborator Author

This PR was generated with Warp.

Comment @warp-agent on this PR to send it follow-up work.

Co-Authored-By: Oz <oz-agent@warp.dev>
@warp-agent-staging
warp-agent-staging Bot marked this pull request as ready for review October 2, 2026 18:29
@warp-for-oss

warp-for-oss Bot commented Oct 2, 2026 •

Copy link
Copy Markdown
Contributor

@warp-agent-staging[bot]

I'm starting a first review of this pull request.

You can view the conversation on Warp.

I completed the review and no human review was requested for this pull request.

Comment /warp-agent-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review summary

The independent agent completed its review for this commit.

Findings

  • src/content/docs/agents/inference/bring-your-own-api-key.mdx:40 — [IMPORTANT] This PR makes src/content/docs/agents/getting-started/faqs.mdx lines 36-44 wrong: it still answers "No" to using a ChatGPT subscription with Warp. Requested change: update that FAQ so ChatGPT subscriptions connect and Claude subscriptions don't, and link to /agents/inference/chatgpt-subscription/.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:41 — [SUGGESTION] Step 4 ends with "so this step is what actually routes requests through your plan," which restates the previous sentence. Requested change: delete it and use "Choose" for the model picker.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:15 — [SUGGESTION] Eligibility wording ("requires that your team allows members to bring their own keys", and the BYOK row "Plans that allow member-provided keys") differs from the SuperGrok page and the BYOK note. Requested change: reuse the established availability wording or confirm it is accurate for ChatGPT.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:20 — [SUGGESTION] Server-side claims are not supported by any cited public source: credential stored for the Warp account (line 20), labels sent to OpenAI (line 28), Auto models always consuming credits (line 64), and Billing and Usage linking to ChatGPT usage (line 54). Requested change: record engineering or Docs validation in the PR body before merge, or remove any claim that can't be confirmed.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:47 — [NIT] Two consecutive blank lines before ## Usage and billing behavior. Requested change: remove one.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:52 — [SUGGESTION] "Warp does not consume any of your credits" repeats the opening paragraph, and line 64 bolds "always consume Warp credits" for emphasis. Requested change: state the credits behavior once and reserve bold for UI elements.
  • src/content/docs/agents/inference/bring-your-own-api-key.mdx:17 — [SUGGESTION] "The same section offers Continue with ChatGPT..." is appended to the SuperGrok paragraph and repeats line 11. Requested change: remove it or move the ChatGPT pointer out of the SuperGrok paragraph.

Verdict

Request changes

@warp-for-oss warp-for-oss Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overview

This PR adds a ChatGPT subscription inference page, links it from BYOK, and adds sidebar navigation. The docs contract checks pass, but the disconnect section overstates the post-disconnect billing path when a pasted OpenAI API key is configured.

Concerns

  • The disconnect instructions should preserve the earlier precedence rule: after disconnecting, OpenAI requests may use a pasted OpenAI API key before falling back to Warp credits.
  • One extra blank line should be removed to avoid markdownlint noise.

Verdict

Found: 0 critical, 1 important, 1 suggestions

Request changes

Comment /warp-agent-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

Comment thread src/content/docs/agents/inference/chatgpt-subscription.mdx Outdated
Comment thread src/content/docs/agents/inference/chatgpt-subscription.mdx Outdated
Co-Authored-By: Oz <oz-agent@warp.dev>

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review summary

The independent agent completed its review for this commit.

Findings

  • src/content/docs/agents/inference/chatgpt-subscription.mdx:10 — [IMPORTANT] Says plan usage counts against ChatGPT "instead of spending your Warp credits" (frontmatter line 4 repeats it), but bring-your-own-api-key.mdx says platform credits still apply to local runs on Business and Enterprise with BYOK, and the client treats a ChatGPT connection as a BYO credential. Requested change: verify cost resolution in warp-server/logic/ai/llm/user_api_keys/util.go, then state the platform-credit behavior for Business and Enterprise or scope the sentence to the credits it covers and cross-reference the BYOK page.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:52 — [NIT] The app labels the settings page "Billing and usage", not "Billing and Usage". Requested change: use Billing and usage.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:43 — [SUGGESTION] "The first time an eligible request uses the connected plan, Warp shows 'You're using your ChatGPT plan.'" The modal exists in chatgpt_plan_modal/view.rs, but the first-request trigger isn't in the cited files. Requested change: cite where the trigger is defined, or soften the sentence if it is not a once-only behavior.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:56 — [SUGGESTION] Try again, Manage ChatGPT usage, and Continue with Warp credits are bolded as UI labels, but the client takes the labels from the server (ChatGPTSubscriptionErrorAction.label). Requested change: confirm the exact strings against warp-server/logic/chatgpt_subscription_errors.go or list them under Unverified claims in the PR body.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:62 — [SUGGESTION] "Auto models always use Warp's own inference and consume Warp credits, even with a ChatGPT plan connected" is an absolute billing claim that the cited client files don't establish. Requested change: confirm against warp-server/logic/ai/model_choices/model_choices.go and keep it if it holds, otherwise rewrite it to match.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:70 — [SUGGESTION] The headings at lines 70 and 74 are in quotation marks but paraphrase the toast text in on_chatgpt_connect_failed. Requested change: quote the toast text exactly, and for line 70 state in the body that the toast also covers a Warp account that already has a different ChatGPT account linked.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:24 — [SUGGESTION] Hedges stack across "Connecting can make additional eligible OpenAI models selectable" (line 24), "may appear in your ChatGPT usage settings" (line 28), and "Warp may offer" (line 56). Requested change: state the behavior verified in source and keep one qualifier only where behavior varies by plan tier.

Verdict

Request changes

Co-Authored-By: Oz <oz-agent@warp.dev>

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review summary

The independent agent completed its review for this commit.

Findings

  • src/content/docs/agents/inference/chatgpt-subscription.mdx:43 — [IMPORTANT] The page quotes the status text "You're using your ChatGPT plan.", but the client source (app/src/ai/llms.rs, ByoKeySource::inference_label) renders "Using ChatGPT plan". Requested change: quote the exact UI string "Using ChatGPT plan" (or describe the status without quoting) and confirm where in the UI it appears.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:58 — [SUGGESTION] The labels Try again, Manage ChatGPT usage, and Continue with Warp credits come from server-authored error actions (warp-server chatgpt_subscription_errors.go) that this review could not verify. Line 54 also repeats the platform-credits rule that platform-credits.mdx owns. Requested change: confirm the exact action labels against warp-server source, and replace the line 54 paragraph with a one-sentence link to the platform credits page.

Verdict

Request changes

Co-Authored-By: Oz <oz-agent@warp.dev>

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review summary

The independent agent completed its review for this commit.

Findings

  • src/content/docs/agents/inference/chatgpt-subscription.mdx:38 — [IMPORTANT] The quoted row label "Use your OpenAI ChatGPT plan" does not match the app, where render_chatgpt_subscription_row in warp_agent_page.rs renders "OpenAI ChatGPT plan". Requested change: replace the quoted label with "OpenAI ChatGPT plan" in this step.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:68 — [IMPORTANT] The Disconnecting section repeats the same wrong quoted label, "Use your OpenAI ChatGPT plan". Requested change: replace it with "OpenAI ChatGPT plan".
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:22 — [SUGGESTION] "With a plan connected, eligible OpenAI requests from the Warp Agent count against your ChatGPT plan" repeats the intro sentence (line 10) and the first bullet in "Usage and billing behavior" (line 51). Requested change: state it once, keep the API-key precedence sentence, and delete the repeated clauses.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:15 — [SUGGESTION] The note covers plan eligibility but not why the row can be missing: the client shows it only when BYOK is enabled and team policy allows member keys. Requested change: add one sentence saying the row is hidden when an organization's admin disables member API keys, or link to the BYOK team-policy section.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:58 — [SUGGESTION] The labels "Try again", "Manage ChatGPT usage", and "Continue with Warp credits" are server-authored in warp-server/logic/chatgpt_subscription_errors.go, which this review could not read. Requested change: confirm the three labels against that file before merge, and correct any that differ.

Verdict

Request changes

Co-Authored-By: Oz <oz-agent@warp.dev>

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review summary

The independent agent completed its review for this commit.

Findings

  • src/content/docs/agents/inference/chatgpt-subscription.mdx:15 — [SUGGESTION] The eligibility claim ("10 or fewer employees", Terms of Service, Business or Enterprise for larger organizations) is copied from BYOK. The cited client source only gates on is_byo_api_key_enabled and the admin member-key policy, and the PR's Unverified claims section doesn't list it. Requested change: have the engineering reviewer confirm it for ChatGPT plans, or link to the BYOK eligibility wording instead of restating it. The :::caution in platform-credits.mdx also names only BYOK and custom endpoints.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:38 — [SUGGESTION] The sentence "In the Warp app, the full row label reads "Use your OpenAI ChatGPT plan," with an OpenAI logo…" describes label and logo placement, overlaps step 1, and uses a different label than step 1 ("OpenAI ChatGPT plan"). Requested change: delete the sentence and keep the label in step 1.
  • src/content/docs/agents/inference/chatgpt-subscription.mdx:60 — [SUGGESTION] The button labels Try again, Manage ChatGPT usage, and Continue with Warp credits are authored by warp-server, and the public client only renders the server-supplied label. The "Auto models always use Warp's own inference" claim on line 66 relies on the same private server files, so I could not verify either claim. Requested change: have the engineering reviewer confirm the labels and the Auto behavior, or describe the actions by function rather than quoting labels.

Verdict

Approve with nits


## How it works

When you connect your plan, Warp opens your browser to OpenAI's Sign in with ChatGPT consent screen. Approving the connection links your ChatGPT account to your Warp account and authorizes OpenAI to share a delegated credential with Warp. Unlike a BYOK API key or a [SuperGrok subscription](/agents/inference/grok-subscription/), Warp stores that credential for your Warp account rather than in your device's keychain.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think it's worth mentioning how the credential for the account is stored, that feels like an implementation detail that isn't important.

Data retention on OpenAI's side is governed by your own OpenAI account and its terms. Warp's Zero Data Retention agreements cover Warp-managed inference, so they do not apply to requests billed to your plan. See [Zero Data Retention and BYOK](/agents/inference/bring-your-own-api-key/#zero-data-retention-zdr-and-byok).
:::

## Connecting your ChatGPT plan

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In this part, I think it's important to distinguish between the two ways to connect to your ChatGPT plan. In the sign in / sign up flow, you can click "Continue with ChatGPT". This will create a Warp account with the same email as your ChatGPT account and automatically link them.
Image

The other way is the one you've described here, where you can link your existing Warp account to a ChatGPT plan.

Also, I think some screenshots here would be helpful for both cases.

This branch was successfully deployed

1 active deployment
Preview — 818fed03 Deployed Oct 2, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla-signed warpy-factory Opened by the Warp factory agents

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants