diff --git a/src/hippocampus/query/parser.rs b/src/hippocampus/query/parser.rs index e755367..e80dd1c 100644 --- a/src/hippocampus/query/parser.rs +++ b/src/hippocampus/query/parser.rs @@ -99,6 +99,8 @@ peg::parser! { / "age:" c:cmp_duration() { Stage::Filter(Filter::Age(c)) } / "key:" g:ident() { Stage::Filter(Filter::KeyGlob(g)) } / "provenance:" p:ident() { Stage::Filter(Filter::Provenance(p)) } + / "not-visited:" a:ident() "," d:integer() { Stage::Filter(Filter::NotVisited { agent: a, duration: d as i64 }) } + / "visited:" a:ident() { Stage::Filter(Filter::Visited { agent: a }) } / "all" { Stage::Generator(Generator::All) } // Graph algorithms / "spread" { Stage::Algorithm(AlgoStage { algo: Algorithm::Spread, params: std::collections::HashMap::new() }) } diff --git a/src/mind/unconscious.rs b/src/mind/unconscious.rs index a26e6ee..983a5db 100644 --- a/src/mind/unconscious.rs +++ b/src/mind/unconscious.rs @@ -111,8 +111,10 @@ impl Unconscious { } agents.sort_by(|a, b| a.name.cmp(&b.name)); + let max_concurrent = crate::config::get().llm_concurrency; + Self { - agents, max_concurrent: 2, + agents, max_concurrent, graph_health: None, last_health_check: None, }