How richardadeniji/axel works
AXEL is a personal AI assistant with CLI, desktop, and web interfaces; it supports conversational memory, voice interaction, calendar management, and automation/content tools. The principal path is user input through an interface to the agent, which consults memory and an Ollama-backed language model and can dispatch tools before returning a response. Calendar and voice have distinct workflows. The README is empty, and several modules were not sampled, so their documented-by-structure capabilities are shown without speculative call wiring.
Main entry points: core.py AXEL agent · main.py CLI entry · voice_manager.py Voice manager · cli.py Command line
Components 26
User interfaces
- CLI entry
src/main.py - Command line
src/ui/cli.py - Desktop GUI
src/ui/gui.py - Web GUI
src/ui/web_gui.py - Web client
src/ui/static/js/axel.js
Assistant core
- AXEL agent
src/agent/core.py - Ollama client
src/llm/ollama_client.py - Prompt templates
src/llm/prompt_templates.py
Assistant capabilities
- Tool registry
src/automation/tools.py - Content pipeline
src/automation/creator_tools.py - File handling
src/automation/file_handler.py - Video editing
src/automation/video_editor.py - Task manager
src/automation/task_manager.py - Calendar commands
src/main.py - Calendar manager
src/axel_calendar.py - Voice manager
src/voice/voice_manager.py - Wake detection
src/voice/wake_word.py - Speech recognition
src/voice/stt.py - Speech synthesis
src/voice/tts.py
State and storage
- SQLite store
src/memory/sqlite_store.py - Vector store
src/memory/vector_store.py - Knowledge base
src/memory/knowledge_base.py - Local database
data/axel.db - Vector data
data/vectorstore
Other components
- User
- Ollama service
Connections 23
- User → CLI entry: selects interface
- CLI entry → Command line: starts
- CLI entry → Desktop GUI: starts
- CLI entry → Web GUI: starts
- Command line → AXEL agent: submits messages
- Desktop GUI → AXEL agent: submits messages
- Web client → Web GUI: sends requests
- Web GUI → AXEL agent: handles requests
- AXEL agent → Ollama client: requests responses
- Ollama client → Ollama service: generates text
- AXEL agent → Prompt templates: uses templates
- AXEL agent → SQLite store: loads and saves conversations
- AXEL agent → Vector store: reads and saves memories
- SQLite store → Local database: reads and writes
- Calendar commands → Calendar manager: manages events
- Calendar manager → Local database: reads and writes
- AXEL agent → Tool registry: dispatches tools
- AXEL agent → Content pipeline: registers content tools
- Voice manager → Wake detection: starts detection
- Voice manager → Speech recognition: transcribes speech
- Voice manager → Command line: forwards recognized input
- Command line → Voice manager: starts and stops listening
- Vector store → Vector data: reads and writes