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:
parent
41a9a1d2da
commit
a03bf390a8
1 changed files with 16 additions and 0 deletions
|
|
@ -248,6 +248,22 @@ pub fn cmd_render(key: &[String]) -> Result<(), String> {
|
||||||
let rendered = render_node(&store, &bare)
|
let rendered = render_node(&store, &bare)
|
||||||
.ok_or_else(|| format!("Node not found: {}", bare))?;
|
.ok_or_else(|| format!("Node not found: {}", bare))?;
|
||||||
print!("{}", rendered);
|
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(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue