[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-Aider-AI--aider":3,"tool-Aider-AI--aider":62},[4,18,28,37,45,53],{"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":24,"last_commit_at":25,"category_tags":26,"status":17},9989,"n8n","n8n-io\u002Fn8n","n8n 是一款面向技术团队的公平代码（fair-code）工作流自动化平台，旨在让用户在享受低代码快速构建便利的同时，保留编写自定义代码的灵活性。它主要解决了传统自动化工具要么过于封闭难以扩展、要么完全依赖手写代码效率低下的痛点，帮助用户轻松连接 400 多种应用与服务，实现复杂业务流程的自动化。\n\nn8n 特别适合开发者、工程师以及具备一定技术背景的业务人员使用。其核心亮点在于“按需编码”：既可以通过直观的可视化界面拖拽节点搭建流程，也能随时插入 JavaScript 或 Python 代码、调用 npm 包来处理复杂逻辑。此外，n8n 原生集成了基于 LangChain 的 AI 能力，支持用户利用自有数据和模型构建智能体工作流。在部署方面，n8n 提供极高的自由度，支持完全自托管以保障数据隐私和控制权，也提供云端服务选项。凭借活跃的社区生态和数百个现成模板，n8n 让构建强大且可控的自动化系统变得简单高效。",184740,2,"2026-04-19T23:22:26",[16,14,13,15,27],"插件",{"id":29,"name":30,"github_repo":31,"description_zh":32,"stars":33,"difficulty_score":10,"last_commit_at":34,"category_tags":35,"status":17},10095,"AutoGPT","Significant-Gravitas\u002FAutoGPT","AutoGPT 是一个旨在让每个人都能轻松使用和构建 AI 的强大平台，核心功能是帮助用户创建、部署和管理能够自动执行复杂任务的连续型 AI 智能体。它解决了传统 AI 应用中需要频繁人工干预、难以自动化长流程工作的痛点，让用户只需设定目标，AI 即可自主规划步骤、调用工具并持续运行直至完成任务。\n\n无论是开发者、研究人员，还是希望提升工作效率的普通用户，都能从 AutoGPT 中受益。开发者可利用其低代码界面快速定制专属智能体；研究人员能基于开源架构探索多智能体协作机制；而非技术背景用户也可直接选用预置的智能体模板，立即投入实际工作场景。\n\nAutoGPT 的技术亮点在于其模块化“积木式”工作流设计——用户通过连接功能块即可构建复杂逻辑，每个块负责单一动作，灵活且易于调试。同时，平台支持本地自托管与云端部署两种模式，兼顾数据隐私与使用便捷性。配合完善的文档和一键安装脚本，即使是初次接触的用户也能在几分钟内启动自己的第一个 AI 智能体。AutoGPT 正致力于降低 AI 应用门槛，让人人都能成为 AI 的创造者与受益者。",183572,"2026-04-20T04:47:55",[13,36,27,14,15],"语言模型",{"id":38,"name":39,"github_repo":40,"description_zh":41,"stars":42,"difficulty_score":10,"last_commit_at":43,"category_tags":44,"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":46,"name":47,"github_repo":48,"description_zh":49,"stars":50,"difficulty_score":24,"last_commit_at":51,"category_tags":52,"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 真正成长为懂上",161692,"2026-04-20T11:33:57",[14,13,36],{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":59,"last_commit_at":60,"category_tags":61,"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,27],{"id":63,"github_repo":64,"name":65,"description_en":66,"description_zh":67,"ai_summary_zh":67,"readme_en":68,"readme_zh":69,"quickstart_zh":70,"use_case_zh":71,"hero_image_url":72,"owner_login":73,"owner_name":74,"owner_avatar_url":75,"owner_bio":76,"owner_company":77,"owner_location":77,"owner_email":77,"owner_twitter":77,"owner_website":78,"owner_url":79,"languages":80,"stars":121,"forks":122,"last_commit_at":123,"license":124,"difficulty_score":24,"env_os":125,"env_gpu":126,"env_ram":127,"env_deps":128,"category_tags":132,"github_topics":133,"view_count":24,"oss_zip_url":77,"oss_zip_packed_at":77,"status":17,"created_at":147,"updated_at":148,"faqs":149,"releases":180},10170,"Aider-AI\u002Faider","aider","aider is AI pair programming in your terminal","Aider 是一款运行在终端里的 AI 结对编程助手，旨在让开发者像与真人同事协作一样，与大语言模型共同开发软件。无论是从零启动新项目，还是在现有代码库上迭代功能，Aider 都能通过自然对话理解需求并直接修改代码文件。\n\n它主要解决了传统 AI 编程工具难以掌控大型项目上下文、缺乏版本管理以及操作割裂的痛点。Aider 的独特之处在于它能自动绘制整个代码库的“地图”，从而精准理解复杂的项目结构；同时深度集成 Git，每次修改都会自动生成合理的提交记录，方便开发者随时查看差异或回滚变更。此外，它支持超过 100 种编程语言，兼容云端主流模型及本地部署模型，甚至允许用户在 IDE 中通过代码注释直接下达指令。\n\n这款工具专为软件开发者、工程师及技术研究人员设计，特别适合希望在不离开命令行环境的前提下，大幅提升编码效率、快速原型开发或重构遗留系统的专业人士。通过将强大的 AI 能力无缝融入熟悉的开发工作流，Aider 让编程过程变得更加流畅和高效。","\u003Cp align=\"center\">\n    \u003Ca href=\"https:\u002F\u002Faider.chat\u002F\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Flogo.svg\" alt=\"Aider Logo\" width=\"300\">\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Ch1 align=\"center\">\nAI Pair Programming in Your Terminal\n\u003C\u002Fh1>\n\n\n\u003Cp align=\"center\">\nAider lets you pair program with LLMs to start a new project or build on your existing codebase. \n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg\n    src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Fscreencast.svg\"\n    alt=\"aider screencast\"\n  >\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n\u003C!--[[[cog\nfrom scripts.homepage import get_badges_md\ntext = get_badges_md()\ncog.out(text)\n]]]-->\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fstargazers\">\u003Cimg alt=\"GitHub Stars\" title=\"Total number of GitHub stars the Aider project has received\"\nsrc=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FAider-AI\u002Faider?style=flat-square&logo=github&color=f1c40f&labelColor=555555\"\u002F>\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fpypi.org\u002Fproject\u002Faider-chat\u002F\">\u003Cimg alt=\"PyPI Downloads\" title=\"Total number of installations via pip from PyPI\"\nsrc=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F📦%20Installs-5.7M-2ecc71?style=flat-square&labelColor=555555\"\u002F>\u003C\u002Fa>\n  \u003Cimg alt=\"Tokens per week\" title=\"Number of tokens processed weekly by Aider users\"\nsrc=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F📈%20Tokens%2Fweek-15B-3498db?style=flat-square&labelColor=555555\"\u002F>\n  \u003Ca href=\"https:\u002F\u002Fopenrouter.ai\u002F#options-menu\">\u003Cimg alt=\"OpenRouter Ranking\" title=\"Aider's ranking among applications on the OpenRouter platform\"\nsrc=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F🏆%20OpenRouter-Top%2020-9b59b6?style=flat-square&labelColor=555555\"\u002F>\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Faider.chat\u002FHISTORY.html\">\u003Cimg alt=\"Singularity\" title=\"Percentage of the new code in Aider's last release written by Aider itself\"\nsrc=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F🔄%20Singularity-88%25-e74c3c?style=flat-square&labelColor=555555\"\u002F>\u003C\u002Fa>\n\u003C!--[[[end]]]-->  \n\u003C\u002Fp>\n\n## Features\n\n### [Cloud and local LLMs](https:\u002F\u002Faider.chat\u002Fdocs\u002Fllms.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Fllms.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fbrain.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\nAider works best with Claude 3.7 Sonnet, DeepSeek R1 & Chat V3, OpenAI o1, o3-mini & GPT-4o, but can connect to almost any LLM, including local models.\n\n\u003Cbr>\n\n### [Maps your codebase](https:\u002F\u002Faider.chat\u002Fdocs\u002Frepomap.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Frepomap.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fmap-outline.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\nAider makes a map of your entire codebase, which helps it work well in larger projects.\n\n\u003Cbr>\n\n### [100+ code languages](https:\u002F\u002Faider.chat\u002Fdocs\u002Flanguages.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Flanguages.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fcode-tags.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\nAider works with most popular programming languages: python, javascript, rust, ruby, go, cpp, php, html, css, and dozens more.\n\n\u003Cbr>\n\n### [Git integration](https:\u002F\u002Faider.chat\u002Fdocs\u002Fgit.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Fgit.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fsource-branch.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\nAider automatically commits changes with sensible commit messages. Use familiar git tools to easily diff, manage and undo AI changes.\n\n\u003Cbr>\n\n### [Use in your IDE](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fwatch.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fwatch.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fmonitor.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\nUse aider from within your favorite IDE or editor. Ask for changes by adding comments to your code and aider will get to work.\n\n\u003Cbr>\n\n### [Images & web pages](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fimages-urls.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fimages-urls.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fimage-multiple.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\nAdd images and web pages to the chat to provide visual context, screenshots, reference docs, etc.\n\n\u003Cbr>\n\n### [Voice-to-code](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fvoice.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fvoice.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fmicrophone.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\nSpeak with aider about your code! Request new features, test cases or bug fixes using your voice and let aider implement the changes.\n\n\u003Cbr>\n\n### [Linting & testing](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Flint-test.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Flint-test.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fcheck-all.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\nAutomatically lint and test your code every time aider makes changes. Aider can fix problems detected by your linters and test suites.\n\n\u003Cbr>\n\n### [Copy\u002Fpaste to web chat](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fcopypaste.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fcopypaste.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fcontent-copy.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\nWork with any LLM via its web chat interface. Aider streamlines copy\u002Fpasting code context and edits back and forth with a browser.\n\n## Getting Started\n\n```bash\npython -m pip install aider-install\naider-install\n\n# Change directory into your codebase\ncd \u002Fto\u002Fyour\u002Fproject\n\n# DeepSeek\naider --model deepseek --api-key deepseek=\u003Ckey>\n\n# Claude 3.7 Sonnet\naider --model sonnet --api-key anthropic=\u003Ckey>\n\n# o3-mini\naider --model o3-mini --api-key openai=\u003Ckey>\n```\n\nSee the [installation instructions](https:\u002F\u002Faider.chat\u002Fdocs\u002Finstall.html) and [usage documentation](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage.html) for more details.\n\n## More Information\n\n### Documentation\n- [Installation Guide](https:\u002F\u002Faider.chat\u002Fdocs\u002Finstall.html)\n- [Usage Guide](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage.html)\n- [Tutorial Videos](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Ftutorials.html)\n- [Connecting to LLMs](https:\u002F\u002Faider.chat\u002Fdocs\u002Fllms.html)\n- [Configuration Options](https:\u002F\u002Faider.chat\u002Fdocs\u002Fconfig.html)\n- [Troubleshooting](https:\u002F\u002Faider.chat\u002Fdocs\u002Ftroubleshooting.html)\n- [FAQ](https:\u002F\u002Faider.chat\u002Fdocs\u002Ffaq.html)\n\n### Community & Resources\n- [LLM Leaderboards](https:\u002F\u002Faider.chat\u002Fdocs\u002Fleaderboards\u002F)\n- [GitHub Repository](https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider)\n- [Discord Community](https:\u002F\u002Fdiscord.gg\u002FY7X7bhMQFV)\n- [Release notes](https:\u002F\u002Faider.chat\u002FHISTORY.html)\n- [Blog](https:\u002F\u002Faider.chat\u002Fblog\u002F)\n\n## Kind Words From Users\n\n- *\"My life has changed... Aider... It's going to rock your world.\"* — [Eric S. Raymond on X](https:\u002F\u002Fx.com\u002Fesrtweet\u002Fstatus\u002F1910809356381413593)\n- *\"The best free open source AI coding assistant.\"* — [IndyDevDan on YouTube](https:\u002F\u002Fyoutu.be\u002FYALpX8oOn78)\n- *\"The best AI coding assistant so far.\"* — [Matthew Berman on YouTube](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=df8afeb1FY8)\n- *\"Aider ... has easily quadrupled my coding productivity.\"* — [SOLAR_FIELDS on Hacker News](https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=36212100)\n- *\"It's a cool workflow... Aider's ergonomics are perfect for me.\"* — [qup on Hacker News](https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=38185326)\n- *\"It's really like having your senior developer live right in your Git repo - truly amazing!\"* — [rappster on GitHub](https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F124)\n- *\"What an amazing tool. It's incredible.\"* — [valyagolev on GitHub](https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F6#issue-1722897858)\n- *\"Aider is such an astounding thing!\"* — [cgrothaus on GitHub](https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F82#issuecomment-1631876700)\n- *\"It was WAY faster than I would be getting off the ground and making the first few working versions.\"* — [Daniel Feldman on X](https:\u002F\u002Ftwitter.com\u002Fd_feldman\u002Fstatus\u002F1662295077387923456)\n- *\"THANK YOU for Aider! It really feels like a glimpse into the future of coding.\"* — [derwiki on Hacker News](https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=38205643)\n- *\"It's just amazing. It is freeing me to do things I felt were out my comfort zone before.\"* — [Dougie on Discord](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1174002618058678323\u002F1174084556257775656)\n- *\"This project is stellar.\"* — [funkytaco on GitHub](https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F112#issuecomment-1637429008)\n- *\"Amazing project, definitely the best AI coding assistant I've used.\"* — [joshuavial on GitHub](https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F84)\n- *\"I absolutely love using Aider ... It makes software development feel so much lighter as an experience.\"* — [principalideal0 on Discord](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1133421607499595858\u002F1229689636012691468)\n- *\"I have been recovering from ... surgeries ... aider ... has allowed me to continue productivity.\"* — [codeninja on Reddit](https:\u002F\u002Fwww.reddit.com\u002Fr\u002FOpenAI\u002Fs\u002FnmNwkHy1zG)\n- *\"I am an aider addict. I'm getting so much more work done, but in less time.\"* — [dandandan on Discord](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1131200896827654149\u002F1135913253483069470)\n- *\"Aider... blows everything else out of the water hands down, there's no competition whatsoever.\"* — [SystemSculpt on Discord](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1131200896827654149\u002F1178736602797846548)\n- *\"Aider is amazing, coupled with Sonnet 3.5 it's quite mind blowing.\"* — [Josh Dingus on Discord](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1133060684540813372\u002F1262374225298198548)\n- *\"Hands down, this is the best AI coding assistant tool so far.\"* — [IndyDevDan on YouTube](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=MPYFPvxfGZs)\n- *\"[Aider] changed my daily coding workflows. It's mind-blowing how ...(it)... can change your life.\"* — [maledorak on Discord](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1131200896827654149\u002F1258453375620747264)\n- *\"Best agent for actual dev work in existing codebases.\"* — [Nick Dobos on X](https:\u002F\u002Ftwitter.com\u002FNickADobos\u002Fstatus\u002F1690408967963652097?s=20)\n- *\"One of my favorite pieces of software. Blazing trails on new paradigms!\"* — [Chris Wall on X](https:\u002F\u002Fx.com\u002Fchris65536\u002Fstatus\u002F1905053299251798432)\n- *\"Aider has been revolutionary for me and my work.\"* — [Starry Hope on X](https:\u002F\u002Fx.com\u002Fstarryhopeblog\u002Fstatus\u002F1904985812137132056)\n- *\"Try aider! One of the best ways to vibe code.\"* — [Chris Wall on X](https:\u002F\u002Fx.com\u002FChris65536\u002Fstatus\u002F1905053418961391929)\n- *\"Freaking love Aider.\"* — [hztar on Hacker News](https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=44035015)\n- *\"Aider is hands down the best. And it's free and opensource.\"* — [AriyaSavakaLurker on Reddit](https:\u002F\u002Fwww.reddit.com\u002Fr\u002FChatGPTCoding\u002Fcomments\u002F1ik16y6\u002Fwhats_your_take_on_aider\u002Fmbip39n\u002F)\n- *\"Aider is also my best friend.\"* — [jzn21 on Reddit](https:\u002F\u002Fwww.reddit.com\u002Fr\u002FChatGPTCoding\u002Fcomments\u002F1heuvuo\u002Faider_vs_cline_vs_windsurf_vs_cursor\u002Fm27dcnb\u002F)\n- *\"Try Aider, it's worth it.\"* — [jorgejhms on Reddit](https:\u002F\u002Fwww.reddit.com\u002Fr\u002FChatGPTCoding\u002Fcomments\u002F1heuvuo\u002Faider_vs_cline_vs_windsurf_vs_cursor\u002Fm27cp99\u002F)\n- *\"I like aider :)\"* — [Chenwei Cui on X](https:\u002F\u002Fx.com\u002Fccui42\u002Fstatus\u002F1904965344999145698)\n- *\"Aider is the precision tool of LLM code gen... Minimal, thoughtful and capable of surgical changes ... while keeping the developer in control.\"* — [Reilly Sweetland on X](https:\u002F\u002Fx.com\u002Frsweetland\u002Fstatus\u002F1904963807237259586)\n- *\"Cannot believe aider vibe coded a 650 LOC feature across service and cli today in 1 shot.\"* - [autopoietist on Discord](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1131200896827654149\u002F1355675042259796101)\n- *\"Oh no the secret is out! Yes, Aider is the best coding tool around. I highly, highly recommend it to anyone.\"* — [Joshua D Vander Hook on X](https:\u002F\u002Fx.com\u002Fjodavaho\u002Fstatus\u002F1911154899057795218)\n- *\"thanks to aider, i have started and finished three personal projects within the last two days\"* — [joseph stalzyn on X](https:\u002F\u002Fx.com\u002Fanitaheeder\u002Fstatus\u002F1908338609645904160)\n- *\"Been using aider as my daily driver for over a year ... I absolutely love the tool, like beyond words.\"* — [koleok on Discord](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1273248471394291754\u002F1356727448372252783)\n- *\"Aider ... is the tool to benchmark against.\"* — [BeetleB on Hacker News](https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=43930201)\n- *\"aider is really cool\"* — [kache on X](https:\u002F\u002Fx.com\u002FyacineMTB\u002Fstatus\u002F1911224442430124387)\n\n","\u003Cp align=\"center\">\n    \u003Ca href=\"https:\u002F\u002Faider.chat\u002F\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Flogo.svg\" alt=\"Aider Logo\" width=\"300\">\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Ch1 align=\"center\">\n在终端中进行 AI 配对编程\n\u003C\u002Fh1>\n\n\n\u003Cp align=\"center\">\nAider 让你与大语言模型一起进行配对编程，无论是启动新项目还是在现有代码库上继续开发。\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg\n    src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Fscreencast.svg\"\n    alt=\"aider 截屏演示\"\n  >\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n\u003C!--[[[cog\nfrom scripts.homepage import get_badges_md\ntext = get_badges_md();\ncog.out(text);\n]]]-->\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fstargazers\">\u003Cimg alt=\"GitHub 星标数\" title=\"Aider 项目获得的 GitHub 总星标数\"\nsrc=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FAider-AI\u002Faider?style=flat-square&logo=github&color=f1c40f&labelColor=555555\"\u002F>\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fpypi.org\u002Fproject\u002Faider-chat\u002F\">\u003Cimg alt=\"PyPI 下载量\" title=\"通过 PyPI 使用 pip 安装的总次数\"\nsrc=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F📦%20Installs-5.7M-2ecc71?style=flat-square&labelColor=555555\"\u002F>\u003C\u002Fa>\n  \u003Cimg alt=\"每周处理的 token 数量\" title=\"Aider 用户每周处理的 token 数量\"\nsrc=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F📈%20Tokens%2Fweek-15B-3498db?style=flat-square&labelColor=555555\"\u002F>\n  \u003Ca href=\"https:\u002F\u002Fopenrouter.ai\u002F#options-menu\">\u003Cimg alt=\"OpenRouter 排行榜\" title=\"Aider 在 OpenRouter 平台上的应用排名\"\nsrc=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F🏆%20OpenRouter-Top%2020-9b59b6?style=flat-square&labelColor=555555\"\u002F>\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Faider.chat\u002FHISTORY.html\">\u003Cimg alt=\"奇点\" title=\"Aider 最新版本中由 Aider 自身编写的代码占比\"\nsrc=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F🔄%20Singularity-88%25-e74c3c?style=flat-square&labelColor=555555\"\u002F>\u003C\u002Fa>\n\u003C!--[[[end]]]-->  \n\u003C\u002Fp>\n\n## 功能特性\n\n### [云端与本地 LLM](https:\u002F\u002Faider.chat\u002Fdocs\u002Fllms.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Fllms.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fbrain.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\nAider 最适合搭配 Claude 3.7 Sonnet、DeepSeek R1 & Chat V3、OpenAI o1、o3-mini 和 GPT-4o 使用，但也能连接几乎任何 LLM，包括本地模型。\n\n\u003Cbr>\n\n### [映射你的代码库](https:\u002F\u002Faider.chat\u002Fdocs\u002Frepomap.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Frepomap.html\">\u003Cimg src=\"https6:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fmap-outline.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\nAider 会为你整个代码库生成一张地图，这有助于它在大型项目中发挥出色作用。\n\n\u003Cbr>\n\n### [支持 100 多种编程语言](https:\u002F\u002Faider.chat\u002Fdocs\u002Flanguages.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Flanguages.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fcode-tags.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\nAider 支持大多数主流编程语言：Python、JavaScript、Rust、Ruby、Go、C++、PHP、HTML、CSS 等数十种语言。\n\n\u003Cbr>\n\n### [Git 集成](https:\u002F\u002Faider.chat\u002Fdocs\u002Fgit.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Fgit.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fsource-branch.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\nAider 会自动生成带有合理提交信息的更改提交。你可以使用熟悉的 Git 工具轻松对比、管理和撤销 AI 所做的更改。\n\n\u003Cbr>\n\n### [在你的 IDE 中使用](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fwatch.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fwatch.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fmonitor.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\n你可以在自己喜欢的 IDE 或编辑器中直接使用 Aider。只需在代码中添加注释请求更改，Aider 就会开始工作。\n\n\u003Cbr>\n\n### [图片与网页](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fimages-urls.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fimages-urls.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fimage-multiple.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\n你可以将图片和网页添加到聊天中，以提供视觉上下文、截图、参考文档等。\n\n\u003Cbr>\n\n### [语音转代码](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fvoice.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fvoice.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fmicrophone.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\n用语音与 Aider 讨论你的代码吧！通过语音请求新增功能、测试用例或修复 bug，让 Aider 来实现这些更改。\n\n\u003Cbr>\n\n### [代码检查与测试](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Flint-test.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Flint-test.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fcheck-all.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\n每当 Aider 做出更改时，都会自动对你的代码进行检查和测试。Aider 还能修复你的 linter 和测试套件检测到的问题。\n\n\u003Cbr>\n\n### [复制\u002F粘贴到网页聊天](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fcopypaste.html)\n\n\u003Ca href=\"https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fcopypaste.html\">\u003Cimg src=\"https:\u002F\u002Faider.chat\u002Fassets\u002Ficons\u002Fcontent-copy.svg\" width=\"32\" height=\"32\" align=\"left\" valign=\"middle\" style=\"margin-right:10px\">\u003C\u002Fa>\n你可以通过任意 LLM 的网页聊天界面与其协作。Aider 能够简化在浏览器中来回复制粘贴代码上下文和编辑内容的过程。\n\n## 开始使用\n\n```bash\npython -m pip install aider-install\naider-install\n\n# 切换到你的代码库目录\ncd \u002Fto\u002Fyour\u002Fproject\n\n# DeepSeek\naider --model deepseek --api-key deepseek=\u003Ckey>\n\n# Claude 3.7 Sonnet\naider --model sonnet --api-key anthropic=\u003Ckey>\n\n# o3-mini\naider --model o3-mini --api-key openai=\u003Ckey>\n```\n\n更多详细信息，请参阅 [安装说明](https:\u002F\u002Faider.chat\u002Fdocs\u002Finstall.html) 和 [使用文档](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage.html)。\n\n## 更多信息\n\n### 文档\n- [安装指南](https6:\u002F\u002Faider.chat\u002Fdocs\u002Finstall.html)\n- [使用指南](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage.html)\n- [教程视频](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Ftutorials.html)\n- [连接 LLM](https:\u002F\u002Faider.chat\u002Fdocs\u002Fllms.html)\n- [配置选项](https:\u002F\u002Faider.chat\u002Fdocs\u002Fconfig.html)\n- [故障排除](https:\u002F\u002Faider.chat\u002Fdocs\u002Ftroubleshooting.html)\n- [常见问题解答](https:\u002F\u002Faider.chat\u002Fdocs\u002Ffaq.html)\n\n### 社区与资源\n- [LLM 排行榜](https:\u002F\u002Faider.chat\u002Fdocs\u002Fleaderboards\u002F)\n- [GitHub 仓库](https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider)\n- [Discord 社区](https:\u002F\u002Fdiscord.gg\u002FY7X7bhMQFV)\n- [发布说明](https:\u002F\u002Faider.chat\u002FHISTORY.html)\n- [博客](https:\u002F\u002Faider.chat\u002Fblog\u002F)\n\n## 用户的好评\n\n- *\"我的生活改变了……Aider……它会彻底颠覆你的世界。\"* — [Eric S. Raymond 在 X 上](https:\u002F\u002Fx.com\u002Fesrtweet\u002Fstatus\u002F1910809356381413593)\n- *\"最好的免费开源 AI 编码助手。\"* — [IndyDevDan 在 YouTube 上](https:\u002F\u002Fyoutu.be\u002FYALpX8oOn78)\n- *\"迄今为止最好的 AI 编码助手。\"* — [Matthew Berman 在 YouTube 上](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=df8afeb1FY8)\n- *\"Aider……轻松将我的编码效率提升了四倍。\"* — [SOLAR_FIELDS 在 Hacker News 上](https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=36212100)\n- *\"这是一个很酷的工作流……Aider 的人体工学设计对我来说再合适不过了。\"* — [qup 在 Hacker News 上](https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=38185326)\n- *\"这简直就像让一位资深开发者直接住进了你的 Git 仓库——真是太神奇了！\"* — [rappster 在 GitHub 上](https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F124)\n- *\"多么棒的工具啊，简直不可思议。\"* — [valyagolev 在 GitHub 上](https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F6#issue-1722897858)\n- *\"Aider 真是太惊人了！\"* — [cgrothaus 在 GitHub 上](https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F82#issuecomment-1631876700)\n- *\"它的速度远远超过了我自己从零开始搭建并完成前几个可用版本的速度。\"* — [Daniel Feldman 在 X 上](https:\u002F\u002Ftwitter.com\u002Fd_feldman\u002Fstatus\u002F1662295077387923456)\n- *\"感谢 Aider！它真的让我看到了编码的未来。\"* — [derwiki 在 Hacker News 上](https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=38205643)\n- *\"真是太棒了。它让我能够去做那些以前觉得超出自己舒适区的事情。\"* — [Dougie 在 Discord 上](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1174002618058678323\u002F1174084556257775656)\n- *\"这个项目太出色了。\"* — [funkytaco 在 GitHub 上](https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F112#issuecomment-1637429008)\n- *\"太棒的项目，绝对是我用过的最好的 AI 编码助手。\"* — [joshuavial 在 GitHub 上](https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F84)\n- *\"我超爱用 Aider……它让软件开发的整个过程都变得轻松了许多。\"* — [principalideal0 在 Discord 上](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1133421607499595858\u002F1229689636012691468)\n- *\"我正在从……手术中恢复……而 Aider……让我得以继续保持工作效率。\"* — [codeninja 在 Reddit 上](https:\u002F\u002Fwww.reddit.com\u002Fr\u002FOpenAI\u002Fs\u002FnmNwkHy1zG)\n- *\"我已经对 Aider 上瘾了。我现在用更少的时间完成了更多的工作。\"* — [dandandan 在 Discord 上](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1131200896827654149\u002F1135913253483069470)\n- *\"Aider……完胜其他所有工具，根本没有任何竞争对手。\"* — [SystemSculpt 在 Discord 上](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1131200896827654149\u002F1178736602797846548)\n- *\"Aider 太棒了，配合 Sonnet 3.5 使用更是令人震撼。\"* — [Josh Dingus 在 Discord 上](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1133060684540813372\u002F1262374225298198548)\n- *\"毫无疑问，这是目前最好的 AI 编码助手工具。\"* — [IndyDevDan 在 YouTube 上](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=MPYFPvxfGZs)\n- *\"[Aider] 改变了我日常的编码工作流程。它竟然能如此深刻地改变你的生活，真是让人难以置信。\"* — [maledorak 在 Discord 上](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1131200896827654149\u002F1258453375620747264)\n- *\"在现有代码库中进行实际开发工作的最佳工具。\"* — [Nick Dobos 在 X 上](https:\u002F\u002Ftwitter.com\u002FNickADobos\u002Fstatus\u002F1690408967963652097?s=20)\n- *\"我最喜欢的一款软件。它正在开创全新的编程范式！\"* — [Chris Wall 在 X 上](https:\u002F\u002Fx.com\u002Fchris65536\u002Fstatus\u002F1905053299251798432)\n- *\"Aider 对我和我的工作来说简直是革命性的。\"* — [Starry Hope 在 X 上](https:\u002F\u002Fx.com\u002Fstarryhopeblog\u002Fstatus\u002F1904985812137132056)\n- *\"试试 Aider 吧！这是感受代码魅力的最佳方式之一。\"* — [Chris Wall 在 X 上](https:\u002F\u002Fx.com\u002FChris65536\u002Fstatus\u002F1905053418961391929)\n- *\"我太喜欢 Aider 了。\"* — [hztar 在 Hacker News 上](https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=44035015)\n- *\"Aider 毫无疑问是最好的，而且它是免费且开源的。\"* — [AriyaSavakaLurker 在 Reddit 上](https:\u002F\u002Fwww.reddit.com\u002Fr\u002FChatGPTCoding\u002Fcomments\u002F1ik16y6\u002Fwhats_your_take_on_aider\u002Fmbip39n\u002F)\n- *\"Aider 也是我的好朋友。\"* — [jzn21 在 Reddit 上](https:\u002F\u002Fwww.reddit.com\u002Fr\u002FChatGPTCoding\u002Fcomments\u002F1heuvuo\u002Faider_vs_cline_vs_windsurf_vs_cursor\u002Fm27dcnb\u002F)\n- *\"试试 Aider 吧，绝对值得。\"* — [jorgejhms 在 Reddit 上](https:\u002F\u002Fwww.reddit.com\u002Fr\u002FChatGPTCoding\u002Fcomments\u002F1heuvuo\u002Faider_vs_cline_vs_windsurf_vs_cursor\u002Fm27cp99\u002F)\n- *\"我喜欢 Aider :)。\"* — [Chenwei Cui 在 X 上](https:\u002F\u002Fx.com\u002Fccui42\u002Fstatus\u002F1904965344999145698)\n- *\"Aider 是大型语言模型代码生成领域的精密工具……简洁、周到，能够进行精准的修改，同时始终让开发者掌握主动权。\"* — [Reilly Sweetland 在 X 上](https:\u002F\u002Fx.com\u002Frsweetland\u002Fstatus\u002F1904963807237259586)\n- *\"真不敢相信，Aider 居然能在一次操作中就为服务端和命令行工具分别编写出 650 行代码的功能模块！\"* — [autopoietist 在 Discord 上](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1131200896827654149\u002F1355675042259796101)\n- *\"糟糕，秘密被泄露了！没错，Aider 就是目前最好的编码工具。我强烈推荐给任何人。\"* — [Joshua D Vander Hook 在 X 上](https:\u002F\u002Fx.com\u002Fjodavaho\u002Fstatus\u002F1911154899057795218)\n- *\"多亏了 Aider，我在过去两天内启动并完成了三个个人项目。\"* — [joseph stalzyn 在 X 上](https:\u002F\u002Fx.com\u002Fanitaheeder\u002Fstatus\u002F1908338609645904160)\n- *\"我已经把 Aider 当作日常工作中的主力工具使用了一年多……我太爱这款工具了，简直无法用语言表达。\"* — [koleok 在 Discord 上](https:\u002F\u002Fdiscord.com\u002Fchannels\u002F1131200896827654144\u002F1273248471394291754\u002F1356727448372252783)\n- *\"Aider……就是用来作为标杆的工具。\"* — [BeetleB 在 Hacker News 上](https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=43930201)\n- *\"Aider 真的很酷。\"* — [kache 在 X 上](https:\u002F\u002Fx.com\u002FyacineMTB\u002Fstatus\u002F1911224442430124387)","# Aider 快速上手指南\n\nAider 是一款运行在终端的 AI 结对编程工具，支持连接主流大模型（如 Claude、DeepSeek、GPT-4o 等），可自动映射代码库、管理 Git 提交，并支持 100+ 种编程语言。\n\n## 环境准备\n\n*   **操作系统**：Linux、macOS 或 Windows (WSL 推荐)\n*   **前置依赖**：\n    *   Python 3.9 或更高版本\n    *   pip (Python 包管理工具)\n    *   Git (用于版本控制和自动提交)\n*   **API Key**：需准备所选大模型的 API Key（如 DeepSeek、Anthropic、OpenAI 等）\n\n> **国内开发者提示**：若访问 PyPI 较慢，建议使用国内镜像源进行安装。\n\n## 安装步骤\n\n### 方法一：使用官方安装脚本（推荐）\n\n该方式会自动处理依赖并配置环境变量。\n\n```bash\n# 使用国内镜像源加速安装（可选）\npython -m pip install aider-install -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n\n# 运行安装脚本\naider-install\n```\n\n### 方法二：直接使用 pip 安装\n\n```bash\n# 使用国内镜像源加速安装\npython -m pip install aider-chat -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n## 基本使用\n\n### 1. 进入项目目录\n切换到你需要开发或修改的代码项目根目录：\n\n```bash\ncd \u002Fto\u002Fyour\u002Fproject\n```\n\n### 2. 启动 Aider\n根据你使用的模型，运行以下命令（请将 `\u003Ckey>` 替换为真实的 API Key）：\n\n**使用 DeepSeek (推荐国内用户):**\n```bash\naider --model deepseek --api-key deepseek=\u003Ckey>\n```\n\n**使用 Claude 3.7 Sonnet:**\n```bash\naider --model sonnet --api-key anthropic=\u003Ckey>\n```\n\n**使用 OpenAI o3-mini:**\n```bash\naider --model o3-mini --api-key openai=\u003Ckey>\n```\n\n### 3. 开始对话\n启动后，你将进入交互式终端。你可以直接输入自然语言指令，例如：\n*   \"创建一个计算斐波那契数列的 Python 函数\"\n*   \"修复当前文件中的空指针异常\"\n*   \"为 user_service.py 添加单元测试\"\n\nAider 会自动编辑文件、执行 lint\u002Ftest（如果配置了），并使用 Git 自动提交更改。\n\n### 进阶技巧\n*   **结合 IDE 使用**：在编辑器中给代码添加注释描述需求，Aider 可以监听文件变化并自动执行（需配置 `--watch` 模式）。\n*   **语音交互**：支持语音输入指令进行编码（需配置麦克风）。\n*   **多模态支持**：可直接拖入截图或提供网页链接作为上下文。","一位后端工程师需要在周五下班前，为一个现有的 Python FastAPI 项目紧急集成复杂的 Stripe 支付 webhook 处理逻辑，并更新相关的数据库模型。\n\n### 没有 aider 时\n- **上下文切换频繁**：开发者需手动在多个文件间跳转，反复阅读代码以理解现有架构，极易打断心流。\n- **易引入回归错误**：手动修改核心数据模型时，容易遗漏关联的验证逻辑或接口定义，导致测试失败。\n- **Git 提交繁琐**：每完成一个小功能点都要暂停编码去编写提交信息，分散了对核心业务逻辑的注意力。\n- **文档与代码脱节**：实现完复杂逻辑后，往往因时间紧迫而忘记更新 API 文档或注释，留下技术债务。\n\n### 使用 aider 后\n- **全库感知编程**：aider 自动构建项目地图，精准定位需要修改的文件，开发者只需在终端描述需求即可开始协作。\n- **安全的多文件编辑**：aider 同时修改路由、模型及测试文件，自动保持代码一致性，并在应用前展示完整差异供确认。\n- **自动化版本管理**：每次成功变更后，aider 自动生成语义清晰的 Git 提交信息，让版本历史井井有条且可轻松回滚。\n- **即时文档同步**：在编写业务代码的同时，aider 会自动更新相关函数的文档字符串和类型提示，确保代码即文档。\n\naider 将开发者从繁琐的上下文管理和机械性编码中解放出来，使其能专注于核心业务逻辑的架构设计。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAider-AI_aider_be570116.png","Aider-AI","Aider AI","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FAider-AI_30dd8618.png","",null,"https:\u002F\u002Faider.chat\u002F","https:\u002F\u002Fgithub.com\u002FAider-AI",[81,85,89,93,97,101,105,109,113,117],{"name":82,"color":83,"percentage":84},"Python","#3572A5",80.1,{"name":86,"color":87,"percentage":88},"CSS","#663399",4.1,{"name":90,"color":91,"percentage":92},"Shell","#89e051",4,{"name":94,"color":95,"percentage":96},"Tree-sitter Query","#8ea64c",3.9,{"name":98,"color":99,"percentage":100},"JavaScript","#f1e05a",3.7,{"name":102,"color":103,"percentage":104},"HTML","#e34c26",2.7,{"name":106,"color":107,"percentage":108},"PowerShell","#012456",1.2,{"name":110,"color":111,"percentage":112},"Dockerfile","#384d54",0.3,{"name":114,"color":115,"percentage":116},"SCSS","#c6538c",0.1,{"name":118,"color":119,"percentage":120},"Ruby","#701516",0,43601,4230,"2026-04-20T07:43:03","Apache-2.0","Linux, macOS, Windows","未说明（主要作为 LLM 客户端运行，本地模型需求取决于具体模型）","未说明",{"notes":129,"python":127,"dependencies":130},"Aider 是一个终端 AI 结对编程工具，主要通过 API 连接云端大模型（如 Claude、GPT-4、DeepSeek 等）或本地模型。安装只需运行 'pip install aider-install' 后执行 'aider-install'。支持 100+ 种编程语言，具备 Git 集成、代码地图、语音交互、自动测试等功能。若使用本地模型，硬件需求取决于所选模型本身。",[131],"aider-install",[36,27,14],[134,135,136,137,138,139,140,141,142,143,144,145,146],"chatgpt","cli","command-line","gpt-4","openai","gpt-3","gpt-35-turbo","claude-3","gpt-4o","anthropic","gemini","llama","sonnet","2026-03-27T02:49:30.150509","2026-04-20T21:02:30.036751",[150,155,160,165,170,175],{"id":151,"question_zh":152,"answer_zh":153,"source_url":154},45653,"Aider 是否支持除 OpenAI GPT 以外的其他大模型或本地部署的 LLM？","Aider 提供对其他 LLM（包括本地模型）的实验性支持。但由于 GPT-3.5\u002F4 在代码编辑能力上目前仍优于其他模型，且适配新模型需要针对提示词和后端进行大量定制工作，因此官方尚未完全支持其他模型。用户可以通过文档配置连接其他模型：\n1. 查看支持的模型列表：https:\u002F\u002Faider.chat\u002Fdocs\u002Fllms.html\n2. 查看 OpenAI 兼容接口的配置方法：https:\u002F\u002Faider.chat\u002Fdocs\u002Fllms\u002Fopenai-compat.html\n如果特定模型展现出优秀的代码编辑能力，未来可能会获得官方支持。","https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F172",{"id":156,"question_zh":157,"answer_zh":158,"source_url":159},45654,"遇到 'choices' 键缺失导致的 OpenrouterException 或 APIConnectionError 怎么办？","这通常是由于上游模型提供商（如 OpenRouter 或 Anthropic）的 API 返回格式异常或临时故障引起的。如果遇到此类错误（例如 `litellm.APIConnectionError: OpenrouterException - 'choices'`）：\n1. 检查模型提供商的状态页面或公告，确认是否有服务中断。\n2. 尝试切换到其他稳定的模型（如从 DeepSeek 切换到 Claude）。\n3. 确保使用的是最新版本的 Aider 和 LiteLLM，因为维护者会频繁修复此类兼容性问题。\n如果问题持续，可以在 GitHub 上提交包含具体模型和错误日志的新 Issue。","https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F3550",{"id":161,"question_zh":162,"answer_zh":163,"source_url":164},45655,"使用 DeepSeek 模型时出现无响应、超时或连接挂起的情况如何解决？","DeepSeek API 有时会经历大规模中断，表现为请求无响应或长时间等待无结果（即使未报错）。解决方案包括：\n1. 暂时切换到其他稳定模型（如 Claude），命令示例：`aider --model claude-3-5-sonnet`。\n2. 使用 `--verbose` 参数运行 Aider 以获取更详细的调试信息，帮助判断是超时还是连接问题。\n3. 关注 DeepSeek 官方状态或社区反馈，通常这类问题是服务商侧的临时故障，修复后即可恢复。\n注意：无论是通过 OpenRouter 还是 DeepSeek 自有 API 访问，都可能受到此类中断影响。","https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F3005",{"id":166,"question_zh":167,"answer_zh":168,"source_url":169},45656,"Claude Sonnet 3.5 模型触发 4k 输出 token 限制导致回答截断怎么办？","当使用 Claude Sonnet 3.5 进行大规模代码修改时，容易命中 4096 的输出 token 限制。Aider v0.41.0 及以上版本已内置自动续写功能，可无缝处理此限制：\n1. 升级 Aider 到最新版本：`python -m pip install --upgrade git+https:\u002F\u002Fgithub.com\u002Fpaul-gauthier\u002Faider.git`（或等待正式版发布后 `pip install --upgrade aider-chat`）。\n2. 无需额外配置，新版会自动检测截断并继续请求剩余内容。\n用户反馈显示，升级后该功能表现完美，能够处理任意大小文件的重构任务。","https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F705",{"id":171,"question_zh":172,"answer_zh":173,"source_url":174},45657,"使用 Ollama 或本地模型时报错 'LiteLLM bad request' 或 'Invalid Message' 如何解决？","此错误通常是因为传递给 LiteLLM 的消息格式不符合特定模型的要求（例如系统提示词格式问题）。解决方法：\n1. 确保升级到最新的 Aider 开发版或正式版，维护者经常修复针对本地模型（如 Qwen, Llama 等）的提示词模板兼容性。\n2. 如果是自定义模型，尝试更新配置文件中的 `edit_format` 参数，或使用默认的 diff 模式。\n3. 重新拉取最新的代码库并刷新环境：`git pull` 然后重新安装依赖。\n许多用户反馈在更新代码后该问题自动消失。","https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F3517",{"id":176,"question_zh":177,"answer_zh":178,"source_url":179},45658,"在 AWS Bedrock 上使用新版 Claude Sonnet 3.5 V2 模型无法获取响应（接收 0 tokens）怎么办？","在 AWS Bedrock 上使用 `anthropic.claude-3-5-sonnet-20241022-v2:0` 等新版本模型时，可能会出现发送请求但接收不到响应（0 tokens）的问题。这通常是由于 LiteLLM 或 Aider 对新模型 ID 的支持滞后造成的。解决方法：\n1. 确保同时升级 `aider-chat` 和 `litellm` 到最新版本：`pip install --upgrade aider-chat litellm`。\n2. 如果问题依旧，尝试回退到旧版稳定模型 ID（如 `anthropic.claude-3-5-sonnet-20240620-v1:0`）直到新版本被完全支持。\n3. 检查 GitHub Issue 评论区，确认是否有针对该特定 Bedrock 模型的最新补丁或变通方案。","https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider\u002Fissues\u002F2120",[181,186,191,196,201,206,211,216,221,226,231,236,241,246,251,256,261,266,271,276],{"id":182,"version":183,"summary_zh":184,"released_at":185},360534,"v0.86.0","- 新增对所有 GPT-5 模型的支持。\n- 通过 `xai\u002Fgrok-4` 和 `openrouter\u002Fx-ai\u002Fgrok-4` 模型名称，新增对 Grok-4 的支持。\n- 由 Tamir Zahavi-Brunner 提供，新增对 `gemini\u002Fgemini-2.5-flash-lite-preview-06-17` 模型的支持。\n- `\u002Fclear` 命令现在会打印“所有聊天记录已清除”，以便用户确认操作成功，由 Zexin Yuan 实现。\n- `\u002Fundo` 输出现在仅显示每条提交消息的第一行，使内容更易读。\n- 由 Jack Harrington 提供，新增对 `openrouter\u002Fmoonshotai\u002Fkimi-k2` 模型的支持。\n- 使用不带参数的 `\u002Fmodel` 命令显示模型公告。\n- 修复了现有模型的新设置无法替换旧设置的问题，由 Andrew Grigorev 解决。\n- 修复了分析功能，使其支持最新的 PostHog SDK 事件捕获 API。\n- 升级依赖项，引入最新版本的 litellm==1.75.0。\n\n- 本次发布中，88% 的代码由 Aider 编写。","2025-08-09T17:42:19",{"id":187,"version":188,"summary_zh":189,"released_at":190},360552,"v0.68.0","- [Aider works with LLM web chat UIs](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fcopypaste.html).\r\n  - New `--copy-paste` mode.\r\n  - New `\u002Fcopy-context` command.\r\n- [Set API keys and other environment variables for all providers from command line or yaml conf file](https:\u002F\u002Faider.chat\u002Fdocs\u002Fconfig\u002Faider_conf.html#storing-llm-keys).\r\n  - New `--api-key provider=key` setting.\r\n  - New `--set-env VAR=value` setting.\r\n- Added bash and zsh support to `--watch-files`.\r\n- Better error messages when missing dependencies for Gemini and Bedrock models.\r\n- Control-D now properly exits the program.\r\n- Don't count token costs when API provider returns a hard error.\r\n- Bugfix so watch files works with files that don't have tree-sitter support.\r\n- Bugfix so o1 models can be used as weak model.\r\n- Updated shell command prompt.\r\n- Added docstrings for all Coders.\r\n- Reorganized command line arguments with improved help messages and grouping.\r\n- Use the exact `sys.python` for self-upgrades.\r\n- Added experimental Gemini models.\r\n- Aider wrote 71% of the code in this release.\r\n\r\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fa8dca5f6-a1f8-4282-9cbd-e8219f4a23b6\r\n\r\n","2024-12-10T16:28:05",{"id":192,"version":193,"summary_zh":194,"released_at":195},360535,"v0.85.0","#### 新模型\n- 新增对 Gemini 系列新模型的支持，包括 `gemini-2.5-pro`、`gemini-2.5-flash` 和 `gemini-2.5-pro-preview-06-05`，并支持思考标记。\n- 更新了模型别名：`flash` 现在指向 `gemini-2.5-flash`，`gemini` 现在指向 `gemini-2.5-pro`。\n- 支持 Responses API 中的模型，如 o1-pro 和 o3-pro。\n- 在多个提供商中新增对 OpenAI o3-pro 模型的支持。\n- 增强了思考标记的支持：现在可以通过设置为 0 来禁用，并改进了帮助文本及示例。\n- 将 Deepseek 模型的最大标记数提升至 65536，以提高性能。\n- 更新了 o3 的定价。\n\n#### 新功能与增强\n- 新增 `--add-gitignore-files` 标志，允许将 `.gitignore` 文件中列出的文件添加到 Aider 的编辑范围，由 omarcinkonis 实现。\n- 默认启用 co-authored-by 归属信息用于提交消息。\n- 增强了提交消息生成功能，使用系统提示前缀，由 Luke Reeves 实现。\n- 新增 `--commit-language` 选项，用于指定提交消息的语言，由 Kyosuke Takayama 实现。\n- 当启用 `--skip-sanity-check-repo` 时，跳过耗时的文件跟踪操作，以提升性能，由 Makar Ivashko 实现。\n- 优化了聊天历史摘要的性能，由 jayeshthk 实现。\n- 新增自定义 PostHog 分析配置选项，通过 `--analytics-posthog-host` 和 `--analytics-posthog-project-api-key` 标志实现，由 Vasil Markoukin 实现。\n\n#### 仓库地图\n- 新增对 MATLAB 语言的支持，用于仓库地图，由 Matthew Tofano 实现。\n- 新增对 Clojure 语言的支持，用于仓库地图，由 Garrett Hopper 实现。\n- 改进了仓库地图中 kebab-case 格式的标识符识别，以提升代码分析效果。\n\n#### 修复与小改进\n- 改进了 GitHub Copilot 的令牌处理，增加了更好的验证和错误信息，由 Vincent Taverna 和 Sebastian Estrella 实现。\n- 改进了 Rich Markdown 输出中的内联代码渲染，由 Vamsi Talupula 实现。\n- 修复了 Vertex AI 模型名称前缀在设置中的问题，由 Wietse Venema 实现。\n- 改进了 `\u002Fread-only` 命令，使其能够正确解析字面路径，由 Matteo Landi 实现。\n- 修复了 git diff 输出和 LLM 历史记录中的编码问题。\n- 修复了搜索块的正则表达式，使其在处理 HTML 内容时能够接受可选的闭合标签，由 Mathis Beer 实现。\n- 自动创建聊天历史文件的父目录，以防止启动时出现错误，由贡献者实现。\n- 在安装包之前确保 pip 已可用。\n\n- Aider 负责编写了本次发布中 21% 的代码。","2025-06-27T23:47:09",{"id":197,"version":198,"summary_zh":199,"released_at":200},360536,"v0.84.0","## 模型支持与提供商更新\r\n\r\n- 在多家提供商中新增对 Claude 新模型的支持，包括 Sonnet 4 和 Opus 4 系列（例如 `claude-sonnet-4-20250514`、`claude-opus-4-20250514`）。默认的 `sonnet` 和 `opus` 别名已更新为这些较新的版本。\r\n- 新增对 `vertex_ai\u002Fgemini-2.5-flash-preview-05-20` 模型的支持。\r\n- 在入驻流程中，将 OpenRouter 的默认模型更新为：免费层级使用 `deepseek\u002Fdeepseek-r1:free`，付费层级使用 `anthropic\u002Fclaude-sonnet-4`。\r\n- 由 Lih Chen 实现，当 GitHub Copilot Token 被用作 OpenAI API Key 时，可自动刷新该 Token。\r\n\r\n## 核心功能改进\r\n\r\n- 修复了通过命令行显式添加的文件若在 `.gitignore` 中列出时，未能正确被忽略的问题。\r\n- 由 wangboxue 改进自动提交信息生成逻辑，在生成过程中提供更多上下文，从而提升提交信息质量。\r\n- 修复了 OpenRouter 的 Token 费用计算问题，提高了准确性。\r\n\r\n## 使用体验优化\r\n\r\n- 通过引入本地缓存机制，改进了 OpenRouter 模型元数据的处理方式，提升了可靠性和性能。\r\n- 增加了 Shell Tab 补全功能，分别针对文件路径参数以及 `--edit-format` 和 `--editor-edit-format` 选项。\r\n- `\u002Fsettings` 命令现可显示当前激活的主模型、编辑器模型和弱模型的详细元数据。\r\n- 改进了用户语言检测功能，能够正确归一化带连字符的语言代码（如将 `en-US` 归一为 `en`），并增强了对区域设置结果的校验。\r\n- 当检测到系统区域设置为 `C` 或 `POSIX` 时，Aider 不会再指示 LLM 以这两种语言环境回复。\r\n- 生成提交信息时，会在界面上显示带有模型名称的加载动画。\r\n- 将 configargparse 版本升级至 1.7.1，因为 1.7 版本已被撤回。","2025-05-30T23:28:11",{"id":202,"version":203,"summary_zh":204,"released_at":205},360537,"v0.83.0","- 增加了对 `gemini-2.5-pro-preview-05-06` 模型的支持。\n- 增加了对 `qwen3-235b` 模型的支持。\n- 由 Andrey Popp 添加了对 OCaml 及其接口文件的仓库映射支持。\n- 在等待大语言模型开始流式输出响应时，添加了加载动画。\n- 将加载动画更新为“霹雳游侠”风格。\n- 引入了 `--attribute-co-authored-by` 选项，用于在提交信息中添加共同作者说明，由 Andrew Grigorev 实现。\n- 更新了 Gemini 模型别名（如 `gemini`、`gemini-2.5-pro`），使其指向 `05-06` 预览版本。\n- 默认将 Gemini 2.5 Pro 预览模型标记为 `overeager`。\n- 提交信息提示会明确用户使用的语言。\n- 将 Gemini 2.5 Pro 模型的默认弱模型更新为 `gemini\u002Fgemini-2.5-flash-preview-04-17`。\n- 更正了 `gemini-2.5-pro-exp-03-25` 模型的设置，以反映其不支持 `thinking_budget` 参数的事实。\n- 确保特定于模型的系统提示前缀会在主系统提示之前单独换行。\n- 增加了对发送和接收总 token 数的跟踪功能，现已纳入基准测试统计中。\n- 由 Stefan Hladnik 实现，自动从 OpenRouter 官网获取其模型的参数信息（上下文窗口、定价等）。\n- 启用了对 OpenRouter 模型的 `thinking_tokens` 和 `reasoning_effort` 参数的支持。\n- 在可用的情况下，使用 `litellm.completion_cost` 改进了成本计算。\n- 为 `openrouter\u002Fgoogle\u002Fgemini-2.5-pro-preview-03-25` 添加了模型设置。\n- 由 Andrew Grigorev 添加了 `--disable-playwright` 标志，以防止 Playwright 的安装提示及使用。\n- 如果 Playwright 可用，`aider scrape` 命令行工具将使用 Playwright 进行网页抓取，由 Jon Keys 实现。\n- 由 Titusz Pan 采用 `oslex` 进行参数转义，修复了在 Windows 上执行 linter 命令的问题。\n- 由 Titusz Pan 使用 `oslex` 进行健壮的参数转义，改善了跨平台下 Shell 命令的显示效果。\n- 改进了 `\u002Fask` 模式，指示大语言模型在其响应中省略不变的代码。\n- 确保 GUI 中的网页抓取同样会尊重 Playwright 的可用性以及 `--disable-playwright` 标志。\n- 使用 rich Text 格式改进了提示头中文件名的显示。\n- 为 Gemini 2.5 Flash 模型启用了 `reasoning_effort`。\n- 添加了 `--shell-completions` 参数，用于生成 Shell 补全脚本（例如 bash、zsh）。\n- 明确的 `--attribute-author` 或 `--attribute-committer` 标志现在会在使用 `--attribute-co-authored-by` 时覆盖默认行为，从而实现对提交归属的更精细控制，由 Andrew Grigorev 实现。\n- 修复了一个问题：某些命令（例如在添加只读文件后执行 `\u002Fdrop`）可能无法正确保留文件的只读状态。\n- `aider-args` 工具（或 `python -m aider.args`）现在如果未提供任何参数，默认会打印示例 YAML 配置。\n- 在更新仓库映射时，显示了 token 计数进度以及正在处理的文件名或标识符。\n- 将等待加载动画扩展至…","2025-05-09T22:46:05",{"id":207,"version":208,"summary_zh":209,"released_at":210},360538,"v0.82.0","\r\n- 支持 GPT 4.1、mini 和 nano 模型。\n- 改进了在架构师模式下使用 Gemini 2.5 Pro 的支持。\n- 新增对 `xai\u002Fgrok-3-beta`、`xai\u002Fgrok-3-mini-beta`、`openrouter\u002Fx-ai\u002Fgrok-3-beta`、\n`openrouter\u002Fx-ai\u002Fgrok-3-mini-beta` 以及 `openrouter\u002Fopenrouter\u002Foptimus-alpha` 模型的支持。\n- 新增对 `grok-3-fast-beta` 和 `grok-3-mini-fast-beta` 模型的支持。\n- 为 OpenAI 的 GPT-4.1 模型新增了 `patch` 编辑格式。\n- 新增了 `editor-diff`、`editor-whole` 和 `editor-diff-fenced` 编辑格式。\n- 修复了在架构师模式中自动选择最佳编辑格式的 bug。\n- 为 `xai\u002Fgrok-3-beta` 添加别名“grok3”。\n- 为 `openrouter\u002Fopenrouter\u002Foptimus-alpha` 添加别名“optimus”。\n- 修复了从错误信息中提取 URL 的问题。\n- 允许通过完整路径添加文件，即使聊天中已存在同名文件。\n- 修复了示例 `aider.conf.yml` 文件中包含 `#` 符号的值的引用问题。\n- 增加了对 Fireworks AI 模型 'deepseek-v3-0324' 的支持，由 Felix Lisczyk 提供。\n\n- 本次发布中，92% 的代码由 Aider 完成。\n\n\u003Cimg width=\"730\" alt=\"2025-04-14_16-22-29\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fe4bd30b4-7fa4-4784-a10c-50315d7cbac6\" \u002F>\n","2025-04-14T23:29:05",{"id":212,"version":213,"summary_zh":214,"released_at":215},360553,"v0.67.0","- [Use aider in your IDE or editor](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fwatch.html).\r\n  - Run `aider --watch-files` and it will watch for instructions you add to your source files.\r\n  - One-liner `# ...` or `\u002F\u002F ...` comments that start or end with \"AI\" are instructions to aider.\r\n  - When aider sees \"AI!\" it reads and follows all the instructions in AI comments.\r\n- Support for new Amazon Bedrock Nova models.\r\n- When `\u002Frun` or `\u002Ftest` have non-zero exit codes, pre-fill \"Fix that\" into the next message prompt.\r\n- `\u002Fdiff` now invokes `git diff` to use your preferred diff tool.\r\n- Added Ctrl-Z support for process suspension.\r\n- Spinner now falls back to ASCII art if fancy symbols throw unicode errors.\r\n- `--read` now expands `~` home dirs.\r\n- Enabled exception capture in analytics.\r\n- [Aider wrote 61% of the code in this release.](https:\u002F\u002Faider.chat\u002FHISTORY.html)\r\n\r\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fbea76d8b-5c31-4913-9536-97b7e6c632b5\r\n\r\n","2024-12-06T14:44:33",{"id":217,"version":218,"summary_zh":219,"released_at":220},360539,"v0.81.0","- 新增对 `openrouter\u002Fopenrouter\u002Fquasar-alpha` 模型的支持。\n  - 目前在 OpenRouter 上免费使用。\n  - Quasar 在多语言编码基准测试中得分 55%。\n  - 可通过 `aider --model quasar` 运行。\n- 如果指定了 OpenRouter 模型但缺少 API 密钥，则提供 OpenRouter OAuth 认证选项。\n- 当提供商报告余额不足时，防止重试 API 调用。\n- 改进了 URL 检测功能，以排除尾部的双引号。\n- 升级依赖项，以引入 litellm 的更改，从而更准确地显示 OpenRouter “choices” 错误的根本原因。\n- 改进了 OpenRouter API 连接问题的错误信息，提及可能的速率限制或上游提供商的问题。\n- 将弱模型（`gemini\u002Fgemini-2.0-flash` 和 `openrouter\u002Fgoogle\u002Fgemini-2.0-flash-exp:free`）配置为 Gemini 2.5 Pro 模型。\n- 为 `openrouter\u002Fgoogle\u002Fgemini-2.0-flash-exp:free` 添加了模型元数据。\n- 更新依赖项，修复已移除的 fsspec 和 aiohttp 包问题 #3699。\n- 由 Claudia Pellegrino 移除了 OpenRouter OAuth 流程中的冗余依赖项检查。\n\n- Aider 贡献了本版本中 86% 的代码。\n\nhttps:\u002F\u002Faider.chat\u002FHISTORY.html\n\n\u003Cimg width=\"826\" alt=\"2025-04-04_16-17-33\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F4b6c4c8f-6110-4c6c-8f27-03592e36c1d2\" \u002F>","2025-04-04T09:06:20",{"id":222,"version":223,"summary_zh":224,"released_at":225},360540,"v0.80.0","\r\n- OpenRouter OAuth 集成：\n  - 如果未提供模型和密钥，则提示用户使用 OpenRouter 进行 OAuth 登录。\n  - 如果设置了 `OPENROUTER_API_KEY` 但未指定模型，则根据用户的免费\u002F付费层级选择 OpenRouter 的默认模型。\n- 当未指定模型时，若设置了 `GEMINI_API_KEY`，则优先使用 `gemini\u002Fgemini-2.5-pro-exp-03-25`；若设置了 `VERTEXAI_PROJECT`，则优先使用 `vertex_ai\u002Fgemini-2.5-pro-exp-03-25`。\n- 在启动时验证用户配置的颜色设置，并对无效设置发出警告或将其禁用。\n- 启动时，如果同时使用了 `--stream` 和 `--cache-prompts` 选项，则会发出警告，因为这可能导致成本估算不准确。\n- 对于文件路径组件与聊天中提到的标识符匹配的文件，提升其在 repomap 中的排名。\n- 将网页抓取的超时行为从报错改为警告，允许抓取继续进行，即使内容可能不完整。\n- 按照 Peter Schilling 的建议，在终端输出中将 Markdown 标题左对齐。\n- 当使用 `\u002Fmodel` 切换模型时，如果用户之前使用的是旧模型的默认格式，则将编辑格式更新为新模型的默认格式。\n- 新增 `openrouter\u002Fdeepseek-chat-v3-0324:free` 模型。\n- 添加 `Ctrl-X Ctrl-E` 键绑定，用于在外部编辑器中编辑当前输入缓冲区，由 Matteo Landi 实现。\n- 修复了包含 Shell 元字符的文件路径的 Lint 错误，由 Mir Adnan ALI 完成。\n- 增加了对 Scala 语言的 repomap 支持，由 Vasil Markoukin 实现。\n- 修复了 `\u002Frun` 命令中的一个 bug，该 bug 曾导致自动测试无法正常运行。\n- 修复了一个在遍历 Git 代码树时可能导致 `UnboundLocalError` 的 bug。\n- 处理 `GitCommandNotFound` 错误，以应对 Git 未安装或不在 PATH 中的情况。\n- 处理 `FileNotFoundError`，以应对 Aider 运行期间当前工作目录被删除的情况。\n- 修复了补全菜单当前项的颜色样式问题，由 Andrey Ivanov 完成。\n\n- 本次发布中，Aider 负责编写了 87% 的代码。\n\n完整变更日志：\nhttps:\u002F\u002Faider.chat\u002FHISTORY.html","2025-03-31T01:21:50",{"id":227,"version":228,"summary_zh":229,"released_at":230},360541,"v0.79.0","- 新增对 SOTA Gemini 2.5 Pro 的支持。\n- 新增对 DeepSeek V3 0324 的支持。\n- 新增 `\u002Fcontext` 命令，可自动识别针对特定请求需要编辑哪些文件。\n- 将 `\u002Fedit` 添加为 `\u002Feditor` 命令的别名。\n- 为 Claude 3.7 Sonnet 模型新增“overeager”模式，以尽量使其在请求范围内工作。\n- 本次发布中，Aider 负责编写了 65% 的代码。\n\n\u003Cimg width=\"939\" alt=\"2025-03-25_10-50-17\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F48795278-5693-441c-8744-653f5ade99a3\" \u002F>\n","2025-03-25T21:16:38",{"id":232,"version":233,"summary_zh":234,"released_at":235},360542,"v0.78.0","\r\n- 增加了对 OpenRouter Sonnet 3.7 的思考标记支持。\n- 新增了用于切换模型类型的命令：`\u002Feditor-model` 用于编辑器模型，`\u002Fweak-model` 用于弱模型，由 csala 实现。\n- 添加了模型设置验证功能，当模型不支持 `--reasoning-effort` 和 `--thinking-tokens` 时，将忽略这些参数。\n- 新增了 `--check-model-accepts-settings` 标志（默认为 true），用于强制启用不被支持的模型设置。\n- 在模型设置数据中标注了哪些模型支持 reasoning_effort 和 thinking_tokens 设置。\n- 使用 NoInsetMarkdown 改进了 Markdown 输出中代码块的渲染效果，增加了更好的内边距。\n- 新增了 `--git-commit-verify` 标志（默认为 False），用于控制是否绕过 Git 提交钩子。\n- 修复了 `\u002Fask`、`\u002Fcode` 和 `\u002Farchitect` 命令的自动补全功能，由 shladnik 完成。\n- 在多行模式下，当处于 vi 普通\u002F导航模式时，按下 Enter 键将具有类似 vi 的行为，由 Marco Mayer 实现。\n- 增加了对 Bedrock 模型的 AWS_PROFILE 支持，允许使用 AWS 配置文件代替显式凭证，由 lentil32 实现。\n- 增强了 `--aiderignore` 参数，使其能够解析绝对路径和相对路径，由 mopemope 完成。\n- 改进了平台信息的处理逻辑，使其在获取失败时能够更优雅地处理错误。\n- 升级了依赖项，以引入 litellm 对 Ollama 的修复。\n- 增加了对 `openrouter\u002Fgoogle\u002Fgemma-3-27b-it` 模型的支持。\n- 更新了帮助文档的排除模式。\n\n- 本次发布中，92% 的代码由 Aider 编写。\n\n完整发布说明：\nhttps:\u002F\u002Faider.chat\u002FHISTORY.html","2025-03-21T18:59:35",{"id":237,"version":238,"summary_zh":239,"released_at":240},360543,"v0.77.0","- 通过采用 [tree-sitter-language-pack](https:\u002F\u002Fgithub.com\u002FGoldziher\u002Ftree-sitter-language-pack\u002F)，大幅升级了[支持的编程语言](https:\u002F\u002Faider.chat\u002Fdocs\u002Flanguages.html)。\n  - 新增130种支持 linter 的语言。\n  - 新增20种支持 repo-map 的语言。\n- 新增 `\u002Fthink-tokens` 命令，用于设置思考 token 预算，并支持人类可读的格式（8k、10.5k、0.5M）。\n- 新增 `\u002Freasoning-effort` 命令，用于控制模型的推理强度。\n- 当不带参数调用 `\u002Fthink-tokens` 和 `\u002Freasoning-effort` 命令时，会显示当前设置。\n- 在模型信息中显示思考 token 预算和推理强度。\n- 将 `--thinking-tokens` 参数修改为接受包含人类可读格式的字符串值。\n- 新增 `--auto-accept-architect` 标志（默认：true），用于在无需确认的情况下自动接受来自 architect 编码器格式的更改。\n- 新增对 `cohere_chat\u002Fcommand-a-03-2025` 和 `gemini\u002Fgemma-3-27b-it` 的支持。\n- 简化的 `\u002Fdrop` 命令现在会保留通过 args.read 提供的原始只读文件。\n- 修复了一个 bug：即使命令行中已指定默认模型，过时的 `--shortcut` 开关仍会覆盖设置。\n- 改进了 AutoCompleter，要求输入至少3个字符才触发自动补全，以减少误触发。\n- 修复了加载模型缓存文件时出现 JSONDecodeError 的问题。\n- 修复了获取 Git 用户配置时出现 GitCommandError 的问题。\n- 由 Yutaka Matsubara 添加了 ignore_permission_denied 选项到文件监视器中，以防止访问受限文件时引发错误。\n\n- 本次发布中，Aider 负责编写了72%的代码。","2025-03-13T21:46:58",{"id":242,"version":243,"summary_zh":244,"released_at":245},360544,"v0.76.0","- Improved support for [thinking\u002Freasoning models](https:\u002F\u002Faider.chat\u002Fdocs\u002Fconfig\u002Freasoning.html):\r\n  - Added `--thinking-tokens` CLI option to control token budget for models that support thinking.\r\n  - Display thinking\u002Freasoning content from LLMs which return it.\r\n  - Enhanced handling of reasoning tags to better clean up model responses.\r\n  - Added deprecation warning for `remove_reasoning` setting, now replaced by `reasoning_tag`.\r\n\r\n- Aider will notify you when it's completed the last request and needs your input:\r\n  - Added [notifications when LLM responses are ready](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fnotifications.html) with `--notifications` flag.\r\n  - Specify desktop notification command with `--notifications-command`.\r\n\r\n- Added\u002Fimproved support for many models\u002Fproviders:\r\n  - Added support for QWQ 32B.\r\n  - Support for DeepSeek V3 free on OpenRouter: `--model openrouter\u002Fdeepseek\u002Fdeepseek-chat:free`.\r\n  - Added support for Claude 3.7 Sonnet models on OpenRouter, Bedrock and Vertex AI.\r\n  - Updated default model to Claude 3.7 Sonnet on OpenRouter.\r\n  - Added support for GPT-4.5-preview model.\r\n  - Added support for Claude 3.7 Sonnet:beta on OpenRouter.\r\n  - Added support for `openrouter\u002Fanthropic\u002Fclaude-3.7-sonnet`\r\n  - Fixed weak_model_name patterns to match main model name patterns for some models.\r\n\r\n- Switch to `tree-sitter-language-pack` for tree sitter support.\r\n- Improved error handling for EOF (Ctrl+D) in user input prompts.\r\n- Added helper function to ensure hex color values have a # prefix.\r\n- Fixed handling of Git errors when reading staged files.\r\n- Improved SSL verification control for model information requests.\r\n- Improved empty LLM response handling with clearer warning messages.\r\n- Fixed Git identity retrieval to respect global configuration, by Akira Komamura.\r\n- Offer to install dependencies for Bedrock and Vertex AI models.\r\n- Deprecated model shortcut args (like --4o, --opus) in favor of the --model flag.\r\n\r\n- Aider wrote 85% of the code in this release.\r\n\r\nhttps:\u002F\u002Faider.chat\u002FHISTORY.html\r\n\r\n![image](https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Ff773461e-e94c-47ed-b500-1933060aafa6)\r\n\r\n","2025-03-10T16:00:08",{"id":247,"version":248,"summary_zh":249,"released_at":250},360545,"v0.75.0","\r\n- Basic support for Claude 3.7 Sonnet\r\n  - Use `--model sonnet` to use the new 3.7\r\n  - Thinking support coming soon.\r\n- Bugfix to `\u002Feditor` command.\r\n- Downgrade streamlit dependency to avoid threading bug.\r\n- Added support for tree-sitter language pack.\r\n- Added openrouter\u002Fo3-mini-high model configuration.\r\n- Added build.gradle.kts to special files for Kotlin project support, by Lucas Shadler.\r\n- Prevent more than one cache warming thread from becoming active.\r\n- Fixed continuation prompt \". \" for multiline input.\r\n- Added HCL (Terraform) syntax support, by Warren Krewenki.\r\n- Have o1 & o3-mini generate markdown by sending the magic \"Formatting re-enabled.\" string.\r\n- Bugfix for multi-line inputs, which should not include the \". \" continuation prompt.\r\n- Aider wrote 46% of the code in this release.\r\n","2025-03-04T20:41:19",{"id":252,"version":253,"summary_zh":254,"released_at":255},360546,"v0.74.0","- Dynamically changes the Ollama context window to hold the current chat.\r\n- Better support for o3-mini, DeepSeek V3 & R1, o1-mini, o1 via secondary API providers.\r\n- Remove `\u003Cthink>` tags from R1 responses for commit messages (and other weak model uses).\r\n- Can now specify `use_temperature: \u003Cfloat>` in model settings, not just true\u002Ffalse.\r\n- The full docker container now includes `boto3` for Bedrock.\r\n- Docker containers now set `HOME=\u002Fapp` which is the normal project mount-point, to persist\r\n`~\u002F.aider`.\r\n- Bugfix to prevent creating incorrect filenames like `python`, `php`, etc.\r\n- Bugfix for `--timeout`\r\n- Bugfix so that `\u002Fmodel` now correctly reports that the weak model is not changed.\r\n- Bugfix so that multi-line mode persists through ^C at confirmation prompts.\r\n- Watch files now fully ignores top-level directories named in ignore files, to reduce the\r\nchance of hitting OS watch limits. Helpful to ignore giant subtrees like `node_modules`.\r\n- Fast startup with more providers and when model metadata provided in local files.\r\n- Improved .gitignore handling:\r\n  - Honor ignores already in effect regardless of how they've been configured.\r\n  - Check for .env only when the file exists.\r\n- Yes\u002FNo prompts now accept All\u002FSkip as alias for Y\u002FN even when not processing a group of\r\nconfirmations.\r\n- Aider wrote 77% of the code in this release.\r\n\r\nhttps:\u002F\u002Faider.chat\u002FHISTORY.html","2025-02-06T22:43:06",{"id":257,"version":258,"summary_zh":259,"released_at":260},360547,"v0.73.0","- Full support for o3-mini: `aider --model o3-mini`\r\n- New `--reasoning-effort` argument: low, medium, high.\r\n- Improved handling of context window size limits, with better messaging and Ollama-specific guidance.\r\n- Added support for removing model-specific reasoning tags from responses with `remove_reasoning: tagname` model setting.\r\n- Auto-create parent directories when creating new files, by xqyz.\r\n- Support for R1 free on OpenRouter: `--model openrouter\u002Fdeepseek\u002Fdeepseek-r1:free`\r\n- Enforce user\u002Fassistant turn order to avoid R1 errors, by miradnanali.\r\n- Case-insensitive model name matching while preserving original case.\r\n- Harden against user\u002Fassistant turn order problems which cause R1 errors.\r\n- Fix model metadata for `openrouter\u002Fdeepseek\u002Fdeepseek-r1`\r\n- Aider wrote 69% of the code in this release.\r\n\r\nhttps:\u002F\u002Faider.chat\u002FHISTORY.html\r\n\r\n\u003Cimg width=\"984\" alt=\"2025-01-31_13-35-29\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F94b0824b-c222-4b1e-98ec-df5947b07f5b\" \u002F>\r\n","2025-01-31T22:02:06",{"id":262,"version":263,"summary_zh":264,"released_at":265},360548,"v0.72.0","- Support for DeepSeek R1.\r\n  - Use shortcut: `--model r1`\r\n  - Also via OpenRouter: `--model openrouter\u002Fdeepseek\u002Fdeepseek-r1`\r\n- Added Kotlin syntax support to repo map, by Paul Walker.\r\n- Added `--line-endings` for file writing, by Titusz Pan.\r\n- Added examples_as_sys_msg=True for GPT-4o models, improves benchmark scores.\r\n- Bumped all dependencies, to pick up litellm support for o1 system messages.\r\n- Bugfix for turn taking when reflecting lint\u002Ftest errors.\r\n- Fix permissions issue in Docker images.\r\n- Added read-only file announcements.\r\n- Bugfix: ASCII fallback for unicode errors.\r\n- Bugfix: integer indices for list slicing in repomap calculations.\r\n- Aider wrote 52% of the code in this release.\r\n\r\n\u003Cimg width=\"898\" alt=\"2025-01-20_11-39-50\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F1de1f960-699b-444d-ba6c-28a3aedd0ea3\" \u002F>\r\n","2025-01-20T22:26:59",{"id":267,"version":268,"summary_zh":269,"released_at":270},360549,"v0.71.0","\r\n- Prompts to help DeepSeek work better when alternating between `\u002Fask` and `\u002Fcode`.\r\n- Streaming pretty LLM responses is smoother and faster for long replies.\r\n- Streaming automatically turns of for model that don't support it\r\n  - Can now switch to\u002Ffrom `\u002Fmodel o1` and a streaming model\r\n- Pretty output remains enabled even when editing files with triple-backtick fences\r\n- Bare `\u002Fask`, `\u002Fcode` and `\u002Farchitect` commands now switch the chat mode.\r\n- Increased default size of the repomap.\r\n- Increased max chat history tokens limit from 4k to 8k.\r\n- Turn off fancy input and watch files if terminal is dumb.\r\n- Added support for custom voice format and input device settings.\r\n- Disabled Streamlit email prompt, by apaz-cli.\r\n- Fixed lint command handling of nested spaced strings, by Aaron Weisberg.\r\n- Added token count feedback when adding command output to chat.\r\n- Improved error handling for large audio files with automatic format conversion.\r\n- Improved handling of git repo index errors, by Krazer.\r\n- Improved unicode handling in console output with ASCII fallback.\r\n- Added AssertionError to git error handling.\r\n- Fixed file export path in voice format conversion.\r\n- Added AttributeError to git error handling.\r\n- Improved markdown rendering performance with adaptive delay based on render time.\r\n- Fixed typo in model metadata variable name.\r\n- Aider wrote 60% of the code in this release.\r\n\r\nhttps:\u002F\u002Faider.chat\u002FHISTORY.html","2025-01-10T23:02:26",{"id":272,"version":273,"summary_zh":274,"released_at":275},360550,"v0.70.0","\r\n- Full support for o1 models.\r\n- Watch files now honors `--subtree-only`, and only watches that subtree.\r\n- Improved prompting for watch files, to work more reliably with more models.\r\n- New install methods via uv, including one-liners.\r\n- Support for openrouter\u002Fdeepseek\u002Fdeepseek-chat model.\r\n- Better error handling when interactive commands are attempted via `\u002Fload` or `--load`.\r\n- Display read-only files with abs path if its shorter than rel path.\r\n- Ask 10% of users to opt-in to analytics.\r\n- Bugfix for auto-suggest.\r\n- Gracefully handle unicode errors in git path names.\r\n- Fix for gemini model names in model metadata.\r\n- Show hints about AI! and AI? when user makes AI comments.\r\n- Support for running without git installed.\r\n- Improved environment variable setup messages on Windows.\r\n- Aider wrote 74% of the code in this release. \r\n\r\nhttps:\u002F\u002Faider.chat\u002FHISTORY.html\r\n","2024-12-26T23:22:53",{"id":277,"version":278,"summary_zh":279,"released_at":280},360551,"v0.69.0","- [Watch files](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fwatch.html) improvements:\r\n  - Use `# ... AI?` comments to trigger aider and ask questions about your code.\r\n  - Now watches *all* files, not just certain source files.\r\n  - Use `# AI comments`, `\u002F\u002F AI comments`, or `-- AI comments` to give aider instructions in any text file.\r\n- Full support for Gemini Flash 2.0 Exp:\r\n  - `aider --model flash` or `aider --model gemini\u002Fgemini-2.0-flash-exp`\r\n- [New `--multiline` flag and `\u002Fmultiline-mode` command](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fcommands.html#entering-multi-line-chat-messages) makes ENTER a soft newline and META-ENTER send the message, by @miradnanali.\r\n- `\u002Fcopy-context \u003Cinstructions>` now takes optional \"instructions\" when [copying code context to the clipboard](https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Fcopypaste.html#copy-aiders-code-context-to-your-clipboard-paste-into-the-web-ui).\r\n- Improved clipboard error handling with helpful requirements install info.\r\n- Ask 5% of users if they want to opt-in to analytics.\r\n- `\u002Fvoice` now lets you edit the transcribed text before sending.\r\n- Disabled auto-complete in Y\u002FN prompts.\r\n- Aider wrote 68% of the code in this release.\r\n\r\n\r\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F528b6868-f6be-426c-a736-dbe1a208435d\r\n\r\n","2024-12-13T19:45:41"]