进阶 12 分钟IDE

Roo Code:本地编程智能体,运行于 编辑器

直接回答

请注意,有一点会改变整个局面:Roo Code 团队于 2026 年 5 月 15 日停止开发该扩展,转而专注于其云端继任者 Roomote。GitHub 仓库已归档,不会再发布任何补丁。已安装的扩展仍会照常运行,包括通过 Ollama 使用参数量至少为 140 亿的本地模型,以及使用扩展的五种模式;但对于新项目,Cline(Roo Code 最初源自 Cline)是仍在积极维护的同类选择。

Roo Code 是一个编辑器扩展,它将一个智能体安装到您的开发环境中:它读取项目、修改多个文件、执行命令并汇报结果。在本地模型上,它可以工作——前提是接受模型大小决定一切,并选择其能力范围内的任务,而不是要求它设计架构。在深入之前需要知道的一点:开发 Roo Code 的团队已于 2026 年 5 月 15 日停止对该项目的所有活动,转而专注于其云端继任者 Roomote。对于已安装的扩展或社区分支,本指南仍然有用;对于新项目,下方专门章节解释了这带来了什么变化。

作者: Mohamed Meguedmi·更新于 2026-09-28·已在 Windows、macOS 和 Linux 上测试

#这是什么

在代码补全和自主智能体之间,还存在一个中间类别:编辑器中的智能体。代码补全会在您输入时预测下一行,而自主智能体则在容器中独立工作,无需持续监督。编辑器中的智能体能看到您打开的项目,理解文件目录结构及其依赖关系,提出修改,并在您确认后才将修改写入磁盘;它还会在您的终端中执行命令,每次都需要您的明确同意。Roo Code 属于这一类,与 Cline 等项目的理念在很大程度上相通。

与对话助手相比,它的优势是无需再复制粘贴:修改会以差异(diff)的形式出现在相关文件中。与自主智能体相比,它的优势是您在每一步都参与其中,而模型越小,这一点就越重要。该项目采用 Apache 2.0 许可证,自 2024 年底推出以来,GitHub 星标数已超过 20,000;在竞争日益激烈的这一类别中,这体现了用户采用它的速度之快——不过,这些都是在下文详述的停止运营公告发布之前的情况。

#该扩展自 2026 年 5 月起已停止运营:这意味着什么

本地副驾驶套件

本指南带你上手模型。工具包则帮你用上能在你的编辑器中编写代码的编程助手。

  • 在线空间,终身可用
  • PDF + 文件
  • 30 天内退款

这是本指南最重要的信息,也是许多仍在线的教程未提及的信息。创始人 Matt Rubens 于2026年4月21日宣布停止 Roo Code 项目:最后一次发布于2026年5月15日,GitHub 仓库随后归档——锁定为只读,不再提供任何修复,包括安全修复。直接核查仓库即可确认:状态为已归档,最后一次提交日期为2026年5月15日。团队已全部转向 Roomote,这是一个通过 Slack 操控的云端智能体;团队认为,代码编辑器已不再是与 AI 智能体协作的未来方向。

!
这对你实际意味着什么
已经安装的扩展会继续完全按照本指南所述的方式运行:不会有任何功能被远程停用。但此后不会再有任何修复,即使明天发现安全漏洞也不会修复;社区开发如今也转向了独立的分叉项目,而非原始仓库。对于现在的新项目,Cline 是功能相当且仍在积极维护的选择——Roo Code 最初就是从 Cline 分叉而来,其团队也亲自引导用户转向了 Cline。

#不同模式,以及为什么这样的设计是个好主意

Roo Code 的独特之处在于区分不同角色。默认内置五种模式:Code,用于编写和修改,并可使用全部工具;Ask,是一个技术助手,会详细回答问题,但不改动任何内容(仅限读取和 MCP);Architect,是一个规划者,其写入权限仅限于 Markdown 文件,旨在先设计再行动;Debug,侧重系统性诊断,拥有完整访问权限;Orchestrator,也称为“Boomerang Mode”,会拆解复杂任务并将其委派给其他模式。还可以定义其他模式,为它们设置各自的指令和权限。

对于本地模型,这不只是使用起来更方便。没有写入权限的 Ask 模式,可以消除模型太小却因过于积极而修改文件的这类事故。按模式限制权限,是让小模型能够安全使用的主要手段;这也恰好最能体现 Roo Code 对智能体通用安全实践的遵循:每个角色只获得所需的权限,绝不多给。

