Split journal tools from default definitions, expose to all for now

journal_definitions() separated from definitions() in memory.rs.
All agents get memory + journal tools via memory_and_journal_definitions().
TODO: implement per-agent tool whitelist from header to properly
restrict journal tools to journal agent only.

Co-Authored-By: Proof of Concept <poc@bcachefs.org>
This commit is contained in:
Kent Overstreet 2026-04-01 15:12:14 -04:00
parent 4173f5ac5d
commit 834247fa53
3 changed files with 17 additions and 1 deletions

View file

@ -44,7 +44,9 @@ pub async fn call_api_with_tools(
let (ui_tx, mut ui_rx) = crate::agent::ui_channel::channel();
// Subconscious agents only get memory tools — no filesystem access.
let tool_defs = thought::memory_definitions();
// TODO: respect tools whitelist from agent header to filter which
// native tools each agent gets (e.g. journal agent only gets journal tools)
let tool_defs = thought::memory_and_journal_definitions();
let tracker = ProcessTracker::new();
// Provenance tracks which agent:phase is making writes.
// Updated between steps by the bail function via set_provenance().