| description | A complete toolset for working on real codebases - read, write, edit, search, git, lint, test. |
|---|---|
| icon | code |
The coder family is what makes OpenHuman a viable coding partner instead of a chat window that pretends to know the codebase.
| Tool | What it does |
|---|---|
file_read |
Read a file (with line numbers, like cat -n). |
file_write |
Write a new file. |
edit_file |
Targeted edits - match-and-replace with strict uniqueness checks. |
apply_patch |
Apply a unified diff. |
glob_search |
Find files by glob pattern. |
grep |
Ripgrep-style search across the tree. |
list_files |
Walk a directory tree. |
read_diff |
Diff between two files or revisions. |
git_operations |
Status, diff, log, blame, branch, commit. |
run_linter |
Run the project's linter. |
run_tests |
Run the project's test command. |
csv_export |
Export query results as CSV. |
A shell tool plus cat/sed/awk could technically do all of this. The native tools exist because:
- Edits go through a uniqueness check, so the agent can't accidentally clobber the wrong line.
- Reads come back with line numbers the agent can refer to in follow-ups.
- Git operations parse output into structured data, instead of leaving the agent to scrape porcelain.
- Lint and test runs are wired to the project's actual commands, not generic guesses.
Filesystem tools respect a workspace boundary - the agent can't read or write outside it without explicit permission. Same boundary the rest of the app uses for OPENHUMAN_WORKSPACE.
- System & Utilities -
shell,node_exec,npm_execfor the rest of the dev loop. - Agent Coordination -
todo_write,spawn_subagentfor larger refactors.