EMOS v0.6.0
EMOS v0.6.0 — Built-in Local Models & Native Install Hardening
EMOS v0.6.0 focuses on offline resilience and installation reliability. Robots can now fall back to built-in local models when remote servers are unavailable — no cloud access, no external dependencies, just one line of code. The native installer and CLI have also been substantially hardened.
Built-in Local Models
EmbodiedAgents now ships with lightweight models that run directly on-device. No model server required.
| Component | Local Model | Framework | Default Checkpoint |
|---|---|---|---|
| LLM | LocalLLM | llama-cpp-python | Qwen3 0.6B (GGUF) |
| VLM | LocalVLM | llama-cpp-python | Moondream2 (GGUF) |
| SpeechToText | LocalSTT | sherpa-onnx | Whisper tiny.en |
| TextToSpeech | LocalTTS | sherpa-onnx | Kokoro EN |
| Vision | LocalVision | onnxruntime | DEIM detector |
Models are auto-downloaded from HuggingFace on first use. GPU-accelerated variants available for llama-cpp-python and onnxruntime.
Zero-Config Fallback
Two lines turn any remote-backed component into a self-healing one:
switch_to_local = Action(method=llm_component.fallback_to_local)
llm_component.on_component_fail(action=switch_to_local, max_retries=3)If the cloud API drops, the component automatically switches to its built-in local model and keeps running. Works for LLM, VLM, STT, and TTS components.
Alternatively, enable local models directly in config with enable_local_model=True, or point to a custom checkpoint via local_model_path.
CLI Self-Update
emos update now checks for newer CLI releases on GitHub and replaces its own binary before updating the stack. No more re-running the install script to get CLI fixes.
Native Install Improvements
The native installer (emos install --mode native) received significant hardening:
- Two-phase colcon build matching the Docker build pattern — localization dependencies first, then EMOS packages
- Submodule handling — proper
--recurse-submoduleson clone andsubmodule updateon pull - Package validation — verifies
package.xmlexists before attempting build - kompass-core GPU install integrated into the native flow
Enhanced emos status
Native mode status now performs deep health checks:
- Verifies Python package imports (
ros_sugar,agents,kompass,kompass_core) inside the ROS environment - Lists installed ROS packages (
automatika_ros_sugar,automatika_embodied_agents,kompass,kompass_interfaces) - Clear per-package pass/fail output
Docker Images
Local model dependencies (llama-cpp-python, sherpa-onnx, onnxruntime, huggingface-hub) are now pre-installed in all EMOS Docker images. Multi-arch (amd64 + arm64) for Humble, Jazzy, and Kilted:
docker pull ghcr.io/automatika-robotics/emos:jazzy-latestCI
New native-install.yml workflow tests the full native installation pipeline across Humble, Jazzy, and Kilted on every push to stack/.
Stack Updates
- EmbodiedAgents: Local model support (LLM, VLM, STT, TTS, Vision), think-token stripping, developer docs
- Kompass: v0.4.1, developer docs reorganization
Links
- Documentation: emos.automatikarobotics.com
- Quick Start: Installation Guide
- Discord: discord.gg/B9ZU6qjzND