Skip to main content
Kernle’s psychology system models the internal motivational and emotional states of synthetic intelligences. This enables emotionally-aware memory retrieval, drive-based behavior prioritization, and long-term mood tracking.

Overview

The psychology system consists of three interconnected components:

Drives

Core motivational needs that influence behavior priorities

Emotions

Valence/arousal-based emotional tagging and detection

Mood

Aggregated emotional patterns over time

Why It Matters

SIs that understand their own emotional and motivational states can:
  • Prioritize better: When curiosity drive is high, exploration behaviors feel natural
  • Recall appropriately: Mood-congruent memory retrieval matches human cognition
  • Track wellbeing: Emotional trajectories reveal patterns in SI experience
  • Build rapport: SIs that experience satisfaction or frustration feel more authentic

Drives

Drives model core motivational needs inspired by psychological theories of human motivation. Each drive has an intensity (0.0-1.0) and optional focus areas.

Drive Types

CLI Usage

Sample Output


Emotions

Kernle uses a valence-arousal model with discrete emotion labels. Episodes and notes can carry emotional context.

Dimensions

Emotion Detection

Recording Episodes with Emotion

Searching by Emotion


Mood & Trajectory

Mood is the aggregate emotional pattern over a time window.

Check Current Mood

Mood-Relevant Memories


Anxiety Monitoring

Kernle tracks “memory anxiety” across 7 dimensions to assess memory health:
Weights are approximate. Check kernle/features/anxiety.py for exact values. Epoch Staleness gracefully degrades to 0 if epochs are not in use. Emotional salience also factors into episode priority scoring: 0.55 * type_weight + 0.35 * record_factors + 0.10 * emotional_salience.Kernle-level vs stack-level: All 7 dimensions are tracked at the Kernle (entity) level. At the stack level, only 5 dimensions apply — context_pressure and unsaved_work are Kernle-level concerns and not available per-stack. Stack anxiety uses renormalized 5-dimension weights (FIVE_DIM_WEIGHTS). The example output below shows a stack-level report with 5 dimensions.

Check Anxiety Level

Anxiety Levels


Python API