mirror of
https://github.com/outbackdingo/optimclaw.git
synced 2026-08-26 15:40:18 +00:00
Implements persistent memory for agents with hybrid search: - Database-backed workspace with PostgreSQL (not filesystem) - Memory documents: MEMORY.md, daily logs, identity files - Chunked content with FTS (tsvector) + vector (pgvector) indexes - Reciprocal Rank Fusion (RRF) for hybrid search combining BM25 and semantic - Memory tools: memory_search, memory_write, memory_read - Proactive heartbeat system for periodic execution (30 min default) - OpenAI embeddings provider (text-embedding-3-small) Key patterns from OpenClaw: - "Memory is files, not RAM" - explicit persistence required - Two-tier memory: daily logs (raw) + curated MEMORY.md - Session isolation via user_id/agent_id scoping Co-Authored-By: Claude Opus 4.5 <[email protected]>
23 lines
599 B
Rust
23 lines
599 B
Rust
//! Core agent logic.
|
|
//!
|
|
//! The agent orchestrates:
|
|
//! - Message routing from channels
|
|
//! - Job scheduling and execution
|
|
//! - Tool invocation with safety
|
|
//! - Self-repair for stuck jobs
|
|
//! - Proactive heartbeat execution
|
|
|
|
mod agent_loop;
|
|
mod heartbeat;
|
|
mod router;
|
|
mod scheduler;
|
|
mod self_repair;
|
|
mod worker;
|
|
|
|
pub use agent_loop::Agent;
|
|
pub use heartbeat::{HeartbeatConfig, HeartbeatResult, HeartbeatRunner, spawn_heartbeat};
|
|
pub use router::{MessageIntent, Router};
|
|
pub use scheduler::Scheduler;
|
|
pub use self_repair::{RepairResult, RepairTask, SelfRepair, StuckJob};
|
|
pub use worker::Worker;
|