Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions apps/desktop/src-tauri/src/commands/built_in_tools.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@

use crate::core::built_in_tools::{
self, BashExecutionRegistry, BuiltInBashExecutionRequest, BuiltInBashExecutionResponse,
ComputerActionRequest, ComputerActionResponse, ComputerObservationRequest,
ComputerObservationResponse, ComputerRuntime, ComputerSessionRequest, ComputerSessionResponse,
};
use tauri::State;

Expand All @@ -30,3 +32,30 @@ pub fn built_in_tools_cancel_bash(
) -> Result<bool, String> {
Ok(registry.cancel(&execution_id))
}

/// Start or refresh a native computer-use session.
#[tauri::command]
pub fn built_in_tools_computer_session(
request: ComputerSessionRequest,
runtime: State<'_, ComputerRuntime>,
) -> Result<ComputerSessionResponse, String> {
built_in_tools::computer_session(request, runtime.inner())
}

/// Observe the native desktop surface for a computer-use session.
#[tauri::command]
pub fn built_in_tools_computer_observe(
request: ComputerObservationRequest,
runtime: State<'_, ComputerRuntime>,
) -> Result<ComputerObservationResponse, String> {
built_in_tools::computer_observe(request, runtime.inner())
}

/// Execute one bounded computer-use action and return an auditable receipt.
#[tauri::command]
pub fn built_in_tools_computer_act(
request: ComputerActionRequest,
runtime: State<'_, ComputerRuntime>,
) -> Result<ComputerActionResponse, String> {
built_in_tools::computer_act(request, runtime.inner())
}
3 changes: 3 additions & 0 deletions apps/desktop/src-tauri/src/commands/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,9 @@ pub fn invoke_handler<R: tauri::Runtime>(
paths::get_runtime_info,
built_in_tools::built_in_tools_execute_bash,
built_in_tools::built_in_tools_cancel_bash,
built_in_tools::built_in_tools_computer_session,
built_in_tools::built_in_tools_computer_observe,
built_in_tools::built_in_tools_computer_act,
mcp::mcp_connect_server,
mcp::mcp_disconnect_server,
mcp::mcp_list_tools,
Expand Down
Loading
Loading