#连接本地模型

  1. 01
    提供模型服务
    Ollama 或任何兼容 OpenAI 的接口。对于个人使用,Ollama 已足够。
  2. 02
    在扩展中选择 Ollama 作为模型服务提供方
    输入模型的名称或标签。默认基础地址为 http://localhost:11434;仅在 Ollama 服务器要求时才需要 API 密钥。
  3. 03
    在正确的位置设置上下文窗口
    这是记录最充分的陷阱:默认情况下,Roo Code 会采用 Ollama 模型的 Modelfile 中定义的 num_ctx 设置,而不是扩展自身的数值。因此,要增大上下文窗口,应在 Ollama 端操作(通过 Modelfile 或环境变量),而不是在 Roo Code 的设置中调整。
  4. 04
    从 Ask 模式开始
    在允许任何修改之前,使用仅有读取权限的模式,提出三个关于项目的问题,就能如实衡量模型究竟理解了多少代码。
!
上下文首先带来内存开销,然后才是时间开销
一个实用的代码智能体需要较长的上下文,而这些上下文与模型权重一样,也会占用显存。因此,本地代码智能体需要比普通聊天助手显存容量更大的显卡。这也解释了为什么检查 Ollama 中实际生效的 num_ctx,可以避免事后才发现大文件已被悄悄截断。

#究竟使用哪个模型

根据模型大小可预期的性能
类别作为编辑智能体时的表现
70至80亿能够回答关于代码的问题;但多文件修改往往失败
140亿对一两个文件进行简单修改,并仔细审查
270至320亿能够较为轻松地完成重构、测试和按指导修复的门槛
700亿及以上判断能力更好,速度足以改变工作方式

在这项任务中,中等规模的代码专用模型几乎总能胜过规模更大的通用模型,因为它在训练中接触了更多严格格式和代码差异(diff),而非一般 prose 文本。差距主要体现在能否生成一次就能成功应用、没有上下文或行号错误的 diff——在实践中,这个技术细节比模型回答的整体质量更重要。

#Orchestrator:将复杂任务拆解

Orchestrator 模式在官方文档中也称为 Boomerang Mode,它改变了处理无法一次完成的庞大任务的方式。与其直接要求“为我的应用添加身份验证”,您可以向 Orchestrator 描述目标,由它将目标拆分为子任务,再交给专门的模式处理:Architect 负责制定计划,Code 负责实现,若过程中有测试失败,则由 Debug 介入。

  1. 01
    描述目标,而非步骤
    向 Orchestrator 说明预期结果,而不是列出需要修改的文件;这种任务拆分正是该模式应该完成的工作。
  2. 02
    让每个子任务完成后再进行下一个
    该模式会等待一次委派任务的结果返回后,再启动下一次委派,从而自然地留出停顿,让您检查刚完成的工作。
  3. 03
    每一步都需关注当前激活模式
    界面会显示当前正在使用哪种模式;如果本应保持只读的任务意外切换到 Code 模式,这是最需要优先留意的信号。

使用本地模型时,这种拆分会带来直接且可测量的开销:每个委派出去的子任务都是一次新的模型调用,也就意味着一次新的完整生成过程,并且每次都需要花时间加载各自的上下文。对于真正由多个部分组成、涉及多个文件和多个不同关注点的任务,Orchestrator 值得使用;对于简单修改,它只会增加往返调用,却没有实际收益,而直接使用 Code 模式仍能明显更快地达到完全相同的最终结果。

#正确使用

范围明确的小任务
“添加这个参数,并将其传递到调用它的三个函数中”,而不是“改进这个模块”。要求越具体,模型按自己的方式解读的空间就越小,而大多数令人失望的代码改动恰恰来自这种解读空间。
干净的代码仓库
在专用分支上使用干净的工作树,可以让每份 diff 都一目了然,并通过一次撤销提交来撤销每个错误,无需从您自己尚在进行的修改中分离出智能体的改动。
逐一审查每份 diff
本地模型经常会生成看似合理的修改:这些修改能够编译通过,也能通过快速审阅,却仍然没有实现您真正想要的效果。编译通过并不能证明代码正确,只能说明不存在语法错误。
需警惕外部内容
工单、依赖项的文档文件或代码中已有的注释,都可能包含面向 AI 智能体而非您的指令——请参阅下文的安全部分,了解这在实际使用中意味着什么。

#故障排除:最常见的障碍

