For the complete documentation index, see llms.txt. This page is also available as Markdown.

编码器

用于处理真实代码库的一整套工具——读取、写入、编辑、搜索、git、lint、测试。

coder 家族正是让 OpenHuman 成为一个可行的编码伙伴,而不是一个聊天窗口,后者 假装 了解代码库。

该家族中的工具

工具
功能

file_read

读取文件(带行号,例如 cat -n).

file_write

写入新文件。

edit_file

定向编辑——通过匹配并替换,并进行严格的唯一性检查。

apply_patch

应用统一 diff。

glob_search

按 glob 模式查找文件。

grep

全树范围的 Ripgrep 风格搜索。

list_files

遍历目录树。

read_diff

两个文件或版本之间的 diff。

git_operations

状态、diff、日志、blame、分支、提交。

run_linter

运行项目的 linter。

run_tests

运行项目的测试命令。

csv_export

将查询结果导出为 CSV。

为什么这些是原生工具,而不是仅靠 shell

一个 shell 工具再加上 cat/sed/awk 本可以 技术上 完成所有这些工作。之所以存在这些原生工具,是因为:

  • 编辑会经过唯一性检查,因此代理不会不小心覆盖错误的行。

  • 读取结果会带回行号,方便代理在后续操作中引用。

  • Git 操作会把输出解析为结构化数据,而不是让代理去抓取底层 porcelain 输出。

  • linter 和测试运行都接入了项目的实际命令,而不是泛泛的猜测。

工作区范围限制

文件系统工具遵守工作区边界——没有明确许可,代理无法在其外部读取或写入。应用其余部分也使用同一边界,用于 OPENHUMAN_WORKSPACE.

另请参阅

最后更新于