[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-KudoAI--chatgpt.js":3,"tool-KudoAI--chatgpt.js":62},[4,18,26,36,46,54],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",159267,2,"2026-04-17T11:29:14",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":42,"last_commit_at":43,"category_tags":44,"status":17},8272,"opencode","anomalyco\u002Fopencode","OpenCode 是一款开源的 AI 编程助手（Coding Agent），旨在像一位智能搭档一样融入您的开发流程。它不仅仅是一个代码补全插件，而是一个能够理解项目上下文、自主规划任务并执行复杂编码操作的智能体。无论是生成全新功能、重构现有代码，还是排查难以定位的 Bug，OpenCode 都能通过自然语言交互高效完成，显著减少开发者在重复性劳动和上下文切换上的时间消耗。\n\n这款工具专为软件开发者、工程师及技术研究人员设计，特别适合希望利用大模型能力来提升编码效率、加速原型开发或处理遗留代码维护的专业人群。其核心亮点在于完全开源的架构，这意味着用户可以审查代码逻辑、自定义行为策略，甚至私有化部署以保障数据安全，彻底打破了传统闭源 AI 助手的“黑盒”限制。\n\n在技术体验上，OpenCode 提供了灵活的终端界面（Terminal UI）和正在测试中的桌面应用程序，支持 macOS、Windows 及 Linux 全平台。它兼容多种包管理工具，安装便捷，并能无缝集成到现有的开发环境中。无论您是追求极致控制权的资深极客，还是渴望提升产出的独立开发者，OpenCode 都提供了一个透明、可信",144296,1,"2026-04-16T14:50:03",[13,45],"插件",{"id":47,"name":48,"github_repo":49,"description_zh":50,"stars":51,"difficulty_score":32,"last_commit_at":52,"category_tags":53,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108322,"2026-04-10T11:39:34",[14,15,13],{"id":55,"name":56,"github_repo":57,"description_zh":58,"stars":59,"difficulty_score":32,"last_commit_at":60,"category_tags":61,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[45,13,15,14],{"id":63,"github_repo":64,"name":65,"description_en":66,"description_zh":67,"ai_summary_zh":68,"readme_en":69,"readme_zh":70,"quickstart_zh":71,"use_case_zh":72,"hero_image_url":73,"owner_login":74,"owner_name":74,"owner_avatar_url":75,"owner_bio":76,"owner_company":77,"owner_location":77,"owner_email":78,"owner_twitter":77,"owner_website":79,"owner_url":80,"languages":81,"stars":98,"forks":99,"last_commit_at":100,"license":101,"difficulty_score":42,"env_os":102,"env_gpu":103,"env_ram":102,"env_deps":104,"category_tags":108,"github_topics":110,"view_count":32,"oss_zip_url":77,"oss_zip_packed_at":77,"status":17,"created_at":130,"updated_at":131,"faqs":132,"releases":168},8536,"KudoAI\u002Fchatgpt.js","chatgpt.js","🤖 A powerful, open source client-side JavaScript library for ChatGPT","chatgpt.js 是一款功能强大的开源客户端 JavaScript 库，专为与 ChatGPT 交互而设计。它旨在帮助开发者轻松地在网页端集成和控制 ChatGPT 的功能，无需依赖复杂的后端服务或官方 API 密钥，从而降低了使用门槛并提升了灵活性。\n\n对于希望在自己的网站、浏览器扩展或用户脚本中嵌入 ChatGPT 能力的技术人员来说，chatgpt.js 解决了直接操作页面元素和自动化交互的难题。通过提供简洁易用的 API，它能够自动识别聊天界面、发送消息、获取回复以及监控对话状态，让自动化流程变得简单可靠。\n\n这款工具特别适合前端开发者、浏览器插件创作者以及热衷于编写 Tampermonkey 等用户脚本的进阶用户。如果你正在构建需要与 ChatGPT 深度集成的应用，或者想要定制个性化的聊天体验，chatgpt.js 能提供坚实的技术支持。\n\n其独特亮点在于完全运行在客户端，轻量级且零依赖，最小化后体积小巧，同时保持了高质量的代码标准和安全性。此外，项目拥有活跃的多语言社区支持，文档完善，便于全球开发者快速上手。无论是原型开发还是生产环境部署，chatgpt.js 都是一","chatgpt.js 是一款功能强大的开源客户端 JavaScript 库，专为与 ChatGPT 交互而设计。它旨在帮助开发者轻松地在网页端集成和控制 ChatGPT 的功能，无需依赖复杂的后端服务或官方 API 密钥，从而降低了使用门槛并提升了灵活性。\n\n对于希望在自己的网站、浏览器扩展或用户脚本中嵌入 ChatGPT 能力的技术人员来说，chatgpt.js 解决了直接操作页面元素和自动化交互的难题。通过提供简洁易用的 API，它能够自动识别聊天界面、发送消息、获取回复以及监控对话状态，让自动化流程变得简单可靠。\n\n这款工具特别适合前端开发者、浏览器插件创作者以及热衷于编写 Tampermonkey 等用户脚本的进阶用户。如果你正在构建需要与 ChatGPT 深度集成的应用，或者想要定制个性化的聊天体验，chatgpt.js 能提供坚实的技术支持。\n\n其独特亮点在于完全运行在客户端，轻量级且零依赖，最小化后体积小巧，同时保持了高质量的代码标准和安全性。此外，项目拥有活跃的多语言社区支持，文档完善，便于全球开发者快速上手。无论是原型开发还是生产环境部署，chatgpt.js 都是一个值得信赖的选择。","\u003Cdiv id=\"repo-cover\" align=\"center\">\n\n\u003Ca id=\"top\">\u003C\u002Fa>\n\n\u003Cdiv align=\"center\">\n    \u003Ch6>\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\">\n            \u003Cpicture>\n                \u003Csource type=\"image\u002Fsvg+xml\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Ficons\u002Fearth\u002Fwhite\u002Ficon32.svg?v=e638eac\">\n               \u003Cimg height=14 src=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Ficons\u002Fearth\u002Fblack\u002Ficon32.svg?v=e638eac\">\n            \u003C\u002Fpicture>\n        \u003C\u002Fa>\n        English |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fzh-cn#readme\">简体中文\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fzh-tw#readme\">繁體中文\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fja#readme\">日本\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fko#readme\">한국인\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fhi#readme\">हिंदी\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fne#readme\">नेपाली\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fde#readme\">Deutsch\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fes#readme\">Español\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Ffr#readme\">Français\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fit#readme\">Italiano\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fnl#readme\">Nederlands\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fpt#readme\">Português\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fru#readme\">Английский\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fvi#readme\">Việt\u003C\u002Fa>\n    \u003C\u002Fh6>\n\u003C\u002Fdiv>\n\n\u003Cbr>\n\n\u003Ca href=\"https:\u002F\u002Fchatgpt.js.org\u002F?utm_source=chatgpt.js-github&utm_medium=referral&utm_content=cover-logo\">\n    \u003Cpicture>\n        \u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Flogos\u002Fchatgpt.js\u002Fwith-reflection\u002Fdarkmode\u002Flogo-6014x1334.png?v=8169c77\">\n        \u003Cimg width=800 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_9276a62fe315.png\">\n    \u003C\u002Fpicture>\n\u003C\u002Fa>\n\n### 🤖 A powerful client-side JavaScript library for ChatGPT\n\n\u003C\u002Fdiv>\n\n\u003Cbr>\n\n\u003Cdiv id=\"shields\" align=\"center\">\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fblob\u002Fmain\u002FLICENSE.md\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-orange.svg?logo=internetarchive&logoColor=white&labelColor=464646&style=for-the-badge\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@kudoai\u002Fchatgpt.js\u002Fv\u002Flatest\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002F%40kudoai%2Fchatgpt.js?logo=npm&logoColor=white&labelColor=464646&color=blue&style=for-the-badge&label=Latest+Release\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.9.0\u002Fdist\u002Fchatgpt.min.js\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fsize\u002FKudoAI\u002Fchatgpt.js\u002Fdist\u002Fchatgpt.min.js?branch=v3.9.0&label=Minified%20Size&logo=databricks&logoColor=white&labelColor=464646&color=ff69b4&style=for-the-badge\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fwww.codefactor.io\u002Frepository\u002Fgithub\u002Fkudoai\u002Fchatgpt.js\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fcodefactor\u002Fgrade\u002Fgithub\u002Fkudoai\u002Fchatgpt.js?label=Code+Quality&logo=codefactor&logoColor=white&labelColor=464646&color=1acc6c&style=for-the-badge\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fsonarcloud.io\u002Fcomponent_measures?metric=vulnerabilities&id=kudoai_chatgpt.js\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fdynamic\u002Fjson?url=https%3A%2F%2Fsonarcloud.io%2Fapi%2Fmeasures%2Fcomponent%3Fcomponent%3Dkudoai_chatgpt.js%26metricKeys%3Dvulnerabilities&query=%24.component.measures.0.value&style=for-the-badge&logo=sonar&logoColor=white&labelColor=464646&label=Vulnerabilities&color=gold\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fsindresorhus\u002Fawesome-chatgpt#javascript\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FMentioned_in-Awesome-af68ff?logo=awesomelists&logoColor=white&labelColor=464646&style=for-the-badge\">\u003C\u002Fa>\n\u003Ca href=\"#\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FjsDelivr_Requests-2,000,000+-2bbbd8.svg?logo=jsdelivr&logoColor=white&labelColor=464646&style=for-the-badge\">\u003C\u002Fa>\n\n\u003C\u002Fdiv>\n\n\u003Cbr>\u003Cbr>\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv id=\"intro\">\n\n## 💡 About\n\n\u003C\u002Fdiv>\n\n\u003Cspan style=\"color: white\">\u003Cb>chatgpt.js\u003C\u002Fb>\u003C\u002Fspan> is a \u003Cspan style=\"color: white\">powerful\u003C\u002Fspan> JavaScript library that allows for \u003Cspan style=\"color: white\">super easy\u003C\u002Fspan> interaction w\u002F the ChatGPT DOM.\n\n- Feature-rich\n- Object-oriented\n- Easy-to-use\n- Lightweight (yet optimally performant)\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv id=\"golden-sponsors\" align=\"center\">\n    \u003Cbr>\n    \u003Ch3>Supported by:\u003C\u002Fh3>\n    \u003Cdiv id=\"creatives\">\n        \u003Cdiv id=\"warp\">\n            \u003Cbr>\n            \u003Ca href=\"https:\u002F\u002Fwww.warp.dev\u002Fchatgptjs\" target=\"_blank\" rel=\"noopener\">\n                \u003Cimg width=\"600\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_327f646c304c.png\">\n            \u003C\u002Fa>\n            \u003Ch3>\u003Ca href=\"https:\u002F\u002Fwww.warp.dev\u002Fchatgptjs\" target=\"_blank\" rel=\"noopener\">\n                Warp, the AI Devtool that lives in your terminal\u003C\u002Fa>\u003C\u002Fh3>\n            \u003Ci>\u003Ca href=\"https:\u002F\u002Fwww.warp.dev\u002Fchatgptjs\" target=\"_blank\" rel=\"noopener\">\n                Available for MacOS, Linux, & Windows\u003C\u002Fa>\u003C\u002Fi>\n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \u003Cbr>\u003Cbr>\u003Cbr>\n\u003C\u002Fdiv>\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv id=\"importing\">\n\n## ⚡ Importing the library\n\n\u003C\u002Fdiv>\n\n> [!NOTE]\n> To always import the latest version (not recommended in production!) replace the versioned jsDelivr URL with: `https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002F@kudoai\u002Fchatgpt.js\u002Fchatgpt.min.js`\n\n### ES11 (2020):\n\n```js\n(async () => {\n    await import('https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002F@kudoai\u002Fchatgpt.js@3.9.0\u002Fdist\u002Fchatgpt.min.js');\n    \u002F\u002F Your code here...\n})();\n```\n\n### ES5 (2009):\n\n```js\nvar xhr = new XMLHttpRequest();\nxhr.open('GET', 'https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002F@kudoai\u002Fchatgpt.js@3.9.0\u002Fdist\u002Fchatgpt.min.js');\nxhr.onload = function () {\n    if (xhr.status === 200) {\n        var chatgptJS = document.createElement('script');\n        chatgptJS.textContent = xhr.responseText;\n        document.head.append(chatgptJS);\n        yourCode(); \u002F\u002F runs your code\n    }\n};\nxhr.send();\n\nfunction yourCode() {\n    \u002F\u002F Your code here...\n}\n```\n\n### \u003Cimg style=\"margin: 0 2px -0.065rem 0\" height=17 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_de91887e0385.png\">\u003Cimg style=\"margin: 0 2px -0.035rem 1px\" height=17.5 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_fd4a2a7d156d.png\"> Greasemonkey:\n\n> [!NOTE]\n> To use a starter template: [kudoai\u002Fchatgpt.js-greasemonkey-starter](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js-greasemonkey-starter)\n\n```js\n...\n\u002F\u002F @require https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002F@kudoai\u002Fchatgpt.js@3.9.0\u002Fdist\u002Fchatgpt.min.js\n\u002F\u002F ==\u002FUserScript==\n\n\u002F\u002F Your code here...\n```\n\n### \u003Cimg style=\"margin: 0 2px -1px 0\" height=16 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_750ada42bd3b.png\"> Chrome:\n\n> [!NOTE]\n> To use a starter template: [kudoai\u002Fchatgpt.js-chrome-starter](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js-chrome-starter)\n\nSince Google does not allow remote code, importing chatgpt.js locally is required:\n\n1. Save https:\u002F\u002Fraw.githubusercontent.com\u002FKudoAI\u002Fchatgpt.js\u002Fmain\u002Fchatgpt.js to a subdirectory (`lib` in this example)\n\n2. In project's (V3) `manifest.json`, add `lib\u002Fchatgpt.js` as a web accessible resource\n```json\n    \"web_accessible_resources\": [{\n        \"matches\": [\"\u003Call_urls>\"],\n        \"resources\": [\"lib\u002Fchatgpt.js\"]\n    }],\n```\n\n3. In scripts that need `chatgpt.js` (foreground\u002Fbackground alike), import it like so:\n```js\n(async () => {\n    await import(chrome.runtime.getURL('lib\u002Fchatgpt.js'));\n    \u002F\u002F Your code here...\n})();\n```\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv id=\"npm\">\n\n## 💾 Downloading via npm:\n\n\u003C\u002Fdiv>\n\nTo download **chatgpt.js** for local customization, run the following command in your project's root:\n\n```bash\nnpm install @kudoai\u002Fchatgpt.js\n```\n\nAfter installation, navigate to `node_modules\u002F@kudoai\u002Fchatgpt.js` to find the library source.\n\n\u003C\u002Fdiv>\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv id=\"usage\">\n\n## 💻 Usage\n\n\u003C\u002Fdiv>\n\n**chatgpt.js** was written w\u002F ultra flexibility in mind.\n\nFor example:\n\n```js\nchatgpt.getLastResponse();\nchatgpt.getLastReply();\nchatgpt.response.getLast();\nchatgpt.get('reply', 'last');\n```\n\nEach call equally fetches the last response. If you think it works, it probably will... so just type it!\n\nIf it didn't, check out the extended [userguide](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fblob\u002Fv3.9.0\u002Fdocs\u002FUSERGUIDE.md), or simply submit an [issue](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fissues) or [PR](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpulls) and it will be integrated, ezpz!\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv id=\"showcase\">\n\n## 🤖 Made with chatgpt.js\n\n\u003C\u002Fdiv>\n\nhttps:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fassets\u002F10906554\u002Ff53c740f-d5e0-49b6-ae02-3b3140b0f8a4\n\n#\n\n### \u003Cpicture>\u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Famazongpt.kudoai.com\u002Fassets\u002Fimages\u002Ficons\u002Fapp\u002Fwhite\u002Ficon48.png\">\u003Cimg width=20 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_6a521175478c.png\">\u003C\u002Fpicture> [AmazonGPT](https:\u002F\u002Famazongpt.kudoai.com) &nbsp;\u003Ca href=\"https:\u002F\u002Famazongpt.kudoai.com\u002Fassets\u002Fwolfram-award\u002Fletter.pdf\" target=\"_blank\" rel=\"noopener\">\u003Cimg height=20 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_c4d3643aab82.png\" style=\"margin:0 0 -2px 5px\">\u003C\u002Fa>\n\n> Add AI chat & product\u002Fcategory summaries to Amazon shopping, powered by the latest LLMs!\n\u003Cbr>[Install](https:\u002F\u002Fraw.githubusercontent.com\u002FKudoAI\u002Famazongpt\u002Fmain\u002Fgreasemonkey\u002Famazongpt.user.js) \u002F\n[Readme](https:\u002F\u002Famazongpt.kudoai.com\u002F#readme) \u002F\n[Discuss](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Famazongpt\u002Fdiscussions)\n\n### \u003Cpicture>\u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fassets.autoclearchatgpt.com\u002Fimages\u002Ficons\u002Fopenai\u002Fwhite\u002Ficon48.png?cece513\">\u003Cimg width=21 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_c8990222af51.png\">\u003C\u002Fpicture> [Autoclear ChatGPT History](https:\u002F\u002Fautoclearchatgpt.com) &nbsp;\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fawesome-scripts\u002Fawesome-userscripts#-chatgpt\" target=\"_blank\" rel=\"noopener\">\u003Cimg src=\"https:\u002F\u002Fassets.autoclearchatgpt.com\u002Fimages\u002Fbadges\u002Fawesome\u002Fbadge.svg?2c0d9fc\" style=\"margin:0 0 -2px 5px\">\u003C\u002Fa>\n\n> Auto-clear your ChatGPT query history for maximum privacy.\n\u003Cbr>[Install](https:\u002F\u002Fdocs.autoclearchatgpt.com\u002F#-installation) \u002F\n[Readme](https:\u002F\u002Fdocs.autoclearchatgpt.com\u002F#readme) \u002F\n[Discuss](https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fautoclear-chatgpt-history\u002Fdiscussions)\n\n### \u003Cimg width=24 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_6b2d863fb8f4.png\"> [BraveGPT](https:\u002F\u002Fbravegpt.com) &nbsp;\u003Ca href=\"https:\u002F\u002Fwww.producthunt.com\u002Fposts\u002Fbravegpt\" target=\"_blank\" rel=\"noopener\">\u003Cimg src=\"https:\u002F\u002Fapi.producthunt.com\u002Fwidgets\u002Fembed-image\u002Fv1\u002Ffeatured.svg?post_id=385630&theme=light\" style=\"width: 112px; height: 24px; margin:0 0 -4px 5px;\" width=\"112\" height=\"24\" \u002F>\u003C\u002Fa>\n\n> Add AI chat & search summaries to Brave Search, powered by the latest LLMs!\n\u003Cbr>[Install](https:\u002F\u002Fdocs.bravegpt.com\u002F#-installation) \u002F\n[Readme](https:\u002F\u002Fdocs.bravegpt.com\u002F#readme) \u002F\n[Discuss](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fbravegpt\u002Fdiscussions)\n\n### \u003Cpicture>\u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fassets.chatgptautocontinue.com\u002Fimages\u002Ficons\u002Fcontinue-symbol\u002Fwhite\u002Ficon48.png?v=61c4f16\">\u003Cimg width=21 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_a524060fa218.png\">\u003C\u002Fpicture> [ChatGPT Auto-Continue ⏩](https:\u002F\u002Fchatgptautocontinue.com) &nbsp;\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fawesome-scripts\u002Fawesome-userscripts#-chatgpt\" target=\"_blank\" rel=\"noopener\">\u003Cimg src=\"https:\u002F\u002Fassets.chatgptautocontinue.com\u002Fimages\u002Fbadges\u002Fawesome\u002Fbadge.svg?3c80c0c\" style=\"margin:0 0 -3px 3px\">\u003C\u002Fa>\n\n> Automatically continue generating answers when ChatGPT responses get cut-off.\n\u003Cbr>[Install](https:\u002F\u002Fdocs.chatgptautocontinue.com\u002F#-installation) \u002F\n[Readme](https:\u002F\u002Fdocs.chatgptautocontinue.com\u002F#readme) \u002F\n[Discuss](https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fchatgpt-auto-continue\u002Fdiscussions)\n\n### \u003Cpicture>\u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fadamlui\u002Fchatgpt-auto-talk@eb7f285\u002Fassets\u002Fimages\u002Ficons\u002Fopenai\u002Fwhite\u002Ficon64.png\">\u003Cimg width=21 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_5fbc92f52a2f.png\">\u003C\u002Fpicture> [ChatGPT Auto-Talk 📣](https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fchatgpt-auto-talk)\n\n> Auto-play ChatGPT responses.\n\u003Cbr>[Install](https:\u002F\u002Fgm.chatgptautotalk.com) \u002F\n[Readme](https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fchatgpt-auto-talk#readme) \u002F\n[Discuss](https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fchatgpt-auto-talk\u002Fdiscussions)\n\n### \u003Cpicture>\u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fassets.chatgptautorefresh.com\u002Fimages\u002Ficons\u002Fopenai\u002Fwhite\u002Ficon48.png?a45cf1e\">\u003Cimg width=21 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_c8990222af51.png\">\u003C\u002Fpicture> [ChatGPT Auto Refresh ↻](https:\u002F\u002Fchatgptautorefresh.com) &nbsp;\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fawesome-scripts\u002Fawesome-userscripts#-chatgpt\" target=\"_blank\" rel=\"noopener\">\u003Cimg src=\"https:\u002F\u002Fassets.chatgptautorefresh.com\u002Fimages\u002Fbadges\u002Fawesome\u002Fbadge.svg?1080f44\" style=\"margin:0 0 -2px 5px\">\u003C\u002Fa>\n\n> Keeps ChatGPT sessions fresh to eliminate network errors + Cloudflare checks.\n\u003Cbr>[Install](https:\u002F\u002Fdocs.chatgptautorefresh.com\u002F#-installation) \u002F\n[Readme](https:\u002F\u002Fdocs.chatgptautorefresh.com\u002F#readme) \u002F\n[Discuss](https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fchatgpt-auto-refresh\u002Fdiscussions)\n\n### \u003Cimg width=23 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_d22578a67e98.png\"> [DuckDuckGPT](https:\u002F\u002Fduckduckgpt.com) &nbsp;\u003Ca href=\"https:\u002F\u002Fwww.producthunt.com\u002Fposts\u002Fduckduckgpt\" target=\"_blank\" rel=\"noopener\">\u003Cimg src=\"https:\u002F\u002Fapi.producthunt.com\u002Fwidgets\u002Fembed-image\u002Fv1\u002Ffeatured.svg?post_id=379261&theme=light\" style=\"width: 112px; height: 24px; margin:0 0 -4px 5px;\" width=\"112\" height=\"24\" \u002F>\u003C\u002Fa>\n\n> Add AI chat & search summaries to DuckDuckGo, powered by the latest LLMs!\n\u003Cbr>[Install](https:\u002F\u002Fdocs.ddgpt.com\u002F#-installation) \u002F\n[Readme](https:\u002F\u002Fdocs.ddgpt.com\u002F#readme) \u002F\n[Discuss](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fduckduckgpt\u002Fdiscussions)\n\n### \u003Cpicture>\u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002FKudoAI\u002Fgooglegpt\u002Fassets\u002Fimages\u002Ficons\u002Fapp\u002Fwhite\u002Ficon48.png\">\u003Cimg width=21 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_ae8109c043f1.png\">\u003C\u002Fpicture> [GoogleGPT](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fgooglegpt\u002F#readme) &nbsp;\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fawesome-scripts\u002Fawesome-userscripts#-chatgpt\" target=\"_blank\" rel=\"noopener\">\u003Cimg src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002FKudoAI\u002Fgooglegpt@e442863\u002Fassets\u002Fimages\u002Fbadges\u002Fawesome\u002Fbadge.svg\" style=\"margin:0 0 -2px 5px\">\u003C\u002Fa>\n\n> Add AI chat & search summaries to Google Search, powered by the latest LLMs!\n\u003Cbr>[Install](https:\u002F\u002Fraw.githubusercontent.com\u002FKudoAI\u002Fgooglegpt\u002Frefs\u002Fheads\u002Fmain\u002Fgreasemonkey\u002Fgooglegpt.user.js) \u002F\n[Readme](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fgooglegpt\u002F#readme) \u002F\n[Discuss](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fgooglegpt\u002Fdiscussions)\n\n### \u003Cimg width=23 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_4bd627409886.png\"> \u003Ca href=\"https:\u002F\u002Fmicz.it\u002Fthunderdbird-addon-thunderai\u002F?utm_source=chatgpt.js-github&utm_medium=referral&utm_content=showcase-link\" target=\"_blank\" rel=\"noopener\">ThunderAI\u003C\u002Fa> &nbsp;\u003Ca href=\"https:\u002F\u002Faddons.thunderbird.net\u002Fthunderbird\u002Faddon\u002Fthunderai\u002Freviews\" target=\"_blank\" rel=\"noopener\">\u003Cpicture>\u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Fbadges\u002F5-star\u002Fblue-stars.png?v=e638eac\">\u003Cimg width=92 alt=\"[Rated 5-stars]\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_a8d29c8edf74.png\">\u003C\u002Fpicture>\u003C\u002Fa>\n\n> Use ChatGPT in Thunderbird to enhance you emails, even with a free account!\n\u003Cbr>[Install](https:\u002F\u002Faddons.thunderbird.net\u002Fthunderbird\u002Faddon\u002Fthunderai\u002F) \u002F\n[Readme](https:\u002F\u002Fgithub.com\u002Fmicz\u002FThunderAI#readme) \u002F\n[Support](https:\u002F\u002Fgithub.com\u002Fmicz\u002FThunderAI\u002Fissues)\n\n\u003Cp>\u003Cbr>\n\n\u003Ca href=\"https:\u002F\u002Fchatgptinfinity.com\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg width=555 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_c89d4efe14ed.png\">\n\u003C\u002Fa>\n\n\u003Cp>\u003Cbr>\n\n\u003Ca href=\"https:\u002F\u002Fchatgptwidescreen.com\u002F?utm_source=chatgpt.js-github&utm_medium=referral&utm_content=showcase-tile\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg width=555 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_6724786146e3.png\">\n\u003C\u002Fa>\n\n\u003Cp>\u003Cbr>\n\n\u003Cp id=\"showcase-cta\">\nIf you've made something w\u002F chatgpt.js you want to share, email \u003Ca href=\"mailto:showcase@chatgptjs.org\">showcase@chatgptjs.org\u003C\u002Fa> or just open a \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpulls\" target=\"_blank\" rel=\"noopener\">pull request\u003C\u002Fa>!\n\u003C\u002Fp>\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv id=\"contributors\">\n\n## 🧠 Contributors\n\n\u003C\u002Fdiv>\n\nThis library exists thanks to code, translations, issues & ideas from the following contributors:\n\n\u003Cdiv align=\"center\">\u003Cbr>\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fadamlui\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@adamlui\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_a3cb5285154a.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmefengl\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@mefengl\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_e46edf64b623.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FZin6969\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@Zin6969\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_c3c810d583a9.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmadruga8\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@madruga8\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_aa1067736be1.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FXiaoYingYo\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@XiaoYingYo\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_7f94f15d2bea.png\">\u003C\u002Fa>\n\u003Ca href=\"#\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@AliAlSarre\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_66be9d83baf6.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmadkarmaa\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@madkarmaa\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_2c43f24148a2.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fwamoyo\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@wamoyo\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_3abde9cca6a6.png\">\u003C\u002Fa>\n\u003Ca href=\"#\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@meiraleal\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_ada3d8595b0a.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Feltociear\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@eltociear\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_f649cb591b4a.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FRojojun\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@Rojojun\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_f573ca554f9b.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fiamnishantgaharwar\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@iamnishantgaharwar\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_da7210952618.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fhakimel\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@hakimel\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_ec172f8dd40e.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fomahs\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@omahs\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_ce60e3c9d736.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fnajam-ul-arfeen-khan\u002F\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg height=47 width=47 title=\"Najam Ul Arfeen\" src=\"https:\u002F\u002Fi.imgur.com\u002FDQVC7vj.jpg?first-contrib=2023.09.19-add-dmarc-policy\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fiambijayd\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@iambijayd\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_657f92a27e4a.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fabhinavm24\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@abhinavm24\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_2d9148e94b18.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fdeyvisml\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@deyvisml\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_ae45c1c1e840.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fphilly88r\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@philly88r\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_d7df7509bee3.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fthomasgauthier\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@thomasgauthier\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_f143df5c2691.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fpranav-bhatt\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@pranav-bhatt\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_0b2a6248d845.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgadelkareem\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@gadelkareem\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_69deb2b1878a.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fhopana\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@hopana\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_12d9d34c065d.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Femtry\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@emtry\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_33158cf91edd.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fthedayofcondor\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@thedayofcondor\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_d59d772adf90.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FLuwa-Tech\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@Luwa-Tech\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_fad68d580e84.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmicz\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@micz\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_3efda2c722fe.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fimranaalam\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@imranaalam\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_698b3fa1c169.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgrayfallstown\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@grayfallstown\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_624595a2804d.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fsvan-b\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@svan-b\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_1061b949b65a.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FJeff-Zzh\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@Jeff-Zzh\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_601425efa5e1.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fae3e\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@ae3e\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_57b4313e601f.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FFarukhS52\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@FarukhS52\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_d9f98d041584.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FInnovatorcloudy\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@Innovatorcloudy\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_114d607b8cc8.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fbarbarian360\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@barbarian360\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_530d188c5d5c.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fadityadeshpande09\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@adityadeshpande09\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_9d4bda1addc6.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ftwlite\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@twlite\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_f60f84565bed.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fsulav7\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@sulav7\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_2a0f420e2474.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fsamir-byte\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@samir-byte\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_0c67e16a88ef.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fghimirebibek\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@ghimirebibek\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_83bfa1b45cf1.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FJanumalaAkhilendra\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@JanumalaAkhilendra\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_dd602bfdc04d.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FAliasUruz\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@AliasUruz\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_47dc08bc3f4a.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fericdachen\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@ericdachen\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_2e3c350f9791.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fm-k8s\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@m-k8s\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_aa954ac84da9.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fahnupeng\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@ahnupeng\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_f94714218854.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgeghamyan\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@geghamyan\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_674694938613.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FMichaIng\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@MichaIng\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_76e63fb822fa.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fdependabot\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"Dependabot\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_ecc776ce71a1.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fchatgpt.com\" target=\"_blank\" rel=\"noopener\">\n    \u003Cpicture>\n        \u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fimages.weserv.nl\u002F?url=https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Ficons\u002Fplatforms\u002Fchatgpt\u002Fblack-on-white\u002Ficon189.png?h=46&w=46&mask=circle&maxage=7d\">\n        \u003Cimg title=\"ChatGPT\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_26e15dac00f5.png\">\n    \u003C\u002Fpicture>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fpoe.com\" target=\"_blank\" rel=\"noopener\">\n    \u003Cpicture>\n        \u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fimages.weserv.nl\u002F?url=https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Ficons\u002Fplatforms\u002Fpoe\u002Fw-purple-blue-stripes\u002Fblack-on-white\u002Ficon175.png?h=46&w=46&mask=circle&maxage=7d\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_c45b3e18ceb6.png\" title=\"Poe\">\n    \u003C\u002Fpicture>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FImgBotApp\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@ImgBotApp\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_71d5e2a518b9.png\">\u003C\u002Fa>\n\n\u003C\u002Fdiv>\u003Cbr>\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv align=\"center\">\n\n\u003Cbr>\n\n **chatgpt.js** is funded in part by:\n\n\u003Ca href=\"https:\u002F\u002Fwww.cloudflare.com\u002F?utm_source=chatgpt.js-github&utm_medium=referral&utm_content=partner-logo\"\n   target=\"_blank\" rel=\"noopener\">\n    \u003Cpicture>\n        \u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\"\n                srcset=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Flogos\u002Fpartners\u002Fcloudflare\u002Fwhite.png?v=962dcd1\">\n        \u003Cimg width=160 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_2dc418c9f1e8.png\">\n    \u003C\u002Fpicture>\u003C\u002Fa>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n\u003Ca href=\"https:\u002F\u002Fiproyal.com\u002F?r=855573\" target=\"_blank\" rel=\"noopener\">\n    \u003Cpicture>\n        \u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\"\n                srcset=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Flogos\u002Fpartners\u002Fiproyal\u002Fwhite.svg?v=962dcd1\">\n        \u003Cimg width=165 src=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Flogos\u002Fpartners\u002Fiproyal\u002Fblack.svg?v=962dcd1\">\n    \u003C\u002Fpicture>\u003C\u002Fa>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n\u003Ca href=\"https:\u002F\u002Fwww.microsoft.com\u002F?utm_source=chatgpt.js-github&utm_medium=referral&utm_content=partner-logo\"\n   target=\"_blank\" rel=\"noopener\">\n    \u003Cpicture>\n        \u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\"\n                srcset=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Flogos\u002Fpartners\u002Fmicrosoft\u002Fwhite.png?v=962dcd1\">\n        \u003Cimg width=188 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23c694784f3d.png\">\n    \u003C\u002Fpicture>\u003C\u002Fa>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n\u003Ca href=\"https:\u002F\u002Fwww.warp.dev\u002Fchatgptjs\" target=\"_blank\" rel=\"noopener\">\n    \u003Cpicture>\n        \u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\"\n                srcset=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Flogos\u002Fpartners\u002Fwarp\u002Fwhite.svg?v=962dcd1\">\n        \u003Cimg width=133 src=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Flogos\u002Fpartners\u002Fwarp\u002Fblack.svg?v=962dcd1\">\n    \u003C\u002Fpicture>\u003C\u002Fa>\n\n\u003C\u002Fdiv>\n\n\u003Cbr>\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv align=\"center\">\n\n**[Releases](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Freleases)** \u002F\n[Userguide](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fblob\u002Fv3.9.0\u002Fdocs\u002FUSERGUIDE.md) \u002F\n[Discuss](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fdiscussions) \u002F\n[Back to top ↑](#top)\n\n\u003C\u002Fdiv>\n","\u003Cdiv id=\"repo-cover\" align=\"center\">\n\n\u003Ca id=\"top\">\u003C\u002Fa>\n\n\u003Cdiv align=\"center\">\n    \u003Ch6>\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\">\n            \u003Cpicture>\n                \u003Csource type=\"image\u002Fsvg+xml\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Ficons\u002Fearth\u002Fwhite\u002Ficon32.svg?v=e638eac\">\n               \u003Cimg height=14 src=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Ficons\u002Fearth\u002Fblack\u002Ficon32.svg?v=e638eac\">\n            \u003C\u002Fpicture>\n        \u003C\u002Fa>\n        英文 |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fzh-cn#readme\">简体中文\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fzh-tw#readme\">繁體中文\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fja#readme\">日本\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fko#readme\">한국인\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fhi#readme\">हिंदी\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fne#readme\">नेपाली\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fde#readme\">Deutsch\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fes#readme\">Español\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Ffr#readme\">Français\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fit#readme\">Italiano\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fnl#readme\">Nederlands\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fpt#readme\">Português\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fru#readme\">Английский\u003C\u002Fa> |\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fmain\u002Fdocs\u002Fvi#readme\">Việt\u003C\u002Fa>\n    \u003C\u002Fh6>\n\u003C\u002Fdiv>\n\n\u003Cbr>\n\n\u003Ca href=\"https:\u002F\u002Fchatgpt.js.org\u002F?utm_source=chatgpt.js-github&utm_medium=referral&utm_content=cover-logo\">\n    \u003Cpicture>\n        \u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Flogos\u002Fchatgpt.js\u002Fwith-reflection\u002Fdarkmode\u002Flogo-6014x1334.png?v=8169c77\">\n        \u003Cimg width=800 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_9276a62fe315.png\">\n    \u003C\u002Fpicture>\n\u003C\u002Fa>\n\n### 🤖 一个功能强大的客户端 JavaScript 库，用于与 ChatGPT 交互\n\n\u003C\u002Fdiv>\n\n\u003Cbr>\n\n\u003Cdiv id=\"shields\" align=\"center\">\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fblob\u002Fmain\u002FLICENSE.md\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-orange.svg?logo=internetarchive&logoColor=white&labelColor=464646&style=for-the-badge\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@kudoai\u002Fchatgpt.js\u002Fv\u002Flatest\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002F%40kudoai%2Fchatgpt.js?logo=npm&logoColor=white&labelColor=464646&color=blue&style=for-the-badge&label=Latest+Release\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.9.0\u002Fdist\u002Fchatgpt.min.js\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fsize\u002FKudoAI\u002Fchatgpt.js\u002Fdist\u002Fchatgpt.min.js?branch=v3.9.0&label=Minified%20Size&logo=databricks&logoColor=white&labelColor=464646&color=ff69b4&style=for-the-badge\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fwww.codefactor.io\u002Frepository\u002Fgithub\u002Fkudoai\u002Fchatgpt.js\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fcodefactor\u002Fgrade\u002Fgithub\u002Fkudoai\u002Fchatgpt.js?label=Code+Quality&logo=codefactor&logoColor=white&labelColor=464646&color=1acc6c&style=for-the-badge\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fsonarcloud.io\u002Fcomponent_measures?metric=vulnerabilities&id=kudoai_chatgpt.js\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fdynamic\u002Fjson?url=https%3A%2F%2Fsonarcloud.io%2Fapi%2Fmeasures%2Fcomponent%3Fcomponent%3Dkudoai_chatgpt.js%26metricKeys%3Dvulnerabilities&query=%24.component.measures.0.value&style=for-the-badge&logo=sonar&logoColor=white&labelColor=464646&label=Vulnerabilities&color=gold\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fsindresorhus\u002Fawesome-chatgpt#javascript\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FMentioned_in-Awesome-af68ff?logo=awesomelists&logoColor=white&labelColor=464646&style=for-the-badge\">\u003C\u002Fa>\n\u003Ca href=\"#\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FjsDelivr_Requests-2,000,000+-2bbbd8.svg?logo=jsdelivr&logoColor=white&labelColor=464646&style=for-the-badge\">\u003C\u002Fa>\n\n\u003C\u002Fdiv>\n\n\u003Cbr>\u003Cbr>\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv id=\"intro\">\n\n## 💡 关于\n\n\u003C\u002Fdiv>\n\n\u003Cspan style=\"color: white\">\u003Cb>chatgpt.js\u003C\u002Fb>\u003C\u002Fspan> 是一个 \u003Cspan style=\"color: white\">强大\u003C\u002Fspan>的 JavaScript 库，能够实现与 ChatGPT DOM 的 \u003Cspan style=\"color: white\">极其简便\u003C\u002Fspan>的交互。\n\n- 功能丰富\n- 面向对象\n- 易于使用\n- 轻量级（同时性能最优）\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv id=\"golden-sponsors\" align=\"center\">\n    \u003Cbr>\n    \u003Ch3>由以下机构支持：\u003C\u002Fh3>\n    \u003Cdiv id=\"creatives\">\n        \u003Cdiv id=\"warp\">\n            \u003Cbr>\n            \u003Ca href=\"https:\u002F\u002Fwww.warp.dev\u002Fchatgptjs\" target=\"_blank\" rel=\"noopener\">\n                \u003Cimg width=\"600\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_327f646c304c.png\">\n            \u003C\u002Fa>\n            \u003Ch3>\u003Ca href=\"https:\u002F\u002Fwww.warp.dev\u002Fchatgptjs\" target=\"_blank\" rel=\"noopener\">\n                Warp，一款运行在终端中的 AI 开发工具\u003C\u002Fa>\u003C\u002Fh3>\n            \u003Ci>\u003Ca href=\"https:\u002F\u002Fwww.warp.dev\u002Fchatgptjs\" target=\"_blank\" rel=\"noopener\">\n                适用于 MacOS、Linux 和 Windows\u003C\u002Fa>\u003C\u002Fi>\n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \u003Cbr>\u003Cbr>\u003Cbr>\n\u003C\u002Fdiv>\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv id=\"importing\">\n\n## ⚡ 导入库\n\n\u003C\u002Fdiv>\n\n> [!注意]\n> 若要始终导入最新版本（不建议在生产环境中使用！），请将带版本号的 jsDelivr URL 替换为：`https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002F@kudoai\u002Fchatgpt.js\u002Fchatgpt.min.js`\n\n### ES11（2020）：\n\n```js\n(async () => {\n    await import('https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002F@kudoai\u002Fchatgpt.js@3.9.0\u002Fdist\u002Fchatgpt.min.js');\n    \u002F\u002F 您的代码在此处...\n})();\n```\n\n### ES5（2009）：\n\n```js\nvar xhr = new XMLHttpRequest();\nxhr.open('GET', 'https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002F@kudoai\u002Fchatgpt.js@3.9.0\u002Fdist\u002Fchatgpt.min.js');\nxhr.onload = function () {\n    if (xhr.status === 200) {\n        var chatgptJS = document.createElement('script');\n        chatgptJS.textContent = xhr.responseText;\n        document.head.append(chatgptJS);\n        yourCode(); \u002F\u002F 执行您的代码\n    }\n};\nxhr.send();\n\nfunction yourCode() {\n    \u002F\u002F 您的代码在此处...\n}\n```\n\n### \u003Cimg style=\"margin: 0 2px -0.065rem 0\" height=17 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_de91887e0385.png\">\u003Cimg style=\"margin: 0 2px -0.035rem 1px\" height=17.5 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_fd4a2a7d156d.png\"> Greasemonkey：\n\n> [!NOTE]\n> 若要使用入门模板：[kudoai\u002Fchatgpt.js-greasemonkey-starter](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js-greasemonkey-starter)\n\n```js\n...\n\u002F\u002F @require https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002F@kudoai\u002Fchatgpt.js@3.9.0\u002Fdist\u002Fchatgpt.min.js\n\u002F\u002F ==\u002FUserScript==\n\n\u002F\u002F 您的代码在此处...\n```\n\n### \u003Cimg style=\"margin: 0 2px -1px 0\" height=16 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_750ada42bd3b.png\"> Chrome：\n\n> [!NOTE]\n> 若要使用入门模板：[kudoai\u002Fchatgpt.js-chrome-starter](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js-chrome-starter)\n\n由于 Google 不允许使用远程代码，因此需要本地导入 chatgpt.js：\n\n1. 将 https:\u002F\u002Fraw.githubusercontent.com\u002FKudoAI\u002Fchatgpt.js\u002Fmain\u002Fchatgpt.js 保存到子目录（本例中为 `lib`）。\n\n2. 在项目的 (V3) `manifest.json` 中，将 `lib\u002Fchatgpt.js` 添加为可访问的网络资源：\n```json\n    \"web_accessible_resources\": [{\n        \"matches\": [\"\u003Call_urls>\"],\n        \"resources\": [\"lib\u002Fchatgpt.js\"]\n    }],\n```\n\n3. 在需要使用 `chatgpt.js` 的脚本中（无论是前台还是后台），按如下方式导入：\n```js\n(async () => {\n    await import(chrome.runtime.getURL('lib\u002Fchatgpt.js'));\n    \u002F\u002F 您的代码在此处...\n})();\n```\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv id=\"npm\">\n\n## 💾 通过 npm 下载：\n\n\u003C\u002Fdiv>\n\n要下载 **chatgpt.js** 以进行本地自定义，请在您的项目根目录下运行以下命令：\n\n```bash\nnpm install @kudoai\u002Fchatgpt.js\n```\n\n安装完成后，导航至 `node_modules\u002F@kudoai\u002Fchatgpt.js` 即可找到库的源代码。\n\n\u003C\u002Fdiv>\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv id=\"usage\">\n\n## 💻 使用方法\n\n\u003C\u002Fdiv>\n\n**chatgpt.js** 在设计时充分考虑了极高的灵活性。\n\n例如：\n\n```js\nchatgpt.getLastResponse();\nchatgpt.getLastReply();\nchatgpt.response.getLast();\nchatgpt.get('reply', 'last');\n```\n\n每种调用方式都能获取最后的回复。如果您觉得可行，那很可能就是正确的……所以直接试试吧！\n\n如果仍然无法正常工作，请参阅详细的 [用户指南](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fblob\u002Fv3.9.0\u002Fdocs\u002FUSERGUIDE.md)，或者直接提交一个 [问题](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fissues) 或 [拉取请求](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpulls)，我们会尽快将其集成，简单易行！\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv id=\"showcase\">\n\n## 🤖 使用 chatgpt.js 打造的作品\n\n\u003C\u002Fdiv>\n\nhttps:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fassets\u002F10906554\u002Ff53c740f-d5e0-49b6-ae02-3b3140b0f8a4\n\n#\n\n### \u003Cpicture>\u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Famazongpt.kudoai.com\u002Fassets\u002Fimages\u002Ficons\u002Fapp\u002Fwhite\u002Ficon48.png\">\u003Cimg width=20 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_6a521175478c.png\">\u003C\u002Fpicture> [AmazonGPT](https:\u002F\u002Famazongpt.kudoai.com) &nbsp;\u003Ca href=\"https:\u002F\u002Famazongpt.kudoai.com\u002Fassets\u002Fwolfram-award\u002Fletter.pdf\" target=\"_blank\" rel=\"noopener\">\u003Cimg height=20 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_c4d3643aab82.png\" style=\"margin:0 0 -2px 5px\">\u003C\u002Fa>\n\n> 为亚马逊购物添加 AI 聊天及商品\u002F分类摘要功能，由最新 LLM 提供支持！\n\u003Cbr>[安装](https:\u002F\u002Fraw.githubusercontent.com\u002FKudoAI\u002Famazongpt\u002Fmain\u002Fgreasemonkey\u002Famazongpt.user.js) \u002F\n[说明文档](https:\u002F\u002Famazongpt.kudoai.com\u002F#readme) \u002F\n[讨论](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Famazongpt\u002Fdiscussions)\n\n### \u003Cpicture>\u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fassets.autoclearchatgpt.com\u002Fimages\u002Ficons\u002Fopenai\u002Fwhite\u002Ficon48.png?cece513\">\u003Cimg width=21 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_c8990222af51.png\">\u003C\u002Fpicture> [自动清除 ChatGPT 历史记录](https:\u002F\u002Fautoclearchatgpt.com) &nbsp;\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fawesome-scripts\u002Fawesome-userscripts#-chatgpt\" target=\"_blank\" rel=\"noopener\">\u003Cimg src=\"https:\u002F\u002Fassets.autoclearchatgpt.com\u002Fimages\u002Fbadges\u002Fawesome\u002Fbadge.svg?2c0d9fc\" style=\"margin:0 0 -2px 5px\">\u003C\u002Fa>\n\n> 自动清除您的 ChatGPT 查询历史，以最大程度保护隐私。\n\u003Cbr>[安装](https:\u002F\u002Fdocs.autoclearchatgpt.com\u002F#-installation) \u002F\n[说明文档](https:\u002F\u002Fdocs.autoclearchatgpt.com\u002F#readme) \u002F\n[讨论](https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fautoclear-chatgpt-history\u002Fdiscussions)\n\n### \u003Cimg width=24 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_6b2d863fb8f4.png\"> [BraveGPT](https:\u002F\u002Fbravegpt.com) &nbsp;\u003Ca href=\"https:\u002F\u002Fwww.producthunt.com\u002Fposts\u002Fbravegpt\" target=\"_blank\" rel=\"noopener\">\u003Cimg src=\"https:\u002F\u002Fapi.producthunt.com\u002Fwidgets\u002Fembed-image\u002Fv1\u002Ffeatured.svg?post_id=385630&theme=light\" style=\"width: 112px; height: 24px; margin:0 0 -4px 5px;\" width=\"112\" height=\"24\" \u002F>\u003C\u002Fa>\n\n> 为 Brave Search 添加 AI 聊天和搜索摘要功能，由最新 LLM 提供支持！\n\u003Cbr>[安装](https:\u002F\u002Fdocs.bravegpt.com\u002F#-installation) \u002F\n[说明文档](https:\u002F\u002Fdocs.bravegpt.com\u002F#readme) \u002F\n[讨论](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fbravegpt\u002Fdiscussions)\n\n### \u003Cpicture>\u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fassets.chatgptautocontinue.com\u002Fimages\u002Ficons\u002Fcontinue-symbol\u002Fwhite\u002Ficon48.png?v=61c4f16\">\u003Cimg width=21 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_a524060fa218.png\">\u003C\u002Fpicture> [ChatGPT 自动续写 ⏩](https:\u002F\u002Fchatgptautocontinue.com) &nbsp;\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fawesome-scripts\u002Fawesome-userscripts#-chatgpt\" target=\"_blank\" rel=\"noopener\">\u003Cimg src=\"https:\u002F\u002Fassets.chatgptautocontinue.com\u002Fimages\u002Fbadges\u002Fawesome\u002Fbadge.svg?3c80c0c\" style=\"margin:0 0 -3px 3px\">\u003C\u002Fa>\n\n> 当 ChatGPT 的回答被截断时，自动继续生成答案。\n\u003Cbr>[安装](https:\u002F\u002Fdocs.chatgptautocontinue.com\u002F#-installation) \u002F\n[说明文档](https:\u002F\u002Fdocs.chatgptautocontinue.com\u002F#readme) \u002F\n[讨论](https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fchatgpt-auto-continue\u002Fdiscussions)\n\n### \u003Cpicture>\u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fadamlui\u002Fchatgpt-auto-talk@eb7f285\u002Fassets\u002Fimages\u002Ficons\u002Fopenai\u002Fwhite\u002Ficon64.png\">\u003Cimg width=21 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_5fbc92f52a2f.png\">\u003C\u002Fpicture> [ChatGPT 自动朗读 📣](https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fchatgpt-auto-talk)\n\n> 自动播放 ChatGPT 的回答。\n\u003Cbr>[安装](https:\u002F\u002Fgm.chatgptautotalk.com) \u002F\n[说明文档](https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fchatgpt-auto-talk#readme) \u002F\n[讨论](https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fchatgpt-auto-talk\u002Fdiscussions)\n\n### \u003Cpicture>\u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fassets.chatgptautorefresh.com\u002Fimages\u002Ficons\u002Fopenai\u002Fwhite\u002Ficon48.png?a45cf1e\">\u003Cimg width=21 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_c8990222af51.png\">\u003C\u002Fpicture> [ChatGPT 自动刷新 ↻](https:\u002F\u002Fchatgptautorefresh.com) &nbsp;\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fawesome-scripts\u002Fawesome-userscripts#-chatgpt\" target=\"_blank\" rel=\"noopener\">\u003Cimg src=\"https:\u002F\u002Fassets.chatgptautorefresh.com\u002Fimages\u002Fbadges\u002Fawesome\u002Fbadge.svg?1080f44\" style=\"margin:0 0 -2px 5px\">\u003C\u002Fa>\n\n> 保持 ChatGPT 会话的活跃状态，以避免网络错误和 Cloudflare 检查。\n\u003Cbr>[安装](https:\u002F\u002Fdocs.chatgptautorefresh.com\u002F#-installation) \u002F\n[自述文件](https:\u002F\u002Fdocs.chatgptautorefresh.com\u002F#readme) \u002F\n[讨论](https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fchatgpt-auto-refresh\u002Fdiscussions)\n\n### \u003Cimg width=23 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_d22578a67e98.png\"> [DuckDuckGPT](https:\u002F\u002Fduckduckgpt.com) &nbsp;\u003Ca href=\"https:\u002F\u002Fwww.producthunt.com\u002Fposts\u002Fduckduckgpt\" target=\"_blank\" rel=\"noopener\">\u003Cimg src=\"https:\u002F\u002Fapi.producthunt.com\u002Fwidgets\u002Fembed-image\u002Fv1\u002Ffeatured.svg?post_id=379261&theme=light\" style=\"width: 112px; height: 24px; margin:0 0 -4px 5px;\" width=\"112\" height=\"24\" \u002F>\u003C\u002Fa>\n\n> 将 AI 聊天和搜索摘要添加到 DuckDuckGo 中，由最新的大型语言模型提供支持！\n\u003Cbr>[安装](https:\u002F\u002Fdocs.ddgpt.com\u002F#-installation) \u002F\n[自述文件](https:\u002F\u002Fdocs.ddgpt.com\u002F#readme) \u002F\n[讨论](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fduckduckgpt\u002Fdiscussions)\n\n### \u003Cpicture>\u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002FKudoAI\u002Fgooglegpt\u002Fassets\u002Fimages\u002Ficons\u002Fapp\u002Fwhite\u002Ficon48.png\">\u003Cimg width=21 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_ae8109c043f1.png\">\u003C\u002Fpicture> [GoogleGPT](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fgooglegpt\u002F#readme) &nbsp;\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fawesome-scripts\u002Fawesome-userscripts#-chatgpt\" target=\"_blank\" rel=\"noopener\">\u003Cimg src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002FKudoAI\u002Fgooglegpt@e442863\u002Fassets\u002Fimages\u002Fbadges\u002Fawesome\u002Fbadge.svg\" style=\"margin:0 0 -2px 5px\">\u003C\u002Fa>\n\n> 将 AI 聊天和搜索摘要添加到 Google 搜索中，由最新的大型语言模型提供支持！\n\u003Cbr>[安装](https:\u002F\u002Fraw.githubusercontent.com\u002FKudoAI\u002Fgooglegpt\u002Frefs\u002Fheads\u002Fmain\u002Fgreasemonkey\u002Fgooglegpt.user.js) \u002F\n[自述文件](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fgooglegpt\u002F#readme) \u002F\n[讨论](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fgooglegpt\u002Fdiscussions)\n\n### \u003Cimg width=23 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_4bd627409886.png\"> \u003Ca href=\"https:\u002F\u002Fmicz.it\u002Fthunderdbird-addon-thunderai\u002F?utm_source=chatgpt.js-github&utm_medium=referral&utm_content=showcase-link\" target=\"_blank\" rel=\"noopener\">ThunderAI\u003C\u002Fa> &nbsp;\u003Ca href=\"https:\u002F\u002Faddons.thunderbird.net\u002Fthunderbird\u002Faddon\u002Fthunderai\u002Freviews\" target=\"_blank\" rel=\"noopener\">\u003Cpicture>\u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Fbadges\u002F5-star\u002Fblue-stars.png?v=e638eac\">\u003Cimg width=92 alt=\"[Rated 5-stars]\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_a8d29c8edf74.png\">\u003C\u002Fpicture>\u003C\u002Fa>\n\n> 在 Thunderbird 中使用 ChatGPT 来增强您的电子邮件，即使是免费账户也可以！\n\u003Cbr>[安装](https:\u002F\u002Faddons.thunderbird.net\u002Fthunderbird\u002Faddon\u002Fthunderai\u002F) \u002F\n[自述文件](https:\u002F\u002Fgithub.com\u002Fmicz\u002FThunderAI#readme) \u002F\n[支持](https:\u002F\u002Fgithub.com\u002Fmicz\u002FThunderAI\u002Fissues)\n\n\u003Cp>\u003Cbr>\n\n\u003Ca href=\"https:\u002F\u002Fchatgptinfinity.com\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg width=555 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_c89d4efe14ed.png\">\n\u003C\u002Fa>\n\n\u003Cp>\u003Cbr>\n\n\u003Ca href=\"https:\u002F\u002Fchatgptwidescreen.com\u002F?utm_source=chatgpt.js-github&utm_medium=referral&utm_content=showcase-tile\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg width=555 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_6724786146e3.png\">\n\u003C\u002Fa>\n\n\u003Cp>\u003Cbr>\n\n\u003Cp id=\"showcase-cta\">\n如果您使用 chatgpt.js 制作了什么想要分享的内容，请发送邮件至 \u003Ca href=\"mailto:showcase@chatgptjs.org\">showcase@chatgptjs.org\u003C\u002Fa>，或者直接提交一个 \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpulls\" target=\"_blank\" rel=\"noopener\">拉取请求\u003C\u002Fa>！\n\u003C\u002Fp>\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv id=\"contributors\">\n\n## 🧠 贡献者\n\n\u003C\u002Fdiv>\n\n本库的存在离不开以下贡献者的代码、翻译、问题反馈和创意：\n\n\u003Cdiv align=\"center\">\u003Cbr>\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fadamlui\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@adamlui\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_a3cb5285154a.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmefengl\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@mefengl\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_e46edf64b623.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FZin6969\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@Zin6969\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_c3c810d583a9.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmadruga8\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@madruga8\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_aa1067736be1.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FXiaoYingYo\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@XiaoYingYo\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_7f94f15d2bea.png\">\u003C\u002Fa>\n\u003Ca href=\"#\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@AliAlSarre\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_66be9d83baf6.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmadkarmaa\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@madkarmaa\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_2c43f24148a2.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fwamoyo\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@wamoyo\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_3abde9cca6a6.png\">\u003C\u002Fa>\n\u003Ca href=\"#\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@meiraleal\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_ada3d8595b0a.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Feltociear\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@eltociear\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_f649cb591b4a.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FRojojun\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@Rojojun\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_f573ca554f9b.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fiamnishantgaharwar\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@iamnishantgaharwar\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_da7210952618.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fhakimel\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@hakimel\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_ec172f8dd40e.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fomahs\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@omahs\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_ce60e3c9d736.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fnajam-ul-arfeen-khan\u002F\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg height=47 width=47 title=\"Najam Ul Arfeen\" src=\"https:\u002F\u002Fi.imgur.com\u002FDQVC7vj.jpg?first-contrib=2023.09.19-add-dmarc-policy\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fiambijayd\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@iambijayd\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_657f92a27e4a.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fabhinavm24\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@abhinavm24\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_2d9148e94b18.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fdeyvisml\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@deyvisml\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_ae45c1c1e840.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fphilly88r\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@philly88r\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_d7df7509bee3.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fthomasgauthier\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@thomasgauthier\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_f143df5c2691.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fpranav-bhatt\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@pranav-bhatt\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_0b2a6248d845.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgadelkareem\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@gadelkareem\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_69deb2b1878a.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fhopana\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@hopana\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_12d9d34c065d.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Femtry\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@emtry\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_33158cf91edd.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fthedayofcondor\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@thedayofcondor\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_d59d772adf90.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FLuwa-Tech\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@Luwa-Tech\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_fad68d580e84.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmicz\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@micz\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_3efda2c722fe.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fimranaalam\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@imranaalam\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_698b3fa1c169.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgrayfallstown\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@grayfallstown\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_624595a2804d.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fsvan-b\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@svan-b\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_1061b949b65a.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FJeff-Zzh\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@Jeff-Zzh\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_601425efa5e1.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fae3e\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@ae3e\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_57b4313e601f.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FFarukhS52\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@FarukhS52\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_d9f98d041584.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FInnovatorcloudy\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@Innovatorcloudy\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_114d607b8cc8.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fbarbarian360\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@barbarian360\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_530d188c5d5c.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fadityadeshpande09\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@adityadeshpande09\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_9d4bda1addc6.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ftwlite\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@twlite\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_f60f84565bed.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fsulav7\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@sulav7\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_2a0f420e2474.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fsamir-byte\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@samir-byte\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_0c67e16a88ef.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fghimirebibek\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@ghimirebibek\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_83bfa1b45cf1.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FJanumalaAkhilendra\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@JanumalaAkhilendra\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_dd602bfdc04d.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FAliasUruz\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@AliasUruz\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_47dc08bc3f4a.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fericdachen\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@ericdachen\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_2e3c350f9791.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fm-k8s\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@m-k8s\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_aa954ac84da9.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fahnupeng\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@ahnupeng\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_f94714218854.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgeghamyan\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@geghamyan\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_674694938613.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FMichaIng\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@MichaIng\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_76e63fb822fa.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fdependabot\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"Dependabot\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_ecc776ce71a1.png\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fchatgpt.com\" target=\"_blank\" rel=\"noopener\">\n    \u003Cpicture>\n        \u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fimages.weserv.nl\u002F?url=https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Ficons\u002Fplatforms\u002Fchatgpt\u002Fblack-on-white\u002Ficon189.png?h=46&w=46&mask=circle&maxage=7d\">\n        \u003Cimg title=\"ChatGPT\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_26e15dac00f5.png\">\n    \u003C\u002Fpicture>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fpoe.com\" target=\"_blank\" rel=\"noopener\">\n    \u003Cpicture>\n        \u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fimages.weserv.nl\u002F?url=https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Ficons\u002Fplatforms\u002Fpoe\u002Fw-purple-blue-stripes\u002Fblack-on-white\u002Ficon175.png?h=46&w=46&mask=circle&maxage=7d\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_c45b3e18ceb6.png\" title=\"Poe\">\n    \u003C\u002Fpicture>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FImgBotApp\" target=\"_blank\" rel=\"noopener\">\n    \u003Cimg title=\"@ImgBotApp\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_71d5e2a518b9.png\">\u003C\u002Fa>\n\n\u003C\u002Fdiv>\u003Cbr>\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv align=\"center\">\n\n\u003Cbr>\n\n**chatgpt.js** 的部分资金由以下机构提供支持：\n\n\u003Ca href=\"https:\u002F\u002Fwww.cloudflare.com\u002F?utm_source=chatgpt.js-github&utm_medium=referral&utm_content=partner-logo\"\n   target=\"_blank\" rel=\"noopener\">\n    \u003Cpicture>\n        \u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\"\n                srcset=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Flogos\u002Fpartners\u002Fcloudflare\u002Fwhite.png?v=962dcd1\">\n        \u003Cimg width=160 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_2dc418c9f1e8.png\">\n    \u003C\u002Fpicture>\u003C\u002Fa>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n\u003Ca href=\"https:\u002F\u002Fiproyal.com\u002F?r=855573\" target=\"_blank\" rel=\"noopener\">\n    \u003Cpicture>\n        \u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\"\n                srcset=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Flogos\u002Fpartners\u002Fiproyal\u002Fwhite.svg?v=962dcd1\">\n        \u003Cimg width=165 src=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Flogos\u002Fpartners\u002Fiproyal\u002Fblack.svg?v=962dcd1\">\n    \u003C\u002Fpicture>\u003C\u002Fa>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n\u003Ca href=\"https:\u002F\u002Fwww.microsoft.com\u002F?utm_source=chatgpt.js-github&utm_medium=referral&utm_content=partner-logo\"\n   target=\"_blank\" rel=\"noopener\">\n    \u003Cpicture>\n        \u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\"\n                srcset=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Flogos\u002Fpartners\u002Fmicrosoft\u002Fwhite.png?v=962dcd1\">\n        \u003Cimg width=188 src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23c694784f3d.png\">\n    \u003C\u002Fpicture>\u003C\u002Fa>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n\u003Ca href=\"https:\u002F\u002Fwww.warp.dev\u002Fchatgptjs\" target=\"_blank\" rel=\"noopener\">\n    \u003Cpicture>\n        \u003Csource type=\"image\u002Fpng\" media=\"(prefers-color-scheme: dark)\"\n                srcset=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Flogos\u002Fpartners\u002Fwarp\u002Fwhite.svg?v=962dcd1\">\n        \u003Cimg width=133 src=\"https:\u002F\u002Fassets.chatgptjs.org\u002Fimages\u002Flogos\u002Fpartners\u002Fwarp\u002Fblack.svg?v=962dcd1\">\n    \u003C\u002Fpicture>\u003C\u002Fa>\n\n\u003C\u002Fdiv>\n\n\u003Cbr>\n\n\u003Cimg height=8px width=\"100%\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_readme_23b88924ec29.png\">\n\n\u003Cdiv align=\"center\">\n\n**[发布记录](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Freleases)** \u002F\n[用户指南](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fblob\u002Fv3.9.0\u002Fdocs\u002FUSERGUIDE.md) \u002F\n[讨论区](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fdiscussions) \u002F\n[返回顶部 ↑](#top)\n\n\u003C\u002Fdiv>","# chatgpt.js 快速上手指南\n\n**chatgpt.js** 是一个功能强大的客户端 JavaScript 库，旨在让开发者能够极其轻松地与 ChatGPT 网页版（DOM）进行交互。它轻量、面向对象且易于使用，非常适合编写浏览器扩展、油猴脚本或前端自动化工具。\n\n## 环境准备\n\n*   **运行环境**：现代浏览器（Chrome, Firefox, Edge, Safari 等）。\n*   **前置依赖**：\n    *   需要已登录并打开 [ChatGPT 官网](https:\u002F\u002Fchat.openai.com)。\n    *   若用于开发浏览器扩展，需熟悉 Chrome Extension Manifest V3 规范。\n    *   若用于用户脚本，需安装 Tampermonkey 或 Violentmonkey 插件。\n*   **网络要求**：由于库通过 CDN 加载或直接操作 ChatGPT 页面，请确保能正常访问 ChatGPT 服务及 jsDelivr CDN。\n\n## 安装步骤\n\n根据使用场景选择以下任一方式引入库：\n\n### 1. 用户脚本 (Tampermonkey \u002F Violentmonkey)\n在脚本头部添加 `@require` 指令即可直接引用最新版本（生产环境建议锁定版本号）：\n\n```js\n\u002F\u002F ==UserScript==\n\u002F\u002F @name         My ChatGPT Script\n\u002F\u002F @namespace    http:\u002F\u002Ftampermonkey.net\u002F\n\u002F\u002F @version      0.1\n\u002F\u002F @description  使用 chatgpt.js 的示例\n\u002F\u002F @author       You\n\u002F\u002F @match        https:\u002F\u002Fchat.openai.com\u002F*\n\u002F\u002F @require      https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002F@kudoai\u002Fchatgpt.js@3.9.0\u002Fdist\u002Fchatgpt.min.js\n\u002F\u002F ==\u002FUserScript==\n\n\u002F\u002F 你的代码写在这里...\n```\n\n### 2. ES6+ 模块 (现代前端项目\u002F控制台)\n使用动态 `import` 异步加载：\n\n```js\n(async () => {\n    await import('https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002F@kudoai\u002Fchatgpt.js@3.9.0\u002Fdist\u002Fchatgpt.min.js');\n    \u002F\u002F 你的代码写在这里...\n})();\n```\n\n### 3. npm 本地安装\n适用于需要自定义构建或离线部署的项目：\n\n```bash\nnpm install @kudoai\u002Fchatgpt.js\n```\n安装后，库文件位于 `node_modules\u002F@kudoai\u002Fchatgpt.js` 目录下。\n\n### 4. Chrome 扩展程序 (Manifest V3)\n由于 Chrome 禁止远程代码执行，需本地引入：\n1. 将 [chatgpt.js](https:\u002F\u002Fraw.githubusercontent.com\u002FKudoAI\u002Fchatgpt.js\u002Fmain\u002Fchatgpt.js) 保存到项目子目录（如 `lib\u002Fchatgpt.js`）。\n2. 在 `manifest.json` 中声明资源：\n```json\n\"web_accessible_resources\": [{\n    \"matches\": [\"\u003Call_urls>\"],\n    \"resources\": [\"lib\u002Fchatgpt.js\"]\n}],\n```\n3. 在脚本中导入：\n```js\n(async () => {\n    await import(chrome.runtime.getURL('lib\u002Fchatgpt.js'));\n    \u002F\u002F 你的代码写在这里...\n})();\n```\n\n## 基本使用\n\n**chatgpt.js** 的设计极具灵活性，支持多种链式调用和自然语言风格的 API。只要逻辑通顺，通常都能正常工作。\n\n### 获取最新回复\n以下四种写法效果完全相同，均可获取 ChatGPT 的最后一条回复内容：\n\n```js\n\u002F\u002F 方法 1\nchatgpt.getLastResponse();\n\n\u002F\u002F 方法 2\nchatgpt.getLastReply();\n\n\u002F\u002F 方法 3\nchatgpt.response.getLast();\n\n\u002F\u002F 方法 4\nchatgpt.get('reply', 'last');\n```\n\n### 完整示例\n以下是一个简单的油猴脚本示例，用于在页面加载后自动打印最后一条回复：\n\n```js\n\u002F\u002F ==UserScript==\n\u002F\u002F @require https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002F@kudoai\u002Fchatgpt.js@3.9.0\u002Fdist\u002Fchatgpt.min.js\n\u002F\u002F ==\u002FUserScript==\n\n(function() {\n    'use strict';\n\n    \u002F\u002F 等待 ChatGPT 响应生成完毕\n    chatgpt.isGenerating().then(() => {\n        const lastReply = chatgpt.getLastResponse();\n        console.log('ChatGPT 最新回复:', lastReply);\n        \n        \u002F\u002F 例如：将回复复制到剪贴板\n        \u002F\u002F navigator.clipboard.writeText(lastReply);\n    });\n})();\n```\n\n> **提示**：更多高级用法（如发送消息、删除对话、导出历史记录等）请参考官方 [用户指南](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fblob\u002Fv3.9.0\u002Fdocs\u002FUSERGUIDE.md)。","一位前端开发者需要在公司内部系统中集成 ChatGPT 功能，让用户能在网页端直接发送提示词并实时获取 AI 生成的回答，同时自动保存对话历史。\n\n### 没有 chatgpt.js 时\n- 开发者必须手动逆向分析 ChatGPT 网页版的复杂 DOM 结构，每次官网更新界面都会导致代码失效，维护成本极高。\n- 获取 AI 回复需要自行处理流式数据传输（Streaming），编写复杂的异步逻辑来拼接碎片化内容，容易出现显示卡顿或乱码。\n- 实现“重新生成”、“复制回答”或“清除上下文”等交互功能时，需反复尝试模拟点击事件，稳定性差且容易触发反爬机制。\n- 缺乏统一的会话管理接口，难以在不同页面组件间同步当前的对话 ID 和历史记录，导致数据状态混乱。\n- 开发周期被大幅拉长，原本计划一周完成的原型验证，因底层适配问题拖延至一个月仍未稳定上线。\n\n### 使用 chatgpt.js 后\n- 调用 `chatgpt.getChatData()` 等封装好的 API 即可精准提取对话内容，完全屏蔽底层 DOM 变动，代码健壮性显著提升。\n- 内置流式响应处理器，仅需一行配置即可实现打字机效果的流畅输出，无需关心底层的字节拼接逻辑。\n- 通过 `chatgpt.regenerate()`、`chatgpt.copyLastResponse()` 等现成方法，瞬间实现高级交互功能，且自动适配官方最新界面。\n- 提供标准化的会话上下文管理工具，轻松在不同模块间传递和持久化对话状态，确保数据流转准确无误。\n- 核心功能开发时间从数周缩短至两天，团队能快速将精力投入到业务逻辑优化而非底层适配上。\n\nchatgpt.js 将繁琐的逆向工程转化为简单的函数调用，让开发者能专注于构建高质量的 AI 应用体验。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKudoAI_chatgpt.js_57a7af60.png","KudoAI","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FKudoAI_59c52b48.png","Bringing cutting-edge AI to the masses.",null,"support@kudoai.com","https:\u002F\u002Fkudoai.com","https:\u002F\u002Fgithub.com\u002FKudoAI",[82,86,90,94],{"name":83,"color":84,"percentage":85},"JavaScript","#f1e05a",94.2,{"name":87,"color":88,"percentage":89},"CSS","#663399",2.8,{"name":91,"color":92,"percentage":93},"Shell","#89e051",1.8,{"name":95,"color":96,"percentage":97},"HTML","#e34c26",1.2,2028,165,"2026-04-16T14:40:29","NOASSERTION","未说明","不需要",{"notes":105,"python":103,"dependencies":106},"这是一个客户端 JavaScript 库，用于与 ChatGPT 网页界面 (DOM) 进行交互。它不依赖后端环境、Python 或 GPU。主要通过浏览器扩展 (如 Tampermonkey, Violentmonkey)、Chrome 插件或直接通过 CDN 在网页中引入使用。支持 ES5 和 ES11+ 环境。",[107],"无 (纯前端 JavaScript 库)",[35,13,15,109,45,14],"其他",[111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129],"ai","artificial-intelligence","chatgpt","nlp","bot","chat","chatbot","clientside","conversational-ai","conversational-bots","frontend","gpt","javascript","library","machine-learning","ml","openai","kudoai","gpt-5","2026-03-27T02:49:30.150509","2026-04-18T00:45:32.314336",[133,138,143,148,153,158,163],{"id":134,"question_zh":135,"answer_zh":136,"source_url":137},38227,"为什么 `sendInNewChat` 方法无法正常工作？","该库设计用于在 OpenAI 官方网站（chat.openai.com）上运行。如果您试图从其他网站连接或控制 ChatGPT，此方法将不起作用。对于跨站点的集成需求，建议参考 `bravegpt` 或 `duckduckgpt` 项目的实现方式，它们展示了如何在不直接使用此库的情况下从其他站点连接 ChatGPT。","https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fissues\u002F38",{"id":139,"question_zh":140,"answer_zh":141,"source_url":142},38228,"ChatGPT 界面更新后，`send()` 方法或自定义发送逻辑失效怎么办？","由于 ChatGPT 网站更新了 UI，导致原有的自动发送逻辑失效（通常需要手动修改文本才能激活发送按钮）。维护者已针对此问题更新了库以适配新界面。如果您使用自定义逻辑，可能需要检查选择器是否匹配新 DOM 结构，或者直接升级使用最新版本的 `chatgpt.js` 库，其中已包含修复方案。","https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fissues\u002F43",{"id":144,"question_zh":145,"answer_zh":146,"source_url":147},38229,"如何在代码中正确引用和归属此库？","在使用此库的代码中，应当注明出处。建议在代码注释或文档中使用 `chatgptjs.org` 作为引用链接（该域名会重定向到 GitHub 仓库，但更易于记忆）。如果在发布版本中使用，可以通过 `\u002F\u002F @require` 指令直接引入，无需复制粘贴源代码，同时也符合 MIT 许可证的归属要求。","https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fissues\u002F25",{"id":149,"question_zh":150,"answer_zh":151,"source_url":152},38230,"如何获取当前对话的 Chat ID？","获取 Chat ID 通常需要拦截网络请求或解析 API 响应。一种方法是重写 `window.fetch` 函数来监听包含 `\u002Fbackend-api\u002Fconversations` 的请求，并从响应数据中提取 ID。另一种更稳定的方法是通过访问 `https:\u002F\u002Fchat.openai.com\u002Fbackend-api\u002Fconversations` 接口（需要有效的 Access Token），从返回的会话列表中获取当前对话的详细信息。注意直接操作 DOM 或 URL 可能无法在非刷新状态下获取最新 ID。","https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fissues\u002F63",{"id":154,"question_zh":155,"answer_zh":156,"source_url":157},38231,"如何优化 Access Token 的管理以避免速率限制？","建议将 Access Token 存储在 `chatgpt` 对象变量中，并在令牌过期时自动更新。这种方法比每次请求都重新获取令牌更高效，能减少 API 调用次数从而避免速率限制。由于该库通常在用户脚本环境中运行，令牌存储在内存对象中是安全的（页面刷新或移除对象后即消失），且不需要额外的浏览器存储权限，更容易通过扩展商店审核。","https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fissues\u002F83",{"id":159,"question_zh":160,"answer_zh":161,"source_url":162},38232,"`chatgpt.sidebar.append()` 方法不生效如何解决？","如果侧边栏追加内容不显示，通常是因为页面的动态渲染机制（如 Observer）未检测到变化。尝试触发观察器的方法包括：修改页面元素的属性、点击某个按钮或编辑文本节点。如果库中的 `activateObserver` 对用户无效，可能需要手动触发一次 DOM 变更（例如添加一个临时类名再移除）来强制刷新视图。","https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fissues\u002F141",{"id":164,"question_zh":165,"answer_zh":166,"source_url":167},38233,"遇到 `'Cannot contact custom instructions endpoint'` 错误如何处理？","该错误通常伴随 403 状态码出现，表示请求被服务器拒绝。调试时可以打印 `xhr.responseText` 查看具体的错误响应内容。这可能是由于 API 端点变更、权限不足或网络策略限制导致。建议检查 Access Token 是否有效，并确认当前账号是否有权限访问自定义指令（Custom Instructions）相关的 API 接口。","https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fissues\u002F138",[169,174,179,184,189,194,199,204,209,214,219,224,229,234,239,244,249,254,259,264],{"id":170,"version":171,"summary_zh":172,"released_at":173},306375,"v3.9.0","## 📃 更改日志\n\n* [添加了 `selectors.btns.signup`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Ff5548ab96a2057d82f4798a3bb94170052081122) (@adamlui)\n* [更新了 `selectors.btns`，删除了已失效的选择器](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fc177d08f5c49146f006007e02608a7befdcddfb5) (@adamlui)\n* [删除了 `translate-en-messages.py` 已不再支持的汤加语消息](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Ff8def95944ab29f5120ca824c9c10db7ba0808c8) (@adamlui)\n* [将反馈属性的初始化移至 `notify()` 中](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Ff9b609f338cbc866f827cc415d40f46e2836cd0d) (@adamlui)\n* 将 @adamlui\u002Fminify.js 从 1.8.6 升级到 2.1.2 (@dependabot)\n* 将 @adamlui\u002Fscss-to-css 从 1.11.1 升级到 2.0.0 (@dependabot)\n* 将 @html-eslint\u002Feslint-plugin 从 0.52.1 升级到 0.54.0 (@dependabot)\n* 将 @html-eslint\u002Fparser 从 0.52.0 升级到 0.54.0 (@dependabot)\n* 将 @stylistic\u002Feslint-plugin 从 5.6.1 升级到 5.7.1 (@dependabot)\n* 将 eslint-plugin-regexp 从 2.10.0 升级到 3.0.0 (@dependabot)\n* 将 actions\u002Fsetup-node 从 6.1.0 升级到 6.2.0 (@dependabot)\n* 移除了存在 bug 的 eslint-plugin-yml (@adamlui)\n\n**完整更改日志**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.8.5...v3.9.0 (@adamlui, @dependabot, @kudo-sync-bot)\n\n此版本的 README：https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.9.0\u002F#readme","2026-01-27T13:43:50",{"id":175,"version":176,"summary_zh":177,"released_at":178},306376,"v3.8.5","## 📃 更改日志\n\n* [为 `console.error` 的参数添加类型检查](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F35e70eca8de060751d612b542b876e5515552179) (@geghamyan)\n* [精简了 `getChatMsgs()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fceeb923b71785308bcfeaede1c1f37d25c42d679) (@adamlui)\n* [缩短了数组长度检查](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Ff43668bcf2d94023b20245aac253bff264845d3a) (@adamlui)\n* [重新添加 docsify-cli 作为开发依赖](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fc2d7a1f16545a4d6661c4ef77c09e74a30530f00) (@adamlui)\n* 将 @adamlui\u002Fscss-to-css 从 1.10.42 升级到 1.11.1 (@dependabot)\n* 将 @eslint\u002Fcss 从 0.13.0 升级到 0.14.1 (@dependabot)\n* 将 @eslint\u002Fjson 从 0.13.2 升级到 0.14.0 (@dependabot)\n* 将 @eslint\u002Fmarkdown 从 7.4.0 升级到 7.5.1 (@dependabot)\n* 将 @html-eslint\u002Feslint-plugin 从 0.47.0 升级到 0.52.1 (@dependabot)\n* 将 @html-eslint\u002Fparser 从 0.47.0 升级到 0.52.0 (@dependabot）\n* 将 @stylistic\u002Feslint-plugin 从 5.4.0 升级到 5.6.1 (@dependabot）\n* 将 actions\u002Fcheckout 从 5.0.0 升级到 6.0.1 (@dependabot）\n* 将 actions\u002Fsetup-node 从 6.0.0 升级到 6.1.0 (@dependabot）\n* 将 ESLint 从 9.37.0 升级到 9.39.2 (@dependabot）\n* 将 eslint-plugin-yml 从 1.19.0 升级到 1.19.1 (@dependabot）\n* 将 js-yaml 从 4.1.0 升级到 4.1.1 (@dependabot）\n\n**完整更改日志**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.8.4...v3.8.5 (@geghamyan, @adamlui, @dependabot, @kudo-sync-bot)\n\n此版本的 README: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.8.5\u002F#readme\n\n## 🧠 新贡献者\n* @geghamyan 在 https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpull\u002F463 中做出了首次贡献","2026-01-04T14:11:38",{"id":180,"version":181,"summary_zh":182,"released_at":183},306377,"v3.8.4","## 📃 更改日志\n\n* [更新了 `chatgpt.selectors.btns.stop`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F95d1b66ffc3790a75fd49cfbc4e05019c5fa3e9e) (@adamlui)\n* [提升了 `chatgpt.alert()` 的性能](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fc203043cc4af82da001b0b8f3f3195edf63cf06f) (@adamlui)\n* 将 @adamlui\u002Fscss-to-css 从 1.10.37 升级到 1.10.42 (@dependabot)\n* 将 @eslint\u002Fcss 从 0.10.0 升级到 0.13.0 (@dependabot)\n* 将 @eslint\u002Fjson 从 0.13.1 升级到 0.13.2 (@dependabot)\n* 将 @eslint\u002Fmarkdown 从 7.1.0 升级到 7.4.0 (@dependabot)\n* 将 @html-eslint\u002Feslint-plugin 从 0.45.0 升级到 0.47.0 (@dependabot)\n* 将 @html-eslint\u002Fparser 从 0.45.0 升级到 0.47.0 (@dependabot)\n* 将 @stylistic\u002Feslint-plugin 从 5.2.3 升级到 5.4.0 (@dependabot)\n* 将 actions\u002Fsetup-node 从 4 升级到 6.0.0 (@dependabot)\n* 将 ESLint 从 9.33.0 升级到 9.37.0 (@dependabot)\n* 将 eslint-plugin-yml 从 1.18.0 升级到 1.19.0 (@dependabot)\n\n**完整更改日志**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.8.3...v3.8.4 (@adamlui, @dependabot, @kudo-sync-bot)\n\n此版本的 README：https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.8.4\u002F#readme","2025-10-16T03:42:40",{"id":185,"version":186,"summary_zh":187,"released_at":188},306378,"v3.8.3","## 📃 更改日志\n\n* [更新了 `chatgpt.sidebar.is\u003COn|Off>()`，使其兼容新的窄侧边栏](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F093f322812c348d2dea6a2ccb14e15ade85cb18e) (@adamlui)\n* 添加了 GitLab 同步功能 (@adamlui)\n* 将 @adamlui\u002Fscss-to-css 从 1.10.36 升级到 1.10.37 (@dependabot)\n* 将 @html-eslint\u002Feslint-plugin 从 0.43.1 升级到 0.45.0 (@dependabot)\n* 将 @html-eslint\u002Fparser 从 0.43.0 升级到 0.45.0 (@dependabot)\n* 将 @stylistic\u002Feslint-plugin 从 5.2.2 升级到 5.2.3 (@dependabot)\n* 将 actions\u002Fcheckout 从 4 升级到 5 (@dependabot)\n* 将 ESLint 从 9.32.0 升级到 9.33.0 (@dependabot)\n* 将 eslint-plugin-regexp 从 2.9.0 升级到 2.10.0 (@dependabot)\n\n**完整更改日志**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.8.2...v3.8.3 (@adamlui, @dependabot, @kudo-sync-bot)\n\n此版本的 README：https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.8.3\u002F#readme\n","2025-08-15T06:41:56",{"id":190,"version":191,"summary_zh":192,"released_at":193},306379,"v3.8.2","## 📃 更改日志\n\n* [修复了 `chatgpt.getChatData()`，使其遍历完整的消息树以考虑中间消息](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F7a4de0564b1b6b628bbb675936fe446993bbf8ac) (@m-k8s)\n* [更新了 `chatgpt.selectors.header`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fc96157d1738c6fbfcb9de0466713004c074762b2) (@adamlui)\n* [更新了 `chatgpt.selectors.sidebar`，以包含新的滑动面板](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F619c21f1c4c2775e4f685d687de61ed8838daadd) (@adamlui)\n* [更新了 `chatgpt.selectors.btns.sidebar`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fa83c80951833a25cab11f7fa1fa5ebbda8defc7f) (@adamlui)\n* [调整了 `chatgpt.notify()` 提示框的垂直位置](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F2ce0fc982d7bca754db65553d7ae5d038cf094f4) (@adamlui)\n* [缩短了 chatgpt.selectors](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F09084e9ccf4bee44238d16f5d60730d75f305c22) (@adamlui)\n* [将 `background-color` 替换为 `background`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F4a33aae17b43be7bc823f014f6130f6f951268ad) (@adamlui)\n* 用 eslint-plugin 替代已弃用的 @stylistic\u002Feslint-plugin-js (@adamlui)\n* 将 @adamlui\u002Fscss-to-css 从 1.10.32 升级到 1.10.36 (@dependabot)\n* 将 @eslint\u002Fcss 从 0.7.0 升级到 0.10.0 (@dependabot)\n* 将 @eslint\u002Fjson 从 0.12.0 升级到 0.13.1 (@dependabot)\n* 将 @eslint\u002Fmarkdown 从 6.4.0 升级到 7.1.0 (@dependabot)\n* 将 @html-eslint\u002Fparser 从 0.40.0 升级到 0.43.0 (@dependabot)\n* 将 @html-eslint\u002Feslint-plugin 从 0.40.1 升级到 0.43.1 (@dependabot)\n* 将 brace-expansion 从 1.1.11 升级到 1.1.12 (@adamlui)\n* 将 ESLint 从 9.26.0 升级到 9.32.0 (@dependabot)\n* 将 eslint-plugin-import 从 2.31.0 升级到 2.32.0 (@dependabot)\n* 将 eslint-plugin-regexp 从 2.7.0 升级到 2.9.0 (@dependabot)\n\n**完整更改日志**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.8.1...v3.8.2 (@m-k8s, @adamlui, @dependabot, @kudo-sync-bot)\n\n此版本的 README: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.8.2\u002F#readme\n\n## 🧠 新贡献者\n* @m-k8s 在 https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpull\u002F414 中做出了他们的首次贡献","2025-07-28T07:48:38",{"id":195,"version":196,"summary_zh":197,"released_at":198},306380,"v3.8.1","## 📃 更改日志\n* [将 `chatgpt.alert()` 中对交互元素的防拖拽范围扩展到所有自定义光标](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fc8e1af021fff639d4e3303b643c3e11be15e1d8e) (@adamlui)\n* [将 `chatgpt.alert()` 按钮的光标改为十字准星](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F2f12ff712fafa6c01c99ee406513625d558d0ab1) (@adamlui)\n* [用更快的 `.textContent` 替代 `Element.innerText` 的赋值操作](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fca18527aeda76f9c0da8133f79077851390481da) (@adamlui)\n* [更新了 `chatgpt.selectors.sidebar`] (https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F69b58a5c04004300a30511840892b90eab94a835) (@adamlui)\n* 将 `@html-eslint\u002Feslint-plugin` 从 0.39.0 升级到 0.40.1 (@dependabot)\n* 将 `@html-eslint\u002Fparser` 从 0.39.0 升级到 0.40.0 (@dependabot)\n* 将 ESLint 从 9.25.1 升级到 9.26.0 (@dependabot)\n\n**完整更改日志**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.8.0...v3.8.1 (@adamlui, @dependabot, @kudo-sync-bot)\n\n此版本的 README：https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.8.1\u002F#readme","2025-05-11T09:48:10",{"id":200,"version":201,"summary_zh":202,"released_at":203},306381,"v3.8.0","## 📃 更改日志\n* [添加了 `chatgpt.selectors.errors.toast`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fab9a2c18d97a59ccb979299e8dfa78b4e745f47f) (@adamlui)\n* [添加了 `chatgpt.selectors.btns.\u003CcreateImage|deepResearch|search|reason|upload>`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F6c3e661b0ba079fa8595ef2d2dbdfd48e712d0e6) (@adamlui)\n* [扩展了 `chatgpt.selectors.footer`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F12aab95968dac5e0ee90cb195fad293edca93daf) (@adamlui)\n* [更新了 `chatgpt.selectors.sidebar` 以在移动端生效](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Ff5ec0e8a456ae8d50fa20c1548c3ad4b192c2d4b) (@adamlui)\n* [更新了 `chatgpt.selectors.btns.newChat` 以在移动端生效](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fb63e68f8c74779226717676ec2605aa39ae57184) (@adamlui)\n* [更新了 `chatgpt.selectors.\u003Cfooter|header|sidebar>`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Ff9867895c22afac86763132a52749b5da1c6a5d8) (@adamlui)\n* [更新了 `chatgpt.selectors.btns.newChat`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F113611f46dd79df6dc19ad7baf05719d1bb46a92) (@AnglusWang, @adamlui)\n* [更新了 `chatgpt.selectors.btns.regen`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F9a39232ca9b2d072ab5f769b21a7a165484c546f) (@adamlui)\n* [更新了 `chatgpt.selectors.chatDivs.convo`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F40eeb3cdbf5a462e15e924d9f0a316bfa7969c6f) (@adamlui)\n* [更新了 `chatgpt.selectors.chatHistory`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F1797cb4c4264bf43ade185ec168e363bb2a78669) (@adamlui)\n* [更新了 `chatgpt.selectors.header`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fc594a0d51de7bd9d0d88c5a08289c518237cb655) (@adamlui)\n* [将 `chatgpt.alert()` 拖拽处理函数中的光标样式抓取逻辑移至 `document.body`，以支持点击超出模态框边界的元素](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F585be4d00aa0b60389d99f32a75863f99b001beb) (@adamlui)\n* [提高了选择器的特异性以提升性能](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fb52e1e7af9aa95e3288dd31e8b6c01a11eb57d75) (@adamlui)\n* [精简了 `toCamelCase()` 函数](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F0753c9ea5b3cc46480d10c94ae081741d7b9e0dc) (@adamlui)\n* [精简了 `chatgpt.notify()` 中的 `vOffset` 初始化代码](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F2348b151d9e66657eb9d1f0f8067f3dfeca81e2c) (@adamlui)\n* [精简了返回流程](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F8d4735b192a87367b6aabcd906676017cc958c4a) (@adamlui)\n* [精简了元素替换流程](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F992e4cdc6bfb26b59175013fa3776b68b2032256) (@adamlui)\n* [重构了 `chatgpt.is\u003CDark|Light>Mode()` 函数，以保持一致性](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fde45b597c83ec93b3bfc468a997c8ed5d344abbc) (@adamlui)\n* 将 @adamlui\u002Fminify.js 从 1.8.5 升级到 1.8.6 (@dependabot)\n* 将 @adamlui\u002Fscss-to-css 从 1.10.26 升级到 1.10.32 (@dependabot)\n* 将 @eslint\u002Fcss 从 0.3.0 升级到 0.7.0 (@dependabot)\n* 将 @eslint\u002Fjson f","2025-04-28T23:26:22",{"id":205,"version":206,"summary_zh":207,"released_at":208},306382,"v3.7.1","## 📃 更改日志\n* [更新了 `chatgpt.selectors.btns.regen`，使其包含错误按钮，并使现有选择器更加精确](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F5fe5103b08d2ee5fd301f6ef8d6daf16adbf5bc2)\n* [更新了 `chatgpt.selectors.btns.continue`，使其更加精确，以排除“重新生成”按钮](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fa0870e02b36e8caaf4ee6e31fecee323582521d5)\n\n**完整更改日志**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.7.0...v3.7.1 (@adamlui, @dependabot)\n\n此版本的 README：https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.7.1\u002F#readme\n","2025-02-22T06:44:07",{"id":210,"version":211,"summary_zh":212,"released_at":213},306383,"v3.7.0","## 📃 更改日志\n* [添加了 `chatgpt.getLoginButton()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fb7458117ba7b848b45e42ecbb80d4e4082174134) (@adamlui)\n* [添加了 `chatgpt.getVoiceButton()` + 别名](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F76af28c0d58a4a33b988543694fb4b450014cc0e) (@adamlui)\n* [添加了 `chatgpt.login()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fd72d618d9beefd4f1b7902c0d9735189afb536e5) (@adamlui)\n* [添加了 `chatgpt.isTempChat()` + 别名\u002F同义词](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fc60e7350b2ce270e20adccb6c00aec5eb9109dcf) (@adamlui)\n* [添加了 `chatgpt.selectors.errors.txt` + `chatgpt.getErrorMsg()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F711124d0b88d44f5cb9ac88cf1d9ce451f5ee3a6) (@adamlui)\n* [将 `logout` 函数的别名移至同义词，并添加了 `login` 的同义词](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F2b9cc83f4c7dddb8dc62eedeb9efa34cbdacc850) (@adamlui)\n* [在 `chatgpt.alert()` 中，通过点击拖动来禁用子元素的指针事件，以避免触发悬停样式](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F2be75d4979d4a80724e0b5bbf44abac03e9f8066) (@adamlui)\n* [将选择器抽象为 `chatgpt.selectors`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F368fb584ad93b214bc72a8efafbe1fde38bc0f41) (@adamlui)\n* [使 `chatgpt.alert()` 在点击标签时自动勾选复选框](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F86598b6478fb538096ec06b175480b2f02ff5b7d) (@adamlui)\n* [将 `chatgpt.openAIaccessToken` 简化为 `accessToken`，移除了初始化代码，并精简了 `getAccessToken()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F5b7886424f89991f9d3a0b609ebd0e0e12179018) (@adamlui)\n* [用更短的 `before()` 替代 `Element.insertBefore()`，并删除了分号和多余空格](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fbf3307c3da45788030ef18b25b4dabc6a9f678c5) (@adamlui)\n* [在 `chatgpt.renderHTML()` 中，将 `Element.before()` 替换为 `insertBefore()`，以避免抛出异常](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fbf459598dbdfaad76f3ebce3f8a45a0c8046eaff) (@adamlui)\n* [精简了 `chatgpt.activate\u003CScheme>Mode()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F2aa5ddacbb4fc59308e887d8c56cce78ca11fa98) (@adamlui)\n* [精简了 `chatgpt.alert()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F74f12d0b175a34eb5e2c984cd4ac0d1bf68243dd) (@adamlui)\n* [从 `cjsFuncAliases` 中删除了不再需要的小写别名](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Ff46b9b93aaed417d5909ae5b6f209955995b7f29) (@adamlui)\n* [缩短了函数和变量名，删除了不必要的属性、符号和空格，并优化了注释](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F8b6e7130adf4f756b90fffe69499a23843c1df1d) (@adamlui)\n* [用模板字符串替换了字符串拼接，并删除了花括号](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F780fa81d89a2078d4a893d08d61516063f740d40) (@adamlui)\n* 将 @adamlui\u002Fscss-to-css 从 1.10.25 升级到 1.10.26 (@dependabot)\n* 将 @eslint\u002Fcss 从 0.2.0 升级到 0.3.0 (@dependabot)\n* 将 @html-eslint\u002Feslint-plugin 从 0.34.0 升级到 0.35.0 (@dep","2025-02-22T05:28:14",{"id":215,"version":216,"summary_zh":217,"released_at":218},306384,"v3.6.3","## 📃 更改日志\n* [改进了 `chatgpt.alert()` 的样式](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F570897402c6b5abc0d1a6ea5e2db38736ce8a20a) (@adamlui)\n* [精简了 `camelCaser()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fe168928a3626fed5781492054f79523f962ad637) (@adamlui)\n* [改进了函数别名功能](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F47ab4a85a59abef037ac6997d2d60e83706e34b9) (@adamlui)\n* [新增了 `msg` 函数作为 `message` 的同义词](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F405739817015d8b8520845b9cbb714cb90ef0ac7) (@adamlui)\n* [在 `chatgpt.alert()` 按钮悬停时增加了缩放效果及更暗的文字](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F5458ac4cf3162b6e8fde3c0a7ddf71ed59e53322) (@adamlui)\n* 将 ESLint 从 9.20.0 升级至 9.20.1 (@dependabot)\n\n**完整更改日志**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.6.2...v3.6.3 (@adamlui, @dependabot, @kudo-sync-bot)\n\n此版本的 README: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.6.3\u002F#readme","2025-02-12T10:41:35",{"id":220,"version":221,"summary_zh":222,"released_at":223},306385,"v3.6.2","## 📃 Changelog\r\n* [Added Cyclic Arrows icon selector to `chatgpt.getNewChatButton()` to support Guest Temp Chat mode](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F31c51f5b0231cbd45ed5d8afa32bee6200568c41)\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.6.1...v3.6.2 (@adamlui, @kudo-sync-bot)\r\n\r\nREADME for this release: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.6.2\u002F#readme\r\n","2025-02-11T09:02:10",{"id":225,"version":226,"summary_zh":227,"released_at":228},306386,"v3.6.1","## 📃 Changelog\r\n* [Ensured options not passed to `chatgpt.speak()` default correctly](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F025f13ad425787d2c197d8cb2d398c7e952effe3) (@adamlui)\r\n* [Changed observer target of `isLoaded` methods to consistently available `document.documentElement`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fba17fb0b2999bee85b0102794946ea32d82754d7) (@adamlui)\r\n* [Moved checkbox in `chatgpt.alert()` above buttons, deleted straggling symbol that negated font styles](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F635a861fd52ccb4e3d6ab51de4dfae9b12970493) (@adamlui)\r\n* [Added slight zoom to `chatgpt.alert()` on click-drag](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F3648688d9d93160ba684a445982169e811cce7e6) (@adamlui)\r\n* [Improved CSS](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fda5d41b83548b070b17bfd42bbedc3751b66ee0e) (@adamlui)\r\n* Bumped @adamlui\u002Fscss-to-css from 1.10.24 to 1.10.25 (@dependabot)\r\n* Bumped @html-eslint\u002Feslint-plugin from 0.33.1 to 0.34.0 (@dependabot)\r\n* Bumped @html-eslint\u002Fparser from 0.33.0 to 0.34.0 (@dependabot)\r\n* Bumped @stylistic\u002Feslint-plugin-js from 3.0.1 to 3.1.0 (@dependabot)\r\n* Bumped ESLint from 9.19.0 to 9.20.0 (@dependabot)\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.6.0...v3.6.1 (@adamlui, @dependabot, @kudo-sync-bot)\r\n\r\nFor more detailed information and usage instructions, please refer to the README for this release: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.6.1\u002F#readme\r\n\r\n_Note: Asset **chatgpt.js-3.6.1.tgz** is the official release package [as published to npm](https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@kudoai\u002Fchatgpt.js\u002Fv\u002F3.6.1). *.tar.gz and *.zip files are auto-generated by GitHub, they contain a git snapshot of the entire repo at the time of this release._","2025-02-11T07:58:27",{"id":230,"version":231,"summary_zh":232,"released_at":233},306387,"v3.6.0","## 📃 Changelog\r\n* [Added `chatgpt.isTyping()` + func synonym](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fd23bbe2577924f798436c0c64888c92093cd9642) (@adamlui)\r\n* [Added `onend` callback option + key validation to `chatgpt.speak()`, condensed code](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fe3db7e7098fac51255432f03cc2b83f9b36117cf) (@adamlui)\r\n* [Added 'play' func synonym for 'speak'](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F577f94108e4891c9c42700b9312ca93dbc850629)  (@adamlui)\r\n* [Added `-o-user-select: none` to `chatgpt.\u003Calert|notify>()` styles](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F7cde22797f6f91ac927c34945ed6c5dcb26b10c2) (@adamlui)\r\n* [Expanded transition style support to older browsers](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Ff247b730a97f7a3cb7bf4a8d6f040401f3fc9bd4) (@adamlui)\r\n* [Refactored `chatgpt.alert()` to rely on `modal.onanimationend` for precise removal timing](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F9346e7a1ea23e57aeb9eac3d0a6234ef851e13b6) (@adamlui)\r\n* [Condensed `chatDivs.length` check in `chatgpt.exportChat()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fd61cd41610b19c045f9837e189cd5daf2fb37673) (@adamlui)\r\n* [Condensed CSS color declarations](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fe8e39277c0d31ef8ec9aea3cf6a9ab943cca6d85) (@adamlui)\r\n* [Simplified `chatgpt.isDarkMode()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fa9615be3bf348f69e89e6b8e3a59037f1dfcb542) (@adamlui)\r\n* [Replaced `promptsURL` in `chatgpt.actAs(persona)` w\u002F jsDelivr one](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F8fa3932457f8c9e664ea9da50b53c2f2162e821c) (@adamlui)\r\n* [Implemented @eslint\u002Fcss as dev dependency](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fa2d1a3e20e3718a367ce12b07bcc95c95ff91489) (@adamlui)\r\n* [Implemented html-eslint as dev dependency](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fe4650aaee6090acf3344d4dd1d3c4096bc728a8b) (@adamlui)\r\n* Bumped @adamlui\u002Fscss-to-css from 1.10.22 to 1.10.24 (@dependabot)\r\n* Bumped @eslint\u002Fjson from 0.9.0 to 0.10.0 (@dependabot)\r\n* Bumped @eslint\u002Fmarkdown from 6.2.1 to 6.2.2 (@dependabot)\r\n* Bumped @stylistic\u002Feslint-plugin-js from 2.12.1 to 3.0.1 (@dependabot)\r\n* Bumped ESLint from 9.17.0 to 9.19.0 (@dependabot)\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.5.0...v3.6.0 (@adamlui, @dependabot, @kudo-sync-bot)\r\n\r\nREADME for this release: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.6.0\u002F#readme\r\n","2025-02-01T16:26:39",{"id":235,"version":236,"summary_zh":237,"released_at":238},306388,"v3.5.0","## 📃 Changelog\r\n* [Added font styles to `chatgpt.notify()` to support non-chatgpt.com sites](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F09b55dc4f939f8fc60f936c1720e3efe93a94283)\r\n* [Added link underline style on hover to `chatgpt.alert()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F48dd9292cfca748d16dc62b6d4f185e4dd6e7531)\r\n* [Increased delay before div removal in `chatgpt.alert()` +20ms for smoother transition](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F696136c7a9e586d3b00456c7d7c01e1711872970)\r\n* [Stripped unneeded quotes from CSS selectors](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fcb1f51c29f8565b76ec067a3f21db3b696362ca1)\r\n* [Renamed `event` args of `forEach` loops in `handlers.drag` type methods of `chatgpt.alert()` to `eventType` for better clarity](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F22ace92dab515076f6036058c59e57e8beeaa2e6)\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.4.0...v3.5.0 (@adamlui, @kudo-sync-bot)\r\n\r\nREADME for this release: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.5.0\u002F#readme\r\n","2024-12-29T12:52:31",{"id":240,"version":241,"summary_zh":242,"released_at":243},306389,"v3.4.0","## 📃 Changelog\r\n* [Added click-draggability to `chatgpt.alert()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F7ba1e5eaa3c09d0a8aa551f58ad1d764dab5b82b) (@adamlui)\r\n* [Updated `chatgpt.getNewChatButton()` selector](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fdf05baddf7528d1e2d69408842458fc3018ff595) (@AliasUruz, @adamlui)\r\n* [Updated `chatgpt.footer` methods to work w\u002F new UI](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F86f0e13c921f3d261db708479f6ff69dd3bda000) (@adamlui)\r\n* [Re-styled `chatgpt.alert()` border\u002Ftransitions + hard-coded styles for futureproofing](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F90459794afbf815a5d64206e8577fea6cdb320db) (@adamlui)\r\n* [Reversed\u002Fsimplified conditions to reduce nesting](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F30746e9853323af7a28bd46ebd416d6ea3b5b932) (@adamlui)\r\n* [Converted un-ref'd regex groups to non-capturing](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F039ed974b0911e9cbb1c86f49a66a43935d564ad) (@adamlui)\r\n* [Refactored `chatgpt.uuidv4()` to native `crypto.randomUUID()` when available](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fa279e55519e9c8c861ea69ed1816e328a180b11e) (@twlite)\r\n* [Condensed `keyHandler()` event check in `chatgpt.alert()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F869d013219b2a2470edfac6fe7b86609d7036ca1) (@adamlui)\r\n* [Shortened regex](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F5dc8660a6178ae4150e44fd428994375727effc2) (@adamlui)\r\n* [Stripped trailing whitespace](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F556c737991c9ec1d4e203ea1837dbe77fecb8b1f) (@adamlui)\r\n* [Refactored `clickHandler()` event check in `chatgpt.alert()` for readability](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F8f13defedf82fa830844a347bb2e50256d3a755e) (@adamlui)\r\n* [Moved `chatgpt.alert()` event handlers into obj for readability](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F4ab79c2a5ae8507b2fa449a811df0d663a6bf5f0) (@adamlui)\r\n* [Limited lines to 120 chars max for readability](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F2229c4916d69d413e2af1dfdf84190e4cb785b95) (@adamlui)\r\n* [Implemented @eslint\u002Fmarkdown as dev dependency](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fdbc0988146612b72280c941e760285336b6be2ef) (@adamlui)\r\n* [Implemented eslint-plugin-import as dev dependency](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F761ff7a41f89c08b0a5c05c1425a23f9732b79d4) (@adamlui)\r\n* [Implemented eslint-plugin-regexp as dev dependency](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F83fcb3cbc991627e1969330b709f7b128a72c53c) (@adamlui)\r\n* [Implemented eslint-plugin-yml as dev dependency](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F588d2e586e0f5f6089736dbfe71abe7105d0998c) (@adamlui)\r\n* [Implemented @stylistic\u002Feslint-plugin-js as dev dependency](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F61d6b7f6e9d60098c71692d47529839e4b85c286) (@adamlui)\r\n* [Replaced eslint-plugin-json w\u002F @eslint\u002Fjson](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fe7a779ae953111a89c571e3e50cda677b76f7d73) (@adamlui)\r\n* Bumped cross-spawn from 7.0.3 to 7.0.5 (@dependabot)\r\n* Bumped ESLint from 9.12.0 to 9.17.0 (@dependabot, @adamlui)\r\n* Bumped @eslint\u002Fplugin-kit from 0.2.0 to 0.2.3 (@dependabot)\r\n* Bumped husky from 9.1.6 to 9.1.7 (@dependabot)\r\n* Bumped scss-to-css from 1.10.9 to 1.10.22 (@dependabot, @adamlui)\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.3.5...v3.4.0 (@adityadeshpande09, @twlite, @sulav7, @samir-byte, @ghimirebibek, @JanumalaAkhilendra, @AliasUruz, @adamlui, @dependabot, @kudo-sync-bot)\r\n\r\nREADME for this release: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.4.0\u002F#readme\r\n\r\n## 🧠 New Contributors\r\n* @adityadeshpande09 made their first contribution in https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpull\u002F318\r\n* @twlite made their first contribution in https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpull\u002F319\r\n* @sulav7 made their first contribution in https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpull\u002F320\r\n* @samir-byte made their first contribution in https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpull\u002F322\r\n* @ghimirebibek made their first contribution in https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpull\u002F324\r\n* @JanumalaAkhilendra made their first contribution in https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpull\u002F330\r\n* @AliasUruz made their first contribution in https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fai-web-extensions\u002Fissues\u002F110#issuecomment-2510199619\r\n","2024-12-20T13:19:20",{"id":245,"version":246,"summary_zh":247,"released_at":248},306390,"v3.3.5","## 📃 Changelog\r\n* [Narrowed `chatgpt.getContinueButton()` selector to avoid Preview button in GPT editor](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Ff6b68dab3a7dce9aad20abcc4b1b9805618ee4ad) (@thepick, @adamlui)\r\n* Improved docs (@FarukhS52, @Innovatorcloudy, @barbarian360, @adamlui)\r\n* Bumped ESLint from 9.11.1 to 9.12.0 (@dependabot, @adamlui)\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.3.4...v3.3.5 (@FarukhS52, @Innovatorcloudy, @barbarian360, @thepick, @eltociear, @adamlui, @dependabot, @kudo-sync-bot)\r\n\r\nREADME for this release: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.3.5\u002F#readme\r\n\r\n## 🧠 New Contributors\r\n* @FarukhS52 made their first contribution in https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpull\u002F307\r\n* @Innovatorcloudy made their first contribution in https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpull\u002F308\r\n* @barbarian360 made their first contribution in https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fpull\u002F310\r\n* @thepick made their first contribution in https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fchatgpt-auto-continue\u002Fissues\u002F69\r\n","2024-10-12T06:21:51",{"id":250,"version":251,"summary_zh":252,"released_at":253},306391,"v3.3.4","## 📃 Changelog\r\n* [Fixed automation butchered READMEs](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F76a61d094a397cafca5e273078b1c3abe3a37eb7)\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.3.3...v3.3.4 (@adamlui)\r\n\r\nFor more detailed information and usage instructions, please refer to the README for this release: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.3.4\u002F#readme\r\n\r\n_Note: Asset **chatgpt.js-3.3.4.tgz** is the official release package [as published to npm](https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@kudoai\u002Fchatgpt.js\u002Fv\u002F3.3.4). *.tar.gz and *.zip files are auto-generated by GitHub, they contain a git snapshot of the entire repo at the time of this release._","2024-10-03T15:23:52",{"id":255,"version":256,"summary_zh":257,"released_at":258},306392,"v3.3.3","## 📃 Changelog\r\n* [Updated `chatgpt.getChatInput()` to work w\u002F new UI](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F6d09bb464ad568c3dec98104a3ca61d19a6dfc1b) (@ae3e, @adamlui)\r\n* Bumped scss-to-css from 1.10.8 to 1.10.9 (@dependabot, @adamlui)\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.3.2...v3.3.3 (@ae3e, @adamlui, @dependabot, @kudo-sync-bot)\r\n\r\nREADME for this release: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.3.3\u002F#readme\r\n\r\n## 🧠 New Contributors\r\n* @ae3e made their first contribution in https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fissues\u002F304\r\n","2024-10-03T15:00:52",{"id":260,"version":261,"summary_zh":262,"released_at":263},306393,"v3.3.2","## 📃 Changelog\r\n* [Updated button selectors to use newly restored `data-testid` attrs](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F3ecbe40bad655b321a54a76958f81402032bf7d8) (@adamlui)\r\n* [Updated selector in `chatgpt.getScrollToBottomButton()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F254ee09bf25c24ebb41b940e1387e2367d578e97) (@adamlui)\r\n* [Updated selector for `responseDivs` init in `chatgpt.response.getFromDOM()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F6df2c746fe022b9a16c5e99e0ca52b1a875db0ec) (@gadelkareem, @adamlui)\r\n* Bumped ESLint from 9.10.0 to 9.11.1 (@dependabot, @adamlui)\r\n* Bumped scss-to-css from 1.10.4 to 1.10.8 (@dependabot, @adamlui)\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.3.1...v3.3.2 (@gadelkareem, @adamlui, @dependabot, @kudo-sync-bot)\r\n\r\nREADME for this release: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.3.2\u002F#readme\r\n\r\n## 🧠 New Contributors\r\n* @gadelkareem made their first contribution in https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fissues\u002F302\r\n","2024-09-25T16:17:22",{"id":265,"version":266,"summary_zh":267,"released_at":268},306394,"v3.3.1","## 📃 Changelog\r\n* [Updated sidebar selector in `chatgpt.sidebar.isOn()`](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F7bab5f5a03a59c424189816f6d6189262da2dadb) (@adamlui)\r\n* [Updated `chatgpt.getContinueGeneratingButton()` selector](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002F983774b3803ce29cf5b88b37c09716acd2754313) (@Mailootje, @adamlui)\r\n* [Shortened button-get method defs](https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcommit\u002Fb549ff727b5b6d4a65548d6e39dd3587f1e0fe3b) (@adamlui)\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Fcompare\u002Fv3.3.0...v3.3.1 (@Mailootje, @adamlui, @kudo-sync-bot)\r\n\r\nREADME for this release: https:\u002F\u002Fgithub.com\u002FKudoAI\u002Fchatgpt.js\u002Ftree\u002Fv3.3.1\u002F#readme\r\n\r\n## 🧠 New Contributors\r\n* @Mailootje made their first contribution in https:\u002F\u002Fgithub.com\u002Fadamlui\u002Fchatgpt-auto-continue\u002Fissues\u002F63\r\n","2024-09-16T02:46:02"]