RyeCatcher commited on
Commit
c5fee9e
Β·
verified Β·
1 Parent(s): 9d8ea9c

Upload README.md with huggingface_hub

Browse files
Files changed (1) hide show
  1. README.md +159 -4
README.md CHANGED
@@ -1,10 +1,165 @@
1
  ---
2
  title: Echo
3
- emoji: 🐨
4
- colorFrom: blue
5
- colorTo: blue
6
  sdk: static
7
  pinned: false
 
 
 
 
 
 
 
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
  title: Echo
3
+ emoji: "πŸ€–"
4
+ colorFrom: indigo
5
+ colorTo: purple
6
  sdk: static
7
  pinned: false
8
+ license: mit
9
+ short_description: "A companion robot that remembers you and grows with you"
10
+ tags:
11
+ - reachy_mini
12
+ - reachy_mini_python_app
13
+ - companion
14
+ - memory
15
+ - ai
16
  ---
17
 
18
+ # Reachy Echo
19
+
20
+ A companion robot that remembers you and grows with you.
21
+
22
+ ## What Makes Echo Different
23
+
24
+ Most robot apps treat the robot as a voice interface with decorative movement. Echo is different:
25
+
26
+ | Feature | Traditional | Echo |
27
+ |---------|-------------|------|
28
+ | **Memory** | Forgets everything | Remembers your name, preferences, conversations |
29
+ | **Initiative** | Waits for commands | Greets you, suggests breaks, celebrates wins |
30
+ | **Models** | Single provider | 18+ models via LiteLLM (swap anytime) |
31
+ | **Movement** | Decorative | Communicates emotion and state |
32
+
33
+ ## Quick Start
34
+
35
+ ### Install
36
+
37
+ ```bash
38
+ cd ~/apps/reachy/apps/echo
39
+ pip install -e .
40
+ ```
41
+
42
+ ### Run (Simulation Mode)
43
+
44
+ ```bash
45
+ python -m reachy_mini_echo --sim
46
+ ```
47
+
48
+ Open http://localhost:7861
49
+
50
+ ### Run (Real Robot)
51
+
52
+ With the Reachy daemon running:
53
+ - Echo appears in the Reachy Mini dashboard
54
+ - Or access directly at http://localhost:7861
55
+
56
+ ## Features
57
+
58
+ ### Memory System
59
+
60
+ Echo remembers across sessions:
61
+ - Your name and preferences
62
+ - Past conversations and topics
63
+ - Work patterns and habits
64
+
65
+ Try saying:
66
+ - "My name is Alex"
67
+ - "I'm a software engineer"
68
+ - "What do you know about me?"
69
+
70
+ ### Proactive Behaviors
71
+
72
+ | Behavior | What it does | When |
73
+ |----------|--------------|------|
74
+ | **Morning Greeting** | Personalized hello | First appearance, 6-11am |
75
+ | **Work Break Reminder** | Suggests a stretch | After 2 hours of work |
76
+ | **Build Celebration** | Excited dance | When your code builds |
77
+ | **Build Support** | Sympathetic response | When builds fail |
78
+ | **Return Greeting** | Welcome back | After 30+ min absence |
79
+
80
+ ### Model Selection
81
+
82
+ Switch between 18+ models instantly:
83
+
84
+ | Model | Best for |
85
+ |-------|----------|
86
+ | `llama-3.3-70b-cerebras` | Fast local inference (default) |
87
+ | `claude-opus-4.5-openrouter` | Most capable |
88
+ | `gpt-5.2-openrouter` | Latest GPT |
89
+ | `gemini-3-pro-openrouter` | Multimodal |
90
+ | `qwen-3-235b-cerebras` | Large context |
91
+
92
+ ## Configuration
93
+
94
+ Environment variables (optional):
95
+
96
+ ```bash
97
+ # LiteLLM server (defaults to DGX)
98
+ export LITELLM_URL=http://your-litellm-server:4000
99
+ export LITELLM_API_KEY=your-key
100
+
101
+ # Default model
102
+ export LITELLM_MODEL=llama-3.3-70b-cerebras
103
+ ```
104
+
105
+ ## UI Overview
106
+
107
+ ```
108
+ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
109
+ β”‚ πŸ€– Reachy Echo β”‚
110
+ β”‚ A companion that remembers you and grows with you β”‚
111
+ β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
112
+ β”‚ β”‚ Status: 🟒 Connected β”‚
113
+ β”‚ Conversation β”‚ β”‚
114
+ β”‚ ───────────── β”‚ Model: [dropdown] β”‚
115
+ β”‚ User: Hi there! β”‚ β”‚
116
+ β”‚ Echo: Hello! How are you? β”‚ Memory: β”‚
117
+ β”‚ β”‚ Facts: 3 | Sessions: 5β”‚
118
+ β”‚ β”‚ β”‚
119
+ β”‚ [Type a message...] [Send]β”‚ Proactive Behaviors: β”‚
120
+ β”‚ β”‚ β˜‘ Morning Greeting β”‚
121
+ β”‚ β”‚ β˜‘ Work Break Reminder β”‚
122
+ β”‚ β”‚ β˜‘ Build Celebration β”‚
123
+ β”‚ β”‚ β”‚
124
+ β”‚ β”‚ [Clear] [Forget Me] β”‚
125
+ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
126
+ ```
127
+
128
+ ## Architecture
129
+
130
+ ```
131
+ reachy_mini_echo/
132
+ β”œβ”€β”€ main.py # ReachyMiniEcho app class
133
+ β”œβ”€β”€ providers/ # LLM backends (LiteLLM)
134
+ β”œβ”€β”€ memory/ # SQLite + fact extraction
135
+ └── proactive/ # Trigger/behavior engine
136
+ ```
137
+
138
+ ## Development
139
+
140
+ See `CLAUDE.md` for detailed architecture and development guide.
141
+
142
+ ### Adding Behaviors
143
+
144
+ 1. Create behavior class in `proactive/behaviors.py`
145
+ 2. Implement `execute(echo)` method
146
+ 3. Create trigger in `proactive/triggers.py`
147
+ 4. Register in `proactive/engine.py`
148
+
149
+ ### Memory Fact Extraction
150
+
151
+ Echo automatically extracts facts from conversation:
152
+ - "My name is X" β†’ stores name
153
+ - "I prefer X" β†’ stores preference
154
+ - "I work at X" β†’ stores employer
155
+
156
+ ## Privacy
157
+
158
+ - All data stored locally in `data/memory.db`
159
+ - "Forget Me" button clears personal data
160
+ - No cloud storage of conversations
161
+ - Local models available for full privacy
162
+
163
+ ## License
164
+
165
+ MIT