综合介绍
Auto-Coder.Chat 是一款基于终端的 AI 辅助编程工具,旨在通过智能化手段提升开发者的编程效率。该工具可以与任意 IDE 搭配使用,使开发工具具备 AI 辅助编程能力。Auto-Coder.Chat 支持多种编程语言和框架,能够自动生成代码、优化代码结构,并提供智能化的代码建议。其独特的功能包括基于上下文的代码生成、自动提交代码变更以及详细的代码审查功能,帮助开发者更高效地完成项目。
auto-coder.chat 是全球第一款面相 commit 级别的 AI 辅助编程工具。也就是你描述需求后,它会自动给你提交commit。 auto-coder.chat 也是全球第一款提出了“复现”概念的 AI 辅助编程工具,它会记录你每个commit 后面的“环境” 和 需求。 类似 docker。我们会记录某个commit 背后的上下文,环境配置(auto-coder.chat 的各种配置),需求以及最后得到的实际commit 代码等。
目前提供了两款AI辅助编程工具:
1. auto-coder.chat
是一款基于 terminal 的 AI 辅助编程工具。可以搭配任意IDE使用。可以让任何开发工具瞬间就具备AI辅助编程能力,比如微信小程序开发工具。推荐搭配 cursor, cusor 的tab tab 可以有效的提升你偶尔可能会手动修改代码的需求。
2. auto-coder.web
是一款 web IDE。 你只需要web 浏览器,就可以对一个项目做变更或者修改。
功能列表
- 代码生成:根据用户输入的需求自动生成代码片段。
- 代码优化:智能优化现有代码,提高代码质量和性能。
- 代码审查:提供详细的代码审查建议,帮助开发者发现和修复潜在问题。
- 自动提交:自动提交代码变更,记录每次提交的上下文和环境配置。
- 多语言支持:支持多种编程语言和框架,适应不同开发需求。
- 上下文模式:基于上下文的代码生成和优化,提供更精准的代码建议。
- 工具集成:与多种开发工具和 IDE 无缝集成,提升开发效率。
使用帮助
安装流程
- 创建虚拟环境:
conda create --name autocoder python=3.10.11
conda activate autocoder
- 安装 Auto-Coder:
pip install -U auto-coder
使用指南
- 启动 Auto-Coder.Chat: 在终端中输入
auto-coder.chat
启动工具。 - 代码生成: 在终端中输入需求描述,例如:
/coding @src/project/main.py 添加一个新的翻译API, 输入是文本以及目标语言,输出是翻译后的内容.
等待系统生成代码并提交。
- 代码审查: 使用
/review
命令对代码进行审查,例如:
/review @src/project/main.py
系统会提供详细的审查建议。
- 自动提交: 修改代码后,使用
/commit
命令提交变更,系统会记录提交的上下文和环境配置。 - 撤销提交: 如果需要撤销提交,使用
/revert
命令,例如:
/revert
系统会撤销最近一次提交。
详细操作流程
- 描述需求: 在编码区直接描述需求,系统会根据需求生成代码并提交。
- 审查代码: 查看系统生成的代码提交,进行审查和修改。
- 优化代码: 使用系统提供的优化建议,提高代码质量。
- 提交变更: 确认代码无误后,使用
/commit
命令提交变更。 - 撤销和修改: 如果需要修改或撤销提交,使用
/revert
命令进行操作。
auto-coder.chat与其他工具差异
目前主流的 AI 辅助编程工具都达到了图片中展示的 write 级别。不同工具的做法不同:
1. windsurf 是采用 agentic 模式。
2. cline 是采用 COT 模式,以 tools 为核心。
3. cursor 则是兼具上下文和agent 模式,用户自己选择切换。
auto-coder.chat 则是以上下文模式为核心,辅以其他模式比如以tools为核心的COT ,也包括 mcp 支持等。
我们来说下 tools 模式和 上线文模式的区别, tools 模式是我给大模型一堆工具,比如查找文件,修改文件等等,你自己自由组合这些工具来完成用户的需求。通常而言,对工具的使用是线性的,系统会利用工具完成相关代码收集,代码修改,命令行执行等等。
context 模式则是通过索引,rag等各种策略,根据用户需求反推这次可能需要的源码文件,然后将源码文件和需求给到大模型,让大模型给出修改。这里也是充分利用大模型自由发挥。
相比同为开源的 cline, auto-coder.chat 的可玩性相当高, 比如cline一般是一个模型走到黑,auto-coder.chat 可以任意组合模型完成不同功能模块。比如索引,过滤可以分别配置模型,代码生成可以配置单独模型,结果筛选可以配置单独模型,rag服务也可以配置不同模型。
auto-coder.chat 如何使用 MCP Server
目前已经至少有过千的 MCP Server 实现了,你可以在 auto-coder.chat 中通过一条命令就可以随意安装一个 MCP Server ,然后实现对这个Server的使用。这里我们以对接 https://www.perplexity.ai/ API 为例来介绍具体使用方法。执行如下指令,查看已有的的 mcp server:
/mcp /list
通过名字来进行安装:
/mcp /add perplexity
如果你安装的是第三方的,系统会自动通过 pip / npx 安装相应的依赖库。请确保你的电脑拥有 pip /npx 命令。如果没有,系统也会提醒你。因为 perplexity 需要API Key 才能访问,所以需要手动添加下 Key。
手动修改下文件 `~/.auto-coder/mcp/settings.json`:
{ "mcpServers": { "perplexity": { "command": "python", "args": [ "-m", "autocoder.common.mcp_servers.mcp_server_perplexity" ], "env": { "PERPLEXITY_API_KEY": "{{PERPLEXITY_API_KEY}}" } } } }
将 {{PERPLEXITY_API_KEY}}
整个替换成你实际 API Key。 然后刷新下:
/mcp /refresh perplexity
现在,我可以使用 /mcp 询问一些问题:
/mcp 帮我搜索下 auto-coder.chat 是什么东西
这里我们通过”帮我搜索下“ 来引导 auto-coder.chat 选择 perplexity 提供的工具来进行检索。
你还可以通过下面的指令查看当前已经注册的 server:
/mcp /list_running