[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-anc95--ChatGPT-CodeReview":3,"tool-anc95--ChatGPT-CodeReview":65},[4,17,27,35,48,57],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":16},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 真正成长为懂上",155373,2,"2026-04-14T11:34:08",[13,14,15],"开发框架","Agent","语言模型","ready",{"id":18,"name":19,"github_repo":20,"description_zh":21,"stars":22,"difficulty_score":23,"last_commit_at":24,"category_tags":25,"status":16},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,3,"2026-04-06T11:19:32",[15,26,14,13],"图像",{"id":28,"name":29,"github_repo":30,"description_zh":31,"stars":32,"difficulty_score":10,"last_commit_at":33,"category_tags":34,"status":16},3704,"NextChat","ChatGPTNextWeb\u002FNextChat","NextChat 是一款轻量且极速的 AI 助手，旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性，以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发，NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。\n\n这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言，它也提供了便捷的自托管方案，支持一键部署到 Vercel 或 Zeabur 等平台。\n\nNextChat 的核心亮点在于其广泛的模型兼容性，原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型，让用户在一个界面即可自由切换不同 AI 能力。此外，它还率先支持 MCP（Model Context Protocol）协议，增强了上下文处理能力。针对企业用户，NextChat 提供专业版解决方案，具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能，满足公司对数据隐私和个性化管理的高标准要求。",87618,"2026-04-05T07:20:52",[13,15],{"id":36,"name":37,"github_repo":38,"description_zh":39,"stars":40,"difficulty_score":10,"last_commit_at":41,"category_tags":42,"status":16},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",85092,"2026-04-10T11:13:16",[26,43,44,45,14,46,15,13,47],"数据工具","视频","插件","其他","音频",{"id":49,"name":50,"github_repo":51,"description_zh":52,"stars":53,"difficulty_score":54,"last_commit_at":55,"category_tags":56,"status":16},5784,"funNLP","fighting41love\u002FfunNLP","funNLP 是一个专为中文自然语言处理（NLP）打造的超级资源库，被誉为\"NLP 民工的乐园”。它并非单一的软件工具，而是一个汇集了海量开源项目、数据集、预训练模型和实用代码的综合性平台。\n\n面对中文 NLP 领域资源分散、入门门槛高以及特定场景数据匮乏的痛点，funNLP 提供了“一站式”解决方案。这里不仅涵盖了分词、命名实体识别、情感分析、文本摘要等基础任务的标准工具，还独特地收录了丰富的垂直领域资源，如法律、医疗、金融行业的专用词库与数据集，甚至包含古诗词生成、歌词创作等趣味应用。其核心亮点在于极高的全面性与实用性，从基础的字典词典到前沿的 BERT、GPT-2 模型代码，再到高质量的标注数据和竞赛方案，应有尽有。\n\n无论是刚刚踏入 NLP 领域的学生、需要快速验证想法的算法工程师，还是从事人工智能研究的学者，都能在这里找到急需的“武器弹药”。对于开发者而言，它能大幅减少寻找数据和复现模型的时间；对于研究者，它提供了丰富的基准测试资源和前沿技术参考。funNLP 以开放共享的精神，极大地降低了中文自然语言处理的开发与研究成本，是中文 AI 社区不可或缺的宝藏仓库。",79857,1,"2026-04-08T20:11:31",[15,43,46],{"id":58,"name":59,"github_repo":60,"description_zh":61,"stars":62,"difficulty_score":54,"last_commit_at":63,"category_tags":64,"status":16},6590,"gpt4all","nomic-ai\u002Fgpt4all","GPT4All 是一款让普通电脑也能轻松运行大型语言模型（LLM）的开源工具。它的核心目标是打破算力壁垒，让用户无需依赖昂贵的显卡（GPU）或云端 API，即可在普通的笔记本电脑和台式机上私密、离线地部署和使用大模型。\n\n对于担心数据隐私、希望完全掌控本地数据的企业用户、研究人员以及技术爱好者来说，GPT4All 提供了理想的解决方案。它解决了传统大模型必须联网调用或需要高端硬件才能运行的痛点，让日常设备也能成为强大的 AI 助手。无论是希望构建本地知识库的开发者，还是单纯想体验私有化 AI 聊天的普通用户，都能从中受益。\n\n技术上，GPT4All 基于高效的 `llama.cpp` 后端，支持多种主流模型架构（包括最新的 DeepSeek R1 蒸馏模型），并采用 GGUF 格式优化推理速度。它不仅提供界面友好的桌面客户端，支持 Windows、macOS 和 Linux 等多平台一键安装，还为开发者提供了便捷的 Python 库，可轻松集成到 LangChain 等生态中。通过简单的下载和配置，用户即可立即开始探索本地大模型的无限可能。",77307,"2026-04-11T06:52:37",[15,13],{"id":66,"github_repo":67,"name":68,"description_en":69,"description_zh":70,"ai_summary_zh":71,"readme_en":72,"readme_zh":73,"quickstart_zh":74,"use_case_zh":75,"hero_image_url":76,"owner_login":77,"owner_name":78,"owner_avatar_url":79,"owner_bio":80,"owner_company":81,"owner_location":82,"owner_email":83,"owner_twitter":84,"owner_website":81,"owner_url":85,"languages":86,"stars":102,"forks":103,"last_commit_at":104,"license":105,"difficulty_score":10,"env_os":106,"env_gpu":107,"env_ram":107,"env_deps":108,"category_tags":115,"github_topics":116,"view_count":10,"oss_zip_url":81,"oss_zip_packed_at":81,"status":16,"created_at":120,"updated_at":121,"faqs":122,"releases":158},7470,"anc95\u002FChatGPT-CodeReview","ChatGPT-CodeReview","🐥 A code review bot powered by ChatGPT","ChatGPT-CodeReview 是一款基于 ChatGPT 能力的自动化代码审查机器人，旨在帮助开发团队提升代码质量与协作效率。当开发者在 GitHub 上创建或更新拉取请求（Pull Request）时，它会自动分析代码差异，识别潜在的逻辑错误、规范不一致或可优化之处，并将详细的审查意见直接反馈在 PR 时间线或文件变更中。\n\n这款工具有效解决了人工代码审查耗时费力、标准难以统一以及新手开发者缺乏即时指导等痛点。通过集成大语言模型，它能提供接近资深工程师的审查视角，让团队更专注于核心业务逻辑而非基础语法检查。\n\nChatGPT-CodeReview 特别适合软件开发者、技术团队负责人以及开源项目维护者使用。无论是个人开发者希望快速获得代码反馈，还是企业团队需要标准化审查流程，都能从中受益。其独特亮点在于高度灵活的部署方式：既支持通过 GitHub Actions 快速集成，也允许用户自建服务以规避公共服务的速率限制和成本问题；同时兼容 OpenAI、Azure 及 GitHub Models 等多种后端模型，并支持自定义提示词、文件过滤规则及多语言输出，满足不同项目的个性化需求","ChatGPT-CodeReview 是一款基于 ChatGPT 能力的自动化代码审查机器人，旨在帮助开发团队提升代码质量与协作效率。当开发者在 GitHub 上创建或更新拉取请求（Pull Request）时，它会自动分析代码差异，识别潜在的逻辑错误、规范不一致或可优化之处，并将详细的审查意见直接反馈在 PR 时间线或文件变更中。\n\n这款工具有效解决了人工代码审查耗时费力、标准难以统一以及新手开发者缺乏即时指导等痛点。通过集成大语言模型，它能提供接近资深工程师的审查视角，让团队更专注于核心业务逻辑而非基础语法检查。\n\nChatGPT-CodeReview 特别适合软件开发者、技术团队负责人以及开源项目维护者使用。无论是个人开发者希望快速获得代码反馈，还是企业团队需要标准化审查流程，都能从中受益。其独特亮点在于高度灵活的部署方式：既支持通过 GitHub Actions 快速集成，也允许用户自建服务以规避公共服务的速率限制和成本问题；同时兼容 OpenAI、Azure 及 GitHub Models 等多种后端模型，并支持自定义提示词、文件过滤规则及多语言输出，满足不同项目的个性化需求。","# CodeReview BOT\n\n> A code review robot powered by ChatGPT\n\nTranslation Versions: [ENGLISH](.\u002FREADME.md) | [简体中文](.\u002FREADME.zh-CN.md) | [繁體中文](.\u002FREADME.zh-TW.md) | [한국어](.\u002FREADME.ko.md) | [日本語](.\u002FREADME.ja.md)\n\n## Bot Usage\n\n❗️⚠️ `Due to cost considerations, BOT is only used for testing purposes and is currently deployed on AWS Lambda with ratelimit restrictions. Therefore, unstable situations are completely normal. It is recommended to deploy an app by yourself.`\n\n### Install\n\nInstall: [apps\u002Fcr-gpt](https:\u002F\u002Fgithub.com\u002Fapps\u002Fcr-gpt);\n\n### Configuration\n\n1. Go to the repo homepage which you want integrate this bot\n2. click `settings`\n3. click `actions` under `secrets and variables`\n4. Change to `Variables` tab, create a new variable `OPENAI_API_KEY` with the value of your open api key (For Github Action integration, set it in secrets)\n   \u003Cimg width=\"1465\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fanc95_ChatGPT-CodeReview_readme_4f2e301f7119.png\">\n\n### Start using\n\n1. The robot will automatically do the code review when you create a new Pull request, the review information will show in the pr timeline \u002F file changes part.\n2. After `git push` update the pull request, cr bot will re-review the changed files\n\nexample:\n\n[ChatGPT-CodeReview\u002Fpull\u002F21](https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fpull\u002F21)\n\n\u003Cimg width=\"1052\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fanc95_ChatGPT-CodeReview_readme_193938caeb39.png\">\n\n## Using Github Actions\n\n[actions\u002Fchatgpt-codereviewer](https:\u002F\u002Fgithub.com\u002Fmarketplace\u002Factions\u002Fchatgpt-codereviewer)\n\n1. add the `OPENAI_API_KEY` to your github actions secrets\n2. create `.github\u002Fworkflows\u002Fcr.yml` add bellow content\n\n```yml\nname: Code Review\n\npermissions:\n  contents: read\n  pull-requests: write\n  models: true # if you choose use github models, set this to be true\n\non:\n  pull_request:\n    types: [opened, reopened, synchronize]\n\njobs:\n  test:\n    # if: ${{ contains(github.event.*.labels.*.name, 'gpt review') }} # Optional; to run only when a label is attached\n    runs-on: ubuntu-latest\n    steps:\n      - uses: anc95\u002FChatGPT-CodeReview@main\n        env:\n          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n\n          # if use github models https:\u002F\u002Fgithub.com\u002Fmarketplace\u002Fmodels\n          USE_GITHUB_MODELS: true\n          MODEL: openai\u002Fgpt-4o\n\n          # else if use azure deployment\n          AZURE_API_VERSION: xx\n          AZURE_DEPLOYMENT: xx\n\n          # else use standard llm model\n          OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n          OPENAI_API_ENDPOINT: https:\u002F\u002Fapi.openai.com\u002Fv1\n          MODEL: gpt-3.5-turbo # https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fmodels\n\n          # common\n          LANGUAGE: Chinese\n          PROMPT: # example: Please check if there are any confusions or irregularities in the following code diff:\n          top_p: 1 # https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fapi-reference\u002Fchat\u002Fcreate#chat\u002Fcreate-top_p\n          temperature: 1 # https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fapi-reference\u002Fchat\u002Fcreate#chat\u002Fcreate-temperature\n          max_tokens: 10000\n          MAX_PATCH_LENGTH: 10000 # if the patch\u002Fdiff length is large than MAX_PATCH_LENGTH, will be ignored and won't review. By default, with no MAX_PATCH_LENGTH set, there is also no limit for the patch\u002Fdiff length.\n          IGNORE_PATTERNS: \u002Fnode_modules\u002F**\u002F*,*.md # glob pattern or regex pattern to ignore files, separated by comma\n          INCLUDE_PATTERNS: *.js,*.ts # glob pattern or regex pattern to include files, separated by comma\n```\n\n## Self-hosting\n\n1. clone code\n2. copy `.env.example` to `.env`, and fill the env variables\n3. install deps and run\n\n```sh\nnpm i\nnpm i -g pm2\nnpm run build\npm2 start pm2.config.cjs\n```\n\n[probot](https:\u002F\u002Fprobot.github.io\u002Fdocs\u002Fdevelopment\u002F) for more detail\n\n## Dev\n\n### Setup\n\n```sh\n# Install dependencies\nnpm install\n\n# Build code\nnpm run build\n\n# Run the bot\nnpm run start\n```\n\n### Docker\n\n```sh\n# 1. Build container\ndocker build -t cr-bot .\n\n# 2. Start container\ndocker run -e APP_ID=\u003Capp-id> -e PRIVATE_KEY=\u003Cpem-value> cr-bot\n```\n\n## Contributing\n\nIf you have suggestions for how cr-bot could be improved, or want to report a bug, open an issue! We'd love all and any contributions.\n\nFor more, check out the [Contributing Guide](CONTRIBUTING.md).\n\n## Credit\n\nthis project is inpired by [codereview.gpt](https:\u002F\u002Fgithub.com\u002Fsturdy-dev\u002Fcodereview.gpt)\n\n## License\n\n[ISC](LICENSE) © 2023 anc95\n","# 代码审查机器人\n\n> 由 ChatGPT 提供支持的代码审查机器人\n\n翻译版本：[英文](.\u002FREADME.md) | [简体中文](.\u002FREADME.zh-CN.md) | [繁體中文](.\u002FREADME.zh-TW.md) | [韩语](.\u002FREADME.ko.md) | [日语](.\u002FREADME.ja.md)\n\n## 机器人使用说明\n\n❗️⚠️ `由于成本考虑，BOT 目前仅用于测试目的，并且部署在 AWS Lambda 上，带有速率限制。因此，出现不稳定的情况是完全正常的。建议您自行部署应用。`\n\n### 安装\n\n安装：[apps\u002Fcr-gpt](https:\u002F\u002Fgithub.com\u002Fapps\u002Fcr-gpt);\n\n### 配置\n\n1. 前往您想要集成此机器人的仓库主页\n2. 点击 `settings`\n3. 在 `secrets and variables` 下点击 `actions`\n4. 切换到 `Variables` 选项卡，创建一个名为 `OPENAI_API_KEY` 的新变量，其值为您的 OpenAI API 密钥（对于 GitHub Actions 集成，请将其设置在 secrets 中）\n   \u003Cimg width=\"1465\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fanc95_ChatGPT-CodeReview_readme_4f2e301f7119.png\">\n\n### 开始使用\n\n1. 当您创建一个新的 Pull Request 时，机器人会自动进行代码审查，审查信息将显示在 PR 时间线或文件更改部分。\n2. 在 `git push` 更新 Pull Request 后，cr 机器人会重新审查已更改的文件。\n\n示例：\n\n[ChatGPT-CodeReview\u002Fpull\u002F21](https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fpull\u002F21)\n\n\u003Cimg width=\"1052\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fanc95_ChatGPT-CodeReview_readme_193938caeb39.png\">\n\n## 使用 GitHub Actions\n\n[actions\u002Fchatgpt-codereviewer](https:\u002F\u002Fgithub.com\u002Fmarketplace\u002Factions\u002Fchatgpt-codereviewer)\n\n1. 将 `OPENAI_API_KEY` 添加到您的 GitHub Actions 秘密中\n2. 创建 `.github\u002Fworkflows\u002Fcr.yml` 文件，并添加以下内容：\n\n```yml\nname: Code Review\n\npermissions:\n  contents: read\n  pull-requests: write\n  models: true # 如果选择使用 GitHub 模型，请将其设置为 true\n\non:\n  pull_request:\n    types: [opened, reopened, synchronize]\n\njobs:\n  test:\n    # if: ${{ contains(github.event.*.labels.*.name, 'gpt review') }} # 可选；仅在附加标签时运行\n    runs-on: ubuntu-latest\n    steps:\n      - uses: anc95\u002FChatGPT-CodeReview@main\n        env:\n          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n\n          # 如果使用 GitHub 模型 https:\u002F\u002Fgithub.com\u002Fmarketplace\u002Fmodels\n          USE_GITHUB_MODELS: true\n          MODEL: openai\u002Fgpt-4o\n\n          # 如果使用 Azure 部署\n          AZURE_API_VERSION: xx\n          AZURE_DEPLOYMENT: xx\n\n          # 否则使用标准 LLM 模型\n          OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n          OPENAI_API_ENDPOINT: https:\u002F\u002Fapi.openai.com\u002Fv1\n          MODEL: gpt-3.5-turbo # https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fmodels\n\n          # 共性\n          LANGUAGE: Chinese\n          PROMPT: # 示例：请检查以下代码差异中是否存在任何混淆或不规范之处：\n          top_p: 1 # https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fapi-reference\u002Fchat\u002Fcreate#chat\u002Fcreate-top_p\n          temperature: 1 # https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fapi-reference\u002Fchat\u002Fcreate#chat\u002Fcreate-temperature\n          max_tokens: 10000\n          MAX_PATCH_LENGTH: 10000 # 如果补丁\u002F差异长度大于 MAX_PATCH_LENGTH，则会被忽略，不会进行审查。默认情况下，如果没有设置 MAX_PATCH_LENGTH，则对补丁\u002F差异长度没有限制。\n          IGNORE_PATTERNS: \u002Fnode_modules\u002F**\u002F*,*.md # 忽略文件的 glob 模式或正则表达式模式，用逗号分隔\n          INCLUDE_PATTERNS: *.js,*.ts # 包含文件的 glob 模式或正则表达式模式，用逗号分隔\n```\n\n## 自托管\n\n1. 克隆代码\n2. 将 `.env.example` 复制到 `.env`，并填写环境变量\n3. 安装依赖并运行\n\n```sh\nnpm i\nnpm i -g pm2\nnpm run build\npm2 start pm2.config.cjs\n```\n\n有关更多详细信息，请参阅 [probot](https:\u002F\u002Fprobot.github.io\u002Fdocs\u002Fdevelopment\u002F)。\n\n## 开发\n\n### 设置\n\n```sh\n# 安装依赖\nnpm install\n\n# 构建代码\nnpm run build\n\n# 运行机器人\nnpm run start\n```\n\n### Docker\n\n```sh\n# 1. 构建容器\ndocker build -t cr-bot .\n\n# 2. 启动容器\ndocker run -e APP_ID=\u003Capp-id> -e PRIVATE_KEY=\u003Cpem-value> cr-bot\n```\n\n## 贡献\n\n如果您对如何改进 cr 机器人有任何建议，或者想报告 bug，请提交一个问题！我们欢迎所有贡献。\n\n更多信息，请查看 [贡献指南](CONTRIBUTING.md)。\n\n## 致谢\n\n该项目受 [codereview.gpt](https:\u002F\u002Fgithub.com\u002Fsturdy-dev\u002Fcodereview.gpt) 的启发。\n\n## 许可证\n\n[ISC](LICENSE) © 2023 anc95","# ChatGPT-CodeReview 快速上手指南\n\nChatGPT-CodeReview 是一个基于 ChatGPT 的自动化代码审查机器人，可集成到 GitHub Pull Request 流程中，自动提供代码改进建议。\n\n## 环境准备\n\n*   **系统要求**：支持 Node.js 的操作系统（Linux\u002FmacOS\u002FWindows），或具备 Docker 环境。\n*   **前置依赖**：\n    *   Node.js (推荐 v16+) 和 npm\n    *   GitHub 账号及仓库权限\n    *   OpenAI API Key（或 Azure OpenAI 配置）\n*   **网络提示**：由于需要调用 OpenAI 接口，请确保运行环境能够访问 `api.openai.com`。如在国内开发环境部署，建议配置代理或使用支持国内访问的 LLM 服务端点。\n\n## 安装步骤\n\n本项目提供三种主要使用方式，请根据需求选择其一：\n\n### 方式一：直接安装 GitHub App（最简单，无需部署）\n\n适合快速测试或个人小项目。\n\n1.  访问 [cr-gpt App 安装页面](https:\u002F\u002Fgithub.com\u002Fapps\u002Fcr-gpt)。\n2.  点击 **Install** 并授权目标仓库。\n3.  **配置密钥**：\n    *   进入目标仓库首页 -> 点击 **Settings**。\n    *   在左侧菜单找到 **Secrets and variables** -> 点击 **Actions**。\n    *   切换到 **Variables** 标签页，新建变量：\n        *   Name: `OPENAI_API_KEY`\n        *   Value: 你的 OpenAI API Key\n    *   *(注：如果是为了 GitHub Action 集成，请在 Secrets 中设置)*\n\n### 方式二：通过 GitHub Actions 集成（推荐，可控性强）\n\n适合需要自定义模型参数、语言或过滤规则的生产环境。\n\n1.  **设置密钥**：\n    在仓库的 **Settings** -> **Secrets and variables** -> **Actions** -> **Secrets** 中，添加名为 `OPENAI_API_KEY` 的密钥。\n\n2.  **创建工作流文件**：\n    在仓库根目录创建 `.github\u002Fworkflows\u002Fcr.yml`，填入以下内容：\n\n```yml\nname: Code Review\n\npermissions:\n  contents: read\n  pull-requests: write\n\non:\n  pull_request:\n    types: [opened, reopened, synchronize]\n\njobs:\n  test:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: anc95\u002FChatGPT-CodeReview@main\n        env:\n          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n          OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n          \n          # 常用配置项\n          LANGUAGE: Chinese              # 输出语言\n          MODEL: gpt-3.5-turbo           # 模型名称\n          temperature: 1                 # 创造性参数\n          max_tokens: 10000              # 最大回复长度\n          IGNORE_PATTERNS: \u002Fnode_modules\u002F**\u002F*,*.md # 忽略的文件模式\n```\n\n### 方式三：自托管部署 (Self-hosting)\n\n适合需要完全私有化部署或深度定制的场景。\n\n1.  **克隆代码**：\n    ```sh\n    git clone https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview.git\n    cd ChatGPT-CodeReview\n    ```\n\n2.  **配置环境变量**：\n    ```sh\n    cp .env.example .env\n    # 编辑 .env 文件，填入 APP_ID, PRIVATE_KEY, OPENAI_API_KEY 等信息\n    ```\n\n3.  **安装依赖并运行**：\n    ```sh\n    npm i\n    npm i -g pm2\n    npm run build\n    pm2 start pm2.config.cjs\n    ```\n\n    *(可选) 使用 Docker 部署：*\n    ```sh\n    docker build -t cr-bot .\n    docker run -e APP_ID=\u003Capp-id> -e PRIVATE_KEY=\u003Cpem-value> -e OPENAI_API_KEY=\u003Cyour-key> cr-bot\n    ```\n\n## 基本使用\n\n完成上述任一安装配置后，即可开始使用：\n\n1.  **触发审查**：\n    在配置的仓库中创建一个新的 **Pull Request (PR)**，或者向现有的 PR 推送新的代码 (`git push`)。\n\n2.  **查看结果**：\n    机器人会自动检测变更文件，并在 PR 的时间线（Timeline）或文件变更详情中发表评论，指出潜在的代码问题、规范冲突或优化建议。\n\n3.  **交互示例**：\n    *   当 PR 包含不规范的代码时，Bot 会直接在对应代码行附近留言。\n    *   修改代码再次提交后，Bot 会对新增的 Diff 部分进行重新审查。\n\n> **注意**：官方提供的公共 Bot 实例出于成本考虑设有速率限制（Rate Limit），可能不稳定。生产环境强烈建议使用 **方式二** 或 **方式三** 自行部署。","某电商初创团队的后端工程师正在紧急重构订单支付模块，需要在两天内合并多个开发分支并上线新功能。\n\n### 没有 ChatGPT-CodeReview 时\n- 资深架构师需人工逐行审查数千行代码差异，耗时极长，导致合并请求（PR）在队列中积压超过 24 小时。\n- 疲劳的人工审查容易遗漏边界条件检查、空指针风险等隐蔽逻辑漏洞，直到测试环境报错才被发现。\n- 团队成员代码风格不统一，缺乏即时反馈机制，导致后续需要花费大量时间进行格式修正和规范化争论。\n- 新人开发者因等待反馈时间过长而被迫中断上下文切换，严重拖慢整体迭代节奏。\n\n### 使用 ChatGPT-CodeReview 后\n- 每次提交代码后，ChatGPT-CodeReview 秒级自动在 PR 时间轴生成详细评审报告，将等待时间从“天”缩短至“分钟”。\n- 工具精准识别出潜在的并发竞争条件和未处理的异常分支，并在文件变更处直接标注修改建议，提前拦截了 3 个严重 Bug。\n- 自动依据团队配置的语言规范指出命名不一致和冗余注释问题，确保合入代码风格整齐划一，减少人为摩擦。\n- 新人开发者能立即获得具体的优化指导和解释，无需打断工作流即可快速修正代码，保持了高效的开发心流。\n\nChatGPT-CodeReview 通过将 AI 智能嵌入开发流程，把原本滞后的被动审查转变为实时的主动防御，显著提升了代码质量与交付速度。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fanc95_ChatGPT-CodeReview_193938ca.png","anc95","小安","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fanc95_46da3c37.jpg","Web Developer",null,"Beijing","1481988258@qq.com","charliean7","https:\u002F\u002Fgithub.com\u002Fanc95",[87,91,95,99],{"name":88,"color":89,"percentage":90},"JavaScript","#f1e05a",99.9,{"name":92,"color":93,"percentage":94},"TypeScript","#3178c6",0.1,{"name":96,"color":97,"percentage":98},"HTML","#e34c26",0,{"name":100,"color":101,"percentage":98},"Dockerfile","#384d54",4435,471,"2026-04-14T05:39:42","ISC","Linux, macOS, Windows","未说明",{"notes":109,"python":107,"dependencies":110},"该工具基于 Node.js 运行，非本地大模型部署，因此无 GPU 和显存需求。主要运行方式有三种：1. 作为 GitHub App 安装；2. 通过 GitHub Actions 工作流运行（需配置 Ubuntu 环境）；3. 自托管（需安装 Node.js 依赖并配置 .env 环境变量，可使用 PM2 或 Docker 部署）。核心依赖为 OpenAI API Key 或 Azure 部署配置。",[111,112,113,114],"Node.js","npm","pm2","Docker (可选)",[15],[117,118,119],"chatgpt","codereview","probot","2026-03-27T02:49:30.150509","2026-04-15T03:21:14.427271",[123,128,133,138,143,148,153],{"id":124,"question_zh":125,"answer_zh":126,"source_url":127},33514,"为什么提示未设置 OPENAI_API_KEY，即使我已经在 Secrets 中配置了？","这取决于你使用的方式：\n1. 如果你使用的是 GitHub Action，请将密钥设置在仓库的 'Secrets' 中。\n2. 如果你使用的是 GitHub App（安装的应用），由于应用无法访问 Secrets，必须将密钥设置在 'Variables'（变量）中。\n请检查你的配置位置是否正确。","https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fissues\u002F48",{"id":129,"question_zh":130,"answer_zh":131,"source_url":132},33515,"如何配置只审核特定目录或文件类型的代码？","可以通过设置环境变量来实现过滤：\n1. 忽略特定文件或目录：设置 `IGNORE_PATTERNS`，例如 `IGNORE_PATTERNS: \u002Fnode_modules,*.md`。\n2. 包含特定模式：尝试使用 `INCLUDE_PATTERNS`，例如 `src\u002F**\u002F*` 来仅审核 src 目录下的文件。\n注意：如果是 GitHub App 模式，确保在 Variables 中设置这些环境变量。","https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fissues\u002F160",{"id":134,"question_zh":135,"answer_zh":136,"source_url":137},33516,"直接 Push 代码（非 Pull Request）时，Action 会触发检测吗？","默认情况下主要监听 Pull Request 的 'opened' 和 'synchronized' 事件。如果你希望在直接 Push 时也能触发检测，需要确保你的工作流配置监听了 `push` 事件或者相关的 `synchronize` 事件。对于非 PR 的直接提交，可能需要调整触发条件以支持该场景。","https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fissues\u002F59",{"id":139,"question_zh":140,"answer_zh":141,"source_url":142},33517,"如何避免 ChatGPT 回复“无评论”时仍然发送空的 PR 评论？","目前可以通过优化 Prompt 并结合代码逻辑来处理。维护者建议修改 Prompt 使其专注于代码审查工作，并在后端逻辑中追加一个 Prompt，要求 GPT 以 JSON 格式返回结果（例如包含 'lgtm' 标志）。\n如果返回结果表明没有问题（如包含 \"no comment\"），则可以在代码层面判断不发送评论。具体逻辑可参考项目源码中处理响应的部分。","https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fissues\u002F178",{"id":144,"question_zh":145,"answer_zh":146,"source_url":147},33518,"配置文件中的 top_p 和 temperature 等可选变量是什么意思？","这些变量源自 OpenAI SDK 的配置参数，用于控制模型生成的随机性和多样性：\n- `temperature`: 控制随机性，值越高输出越随机，值越低输出越确定。\n- `top_p`: 核采样参数，控制生成文本时的词汇选择范围。\n如果没有特殊需求，通常可以使用默认值。详细解释后续会补充到 README 文档中。","https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fissues\u002F116",{"id":149,"question_zh":150,"answer_zh":151,"source_url":152},33519,"如何处理超过长度限制的大文件审查？","工具已增加 `max_tokens` 和 `MAX_PATCH_LENGTH` 参数来解决此问题。\n你可以结合使用支持更长上下文的模型（如 `gpt-3.5-turbo-16k`）来进行审查。通过设置环境变量 `MODEL` 指定模型，并调整最大长度参数，即可对更长的代码文件进行审查。","https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fissues\u002F38",{"id":154,"question_zh":155,"answer_zh":156,"source_url":157},33520,"为什么添加了 Label 触发条件后，Action 运行了但没有产生审查评论？","这是因为该 Action 的代码逻辑目前仅响应 'opened' 和 'synchronized' 事件来触发实际的审查评论。\n即使你在 GitHub Actions 层面通过 `if` 语句控制了 Job 的运行，但如果底层机器人逻辑（bot.ts）没有检测到对应的事件类型或状态变化，它可能不会执行评论操作。目前主要设计用于 PR 打开或同步时自动触发。","https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fissues\u002F62",[159,164,169,174,179,184,189,194,199,204,209,214,219,224,229,234,239,244,249,254],{"id":160,"version":161,"summary_zh":162,"released_at":163},255696,"v1.0.23","- 优化评论位置","2026-02-07T16:47:41",{"id":165,"version":166,"summary_zh":167,"released_at":168},255697,"v1.0.22","- 第189号","2025-08-04T08:14:30",{"id":170,"version":171,"summary_zh":172,"released_at":173},255698,"v1.0.21","- 第181名（第178名）","2025-03-16T06:21:25",{"id":175,"version":176,"summary_zh":177,"released_at":178},255699,"v1.0.20","## 变更内容\n* 修复：由 @anc95 在 https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fpull\u002F171 中实现的 glob 匹配问题\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fcompare\u002Fv1.0.19...v1.0.20","2024-12-11T08:21:04",{"id":180,"version":181,"summary_zh":182,"released_at":183},255700,"v1.0.19","- 修复忽略模式\n- 添加 INCLUDE_PATTERNS\n\n## 变更内容\n* 修复：@anc95 在 https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fpull\u002F168 中修复了忽略模式并添加了包含模式\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fcompare\u002Fv1.0.18...v1.0.19","2024-11-22T03:23:15",{"id":185,"version":186,"summary_zh":187,"released_at":188},255701,"v1.0.18","#164 @shkangomelet\n\n## 变更内容\n* @shkangomelet 在 https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fpull\u002F164 中修复了 Azure OpenAI 的 bug\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fcompare\u002Fv1.0.17...v1.0.18","2024-11-08T08:28:56",{"id":190,"version":191,"summary_zh":192,"released_at":193},255702,"v1.0.17","- 添加 Azure OpenAI 环境变量 #163 @shkangomelet","2024-11-08T03:24:13",{"id":195,"version":196,"summary_zh":197,"released_at":198},255703,"v1.0.16","#162 ","2024-11-05T06:46:55",{"id":200,"version":201,"summary_zh":202,"released_at":203},255704,"v1.0.15","- 请把评论都写在一个回复里，谢谢 @keenranger #148","2024-11-05T05:40:39",{"id":205,"version":206,"summary_zh":207,"released_at":208},255705,"v1.0.14","**完整更新日志**: https:\u002F\u002Fgithub.com\u002Fanc95\u002FChatGPT-CodeReview\u002Fcompare\u002Fv1.0.13...v1.0.14","2024-10-25T10:50:05",{"id":210,"version":211,"summary_zh":212,"released_at":213},255706,"v1.0.13","- update action\u002Findex.cjs #140 ","2024-03-01T03:20:34",{"id":215,"version":216,"summary_zh":217,"released_at":218},255707,"v1.0.12","- use nodejs 20 #138 ","2024-02-26T07:18:30",{"id":220,"version":221,"summary_zh":222,"released_at":223},255708,"v1.0.11","- fix log","2023-09-05T08:27:17",{"id":225,"version":226,"summary_zh":227,"released_at":228},255709,"v1.0.10","- add `MAX_PATCH_LENGTH`","2023-06-14T07:36:43",{"id":230,"version":231,"summary_zh":232,"released_at":233},255710,"v1.0.9","- add `max_tokens` env var","2023-06-14T06:59:55",{"id":235,"version":236,"summary_zh":237,"released_at":238},255711,"v1.0.8","- fix spelling and grammar error in default prompt #98 @jpwallace22 ","2023-05-27T03:44:05",{"id":240,"version":241,"summary_zh":242,"released_at":243},255712,"v1.0.7","- support ignore file #93 @bingryan \r\n- add more logs\r\n- custom prompt","2023-05-26T06:58:52",{"id":245,"version":246,"summary_zh":247,"released_at":248},255713,"v1.0.6","- add proxy server support #84. credit to @qihangnet ","2023-05-13T03:53:19",{"id":250,"version":251,"summary_zh":252,"released_at":253},255714,"v1.0.5","- add `TARGET_LABEL` env #76 credit to @HosakaKeigo ","2023-04-28T15:52:43",{"id":255,"version":256,"summary_zh":257,"released_at":258},255715,"v1.0.4"," - excluding removed 'files' at 'synchronize' #44 \r\n - fix top_p #52 ","2023-03-26T02:19:13"]