使用本地模型时遇到的大多数问题,都源于三种容易识别和区分的原因。在质疑模型本身的质量之前,应先逐一检查这些原因。

症状、可能原因、解决方案
问题表现最可能的原因待验证
智能体「忘记」了本次会话中先前读取过的文件实际启用的上下文窗口太短,无法容纳已累积的历史记录Ollama Modelfile 中的 num_ctx,而不是 Roo Code 中的设置
提出的 diff 补丁无法顺利应用模型能力未达到处理这种严格格式所需的实用门槛改用面向编程的模型,或选择更大规模的模型
智能体不断重复执行同一条命令工具输出被误解,或权限请求被拒绝却没有提示当前启用的模式及其在此项目中的实际权限

在三种情况下,首先应思考的问题并非‘选择哪个更好的模型’,而是‘该模型在回答时实际接收到了什么样的上下文和权限’。上下文被截断所产生的可见症状,与模型容量不足完全相同,但一旦确定真实原因,其诊断成本和解决方案却大不相同。

#读取您项目的智能体所特有的风险

编辑代理本质上会查看您未亲自撰写的內容:第三方依赖的README文件、对话中粘贴的工单、或其他地方克隆进来的仓库中已存在的评论。这些内容中的某一项可能包含针对模型的指令,而非针对您——这正是提示注入(prompt injection)的原理,详见下方专门指南。配备终端和写入权限的代理,比不具备工具功能的纯聊天机器人,更易成为此类攻击的目标。

正是在这里,Roo Code 的模式不再只是方便组织工作,而成为切实的安全措施。仅限读取的 Ask 模式,即使读到了工单中隐藏的指令,即使底层模型受到了该指令的影响,也根本无法执行它。这种保护并非来自更智能、能够识别陷阱的模型,而是来自权限范围的限制,使执行该指令在技术上成为不可能,无论模型决定做什么。

!
该模式不能替代仔细审阅
即使在 Code 模式下,且已授予所有权限,也应在批准执行前仔细阅读每条拟执行的命令。一条删除文件夹的命令,即使看起来合理,仍然是破坏性操作,无论它源于模型的正当意图,还是藏在模型刚读取的文件中的指令。

#FAQ

Roo Code 免费吗?+
该扩展本身是开源软件,采用 Apache 2.0 许可证发布,可免费安装和使用。如需付费,支付的是模型费用:通过 Ollama 在本地运行则完全免费;使用远程模型则由您选择的供应商按 token 计费。扩展中的任何功能都不要求订阅才能运行。
是否支持 Ollama?+
是的:只需在设置中选择 Ollama 作为服务提供商,填写模型名称,并使用默认地址 http://localhost:11434。需要特别注意的不是这项设置,而是上下文窗口:Roo Code 会沿用 Ollama 的 Modelfile 中定义的 num_ctx,而不是自行控制上下文窗口。
最低需要什么样的本地模型?+
约 140 亿参数的代码模型适合对一两个文件进行简单修改,但需仔细审阅每个建议的 diff。若要同时处理多个文件并获得顺畅的使用体验,进行重构或在引导下修复问题,且各步骤都保持可靠,则需要考虑 270 至 320 亿参数的模型。
Roo Code 仍在开发中吗?+
没有。创始人 Matt Rubens 于 2026 年 4 月 21 日宣布停止该项目,以专注于云端后继产品 Roomote;最后一次发布是在 2026 年 5 月 15 日,此后 GitHub 仓库已归档并锁定为只读。已安装的扩展仍会按原样运行,但原团队将不再发布任何修复,包括安全修复。
Roo Code 还是 Cline?+
两者都是集成在编辑器中的编辑智能体,理念非常接近,因为Roo Code最初是Cline的一个分支。Roo Code曾侧重于五种独立模式及各自的权限,这对于将小型本地模型的操作限制在安全任务范围内确实是一大优势。但该项目自2026年5月起已停止,因此如今入门时应选择仍在积极维护的Cline;Roo Code团队也正是将用户引导到了Cline。
智能体能否执行命令?+
可以,但每次执行前都需要您的明确确认。使用本地模型时,请始终保留这一手动确认步骤:一条看似合理、却会删除文件夹或修改配置的命令,仍然是破坏性命令,无论它源于模型的好意,还是源于模型刚刚读取的文件中夹带的指令。

这份指南对您有帮助吗?

有反馈、发现了错误,或想补充说明?请告诉我们,让这份指南对每个人都更有帮助。