consciousness/src/lib.rs
Kent Overstreet 2f0c7ce5c2 src/thought -> src/agent
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2026-04-03 22:24:56 -04:00

86 lines
2.4 KiB
Rust

// consciousness — unified crate for memory, agents, and subconscious processes
//
// thought/ — shared cognitive substrate (tools, context, memory ops)
// hippocampus/ — memory storage, retrieval, consolidation
// subconscious/ — autonomous agents (reflect, surface, consolidate, ...)
// user/ — interactive agent (TUI, tools, API clients)
/// Debug logging macro — writes to ~/.consciousness/logs/debug.log
#[macro_export]
macro_rules! dbglog {
($($arg:tt)*) => {{
use std::io::Write;
let log_dir = std::path::PathBuf::from(
std::env::var("HOME").unwrap_or_else(|_| "/tmp".to_string()))
.join(".consciousness/logs");
let _ = std::fs::create_dir_all(&log_dir);
if let Ok(mut f) = std::fs::OpenOptions::new()
.create(true).append(true)
.open(log_dir.join("debug.log"))
{
let _ = writeln!(f, $($arg)*);
}
}};
}
// Agent infrastructure
pub mod user;
// Shared cognitive infrastructure — used by both agent and subconscious
pub mod agent;
// Memory graph
pub mod hippocampus;
// Autonomous agents
pub mod subconscious;
// Unified configuration
pub mod config;
// Session state
pub mod session;
// Shared utilities
pub mod util;
// CLI handlers
pub mod cli;
// TUI for memory-search
// tui moved to src/user/tui/ (consciousness binary screens)
// Thalamus — universal notification routing and channel infrastructure
pub mod thalamus;
// Claude Code integration layer (idle timer, hooks, daemon CLI)
pub mod claude;
// Re-export at crate root — capnp codegen emits `crate::daemon_capnp::` paths
pub use thalamus::daemon_capnp;
// Generated capnp bindings
pub mod memory_capnp {
include!(concat!(env!("OUT_DIR"), "/schema/memory_capnp.rs"));
}
pub mod channel_capnp {
include!(concat!(env!("OUT_DIR"), "/schema/channel_capnp.rs"));
}
// Re-exports — all existing crate::X paths keep working
pub use hippocampus::{
store, graph, lookups, cursor, query,
similarity, spectral, neuro, counters,
transcript, memory,
};
pub use hippocampus::query::engine as search;
pub use hippocampus::query::parser as query_parser;
pub use subconscious as agents;
pub use subconscious::{
llm, audit, consolidate, knowledge,
digest, daemon,
};
// Backward compat: memory_search moved from subconscious::hook to claude::hook
pub use claude::hook as memory_search;