Repository navigation
feat(models): sign in with a ChatGPT plan in one click, beside Use a server - #2259
Merged
AnishSarkar22 merged 2 commits intoOct 14, 2026
Merged
Conversation
…server Settings' Add model page and onboarding's text step offer Use your ChatGPT plan above Use a server, wherever a plan can fill the slot, instead of only inside the server dialog's provider list. One click signs in, the sign-in's progress shows in the row, and the new connection's models open as a server's do; a plan already connected offers Show models.
A new ChatGPT connection is made only through Use your ChatGPT plan, now below Use a server in Settings and onboarding; the server dialog's provider list offers ChatGPT only while editing one, so signing in again still works. The form no longer needs the slot it was opened for. In onboarding the last row keeps clear of the scroll edge, the rows sit 20px apart, and the ChatGPT button is centred as the server row's is.
|
@AnishSarkar22 is attempting to deploy a commit to the Rohan Verma's projects Team on Vercel. A member of the Team first needs to authorize it. |
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configuration
📒 Files selected for processing: 29
✨ Finishing Touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This was referenced Oct 16, 2026
AnishSarkar22
pushed a commit
to AnishSarkar22/SurfSense
that referenced
this pull request
Oct 16, 2026
The 2.2.2 entry for the website's changelog: sources ready in seconds (MODSetter#2289), speech recognition for recordings and voice input (MODSetter#2264, MODSetter#2273), plugin search, permissions, licensing and speed (MODSetter#2256, MODSetter#2260, MODSetter#2261, MODSetter#2262, MODSetter#2270, MODSetter#2291), ChatGPT plan sign-in (MODSetter#2259), MP3 podcasts (MODSetter#2183), and the fixes, known issues and developer notes since v2.2.1.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
servesincludes the slot, so only for text generation.chatgpt-subscription.mdand the Add model passage inlocal-models/catalog.md.Why
A ChatGPT plan is the quickest way to a chat model for many users, but it was hidden as the second option in a provider dropdown inside the "Connect a server" dialog. Onboarding never mentioned it.
Fixes #
How to test
cd surfsense_local/frontend && pnpm vitest run --environment jsdom src/features/settings src/features/onboarding src/features/models: 185 passed.chatgpt-option.test.tsx: hidden where a plan can't fill the slot; one-click sign-in hands over the new connection; Cancel during sign-in; a failure can be retried; an account already connected offers Show models.pnpm tsc -b, eslint,pnpm translations:verifyandnode scripts/check_translations.mjspass.High-level PR Summary
This PR makes signing in with a ChatGPT Plus/Pro subscription more discoverable by adding a dedicated Use your ChatGPT plan option directly beside Use a server on the Add model page and during onboarding. Previously, users had to navigate through 4-5 clicks within the server connection dialog to find this option. The new one-click flow opens the browser for authentication and automatically displays the connected account's models upon success. The ChatGPT provider has been removed from the server dialog's provider list for new connections (though it remains visible when editing existing ChatGPT connections). All changes include comprehensive test coverage and translations for 9 languages.
⏱️ Estimated Review Time: 15-30 minutes
💡 Review Order Suggestion
docs/architecture/chatgpt-subscription.mddocs/architecture/local-models/catalog.mdsurfsense_local/frontend/src/components/ui/icons.tsxsurfsense_local/frontend/src/features/models/remote/connections/chatgpt/sign-in-progress.tsxsurfsense_local/frontend/src/features/models/remote/connections/chatgpt/chatgpt-option.tsxsurfsense_local/frontend/src/features/models/remote/connections/chatgpt/chatgpt-option.test.tsxsurfsense_local/frontend/src/features/models/remote/connections/chatgpt/chatgpt-sign-in.tsxsurfsense_local/frontend/src/features/models/remote/connections/connection-form.tsxsurfsense_local/frontend/src/features/models/remote/connections/connection-form.test.tsxsurfsense_local/frontend/src/features/models/add-model/add-model-options.tsxsurfsense_local/frontend/src/features/models/add-model/server-card.tsxsurfsense_local/frontend/src/features/models/remote/connections/connection-dialog.tsxsurfsense_local/frontend/src/features/onboarding/model-step/server/server-option.tsxsurfsense_local/frontend/src/features/onboarding/model-step/server/server-path.tsxsurfsense_local/frontend/src/features/onboarding/model-step/model-step.tsxsurfsense_local/frontend/src/features/settings/models/model-slot-settings.tsxsurfsense_local/frontend/src/features/settings/models/chat-models-settings.test.tsxsurfsense_local/frontend/src/features/onboarding/onboarding-page.test.tsxsurfsense_local/frontend/src/features/models/remote/connections/chatgpt/chatgpt-sign-in.test.tsxsurfsense_local/frontend/translations/en.jsonsurfsense_local/frontend/translations/de.jsonsurfsense_local/frontend/translations/es.jsonsurfsense_local/frontend/translations/fr.jsonsurfsense_local/frontend/translations/hi.jsonsurfsense_local/frontend/translations/ja.jsonsurfsense_local/frontend/translations/ko.jsonsurfsense_local/frontend/translations/pt-BR.jsonsurfsense_local/frontend/translations/ru.jsonsurfsense_local/frontend/translations/zh-CN.jsonSummary by CodeRabbit