diff --git a/src/subconscious/knowledge.rs b/src/subconscious/knowledge.rs index 984ec9b..c97482e 100644 --- a/src/subconscious/knowledge.rs +++ b/src/subconscious/knowledge.rs @@ -294,11 +294,16 @@ fn run_one_agent_inner( _llm_tag: &str, log: &(dyn Fn(&str) + Sync), ) -> Result { - let tools_desc = if def.tools.is_empty() { - "all tools".into() + let all_tools = crate::thought::memory_and_journal_definitions(); + let effective_tools: Vec = if def.tools.is_empty() { + all_tools.iter().map(|t| t.function.name.clone()).collect() } else { - def.tools.join(", ") + all_tools.iter() + .filter(|t| def.tools.iter().any(|w| w == &t.function.name)) + .map(|t| t.function.name.clone()) + .collect() }; + let tools_desc = effective_tools.join(", "); let n_steps = agent_batch.steps.len(); for key in &agent_batch.node_keys {