Vue d'ensemble

Lumena est un assistant IA personnel autonome conçu pour fonctionner 24/7. Elle raisonne, mémorise, agit, apprend et interagit dans le monde réel à travers 5 canaux simultanés, 466 outils natifs et une personnalité stable.

466
Outils natifs
6762
Tests automatisés
0
Failures
8
Providers LLM
5
Canaux
29
Skills installés
8
Modèles LLM
13
Templates documents
77
Endpoints API

Positionnement

La plupart des assistants IA répondent à des questions puis oublient tout. Lumena vit : elle mémorise chaque conversation, prend des initiatives, programme ses propres tâches, surveille les systèmes, publie sur les réseaux sociaux, gère des serveurs, envoie des emails, écrit du code et corrige ses bugs — de manière autonome.

FonctionnalitéLumenaChatGPT / ClaudeAutoGPT / CrewAI
Mémoire persistante vectorielle✓ ChromaDB✗ SessionLimitée
Autonomie 24/7 (daemon)Partielle
Personnalité stable
Multi-canal simultané✓ 5 canaux
466 outils natifsPlugins limitésPartiel
Contrôle complet du PC✓ Souris + clavier
Développement autonome✓ CodeAgentLimité
Multi-LLM fallback auto✓ 8 providersPartiel
Skills créés à la volée
Journal quotidien auto
Documents pro (13 templates)✓ Factures, contrats, devis…
Fine-tuning local LoRA✓ Pipeline → GGUF → Ollama

Installation

Suivez ces étapes pour installer Lumena sur votre machine. Les prérequis sont : Python 3.12 ou supérieur et pip.

Étape 1 : Téléchargement

Clonez le dépôt GitHub :

git clone https://github.com/lumena/lumena.git
cd lumena

Étape 2 : Installation des dépendances

Il est recommandé d'utiliser un environnement virtuel :

python -m venv venv
# Sur Windows : venv\Scripts\activate
# Sur Linux/Mac : source venv/bin/activate
pip install -r requirements.txt

Étape 3 : Configuration initiale

Copiez le fichier de configuration d'exemple et adaptez-le (fichier YAML, le format utilisé par Lumena) :

cp config.example.yaml config.yaml

Étape 4 : Lancement

Pour lancer Lumena :

python -m lumena

Architecture

Stack technique

ComposantTechnologie
LangagePython 3.11+
LLM par défautdeepseek-v3
LLM alternatifsdeepseek, openai, anthropic, google, moonshot, xai, nvidia, ollama (8 modèles)
Mémoire vectorielleChromaDB + Knowledge Graph + BM25
Interface webFastAPI + SPA (HTML/JS vanilla ES modules, Vite build)
MessagerieTelegram Bot API, Discord.py 2.x, Tweepy 4.x
VoixWhisper (STT) + Coqui XTTS / Piper (TTS)
Automatisation webPlaywright stealth v2 (10 techniques anti-détection)
DocumentsWeasyPrint PDF + 13 templates Jinja2
VidéoRemotion 4.x (React TSX → MP4) — rendu Node.js local ou Docker sandbox
Computer UseCascade native (Anthropic→OpenAI→Google) + pywinauto
Qualité coderuff, pytest (6762 tests, 0 failure)
SandboxDocker (auto/always/off), command_sanitizer, file_guardrails

Capacités

Lumena est capable d'effectuer une large gamme de tâches, regroupées en catégories :

Navigation & Recherche

  • Recherche web (DuckDuckGo, Google, Brave) — résultats classés par pertinence
  • Extraction de données structurées (listes, tableaux, articles)
  • Remplissage de formulaires, clics, navigation multi‑onglets
  • Surveillance de pages (diff detection, alertes)

Fichiers & Système

  • Création, édition, suppression, renommage, déplacement
  • Recherche full‑text (ripgrep) + recherche sémantique (vectorielle)
  • Compression, extraction, conversion de format
  • Surveillance de dossiers (file watcher) → actions automatiques

