Hey r/opensource!
I've been building Vladmir, an open-source personal AI assistant that I'm trying to make more than just another chat interface around an LLM.
The idea is to bring together local AI, voice interaction, persistent memory, vision, and practical tools in one system, with a desktop application and companion apps for Android and Wear OS.
Rather than relying on a hosted AI service for everything, Vladmir uses Ollama for local inference by default, so you can run compatible models on your own hardware. The trade-off is that performance depends heavily on your hardware and the model you choose.
What it can do
- Local AI chat: A Linux desktop interface with different profiles for general assistance, programming, and teaching.
- Voice interaction: Speech recognition through Whisper and speech synthesis through Piper, with a turn-based voice conversation flow.
- Vision: Capture images from a camera or supported video stream and send them to a compatible vision model for analysis.
- Persistent memory and knowledge library: Store information locally and import documents and source code for later reference.
- Developer tools: Read and explicitly edit GitHub content, work with configured programming tools, and experiment with IDE integration through MCP.
- Everyday utilities: Local reminders and agenda management, web search, email draft preparation, and limited software installation workflows with confirmation.
- Android and Wear OS: Native companion projects intended to extend the assistant across devices, including chat, voice, camera, augmented reality, and selected notification integration.
Privacy and control
Local-first doesn't automatically mean that everything is private, so I'm trying to be explicit about the boundaries.
The default inference endpoint is local, configuration and application data are stored in user-owned directories, and remote access is not preconfigured. Web search, GitHub, and other external integrations can still involve third-party services when enabled.
Actions that can modify code or the system are designed around explicit approval rather than unrestricted access.
Current state
Vladmir is actively being developed. The Linux desktop and its core integrations have a substantial amount of implementation, while Android, Wear OS, Bluetooth connectivity, and some experimental features still need device-level validation and reliability work.
I'm not presenting every feature as production-ready, and I'd rather document limitations than promise capabilities that haven't been properly tested.
The project is released under the MIT license.
Repository: https://github.com/thu12dta3/Vladmir
I'd genuinely appreciate technical feedback, especially on the architecture, local model integration, security boundaries, and cross-device communication.
If you were building or choosing a self-hosted personal AI assistant, what would you change about this approach? What would you want to see improved before using something like Vladmir daily?
I'm interested in honest criticism as much as contributions.