Qoder CLI 通过工具处理本地工作区和外部信息源。工具可以搜索和读取项目内容、修改文件、执行命令、获取网页内容、维护上下文,并通过 MCP 接入外部服务。
工具可以在交互式 TUI 会话和非交互式 Print Mode 中使用。实际可用的工具集合取决于当前会话、已启用的功能、MCP 配置和权限设置。
在 TUI 中使用
Qoder CLI 会使用搜索和探索类工具先理解当前任务,再决定下一步操作。
Qoder CLI 可以读取文件和其他项目资产,为当前请求收集上下文。
当任务需要变更时,Qoder CLI 可以在工作区中创建或修改文件。
文件编辑会经过权限系统。根据权限模式和规则,Qoder CLI 可能直接应用变更、请求确认,或阻止操作。
当任务需要本地执行时,Qoder CLI 可以运行 shell 命令。
当后续工作不依赖命令的即时结果时,Qoder CLI 可以把 shell 命令放到后台运行,让主会话继续处理其他工作。明确要求后台运行的命令无论执行时间长短,都会建立后台任务;任务完成、失败或需要处理时,结果会自动返回所属会话,无需反复询问进度或运行轮询命令。
对于日志、部署状态、测试观察等持续产生事件的场景,Qoder CLI 可以启动事件监控。监控命令每输出一个完整行,就会把该行作为事件通知主会话。监控命令应只输出需要关注的事件,避免直接转发高频完整日志。
在 TUI 中输入
部分工具用于帮助 Qoder CLI 维护当前任务和会话状态。
记忆和 Skills 会为模型提供上下文,但它们不是安全边界。需要强制策略时,请使用权限规则和 Hooks。
当当前环境启用相关能力时,Qoder CLI 可以使用分派和自动化能力。
具体可用范围取决于产品配置、功能开关和当前会话。
Qoder CLI 可以连接 Model Context Protocol(MCP)服务,以使用外部工具和数据源。MCP 服务配置完成后,它们的工具会出现在同一个
工具是否可见和工具是否允许执行是两件事。
示例:
权限模式、规则语法和判定顺序请参考 权限。拦截工具调用的 Hook 用法请参考 Hooks。
/tools 可以查看当前会话可用的工具。
搜索与探索
| 范围 | 说明 |
|---|---|
| 文件 | 在当前工作区中查找文件。 |
| 代码 | 搜索代码、文本和配置文件。 |
| 目录 | 浏览项目结构并定位相关路径。 |
| Web | 当任务需要当前信息或公开资料时搜索网页。 |
| 网页内容 | 获取指定网页的内容。 |
读取项目上下文
| 功能 | 说明 |
|---|---|
| 查看文件 | 读取源代码、文档、配置和其他文本资产。 |
| 读取大文件 | 当文件过大时,只读取相关片段。 |
| 读取文档类资产 | 在支持时读取 PDF 等文档格式。 |
编辑文件
| 功能 | 说明 |
|---|---|
| 修改文件 | 对已有文件进行定向修改。 |
| 创建文件 | 新增源代码、测试、文档或配置等文件。 |
| 编辑 Notebook | 在支持 Notebook 的场景中修改 Notebook 内容。 |
执行命令
| 功能 | 说明 |
|---|---|
| 运行命令 | 执行构建、测试、打包、Git 检查、项目排查或自定义 shell 命令。 |
| 运行长任务 | 跟踪耗时命令,例如测试套件或开发脚本。 |
后台命令与事件监控
当后续工作不依赖命令的即时结果时,Qoder CLI 可以把 shell 命令放到后台运行,让主会话继续处理其他工作。明确要求后台运行的命令无论执行时间长短,都会建立后台任务;任务完成、失败或需要处理时,结果会自动返回所属会话,无需反复询问进度或运行轮询命令。
/tasks,可以查看后台 Shell 和 Subagent 的状态与输出,并停止仍在运行的任务。后台任务结束后,完成通知会回到主会话,由 Qoder CLI 根据结果继续处理。
Shell 命令通常比只读操作风险更高。建议用权限规则允许常规命令,并对敏感命令设置询问或拒绝。
启用 Shell 命令前缀后,Bash 工具会在完整 shell 命令组装完成后通过配置的可执行 wrapper 运行。权限检查和命令展示仍使用原始命令。wrapper 必须执行收到的单个命令参数,并保留进程输入输出和退出状态。
管理上下文
| 功能 | 说明 |
|---|---|
| 跟踪任务 | 在工作过程中维护轻量级计划或任务列表。 |
| 澄清问题 | 当缺少决策或关键信息时向用户提问。 |
| 管理记忆 | 在记忆能力可用时保存长期信息。 |
| 使用 Skills | 在配置后加载特定领域的说明或工作流。 |
| 规划工作 | 当任务需要先分析再执行时进入或退出 Plan Mode。 |
分派与自动化
| 功能 | 说明 |
|---|---|
| Subagents | 将特定工作分派给专门的 Agent。 |
| Workflows | 运行已配置的可重复工作流。 |
| Goals | 跟踪并执行较长周期的目标。 |
| Worktrees | 当需要并行会话时,在独立 Git worktree 中工作。 |
| 定时任务 | 在调度能力启用时创建或管理定时任务。 |
MCP 工具
/tools 视图中,并经过相同的权限系统。
MCP 工具适合接入 Issue 系统、代码托管平台、数据库、浏览器自动化、内部平台或企业自定义服务。
MCP 配置请参考 MCP Servers。
控制工具使用
| 控制项 | 说明 |
|---|---|
--tools | 限制当前会话中可见的工具。 |
--allowed-tools | 预先允许指定工具或工具模式。 |
--disallowed-tools | 阻止指定工具或工具模式。 |
permissions.allow / permissions.ask / permissions.deny | 写在 settings 文件中的持久化权限规则。 |
tools.exclude | 启动时从发现结果中移除工具。 |