filter-semantic
Apply a natural-language predicate to each item in a list and return the items that match (or, with mode: "exclude", the items that don't).
Status: the tool exists in src/tools/ but is not yet exposed via the chat ReAct catalog. The list-shape input convention hasn't been settled (chat ReAct passes strings as $stepN bindings; the OODA executor passed Collection IDs). When wired, the args contract above will be revised to match the chosen shape.
Predicate guidance
- Semantic:
"has a positive tone","contains code or implementation details" - Boolean:
"mentions safety AND published after 2024" - Numeric / date:
"price under $50","earlier than 2020"
Phrase predicates to describe what to match. Use mode: "exclude" instead of writing negative predicates ("does NOT contain X").
Why this is different from assess
assessoperates on one text, returns one bool.filter-semanticoperates on many texts, returns the subset that match.
One tool call vs N tool calls for the same job.