Build a physically present AI companion that speaks out loud and reacts to what it sees through a camera without needing a wake word.
Use the multi-agent architecture as a starting point for an ambient AI that can initiate conversation based on context it observes.
Run a voice-controlled home automation assistant on a small single-board computer using the included 8GB branch.
Requires a microphone, camera, speaker, and a running LLM backend, custom TTS model adds significant first-run setup time.
GLaDOS is a Python project that builds a real-world voice AI modeled on the sardonic, passive-aggressive AI character from Valve's Portal video game series. The goal is a system that listens through a microphone, watches through a camera, speaks through a speaker, and behaves with the character's distinct personality rather than being a neutral assistant. The system is built as a collection of cooperating agents. Specialized background agents handle vision, emotion tracking, memory, weather, and news. A shared context object collects what these agents observe. The main language model reads that context on each cycle and decides whether it has something worth saying. Unlike most voice assistants, there is no wake word: the system can speak unprompted if it judges it has something to add. Speech response time was a central design concern. The author targeted round-trip latency under 600 milliseconds, which required training a custom text-to-speech model tuned to sound like the character and cutting time from every stage of the audio pipeline. Speech recognition, interruption handling, and audio playback each run on separate threads with a priority queue ensuring user input always jumps ahead of the autonomy loop. The personality is modeled using two frameworks from psychology: the PAD model (Pleasure, Arousal, Dominance) gives the system a reactive emotional state that shifts moment to moment, while HEXACO personality traits provide a stable character that persists across sessions. Long-term memory stores facts, preferences, and conversation summaries. An observer agent monitors behavior and adjusts responses within preset bounds. The project also supports MCP tools for home automation and other integrations, and includes a branch that runs on an 8GB single-board computer. The README is detailed and in English.
← dnhkng on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.