refactor: consolidate hypotheses, agent_signals, and process_logs into action-based smart tools
This commit is contained in:
1 parent
79209da711
commit
3b146f91c2
17 files changed
+438
-359
No files matched your search
+36
-7
@@ -515,8 +515,7 @@ impl MemoryHandler {
|
||||
|
||||
register!(git::GetActiveWorktreeContextHandler);
|
||||
register!(git::QueryGitDiffsHandler);
|
||||
register!(logs::WatchProcessLogsHandler);
|
||||
register!(logs::GetRecentLogsHandler);
|
||||
register!(logs::ProcessLogsHandler);
|
||||
register!(ast::ReadFileSkeletonHandler);
|
||||
register!(ast::ReplaceAstNodeHandler);
|
||||
register!(ast::FindSymbolReferencesHandler);
|
||||
@@ -530,13 +529,11 @@ impl MemoryHandler {
|
||||
register!(graph::SweepGraphHealthHandler);
|
||||
register!(meta::QueryLineageHandler);
|
||||
register!(meta::GetNextActionableTasksHandler);
|
||||
register!(meta::LogHypothesisHandler);
|
||||
register!(meta::QueryHypothesesHandler);
|
||||
register!(meta::HypothesesHandler);
|
||||
register!(meta::GetPreflightContextHandler);
|
||||
register!(graph::ResolveStaleSymbolsHandler);
|
||||
register!(graph::SummarizeSubgraphHandler);
|
||||
register!(meta::BroadcastAgentSignalHandler);
|
||||
register!(meta::QueryAgentSignalsHandler);
|
||||
register!(meta::AgentSignalsHandler);
|
||||
register!(meta::AutoSessionCheckpointHandler);
|
||||
|
||||
Self {
|
||||
@@ -731,13 +728,16 @@ impl MemoryHandler {
|
||||
"log_error_fix" => "ERROR_FIX",
|
||||
"tech_debt" => "TECH_DEBT",
|
||||
"tasks" | "milestones" => "TASK",
|
||||
"handoff_memos" => "STICKY_NOTE",
|
||||
"handoff_memos" => "HANDOFF_MEMO",
|
||||
"manage_checkpoint" => "CHECKPOINT",
|
||||
"manage_subagent_namespace" => "SUBAGENT",
|
||||
"snippets" => "SNIPPET",
|
||||
"search_web" => "WEB_SEARCH",
|
||||
"omni_search" => "OMNI_SEARCH",
|
||||
"environment" => "ENVIRONMENT",
|
||||
"hypotheses" => "HYPOTHESIS",
|
||||
"agent_signals" => "AGENT_SIGNAL",
|
||||
"process_logs" => "PROCESS_LOG",
|
||||
_ => "TOOL",
|
||||
};
|
||||
|
||||
@@ -849,6 +849,35 @@ pub fn format_tool_activity_description(name: &str, args: &serde_json::Value) ->
|
||||
.unwrap_or_default();
|
||||
("Create Entities", names)
|
||||
}
|
||||
"hypotheses" => {
|
||||
let act = args.get("action").and_then(|v| v.as_str()).unwrap_or("manage");
|
||||
let hyp = args
|
||||
.get("hypothesis")
|
||||
.or_else(|| args.get("query"))
|
||||
.and_then(|v| v.as_str())
|
||||
.unwrap_or("");
|
||||
(
|
||||
"Hypotheses",
|
||||
format!("{}: {}", act, hyp).trim_end_matches(": ").to_string(),
|
||||
)
|
||||
}
|
||||
"agent_signals" => {
|
||||
let act = args.get("action").and_then(|v| v.as_str()).unwrap_or("signal");
|
||||
let sender = args.get("sender").and_then(|v| v.as_str()).unwrap_or("");
|
||||
let st = args.get("signal_type").and_then(|v| v.as_str()).unwrap_or("");
|
||||
(
|
||||
"Agent Signals",
|
||||
format!("{}: {} [{}]", act, sender, st).trim_end_matches(": ").to_string(),
|
||||
)
|
||||
}
|
||||
"process_logs" => {
|
||||
let act = args.get("action").and_then(|v| v.as_str()).unwrap_or("logs");
|
||||
let file = args.get("file_path").and_then(|v| v.as_str()).unwrap_or("");
|
||||
(
|
||||
"Process Logs",
|
||||
format!("{}: {}", act, file).trim_end_matches(": ").to_string(),
|
||||
)
|
||||
}
|
||||
_ => return name.to_string(),
|
||||
};
|
||||
if detail.is_empty() {
|
||||
|
||||
Reference in new issue
Block a user