Code & Développement

  • Édition de code avec validation syntaxique (ruff, py_compile)
  • Exécution de scripts Python, Node.js, shell
  • Gestion de projets Git (clone, commit, push, branches, PR)
  • Déploiement web (FTP, SFTP, S3, Cloudflare Pages, Netlify, Vercel)

Emails & Calendrier

  • Envoi d'emails (SMTP, pièces jointes, HTML)
  • Lecture de boîtes mail (IMAP) — tri, classement, répondre
  • Gestion de calendriers (Google Calendar, CalDAV) — événements, rappels
  • Automatisation de sequences de follow‑up

Documents professionnels

  • 36 handlers V2 : factures, devis, contrats, NDA, PO, CV, rapports…
  • 13 templates Jinja2 (assets/templates/) → export PDF WeasyPrint
  • Lecture et résumé de PDF, DOCX, images (OCR)
  • Ingestion dans base de connaissances vectorielle

Sécurité & Réseau

  • Scan de ports, reconnaissance de domaines
  • SSRF guard Playwright (bloque IPs privées, DNS rebinding)
  • Anti-injection shell (command_sanitizer.py)
  • Path traversal guard (file_guardrails.py)
  • Sandbox Docker, retry intra-provider, context overflow guard
  • OSINT (domaines, emails, IPs, Shodan) — 13 outils

Autonomie & Planification

Daemon 24/7 — daemon.py (713L)

Lumena tourne en arrière-plan en permanence. Elle agit sans être sollicitée selon ses tâches CRON, ses objectifs actifs et les événements de ses canaux de communication.

Scheduler CRON — scheduler.py (1 458L)

Parallélisation des tâches non-critiques, setup_default_tasks(), clé d'idempotence handler:window:hash.

TâcheFréquenceDescription
Heartbeat système6h et 18hSanté RAM, disque, providers LLM, pipeline training
Morning briefing Discord10h chaque jourRésumé quotidien sur le serveur Discord
Polling Twitter mentionsToutes les 90sVérification des mentions entrantes

CodeAgent

CodeAgent est le sous-système de développement autonome de Lumena. Il peut modifier n'importe quel fichier du projet, exécuter des tests, et déployer des changements.

Validation syntaxique

validate_python_syntax() — ruff + py_compile après chaque modification

Tests forcés

pytest automatique après 3 modifications sans test (edits_since_last_test)

Auto-reread

Si edit_file échoue ("non trouvé"), relit le fichier et réinjecte le contenu

Compaction mid-loop

>20 messages → résumé head + tail + summary pour garder le contexte

Anti-boucle

Même action 3× → arrêt, changement d'approche automatique

Canaux de communication

Interface Web

SPA complète avec 25+ panels : chat SSE streaming, mémoire, outils, tâches, configuration, logs, émotions, identité, console, éditeur de fichiers, live trace, apprentissage, fine-tuning, Stripe…

FastAPI + HTML/JS vanilla + ES Modules — 14 fichiers JS (6 128L) + 8 fichiers CSS

Telegram

Canal principal de communication. Multi-user via sender_info + tg_contexts. Supporte conversations longues, voix, pièces jointes et toutes les réponses structurées.

telegram_channel.py (1 014L) — Telegram Bot API — run_telegram.py

Discord

Serveur dédié avec administration complète : canaux, rôles, messages programmés, morning briefing quotidien à 10h. 25 handlers V2 dans discord_admin.py.

discord_channel.py (726L) — Discord.py 2.x

API & Webhooks

Lumena expose une API REST complète avec 77 endpoints. Voici les principaux :

EndpointMéthodeDescription
/api/chatPOSTEnvoi d'un message (stream SSE)
/api/memoryGET / POSTRequêtes mémoire vectorielle
/api/toolsGETListe des outils enregistrés
/api/configGET / PUTLecture/écriture fichiers de config
/api/logsGETLogs daemon
/api/healthGETHealth check (sans auth)
/api/tasksGET / POSTGestion des tâches

Robustesse & Qualité

Métriques de qualité

6762
Tests pytest
0
Failures
0
Warnings
0s
Durée suite
CI gate (runs)
0
Packages verrouillés