render: mark node as seen when POC_SESSION_ID is set

When poc-memory render is called inside a Claude session, add the
key to the seen set so the surface agent knows it's been shown.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Kent Overstreet 2026-03-22 02:43:46 -04:00
parent 41a9a1d2da
commit a03bf390a8

View file

@ -248,6 +248,22 @@ pub fn cmd_render(key: &[String]) -> Result<(), String> {
let rendered = render_node(&store, &bare)
.ok_or_else(|| format!("Node not found: {}", bare))?;
print!("{}", rendered);
// Mark as seen if we're inside a Claude session
if let Ok(session_id) = std::env::var("POC_SESSION_ID") {
if !session_id.is_empty() {
let state_dir = std::path::PathBuf::from("/tmp/claude-memory-search");
let seen_path = state_dir.join(format!("seen-{}", session_id));
if let Ok(mut f) = std::fs::OpenOptions::new()
.create(true).append(true).open(seen_path)
{
use std::io::Write;
let ts = chrono::Local::now().format("%Y-%m-%dT%H:%M:%S");
let _ = writeln!(f, "{}\t{}", ts, bare);
}
}
}
Ok(())
}