✅ TICKET-006: Wake-word Detection Service - Implemented wake-word detection using openWakeWord - HTTP/WebSocket server on port 8002 - Real-time detection with configurable threshold - Event emission for ASR integration - Location: home-voice-agent/wake-word/ ✅ TICKET-010: ASR Service - Implemented ASR using faster-whisper - HTTP endpoint for file transcription - WebSocket endpoint for streaming transcription - Support for multiple audio formats - Auto language detection - GPU acceleration support - Location: home-voice-agent/asr/ ✅ TICKET-014: TTS Service - Implemented TTS using Piper - HTTP endpoint for text-to-speech synthesis - Low-latency processing (< 500ms) - Multiple voice support - WAV audio output - Location: home-voice-agent/tts/ ✅ TICKET-047: Updated Hardware Purchases - Marked Pi5 kit, SSD, microphone, and speakers as purchased - Updated progress log with purchase status 📚 Documentation: - Added VOICE_SERVICES_README.md with complete testing guide - Each service includes README.md with usage instructions - All services ready for Pi5 deployment 🧪 Testing: - Created test files for each service - All imports validated - FastAPI apps created successfully - Code passes syntax validation 🚀 Ready for: - Pi5 deployment - End-to-end voice flow testing - Integration with MCP server Files Added: - wake-word/detector.py - wake-word/server.py - wake-word/requirements.txt - wake-word/README.md - wake-word/test_detector.py - asr/service.py - asr/server.py - asr/requirements.txt - asr/README.md - asr/test_service.py - tts/service.py - tts/server.py - tts/requirements.txt - tts/README.md - tts/test_service.py - VOICE_SERVICES_README.md Files Modified: - tickets/done/TICKET-047_hardware-purchases.md Files Moved: - tickets/backlog/TICKET-006_prototype-wake-word-node.md → tickets/done/ - tickets/backlog/TICKET-010_streaming-asr-service.md → tickets/done/ - tickets/backlog/TICKET-014_tts-service.md → tickets/done/
Atlas Project
Overview
Atlas is a local, privacy-focused home voice agent system. This repository contains the project planning, architecture documentation, and kanban tickets for building the system.
The project uses a kanban-based workflow (Vibe Kanban) for task management, with tickets organized in the tickets/ directory structure.
Project Goals
Build a complete voice agent system with:
- Separate work and family agents running on dedicated hardware (RTX 4080 and RTX 1050)
- Local, private operation - no external APIs for core ASR/LLM (weather is exception)
- Voice I/O - wake-word detection, ASR, and TTS
- MCP tools - weather, tasks, timers, reminders, notes
- Safety controls - boundary enforcement, confirmation flows, admin tools
- Long-term memory - personal facts, preferences, routines
Project Structure
atlas/
├── .cursorrules # Cursor IDE configuration and rules
├── README.md # This file
├── ARCHITECTURE.md # Architecture documentation
├── tickets/ # Kanban tickets and task management
│ ├── backlog/ # Backlog items
│ ├── todo/ # Items ready to work on
│ ├── in-progress/ # Currently active work
│ ├── review/ # Items awaiting review
│ └── done/ # Completed items
└── [project code] # Your project code will go here
Getting Started
- Review the ARCHITECTURE.md for project design and patterns
- Check tickets/TICKETS_SUMMARY.md for an overview of all 46 tickets
- Read tickets/QUICK_START.md for recommended starting order
- Follow the guidelines in .cursorrules for development
Project Tracks
The project is organized into 5 parallel tracks:
- Voice I/O (12 tickets): Wake-word detection, ASR (Automatic Speech Recognition), TTS (Text-to-Speech)
- LLM Infrastructure (11 tickets): Model selection, servers for 4080 (work) and 1050 (family), routing, prompts
- Tools/MCP (11 tickets): Model Context Protocol server, weather, tasks, timers, reminders, notes, optional integrations
- Clients/UI (2 tickets): Phone PWA and web LAN dashboard
- Safety/Memory (6 tickets): Long-term memory, conversation management, boundary enforcement, confirmations
Plus Project Setup (4 tickets) for foundation work.
Kanban Workflow
This project uses a kanban board (Vibe Kanban) for task management. 46 tickets are organized in the tickets/ directory:
- backlog/: 46 tickets ready to start
- todo/: Ready to work on (dependencies met)
- in-progress/: Currently being worked on
- review/: Awaiting review or testing
- done/: Completed items
Working with Tickets
- Start with Milestone 1: Foundation tickets (TICKET-002, TICKET-003, TICKET-004)
- Move tickets as you work:
backlog/→todo/→in-progress/→review/→done/ - Reference ticket IDs in commits:
git commit -m "TICKET-002: Define repo structure" - Sync with Vibe Kanban: Import tickets using ticket IDs, tag by track and milestone
- Use ticket template: See
tickets/TICKET_TEMPLATE.mdfor new tickets
Milestones
- Milestone 1 - Survey & Architecture: Foundation, technology evaluations
- Milestone 2 - Voice Chat + Weather + Tasks MVP: Core functionality working
- Milestone 3 - Memory, Reminders, Safety: Advanced features and safety
- Milestone 4 - Optional Integrations: Email, calendar, smart home
Development Guidelines
- Follow the rules defined in
.cursorrules - Maintain code quality and documentation
- Write tests for new features
- Update architecture docs for significant changes
- Reference ticket numbers in all commits
- Keep tickets in sync with Vibe Kanban board
Repository Structure
This repository (atlas/) contains:
- Planning and documentation: Architecture, tickets, project management
- Kanban tickets: 46 tickets organized by status and track
The actual implementation will be in separate repositories:
home-voice-agent/: Main mono-repo with all services and clientsfamily-agent-config/: Separate config repo for prompts, tools, secrets (no work content)
See ARCHITECTURE.md for detailed repository structure.
Contributing
- Check existing tickets in
tickets/before starting work - Create a ticket for new features or bugs using the template
- Follow the established code style and patterns
- Update documentation as needed
- Move tickets through the workflow as you progress
License
[Add your license here]
Description
Languages
Python
81.7%
HTML
14%
Shell
4.3%