Spaces:
Running
Running
File size: 1,624 Bytes
8c6aa6d 85195d1 8c6aa6d 85195d1 8c6aa6d 85195d1 8c6aa6d 85195d1 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | ---
title: Mood Engine
emoji: π
colorFrom: purple
colorTo: blue
sdk: static
pinned: false
short_description: "Full emotion system with personality presets"
tags:
- reachy_mini
- reachy_mini_python_app
---
# Mood Engine ππ€
Full emotion state machine for Reachy Mini with 6 base emotions, compound emotions, personality presets, micro-expressions, mood decay, and configurable web UI.
## Emotions
**Base:** neutral, happy, sad, curious, surprised, angry
**Compound:** bittersweet, awestruck, nervous, frustrated, intrigued, content
## Personality Presets
| Personality | Style |
|------------|-------|
| π± Shy | Subtle movements, slow transitions |
| π¦ Bold | Exaggerated movements, fast transitions |
| π Playful | Bouncy movements, quick changes |
## Features
- Smooth emotion transitions with natural durations
- Micro-expressions (random subtle twitches every 3-8s)
- Mood decay toward neutral over time
- Emotion memory (history of transitions)
- Compound emotions via blending
- Personality modifiers affect intensity, speed, and idle behavior
- REST API for control
## API (port 8042)
```bash
# Set emotion
curl -X POST http://localhost:8042/emotion -H "Content-Type: application/json" -d '{"emotion": "happy", "intensity": 0.8}'
# Set compound emotion
curl -X POST http://localhost:8042/emotion -d '{"emotion": "awestruck"}'
# Change personality
curl -X POST http://localhost:8042/personality -d '{"personality": "playful"}'
# Get current state
curl http://localhost:8042/state
```
## Requirements
- `numpy`
## Install & Run
```bash
pip install .
reachy-mini run mood_engine
```
|