diff --git a/src/user/subconscious.rs b/src/user/subconscious.rs index 41c0824..c332ce6 100644 --- a/src/user/subconscious.rs +++ b/src/user/subconscious.rs @@ -223,10 +223,26 @@ impl SubconsciousScreen { agent.context.try_lock().ok() .map(|ctx| { + let mut views = Vec::new(); + views.push(section_to_view("System", ctx.system())); + views.push(section_to_view("Identity", ctx.identity())); + views.push(section_to_view("Journal", ctx.journal())); + + // Conversation: skip to fork point for subconscious agents let conv = ctx.conversation(); - let view = section_to_view("Conversation", conv); - let fork = fork_point.min(view.children.len()); - view.children.into_iter().skip(fork).collect() + let conv_view = section_to_view("Conversation", conv); + let fork = fork_point.min(conv_view.children.len()); + let conv_children: Vec = conv_view.children + .into_iter().skip(fork).collect(); + views.push(SectionView { + name: format!("Conversation ({} entries)", conv_children.len()), + tokens: conv_children.iter().map(|c| c.tokens).sum(), + content: String::new(), + children: conv_children, + status: String::new(), + }); + + views }) .unwrap_or_default() }