opencoredev/login-with-chatgpt 是一个 TypeScript 编写的开源 SDK,用于在你的应用中接入“使用 ChatGPT 登录”。它让终端用户使用自己的 ChatGPT 账号和订阅能力,应用后端通过代理路径安全地调用模型、发现可用模型,并支持与 Vercel AI SDK 集成进行文本流式生成及图像生成/编辑。项目采用 MIT 协议,适合希望让用户自带 ChatGPT 账号能力而不是由平台统一承担 OpenAI API 成本的开发者。
适用领域
AI 应用开发 / 身份认证 / OAuth 集成 / ChatGPT 生态 / Vercel AI SDK / LLM 应用基础设施 / 前后端全栈开发 / SaaS 工具开发
配置难度
中等。对于熟悉 TypeScript、React、Node.js、OAuth、Cookie 和 Vercel AI SDK 的开发者来说接入难度不高;但如果缺乏后端认证、安全 Cookie、代理路由和生产环境安全配置经验,仍需要仔细阅读文档并进行安全审查。
商业价值
未知
01
技术亮点
- 让用户自带 ChatGPT 订阅,平台方可减少统一支付 OpenAI API 费用的压力
- Token 默认不进入浏览器,只保存在服务端和 HttpOnly Cookie 会话机制之后,安全性设计较明确
- 支持模型发现,可以根据用户账号实际可用模型进行调用,避免假设所有用户都能使用同一个模型
- 与 Vercel AI SDK 兼容,可直接支持 streamText() 这类流式 AI 体验
- 支持图像生成和编辑,包括尺寸、质量、格式、mask 和 streaming previews 等能力
- 提供 React 组件和 hook,前端集成成本较低
- 提供 server、react、ai、core 等分层包,架构清晰
- MIT 开源协议,商业使用限制较少
- 提供 Agent skill,适合借助 Cursor、Claude Code、Codex 自动接入
02
目标用户
- 希望在产品中加入 ChatGPT 登录能力的 Web 开发者
- 正在构建 AI SaaS、AI 工具或聊天机器人的团队
- 使用 TypeScript、React、Node.js、Vercel AI SDK 的开发者
- 希望让用户自带 ChatGPT 订阅而不是由平台支付模型调用费用的创业团队
- 需要安全处理用户 ChatGPT Token 的后端开发者
- 希望快速集成 ChatGPT 模型选择、流式输出、图像生成能力的全栈工程师
03
配置要求
- Node.js 18+
- ESM 模块环境
- TypeScript 项目更友好,包内自带类型定义
- 需要后端服务承载 LoginWithChatGPT handler,不能只做纯前端集成
- 需要正确配置 OAuth 登录流程相关参数和回调路径
- 需要配置 HttpOnly Cookie,用于保存会话,避免 Token 暴露给浏览器 JavaScript
- 生产环境需要使用 HTTPS
- 需要设置安全的 Cookie 属性,如 Secure、HttpOnly、SameSite 等
- 需要配置代理路径,让模型请求通过后端完成
- 如果部署到 Vercel、Next.js 或其他 Node.js 服务,需要确认路由和运行时兼容性
- 用户必须拥有可用的 ChatGPT 账号,部分能力可能依赖用户订阅等级或账号权限
04
适用场景
- 在 AI SaaS 中提供“Login with ChatGPT”按钮,让用户用自己的 ChatGPT 账号授权
- 根据用户 ChatGPT 账号自动发现其可用模型,避免硬编码模型名称
- 通过后端代理安全调用 ChatGPT Responses API 或相关能力
- 与 Vercel AI SDK 的 streamText() 集成,实现前端流式文本生成
- 构建用户自带订阅的 AI 聊天应用、写作工具、代码助手或图像生成工具
- 为多用户 AI 产品降低平台方统一购买 API Token 的成本
- 在不暴露 Token 到浏览器的前提下使用 ChatGPT 账号能力
- 使用 Claude Code、Cursor 或 Codex 的 agent skill 自动完成 SDK 接入
05
部署与配置
- 确保项目运行环境为 Node.js 18+,并支持 ESM。
- 使用 bun 安装核心依赖:bun add @opencoredev/loginwithchatgpt-server @opencoredev/loginwithchatgpt-react @opencoredev/loginwithchatgpt-ai
- 也可以使用 npm 或 pnpm 安装对应包。
- 在后端挂载 @opencoredev/loginwithchatgpt-server 提供的 handler,用于处理 login、session、logout、models 和 responses proxy。
- 在 React 前端中使用 @opencoredev/loginwithchatgpt-react 提供的 <LoginWithChatGPT /> 按钮或 hook。
- 如使用 Vercel AI SDK,引入 @opencoredev/loginwithchatgpt-ai provider 并通过后端代理进行 streamText() 调用。
- 根据官方 quickstart 文档配置回调地址、Cookie、生产环境安全参数等。
- 可选:如果使用 Claude Code、Cursor 或 Codex,可执行 npx skills add opencoredev/login-with-chatgpt,然后让 Agent 自动接入 Login with ChatGPT。
06
风险与注意事项
- ChatGPT 账号登录及授权能力可能受 OpenAI 官方策略、接口变化或账号风控影响,长期稳定性需要验证
- 项目星标数约 256,社区规模不大,生态成熟度和长期维护能力需要观察
- OAuth、Token 刷新、代理调用等流程涉及安全风险,错误配置可能导致会话泄露或权限滥用
- 用户账号能力不一致,不同用户可用模型、订阅等级、地区限制可能导致产品体验不统一
- 依赖用户自带 ChatGPT 订阅,适合特定商业模式,但不适合希望完全掌控模型调用和计费的平台
- 如果后端代理未做好速率限制、审计和异常处理,可能引发滥用风险
- README 未展示完整配置示例,实际接入需要阅读 docs/quickstart、安全模型和生产清单
- 中国大陆开发者可能面临 ChatGPT 账号、网络访问、支付和合规方面的问题
- 涉及用户账号授权,产品上线前需要明确隐私政策、用户协议和数据处理边界
2026-07-15
第28名
新收录 · github_search