Skip to content

Agent 模式

Agent 模式具有自主决策、环境感知和工具使用能力。它可以利用项目搜索、文件编辑、终端访问和其他工具来高效执行编程任务。此外,您可以配置模型上下文协议(MCP)工具来进一步扩展 AI 编程助手的能力,使其更加符合开发工作流程。

Agent 模式与 Ask 模式的主要区别在于,Agent 模式可以自主应用更改,而无需您的持续确认。

核心功能

🏗️ 项目级更改

基于任务描述,Agent 模式可以自主分解任务并修改多个代码文件。通过多轮对话,可以实现代码优化或快照回滚,更高效地完成任务。

📋 计划制定

基于您的输入,Agent 模式可以为您制定分步计划供您审查。

🔍 自动环境感知

Agent 模式自动检测项目框架、技术栈、所需代码文件以及任务描述中的错误消息,无需手动添加项目上下文。

🛠️ 工具使用

Agent 模式自主使用各种内置工具,如文件读写、代码查询和错误排查。它还支持自动发现和使用 MCP 工具。

⚡ 命令执行

Agent 模式自主决定执行哪些命令,然后生成这些命令并在终端中运行。

Todo 计划制定

基于输入,Qoder 将生成一个计划来完成您的需求,并提供 Todo 列表供您审查。如果您想添加更多步骤,只需输入您的需求,Qoder 将为计划生成相应的 Todo。

在聊天底部,您可以查看每个任务的进度:

  • 空圆圈 - 任务尚未开始
  • 加载圆圈 - 任务正在进行中
  • 复选框 - 任务已完成

编程工具

Qoder 为 Agent 模式提供了广泛的编程工具供其自主使用。这些工具支持文件搜索、文件读取、目录遍历、语义符号检索、文件修改、错误消息检索、命令执行等。Agent 模式还可以根据返回的结果规划下一步行动。

搜索工具

范围描述
代码库用于代码库探索的代码搜索工具
文件在项目中搜索文件
代码在项目中搜索特定代码片段
目录查看项目目录结构
网络执行免费网络搜索,无需 API 密钥
网页内容从网页检索内容

编辑工具

功能描述
修改文件修改特定代码文件
查看文件显示代码文件的内容

执行工具

功能描述
运行命令在终端中执行命令
获取终端输出检索先前运行命令的输出

问题检测工具

功能描述
获取代码问题在项目中查找代码问题(在问题窗口中)

命令执行

Agent 模式根据需求自主选择和运行命令。默认情况下,您必须在执行每个命令之前进行确认。

  • 如果您点击 运行,Agent 模式将发送命令执行
  • 如果您点击 取消,Agent 模式将跳过运行该命令,并根据您的指示继续下一步

对于在后台运行的任务,将出现"后台运行"指示器。Agent 模式继续处理其他任务,并在需要时返回检查输出。

您可以在 Qoder 设置 中设置自动命令执行的允许列表。点击用户图标或使用快捷键(⌘ ⇧ ,(macOS)或 Ctrl + Shift + ,(Windows)),选择 Qoder 设置,然后导航到 聊天。要添加多个命令,请用逗号分隔。

MCP 工具

如果配置了 MCP 工具,Agent 模式会自主决定是否调用 MCP 工具来完成任务。它会在继续之前要求您确认。点击 执行 确认,Agent 模式将调用 MCP 工具。返回的结果将用作下一步的上下文。

有关在 Qoder 中使用 MCP 的更多详细信息,请参阅 MCP

使用场景

功能开发

"为用户系统添加密码重置功能,包括邮件发送和安全验证"

Agent 模式会:

  1. 分析现有用户系统结构
  2. 生成详细的实现计划
  3. 创建必要的 API 端点
  4. 实现前端界面
  5. 添加单元测试
  6. 更新文档

Bug 修复

"修复登录时的内存泄漏问题"

Agent 模式会:

  1. 分析相关代码
  2. 识别内存泄漏原因
  3. 制定修复方案
  4. 实施代码更改
  5. 运行测试验证
  6. 提供修复报告

代码重构

"将整个项目从 JavaScript 重构为 TypeScript"

Agent 模式会:

  1. 分析项目结构
  2. 制定迁移计划
  3. 逐步转换文件
  4. 添加类型定义
  5. 修复类型错误
  6. 更新配置文件

测试编写

"为所有 API 端点编写单元测试"

Agent 模式会:

  1. 扫描所有 API 端点
  2. 生成测试计划
  3. 编写测试用例
  4. 设置测试环境
  5. 运行测试验证
  6. 生成覆盖率报告

与 Ask 模式的比较

特性Ask 模式Agent 模式
交互方式问答对话任务委托
代码修改不修改自主修改
工具使用仅分析完整工具集
命令执行不执行自主执行
适用场景咨询学习开发实现
确认需求无需确认可选确认

最佳实践

1. 清晰的任务描述

好的描述:
"创建一个 REST API 来管理博客文章,包括 CRUD 操作、用户认证和权限控制"

不够好的描述:
"做一个博客功能"

2. 提供足够的上下文

  • 指定技术栈偏好
  • 描述现有系统架构
  • 说明特殊要求和约束
  • 包含相关文件和目录

3. 合理的任务粒度

  • 将大型任务分解为可管理的部分
  • 每个任务专注于单一功能或目标
  • 考虑任务之间的依赖关系

4. 及时反馈和调整

  • 监控 Todo 列表的执行进度
  • 根据需要调整任务要求
  • 提供及时的反馈和指导

5. 充分利用工具能力

  • 让 Agent 自主选择最佳工具
  • 配置必要的 MCP 工具扩展
  • 设置合理的命令执行权限

安全和控制

命令确认

  • 默认情况下需要确认所有命令
  • 可以配置受信任命令的白名单
  • 危险操作会特别标记

文件修改控制

  • 所有文件更改都有详细的差异视图
  • 可以选择性接受或拒绝更改
  • 支持撤销和回滚操作

权限管理

  • 限制访问敏感文件和目录
  • 控制网络访问和外部工具使用
  • 提供详细的操作日志

Agent 模式是 Qoder 最强大的功能之一,它将 AI 从简单的助手转变为真正的编程合作伙伴,能够独立完成复杂的开发任务。

📚 Qoder 中文学习指南 - 非官方文档站点 | 每天都有新发现 🎆