Core Components
This document describes the core components of OpenHuman and their interactions.
Architecture Overview
User Interface → Agent Core → Memory System → Tool Layer
↑ ↓ ↓ ↓
Web/CLI Rust Core SQLite Third-party APIs
Component Details
1. Rust Core
Rust Core is the core engine of the system, responsible for:
- Agent lifecycle management
- Task scheduling and execution
- Tool call orchestration
- Memory tree read/write
2. Memory System
The memory system includes two storage types:
- SQLite Database (
chunks.db) - Structured memory storage - Markdown Files (
wiki/) - Obsidian-compatible plain text storage
3. Tool Layer
The tool layer connects to third-party services:
- Native Tools: File operations, shell, git
- Integrated Tools: Gmail, Slack, Notion, etc.
- API Tools: Web Search, Web Scraper
4. Learning Layer
The learning layer handles automatic memory management:
- Importance evaluation
- Memory compression
- Association discovery
Data Flow
Input → Parsing → Memory Retrieval → Agent Processing → Tool Call → Response
↓
Memory Storage (if important)
Next Steps
- Architecture Overview - System architecture diagram
- Data Flow - Data processing flow