Skip to main content

codetether_agent/tool/context_summarize/
execute.rs

1//! Tool trait implementation for `context_summarize`.
2
3use super::super::{Tool, ToolResult};
4use super::schema;
5use super::tool_struct::ContextSummarizeTool;
6use anyhow::Result;
7use async_trait::async_trait;
8use serde_json::Value;
9
10#[async_trait]
11impl Tool for ContextSummarizeTool {
12    fn id(&self) -> &str {
13        "context_summarize"
14    }
15    fn name(&self) -> &str {
16        "ContextSummarize"
17    }
18    fn description(&self) -> &str {
19        "Get or produce a cached summary for a turn range."
20    }
21    fn parameters(&self) -> Value {
22        schema::parameters()
23    }
24
25    async fn execute(&self, args: Value) -> Result<ToolResult> {
26        super::run::run(self, args).await
27    }
28}