Skip to main content

ai_agent/tools/
send_user_file.rs

1// Source: /data/home/swei/claudecode/openclaudecode/src/tools/SendUserFileTool/prompt.ts
2//! SendUserFile tool - returns null (feature not implemented)
3
4use crate::types::*;
5
6/// SendUserFile tool name (from TypeScript prompt.ts)
7pub const SEND_USER_FILE_TOOL_NAME: &str = "send_user_file";
8
9/// SendUserFile tool - placeholder for sending user files
10/// Feature-gated (KAIROS) in TypeScript
11pub struct SendUserFileTool;
12
13impl SendUserFileTool {
14    pub fn new() -> Self {
15        Self
16    }
17
18    pub fn name(&self) -> &str {
19        SEND_USER_FILE_TOOL_NAME
20    }
21
22    pub fn description(&self) -> &str {
23        "Send a file from the user to the agent (not implemented)"
24    }
25
26    pub fn input_schema(&self) -> ToolInputSchema {
27        ToolInputSchema {
28            schema_type: "object".to_string(),
29            properties: serde_json::json!({}),
30            required: None,
31        }
32    }
33
34    pub async fn execute(
35        &self,
36        _input: serde_json::Value,
37        _context: &ToolContext,
38    ) -> Result<ToolResult, crate::error::AgentError> {
39        Err(crate::error::AgentError::ToolNotImplemented(
40            "SendUserFile tool is not implemented".to_string(),
41        ))
42    }
43}
44
45impl Default for SendUserFileTool {
46    fn default() -> Self {
47        Self::new()
48    }
49}