ZIm/crates
David Soria Parra 8a96ea25c4
context_servers: Support tools (#19548)
This PR depends on #19547 

This PR adds support for tools from context servers. Context servers are
free to expose tools that Zed can pass to models. When called by the
model, Zed forwards the request to context servers. This allows for some
interesting techniques. Context servers can easily expose tools such as
querying local databases, reading or writing local files, reading
resources over authenticated APIs (e.g. kubernetes, asana, etc).

This is currently experimental. 

Things to discuss
* I want to still add a confirm dialog asking people if a server is
allows to use the tool. Should do this or just use the tool and assume
trustworthyness of context servers?
* Can we add tool use behind a local setting flag?

Release Notes:

- N/A

---------

Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
2024-10-28 10:37:58 -04:00
..
activity_indicator lsp: Show error message in read only buffer (#19063) 2024-10-11 12:33:08 +02:00
anthropic Switch to Anthropic -latest tags (#19615) 2024-10-23 15:13:52 -04:00
assets add ui::Vector and separate images from icons (#17815) 2024-09-13 17:44:16 -04:00
assistant context_servers: Support tools (#19548) 2024-10-28 10:37:58 -04:00
assistant_slash_command assistant: Update SlashCommand trait with streaming return type (#19652) 2024-10-23 21:26:50 -04:00
assistant_tool assistant: Add basic tool invocation (#17368) 2024-09-04 14:32:20 -04:00
audio Update Rust crate rodio to 0.19.0 (#17389) 2024-09-16 21:55:32 -06:00
auto_update ssh remoting: Use matching versions of remote server binary (#19740) 2024-10-25 16:27:36 +02:00
breadcrumbs Add missing shortcuts in tooltips (#18282) 2024-09-27 11:06:48 +02:00
call Remove dev servers (#19638) 2024-10-24 12:14:03 -06:00
channel Remove hosted projects (#19754) 2024-10-27 19:44:21 -07:00
cli Remove dev servers (#19638) 2024-10-24 12:14:03 -06:00
client Remove dev servers (#19638) 2024-10-24 12:14:03 -06:00
clock Fix bugs with applying hunks from branch buffers (#18721) 2024-10-07 16:28:33 -07:00
collab Remove hosted projects (#19754) 2024-10-27 19:44:21 -07:00
collab_ui Remove hosted projects (#19754) 2024-10-27 19:44:21 -07:00
collections gpui: Add SVG rendering to img element and generic asset cache (#9931) 2024-03-29 17:09:49 -07:00
command_palette chore: Fix several style lints (#17488) 2024-09-06 11:58:39 +02:00
command_palette_hooks chore: Fix several style lints (#17488) 2024-09-06 11:58:39 +02:00
context_servers context_servers: Support tools (#19548) 2024-10-28 10:37:58 -04:00
copilot Support .editorconfig (#19455) 2024-10-21 13:05:30 +03:00
db chore: Fix some violations of 'needless_pass_by_ref_mut' lint (#18795) 2024-10-07 01:29:58 +02:00
dev_server_projects/src Remove dev servers (#19638) 2024-10-24 12:14:03 -06:00
diagnostics Allow editor blocks to replace ranges of text (#19531) 2024-10-25 12:29:25 +02:00
docs_preprocessor Don't rely on relative path for docs preprocessor (#16883) 2024-08-26 11:43:13 -04:00
editor windows: Fix more windows platform test (#19802) 2024-10-27 19:15:23 +02:00
evals Restore HTTP client transition, but use reqwest everywhere (#19055) 2024-10-11 14:58:58 -07:00
extension Add language toolchains (#19576) 2024-10-28 15:34:03 +01:00
extension_api zed_extension_api: Use v0.2.0 WIT types (#17802) 2024-09-13 14:49:50 -04:00
extension_cli Restore HTTP client transition, but use reqwest everywhere (#19055) 2024-10-11 14:58:58 -07:00
extensions_ui Add settings to remote servers, use XDG paths on remote, and enable node LSPs (#19176) 2024-10-15 23:32:44 -07:00
feature_flags /auto (#16696) 2024-09-13 13:17:49 -04:00
feedback Stop leaking isahc assumption (#18408) 2024-09-26 14:01:05 -06:00
file_finder Fix ssh project history (#19683) 2024-10-24 21:49:07 +03:00
file_icons chore: Clean up allocs around project panel (#15422) 2024-07-29 14:21:41 +02:00
fs Add support for git branches on remote projects (#19755) 2024-10-27 15:50:54 -07:00
fsevent Retain run loop (#11241) 2024-04-30 23:31:59 -06:00
fuzzy Improve slash commands (#16195) 2024-08-13 23:06:07 -07:00
git Add support for git branches on remote projects (#19755) 2024-10-27 15:50:54 -07:00
git_hosting_providers chore: Fix some violations of 'needless_pass_by_ref_mut' lint (#18795) 2024-10-07 01:29:58 +02:00
go_to_line More git hunk highlighting fixes (#18459) 2024-09-27 13:48:37 -07:00
google_ai Stop leaking isahc assumption (#18408) 2024-09-26 14:01:05 -06:00
gpui outline panel: Add indent guides (#19719) 2024-10-28 09:54:18 +01:00
gpui_macros add ui::Vector and separate images from icons (#17815) 2024-09-13 17:44:16 -04:00
html_to_markdown chore: Fix several style lints (#17488) 2024-09-06 11:58:39 +02:00
http_client Add settings to remote servers, use XDG paths on remote, and enable node LSPs (#19176) 2024-10-15 23:32:44 -07:00
image_viewer image viewer: Reuse existing tabs (#19717) 2024-10-25 09:34:50 +02:00
indexed_docs chore: Fix several style lints (#17488) 2024-09-06 11:58:39 +02:00
inline_completion_button Support .editorconfig (#19455) 2024-10-21 13:05:30 +03:00
install_cli Fix flickering (#9012) 2024-03-11 10:45:57 +01:00
journal chore: Fix several style lints (#17488) 2024-09-06 11:58:39 +02:00
language Add language toolchains (#19576) 2024-10-28 15:34:03 +01:00
language_model context_servers: Support tools (#19548) 2024-10-28 10:37:58 -04:00
language_selector use ssh lsp store (#17655) 2024-09-10 15:51:01 -04:00
language_tools lsp_log: Add server capabilities view (#19448) 2024-10-23 12:53:49 +02:00
languages Add language toolchains (#19576) 2024-10-28 15:34:03 +01:00
live_kit_client chore: Fix several style lints (#17488) 2024-09-06 11:58:39 +02:00
live_kit_server Restore HTTP client transition, but use reqwest everywhere (#19055) 2024-10-11 14:58:58 -07:00
lsp Fix a few Windows tests (#19773) 2024-10-26 03:32:22 +03:00
markdown SSH Remoting: Fix yes/no/fingerprint prompt (#19526) 2024-10-21 15:28:22 -06:00
markdown_preview markdown preview: Ignore inline HTML tags in text (#19804) 2024-10-27 14:34:59 +01:00
media Update Rust crate bindgen to 0.70.0 (#17024) 2024-08-28 22:12:49 -07:00
menu open picker (#14524) 2024-07-15 17:04:15 -06:00
multi_buffer vim: Copy comment to new lines with o/O (#19766) 2024-10-25 16:47:44 -06:00
node_runtime Make python run local worktree LSPs (#18353) 2024-09-25 12:45:41 -07:00
notifications Pass Summary::Context to Item::summarize (#18510) 2024-09-29 10:30:48 -06:00
ollama Fix read timeout for ollama (#18417) 2024-09-27 00:36:17 -06:00
open_ai Stop leaking isahc assumption (#18408) 2024-09-26 14:01:05 -06:00
outline More git hunk highlighting fixes (#18459) 2024-09-27 13:48:37 -07:00
outline_panel outline panel: Add indent guides (#19719) 2024-10-28 09:54:18 +01:00
paths Support .editorconfig (#19455) 2024-10-21 13:05:30 +03:00
picker Rework file picker for SSH modal (#19020) 2024-10-15 12:38:03 +02:00
prettier Support .editorconfig (#19455) 2024-10-21 13:05:30 +03:00
project Add language toolchains (#19576) 2024-10-28 15:34:03 +01:00
project_panel Restore horizontal scrollbar checks (#19767) 2024-10-26 21:57:22 +03:00
project_symbols Fix renames over language server for SSH remoting (#17897) 2024-09-16 16:20:17 -06:00
proto Add language toolchains (#19576) 2024-10-28 15:34:03 +01:00
quick_action_bar Add missing shortcuts in tooltips (#18282) 2024-09-27 11:06:48 +02:00
recent_projects Add support for git branches on remote projects (#19755) 2024-10-27 15:50:54 -07:00
refineable Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
release_channel chore: Fix several style lints (#17488) 2024-09-06 11:58:39 +02:00
remote WIP: ssh remoting: Add upload_binary field to SshConnections (#19748) 2024-10-25 17:32:54 -06:00
remote_server Add language toolchains (#19576) 2024-10-28 15:34:03 +01:00
repl Allow editor blocks to replace ranges of text (#19531) 2024-10-25 12:29:25 +02:00
reqwest_client reqwest_client: Fix socks proxy settings (#19123) 2024-10-18 09:57:00 -07:00
rich_text Disable definition lists in Markdown (#17648) 2024-09-10 11:16:27 -04:00
rope Pass Summary::Context to Item::summarize (#18510) 2024-09-29 10:30:48 -06:00
rpc Add support for git branches on remote projects (#19755) 2024-10-27 15:50:54 -07:00
search project_search: Fix message displayed when no results are found (#19108) 2024-10-15 13:41:51 -04:00
semantic_index semantic_index: Disable embeddings index for non-staff (#19618) 2024-10-23 12:34:51 -04:00
semantic_version Extract SemanticVersion into its own crate (#9956) 2024-03-29 12:11:57 -04:00
session chore: Fix some violations of 'needless_pass_by_ref_mut' lint (#18795) 2024-10-07 01:29:58 +02:00
settings Add support for git branches on remote projects (#19755) 2024-10-27 15:50:54 -07:00
settings_ui chore: Fix several style lints (#17488) 2024-09-06 11:58:39 +02:00
snippet Correct escaping in snippets (#14912) 2024-07-22 00:57:34 +02:00
snippet_provider chore: Fix some violations of 'needless_pass_by_ref_mut' lint (#18795) 2024-10-07 01:29:58 +02:00
snippets_ui Add snippet commands (#18453) 2024-10-02 13:27:16 +02:00
sqlez Restore HTTP client transition, but use reqwest everywhere (#19055) 2024-10-11 14:58:58 -07:00
sqlez_macros Compare migrations formatted uniformly (#18760) 2024-10-05 12:58:45 +03:00
story chore: Fix several style lints (#17488) 2024-09-06 11:58:39 +02:00
storybook project panel: Add indent guides (#18260) 2024-10-24 13:07:20 +02:00
sum_tree Pass Summary::Context to Item::summarize (#18510) 2024-09-29 10:30:48 -06:00
supermaven Cap the size of the Supermaven states buffer (#19246) 2024-10-23 10:36:14 +03:00
supermaven_api chore: Fix several style lints (#17488) 2024-09-06 11:58:39 +02:00
tab_switcher tab_switcher: Use git-aware colors for file icons (#18733) 2024-10-04 10:37:41 -04:00
task Fix remoting things (#19587) 2024-10-23 00:14:43 -07:00
tasks_ui Do not allow [re]running ssh tasks when not connected to the server (#19306) 2024-10-16 22:57:39 +03:00
telemetry_events collab: Remove dependency on X11 (#19079) 2024-10-11 13:28:34 -04:00
terminal ssh remoting: Fix wrong working directory for SSH terminals (#19672) 2024-10-24 13:52:26 +02:00
terminal_view ssh remoting: Fix wrong working directory for SSH terminals (#19672) 2024-10-24 13:52:26 +02:00
text Restructure assistant edits to show all changes in a proposed-change editor (#18240) 2024-10-17 13:18:13 -04:00
theme Update outline panel representation when a theme is changed (#19747) 2024-10-25 22:04:02 +03:00
theme_importer chore: Another round of style lints fixes (#17519) 2024-09-07 02:36:55 +02:00
theme_selector settings_ui: Add theme settings controls (#15115) 2024-07-24 16:25:52 -04:00
time_format chore: Fix several style lints (#17488) 2024-09-06 11:58:39 +02:00
title_bar Add support for git branches on remote projects (#19755) 2024-10-27 15:50:54 -07:00
toolchain_selector Add language toolchains (#19576) 2024-10-28 15:34:03 +01:00
ui outline panel: Add indent guides (#19719) 2024-10-28 09:54:18 +01:00
ui_input Rename ui_text_field crate to ui_input (#13949) 2024-07-08 17:05:30 -04:00
ui_macros Add ui_macros crate & DerivePathStr derive macro (#17811) 2024-09-13 16:45:16 -04:00
util Add support for git branches on remote projects (#19755) 2024-10-27 15:50:54 -07:00
vcs_menu Add support for git branches on remote projects (#19755) 2024-10-27 15:50:54 -07:00
vim vim: Copy comment to new lines with o/O (#19766) 2024-10-25 16:47:44 -06:00
welcome Add settings to remote servers, use XDG paths on remote, and enable node LSPs (#19176) 2024-10-15 23:32:44 -07:00
workspace Add language toolchains (#19576) 2024-10-28 15:34:03 +01:00
worktree Add support for git branches on remote projects (#19755) 2024-10-27 15:50:54 -07:00
zed Add language toolchains (#19576) 2024-10-28 15:34:03 +01:00
zed_actions Add settings to remote servers, use XDG paths on remote, and enable node LSPs (#19176) 2024-10-15 23:32:44 -07:00