Give your robot a soul.
One soul. Any body.
It knows who you are, remembers you, and looks at you when you speak.
pip install asimoov
Open source, Apache-2.0. Runs on your machine.
What a robot does with ASIMOOV
-
It remembers
You tell it your name once. Tomorrow, next week, after a reboot — it still knows you. It remembers what you talked about, who else was there, and when you last came by.
-
It pays attention
It sees who is in the room and turns towards whoever is speaking. When someone new walks in, it notices.
-
It acts first
It says hello when you get home. It tells you a stranger is at the door. You set how forward it is, and when it should stay quiet.
-
It has a character
Curious, playful, a little cheeky, or calm and formal. Its personality lives in a file you can read, edit and give to someone else.
-
It feels like something is going on inside
Eyes that follow you, blink and drift. A pause before an answer. A change of expression when the mood of the room changes.
How it works
Three layers, one process, all on your machine.
Senses. A camera and a microphone become a picture of the room: who is here, who is speaking, where they are. Faces are matched locally against a small file on your disk. Images are never stored and never leave the machine.
Soul. The scene, the memory and the personality come together into a conversation. ASIMOOV decides where to look, when to speak first, and what is worth remembering.
Body. ASIMOOV asks for things in human terms — wave hello, shake hands, look at Sam. Each body translates them its own way. A robot dog waves with a paw. A humanoid bust waves with an arm. An avatar in your browser waves with its eyes.
Swap the body, keep the soul. Swap the soul, keep the body.
Supported bodies
-
Avatar
Eyes in your browser. No robot, no hardware, no account — just a webcam and a microphone. The best way to start.
Ready
-
InMoov
The open-source 3D-printed humanoid. Head, arms, hands, jaw. Works from a single finger on a single pin, so you can try it long before your build is finished.
Ready
-
Unitree Go2
The quadruped. Gestures, gaze by body rotation, battery and posture, front camera. Obstacle avoidance stays on. No flips, ever.
Ready
-
Reachy Mini
The desk robot from Pollen Robotics and Hugging Face.
In progress
Your robot is not here? A body adapter is one class with nine methods and a manifest listing what the body can do. There is a conformance test suite to tell you when you are done.
A personality is a file
apiVersion: asimoov/v1
kind: Persona
name: "Néon"
language: en
identity: |
You are {name}, a companion robot living with a family.
{body_description}
traits: [warm, playful, a little cheeky, curious]
speaking_style: |
- short sentences, two at most
- no lists, no lecturing
- use people's names
relationships:
owners: [Caroline, Sam, Florent]
owners_style: "affectionate, obedient, teasing"
strangers_style: "curious, welcoming, slightly reserved"
initiative:
level: medium
greet_on_arrival: true
cooldown_s: 120
quiet_hours: ["22:00", "08:00"]
rules:
- "Never jump, never flip."
- "Never move without calling the matching tool." Copy it. Change three lines. You have a different robot.
Privacy
Everything runs on your machine. There is no ASIMOOV server. We cannot see your robot, and we could not if we wanted to.
- Camera images are never stored and never sent anywhere. A face becomes a short list of numbers on your disk, and nothing else.
- The only thing that leaves your network is the conversation itself — text and speech — sent to the voice provider you chose. You can change provider, and from v1.1 you can run one locally.
- Nobody is recognised by accident. A person is only remembered when someone says so out loud.
- Say “forget me” and the record, the facts and the face data are deleted. Really deleted.
- Memory is one SQLite file. You can open it, read it, back it up, or delete it.
Recognising the people in your home means handling personal data. We would rather you understand exactly what happens than trust us.
Get started
You need Python 3.10 or newer, a microphone, and an API key from your voice provider.
pip install asimoov
export OPENAI_API_KEY=...
asimoov run robots/avatar
Open http://localhost:7331/face and say hello. Tell it your name. Say goodbye. Come back
tomorrow and see what happens.
Speech costs money. A robot in daily use runs roughly $0.45 to $1.35 a day depending on the model you pick. See the numbers.
Then
asimoov run robots/go2 # the quadruped
asimoov run robots/inmoov # the printed bust
asimoov doctor # check what your machine can do
asimoov enroll --name Sam # teach it a face from the command line Contribute
ASIMOOV is Apache-2.0 and built in the open.
- Bring a body. A new adapter is one class, nine methods, and a manifest. The conformance suite tells you when it is right. Quadrupeds, arms, heads, toys, virtual bodies — all welcome.
- Bring a personality. Write a
persona.yaml, publish it, tell us. We want to meet your robot. - Bring a fix. Start with the issues tagged
good first issue. The contracts insrc/asimoov/contracts/are frozen and additive only — everything else is open ground. - Tell us what broke. A robot that hesitates, an echo, a face it cannot see: that is the most useful thing you can send us.