ZIm/crates/assistant_tools/src
tidely 8bec4cbecb
assistant_tools: Reduce allocations (#30776)
Another batch of allocation savings. Noteworthy ones are
`find_path_tool.rs` where one clone of *all* found matches was saved and
`web_tool_search.rs` where the tooltip no longer clones the entire url
on every hover.

I'd also like to propose using `std::borrow::Cow` a lot more around the
codebase instead of Strings. There are hundreds if not 1000+ clones that
can be saved pretty regularly simply by switching to Cow. ´Cow´'s are
likely not used because they aren't compatible with futures and because
it could cause lifetime bloat. However if we use `Cow<'static, str>`
(static lifetime) for when we need to pass them into futures, we could
save a TON of allocations for `&'static str`. Additionally I often see
structs being created using `String`'s just to be deserialized
afterwards, which only requires a reference.

Release Notes:

- N/A
2025-05-30 08:28:22 -07:00
..
copy_path_tool Add copy-path tool (#27371) 2025-03-24 21:21:55 -04:00
create_directory_tool Add Create Directory Tool (#27505) 2025-03-26 11:59:03 -04:00
delete_path_tool Delete tool uses paths instead of globs (#26715) 2025-03-16 11:58:25 +01:00
diagnostics_tool Systematically optimize agentic editing performance (#28961) 2025-04-19 02:47:59 +00:00
edit_agent agent: Fix bug in creating empty files (#31626) 2025-05-28 19:31:54 +00:00
edit_file_tool Fix agent reading and editing files over SSH (#30144) 2025-05-07 17:07:01 +00:00
fetch_tool assistant_tools: Add fetch tool (#26999) 2025-03-18 16:25:51 +00:00
find_path_tool agent: Improve initial file search quality (#29317) 2025-04-23 21:24:41 -03:00
grep_tool Rename regex search tool to grep and accept an include glob pattern (#29100) 2025-04-20 00:53:30 +00:00
list_directory_tool agent: Improve initial file search quality (#29317) 2025-04-23 21:24:41 -03:00
move_path_tool Add move_path tool (#27366) 2025-03-24 14:45:19 +00:00
open_tool Add eval for open_tool (#29801) 2025-05-02 15:56:07 +00:00
read_file_tool Systematically optimize agentic editing performance (#28961) 2025-04-19 02:47:59 +00:00
templates agent: Fix creating files with Gemini (#31439) 2025-05-26 16:36:21 +00:00
terminal_tool agent: Discourage long-running commands (#29627) 2025-04-29 19:21:16 -03:00
thinking_tool Add thinking tool (#26675) 2025-03-14 16:26:22 -04:00
ui agent: Render path search results with ToolCard (#28894) 2025-04-25 14:42:51 -03:00
assistant_tools.rs Rename assistant_settings to agent_settings (#31513) 2025-05-27 15:16:55 +00:00
copy_path_tool.rs Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
create_directory_tool.rs Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
delete_path_tool.rs Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
diagnostics_tool.rs Reuse conversation cache when streaming edits (#30245) 2025-05-08 14:36:34 +02:00
edit_agent.rs Pass up intent with completion requests (#31710) 2025-05-29 20:43:12 +00:00
edit_file_tool.rs Format streamed edits on save (#31623) 2025-05-29 14:33:41 -04:00
fetch_tool.rs assistant_tools: Reduce allocations (#30776) 2025-05-30 08:28:22 -07:00
find_path_tool.rs assistant_tools: Reduce allocations (#30776) 2025-05-30 08:28:22 -07:00
grep_tool.rs Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
list_directory_tool.rs agent: Indiciate files and folders in list_directory (#31448) 2025-05-27 09:26:17 +00:00
move_path_tool.rs Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
now_tool.rs Reuse conversation cache when streaming edits (#30245) 2025-05-08 14:36:34 +02:00
open_tool.rs Reuse conversation cache when streaming edits (#30245) 2025-05-08 14:36:34 +02:00
read_file_tool.rs Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
schema.rs agent: Improve compatibility when using MCP servers with Gemini models (#28700) 2025-04-14 21:55:25 +02:00
templates.rs Introduce a new StreamingEditFileTool (#29733) 2025-05-01 17:37:43 +02:00
terminal_tool.rs assistant_tools: Reduce allocations (#30776) 2025-05-30 08:28:22 -07:00
thinking_tool.rs Reuse conversation cache when streaming edits (#30245) 2025-05-08 14:36:34 +02:00
ui.rs agent: Refine the web search tool call UI (#29190) 2025-04-22 09:51:57 -03:00
web_search_tool.rs assistant_tools: Reduce allocations (#30776) 2025-05-30 08:28:22 -07:00