ai_agent/tools/
monitor.rs1use crate::types::*;
5
6pub const MONITOR_TOOL_NAME: &str = "Monitor";
8
9pub struct MonitorTool;
12
13impl MonitorTool {
14 pub fn new() -> Self {
15 Self
16 }
17
18 pub fn name(&self) -> &str {
19 MONITOR_TOOL_NAME
20 }
21
22 pub fn description(&self) -> &str {
23 "Monitor system resources and performance (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 "Monitor tool is not implemented".to_string(),
41 ))
42 }
43}
44
45impl Default for MonitorTool {
46 fn default() -> Self {
47 Self::new()
48 }
49}