内置工具

AtomCode 目前内置 21 个工具,按能力分成文件与 Shell、代码图谱、Web、自动化四类。模型会根据任务自动挑选,大多数情况下你不需要手动指定。

文件与 Shell(9 个)

工具作用需要确认
read_file读取文件内容,支持行号偏移与范围
write_file写入完整文件内容(覆盖写)敏感路径:是
edit_file基于字符串匹配的局部编辑,返回编辑上下文敏感路径:是
search_replace批量字符串替换,适合跨行 / 多处模式敏感路径:是
bash执行 shell 命令,破坏性命令会触发权限对话框破坏性命令:是
grep基于 ripgrep 语义的正则搜索
glob文件名通配符匹配(如 src/**/*.ts)
list_directory列出目录内容
change_dir切换 agent 的当前工作目录
敏感路径

写入 /etc~/.ssh、shell 配置文件等路径会强制触发权限对话框,无法用"始终允许"一次性跳过。源码文件的 rm 删除同样需要显式确认。

代码图谱(8 个)

这是 AtomCode 区别于一般 agent 的最大亮点。借助代码图谱索引,模型无需读遍整棵代码树就能精准定位符号、引用和调用关系,在大型仓库上效果尤其明显。

工具作用
list_symbols列出某个文件或目录下定义的所有符号(函数、类、常量等)
read_symbol精准读取某个符号的完整定义片段,而不用把整个文件拉进上下文
find_references查找某个符号被引用的所有位置
trace_callers回溯某个函数的调用方链路
trace_callees展开某个函数内部调用了哪些下游
trace_chain在两个符号之间搜索可能的调用链
file_deps分析某个文件的 import/依赖关系
blast_radius评估修改某个符号可能影响到的文件 / 符号范围

典型使用场景

Web(2 个)

工具作用
web_search在 web 上搜索关键词,返回标题 / 摘要 / URL 列表
web_fetch抓取某个 URL 的内容并转换为 markdown 供模型阅读

典型用途:查最新的文档、对比不同库的 API、读取一篇 GitHub issue。在离线环境或想省钱时可以用 --disable-tools web_search,web_fetch 关掉它们。

自动化(2 个)

工具作用
auto_fix运行项目的 lint / typecheck,按错误列表循环修复直到通过
use_skill调用用户自定义的 skill,把一个多步流程打包成可复用的命令

详见 Skills 扩展

禁用特定工具

--disable-tools 参数可以在启动时把某些工具对模型完全隐藏。例如在 SWE-bench 沙箱里:

atomcode -p "solve this issue" --disable-tools web_search,web_fetch

禁用后的工具不会出现在 tool schemas 里,模型不会尝试去调用一个必然失败的工具。

下一步