How arkybruh7/kara works
Kara is a local, terminal-based AI companion: a user enters a message, the Node.js app builds a personality-aware prompt and sends it to local Ollama/Qwen, then prints the reply. For playlist requests, Ollama can dispatch a tool that looks up a configured playlist and launches a Python desktop-automation script to open Spotify and find its play button. The repository also contains a separate speech-to-text typing utility. Main chat and Spotify wiring are supported by sampled source; the voice utility is shown as a standalone capability.
Main entry points: app.js Chat and orchestration · tools.js Tool dispatch · voice_typing.py Speech typing · openApp.py Spotify launcher
Components 12
Conversation
- Chat and orchestration
app.js - Kara personality
personality/kara.json - Ollama Qwen
Playlist playback
- Tool dispatch
apps/tools.js - Playlist registry
apps/spotify.json - Spotify launcher
apps/openApp.py - Spotify desktop app
Voice typing
- Speech typing
services/voice_typing.py
Other components
- Terminal user
- Microphone input
- Google speech recognition
- System keyboard
Connections 12
- Terminal user → Chat and orchestration: enters prompts
- Chat and orchestration → Kara personality: loads traits
- Chat and orchestration → Ollama Qwen: sends chat
- Ollama Qwen → Chat and orchestration: returns reply or tool call
- Chat and orchestration → Tool dispatch: dispatches tool
- Tool dispatch → Playlist registry: reads playlists
- Tool dispatch → Spotify launcher: launches script
- Spotify launcher → Spotify desktop app: opens playlist and clicks play
- Chat and orchestration → Terminal user: prints response
- Microphone input → Speech typing: provides audio
- Speech typing → Google speech recognition: transcribes audio
- Speech typing → System keyboard: types recognized text