# Konan — Assistant IA Personnel Konan est un assistant IA personnel style JARVIS, 100% local, accessible via Telegram et via une interface vocale directe (micro/enceintes). ## Architecture ``` Telegram / Micro | bot.py <──> Ollama (LLM local) | ┌───┴───────────────────────────────┐ │ Agents : konan / coder / │ │ reviewer / architect / analyst │ └───────────────────────────────────┘ | Memoire JSON | Google Calendar/Gmail Rappels | Meteo / News / Recherche web Git | Monitoring serveur Vision | API HTTP (port 8765) ``` ## Prerequis - Debian/Ubuntu (ou Docker) - Python 3.11+ - 4 Go RAM minimum (8 Go recommande) - Microphone + enceintes (pour l'interface vocale) - Token Telegram Bot (via @BotFather) - Credentials Google OAuth (optionnel, pour Calendar + Gmail) ## Installation rapide (Docker) ```bash # 1. Cloner / copier les fichiers git clone konan && cd konan # 2. Configurer le token Telegram dans bot.py # Ligne : TELEGRAM_TOKEN = "TON_TOKEN" # 3. Lancer docker compose up -d # 4. Tirer les modeles LLM (a faire une seule fois) docker exec konan-ollama ollama pull qwen2.5:3b docker exec konan-ollama ollama pull qwen2.5-coder:3b # 5. Voir les logs docker compose logs -f konan-bot ``` ## Installation manuelle (sans Docker) ```bash # Copier tous les fichiers dans ~/agent/ cp bot.py konan_voice.py ~/agent/ # Lancer le script d'installation bash install.sh ``` ## Transfert vers un nouveau serveur ```bash # Sur l'ancien serveur — copier les donnees scp -r ~/agent/ user@NOUVEAU_SERVEUR:~/ scp -r ~/.ollama/ user@NOUVEAU_SERVEUR:~/ # modeles LLM (optionnel, ~4 Go) # Sur le nouveau serveur — reinstaller bash ~/agent/install.sh ``` ## Interface vocale PC (Windows) Installe les dependances : ``` pip install sounddevice scipy openai-whisper requests keyboard pyttsx3 ``` Lance : ``` python konan_client.py ``` Maintiens **Espace** pour parler, relache pour envoyer. ## Interface vocale directe (sur le serveur) ```bash cd ~/agent && venv/bin/python3 konan_voice.py ``` Parle naturellement — Konan detecte automatiquement ta voix et repond a voix haute. ## Commandes Telegram | Commande | Description | |----------|-------------| | `/start` | Demarrer / aide | | `/agents` | Liste des agents disponibles | | `/setnom Prenom` | Definir ton prenom | | `/setprojet NomProjet` | Ajouter un projet | | `/profil` | Voir ton profil | | `/monitoring` | Etat du serveur (CPU, RAM, disque) | | `/rappel 30m Texte` | Programmer un rappel | | `/rappels` | Voir les rappels actifs | | `/briefing HH:MM` | Programmer un briefing matinal | | `/meteo` | Meteo actuelle | | `/news` | Actualites du jour | | `/recherche Requete` | Recherche web | | `/note Texte` | Sauvegarder une note | | `/notes` | Voir toutes les notes | | `/chercher Mot` | Rechercher dans la memoire | | `/repos` | Lister les repos Git | | `/clone URL` | Cloner un repo | | `/calendrier` | Evenements Google Calendar | | `/mails` | Mails non lus Gmail | | `/google_connect` | Connecter Google | | `/reset` | Reinitialiser la conversation | ## Structure des fichiers ``` ~/agent/ bot.py # Bot Telegram principal konan_voice.py # Interface vocale serveur konan_client.py # Interface vocale PC Windows reminders.json # Rappels persistes briefing_config.json # Config briefing matinal google_credentials.json # Credentials OAuth Google google_token.json # Token Google (apres auth) memory/ # Conversations et profils par utilisateur voices/ # Modeles de voix Piper repos/ # Repos Git clones ``` ## Modeles LLM utilises | Modele | Usage | Taille | |--------|-------|--------| | qwen2.5:3b | Conversation generale (Konan) | ~2 Go | | qwen2.5-coder:3b | Code (Coder, Reviewer) | ~2 Go | ## Ajouter un GPU Si ton nouveau serveur a un GPU Nvidia, decommente la section `deploy` dans `docker-compose.yml` — les reponses passeront de ~30s a ~2s. ## Variables d'environnement (Docker) | Variable | Defaut | Description | |----------|--------|-------------| | `OLLAMA_URL` | `http://ollama:11434/api/chat` | URL du serveur Ollama | | `OLLAMA_GENERATE_URL` | `http://ollama:11434/api/generate` | URL generation Ollama |