Tools catalog
When to read this: Look up an LLM tool name, its category, or which source file implements it.
Hand-maintained in scripts/gen-docs-reference.sh; CI diffs it against every
const NAME under crates/chatty-core/src/tools/ (make docs-check-reference),
so a tool cannot be added without a row here. Re-run make docs-gen.
| Tool name | Category | Source module | Notes |
|---|---|---|---|
list_tools | meta | list_tools_tool.rs | Always available |
write_todos | agent | agent_todo_tool.rs | Always available |
update_todo | agent | agent_todo_tool.rs | Always available |
verify_completion | agent | agent_todo_tool.rs | Always available |
read_skill | memory | read_skill_tool.rs | Always available |
list_agents | agents | list_agents_tool.rs | Always available |
invoke_agent | agents | invoke_agent_tool.rs | Always available |
best_of | agents | best_of_tool.rs | A spec with swarm.best_of (the Crosscheck leaders) |
send_message | agents | send_message_tool.rs | Delegated workers only (a broker-made connection); messages the owner |
list_mcp_services | mcp | list_mcp_tool.rs | When MCP enabled |
fetch | web | fetch_tool.rs | HTTP fetch |
read_file | filesystem | filesystem_tool.rs | fs_read |
read_binary | filesystem | filesystem_tool.rs | fs_read |
list_directory | filesystem | filesystem_tool.rs | fs_read |
glob_search | filesystem | filesystem_tool.rs | fs_read |
doc_retriever | search | doc_retriever_tool.rs | CHATTY_ENABLE_DOC_RETRIEVER |
write_file | filesystem | filesystem_write_tool.rs | fs_write + approval |
final_answer | filesystem | filesystem_write_tool.rs | fs_write |
create_directory | filesystem | filesystem_write_tool.rs | fs_write |
delete_file | filesystem | filesystem_write_tool.rs | fs_write + approval |
move_file | filesystem | filesystem_write_tool.rs | fs_write |
apply_diff | filesystem | filesystem_write_tool.rs | fs_write |
shell_execute | shell | shell_tool.rs | approval |
shell_set_env | shell | shell_tool.rs | |
shell_cd | shell | shell_tool.rs | |
shell_status | shell | shell_tool.rs | |
git_status | git | git_tool.rs | |
git_diff | git | git_tool.rs | |
git_log | git | git_tool.rs | |
git_add | git | git_tool.rs | |
git_create_branch | git | git_tool.rs | |
git_switch_branch | git | git_tool.rs | |
git_commit | git | git_tool.rs | |
git_merge | git | git_tool.rs | approval |
search_code | search | search_tool.rs | |
find_files | search | search_tool.rs | |
find_definition | search | search_tool.rs | |
add_attachment | chat | add_attachment_tool.rs | |
read_excel | documents | excel_tool/ | feature: excel |
write_excel | documents | excel_tool/ | feature: excel |
edit_excel | documents | excel_tool/ | feature: excel |
read_docx | documents | docx_tool/ | feature: docx |
write_docx | documents | docx_tool/ | feature: docx |
read_pptx | documents | pptx_tool/ | feature: pptx |
write_pptx | documents | pptx_tool/ | feature: pptx |
pdf_to_image | pdf_to_image_tool.rs | feature: pdf | |
pdf_info | pdf_info_tool.rs | feature: pdf | |
pdf_extract_text | pdf_extract_text_tool.rs | feature: pdf | |
query_data | data | data_query_tool/ | feature: duckdb |
describe_data | data | data_query_tool/ | feature: duckdb |
profile_data | data | data_query_tool/ | feature: duckdb |
file_structure_detector | data | data_query_tool/ | feature: duckdb |
compile_typst | math | typst_tool.rs | feature: math-render |
execute_code | sandbox | execute_code_tool.rs | Monty + Docker fallback |
remember | memory | remember_tool.rs | memory enabled |
save_skill | memory | save_skill_tool.rs | memory enabled |
search_memory | memory | search_memory_tool.rs | memory enabled |
search_web | web | search_web_tool.rs | |
browser_use | web | browser_use_tool.rs | |
daytona_run | sandbox | daytona_tool/ | Daytona cloud sandbox |
publish_wasm_module | modules | publish_module_tool.rs | |
create_chart | viz | chart_tool.rs | Registered via tool_collector |
ask_user | agent | ask_user_tool.rs | Clarifying questions; answered in the UI |
terminal_read | terminal | terminal_read_tool.rs | terminal_access; read-only view of the user’s tmux panes |
terminal_run | terminal | terminal_run_tool.rs | Desktop only; a dock tab shared as Read + run; every command approved by the human, auto-approve never applies |
browser_navigate | web | browser_tools.rs | feature: browser; localhost/file:// by default |
browser_snapshot | web | browser_tools.rs | feature: browser |
browser_screenshot | web | browser_tools.rs | feature: browser; PNG via add_attachment path |
browser_console | web | browser_tools.rs | feature: browser |
browser_network | web | browser_tools.rs | feature: browser |
browser_resize | web | browser_tools.rs | feature: browser |
browser_click | web | browser_tools.rs | feature: browser; by snapshot ref; approval off localhost/workspace |
browser_type | web | browser_tools.rs | feature: browser; by snapshot ref; refuses password/card fields; never submits |