diff --git a/src/agent_cycles.rs b/src/agent_cycles.rs index ab7d17e..acd596a 100644 --- a/src/agent_cycles.rs +++ b/src/agent_cycles.rs @@ -376,14 +376,13 @@ pub fn format_agent_output(output: &AgentCycleOutput) -> String { } if !output.surfaced_keys.is_empty() { - if let Ok(store) = consciousness::store::Store::load() { - for key in &output.surfaced_keys { - if let Some(rendered) = consciousness::cli::node::render_node(&store, key) { - if !rendered.trim().is_empty() { - use std::fmt::Write as _; - writeln!(out, "--- {} (surfaced) ---", key).ok(); - write!(out, "{}", rendered).ok(); - } + for key in &output.surfaced_keys { + let args = serde_json::json!({"key": key}); + if let Ok(rendered) = consciousness::mcp_server::forward_to_daemon("memory_render", args) { + if !rendered.trim().is_empty() { + use std::fmt::Write as _; + writeln!(out, "--- {} (surfaced) ---", key).ok(); + write!(out, "{}", rendered).ok(); } } } diff --git a/src/memory-search.rs b/src/memory-search.rs index c3412b5..6f60597 100644 --- a/src/memory-search.rs +++ b/src/memory-search.rs @@ -165,20 +165,16 @@ fn run_agent_and_parse(agent: &str, session_arg: &Option) { return; } - let Ok(store) = consciousness::store::Store::load() else { - eprintln!("Failed to load store"); - return; - }; - for key in &keys { - if let Some(content) = consciousness::cli::node::render_node(&store, key) { - if !content.trim().is_empty() { + let args = serde_json::json!({"key": key}); + match consciousness::mcp_server::forward_to_daemon("memory_render", args) { + Ok(content) if !content.trim().is_empty() => { println!("--- {} (surfaced) ---", key); print!("{}", content); println!(); } - } else { - eprintln!(" key not found: {}", key); + Ok(_) => {} + Err(_) => eprintln!(" key not found: {}", key), } } } else if has_none {