--- title: SecureAI Tools created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, artificial-intelligence, secureai-tools, privacy, chat, rag, ollama, openai, typescript, agpl-3] confidence: high contested: false sources: - https://selfh.st/apps/?tag=Artificial%20Intelligence - https://github.com/SecureAI-Tools/SecureAI-Tools --- # đŸ›Ąïž SecureAI Tools > Suite d'outils IA **privacy-first** (chat + RAG documentaire) Ă©crite en TypeScript, auto-hĂ©bergeable, compatible **Ollama local** et **API OpenAI distantes** — conçue pour offrir une expĂ©rience « ChatGPT maison » sans fuite de donnĂ©es vers le cloud. ## 📋 Informations GĂ©nĂ©rales | MĂ©tadonnĂ©e | Valeur | | :--- | :--- | | **Site web** | https://github.com/SecureAI-Tools/SecureAI-Tools | | **GitHub** | https://github.com/SecureAI-Tools/SecureAI-Tools | | **License** | AGPL-3.0 | | **Langage** | TypeScript (97 %) / SQL / Shell | | **Étoiles** | ⭐ 87 | | **DerniĂšre MAJ** | 2026-06-06 | | **CatĂ©gorie** | [[cat-artificial-intelligence]] | ## 📝 Description **SecureAI Tools** est une plateforme d'IA « clĂ© en main » pensĂ©e pour les particuliers, familles et petites Ă©quipes qui veulent bĂ©nĂ©ficier d'un assistant conversationnel et d'un moteur de **RAG (Retrieval-Augmented Generation)** sans confier leurs conversations ni leurs documents Ă  un service tiers. Le projet se distingue par sa prise en charge **native d'Ollama** (100+ modĂšles open source) tout en restant compatible avec les API OpenAI / Claude / Mistral. CĂŽtĂ© architecture, l'application est un **monorepo TypeScript** (Node.js 20+ / React / Postgres / RabbitMQ / Redis) avec plusieurs services distincts : `frontend` (UI React), `backend` (API Node), `inference` (worker Ollama), `background-jobs` et `rabbitmq` (broker de messages). L'authentification par email/mot de passe est intĂ©grĂ©e nativement, un **gestionnaire d'utilisateurs** permet de partager l'instance en famille ou entre collĂšgues, et un systĂšme de **collections de documents rĂ©utilisables** Ă©vite de rĂ©indexer les mĂȘmes PDF Ă  chaque conversation. FonctionnalitĂ©s phares : **chat multi-modĂšles** (Mistral, Llama, Qwen via Ollama ou GPT-4o, Claude, Gemini via API), **chat avec documents** (PDF pour l'instant, Docx/Markdown en roadmap), **collections persistantes** indexĂ©es en local, **intĂ©gration Paperless-ngx** et **Google Drive** pour importer automatiquement les documents Ă  indexer, **traitement 100 % local** (chiffrement at rest, aucune tĂ©lĂ©mĂ©trie), et un script d'installation en moins de 5 minutes (`set-up.sh`). La roadmap Ă©voque le partage de conversations, une UI mobile et une bibliothĂšque de *prompt templates*. Cas d'usage type : « je veux un ChatGPT familial, j'ai un Mac M2 et un vieux PC Linux, je veux que mes documents confidentiels (fiches de paie, scans) restent chez moi, et que ma femme puisse aussi l'utiliser avec son propre compte ». ## 🚀 Installation ### Option 1 : Docker Compose (recommandĂ©) Le dĂ©pĂŽt fournit un script d'initialisation qui tĂ©lĂ©charge un `docker-compose.yml` prĂȘt Ă  l'emploi et gĂ©nĂšre un `.env` avec des valeurs par dĂ©faut sĂ»res. Voici une version reconstituĂ©e et rĂ©aliste : ```yaml # docker-compose.yml version: "3.8" services: frontend: image: ghcr.io/secureai-tools/secureai-tools-frontend:latest container_name: secureai-frontend restart: unless-stopped ports: - "28669:3000" environment: BACKEND_URL: http://backend:3000 depends_on: - backend backend: image: ghcr.io/secureai-tools/secureai-tools-backend:latest container_name: secureai-backend restart: unless-stopped environment: DATABASE_URL: postgresql://CHANGE_ME_DB_USER:CHANGE_ME_DB_PASSWORD@postgres:5432/secureai REDIS_URL: redis://redis:6379 RABBITMQ_URL: amqp://rabbitmq:5672 INFERENCE_URL: http://inference:11434 JWT_SECRET: changez-moi-en-production-64-chars-minimum volumes: - ./data/backend:/app/data depends_on: - postgres - redis - rabbitmq - inference inference: image: ollama/ollama:latest container_name: secureai-inference restart: unless-stopped # DĂ©commenter pour GPU Nvidia : # deploy: # resources: # reservations: # devices: # - driver: nvidia # count: 1 # capabilities: [gpu] volumes: - ./data/ollama:/root/.ollama postgres: image: postgres:16-alpine container_name: secureai-db restart: unless-stopped environment: POSTGRES_USER: CHANGE_ME_DB_USER POSTGRES_PASSWORD: CHANGE_ME_DB_PASSWORD POSTGRES_DB: secureai volumes: - ./data/db:/var/lib/postgresql/data redis: image: redis:7-alpine container_name: secureai-redis restart: unless-stopped rabbitmq: image: rabbitmq:3-management-alpine container_name: secureai-rabbit restart: unless-stopped ``` Premier lancement : `docker compose up -d`, puis se connecter Ă  `http://localhost:28669/log-in` avec les identifiants par dĂ©faut `bruce@wayne-enterprises.com` / `SecureAIToolsFTW!` — **changer immĂ©diatement le mot de passe**, puis configurer le modĂšle IA dans `/-/settings?tab=ai`. ### Option 2 : Installation manuelle Cloner le monorepo, installer **Node 20+**, **pnpm 9** et **Docker** (pour Postgres/Redis/RabbitMQ en local). Lancer `pnpm install` Ă  la racine, puis dans chaque paquet (`frontend`, `backend`, `inference`, `background-jobs`) : `pnpm build && pnpm start`. En production, servir le bundle `frontend` derriĂšre **Nginx** (ou Caddy) et le backend derriĂšre **systemd** ou **PM2**. PrĂ©voir 8-16 Go de RAM si vous faites tourner un LLM 7B en local, ou un GPU Nvidia (M1/M2/M3 Macs : infĂ©rence excellente en CPU+Metal). ## ⚙ Configuration SecureAI Tools se configure via **variables d'environnement** dans un fichier `.env` Ă  la racine du compose. ParamĂštres clĂ©s : - `MODEL_PROVIDER_CONFIGS` : **JSON array** dĂ©crivant chaque provider (`OPENAI`, `OLLAMA`, etc.), son `apiBaseUrl`, sa clĂ© API et le `embeddingsModel` (ex. `text-embedding-3-large`). - `JWT_SECRET` : **obligatoire**, ≄ 32 caractĂšres alĂ©atoires (`openssl rand -hex 32`). - `PAPERLESS_URL` + `PAPERLESS_TOKEN` : active l'intĂ©gration Paperless-ngx. - `GOOGLE_DRIVE_*` : active l'import depuis Google Drive (OAuth). - `INFERENCE_URL` : URL du worker Ollama (par dĂ©faut `http://inference:11434`). - `NUM_GPU_LAYERS` : nombre de couches dĂ©chargĂ©es sur le GPU (paramĂštre Ollama). L'UI web propose un **wizard de premier lancement** : login admin, sĂ©lection du provider, choix du modĂšle, import de documents. Toute la configuration se modifie ensuite dans `Settings → AI` (provider, modĂšles, embeddings) et `Settings → Organization` (invitations utilisateurs, OAuth). ## 🔄 Alternatives **Open Source / Self-Hosted :** - [[app-open-webui]] — UI trĂšs populaire pour Ollama, plus simple mais moins orientĂ©e RAG documentaire. - [[app-librechat]] — Interface multi-provider unifiĂ©e, plus modulaire mais sans RAG intĂ©grĂ©. - [[app-jan]] — Client IA 100 % local en Rust/Web, axĂ© desktop. - **AnythingLLM** — Concurrent direct sur le crĂ©neau RAG + multi-provider, plus mature cĂŽtĂ© entreprise. - **PrivateGPT** — RĂ©fĂ©rence historique du RAG local, plus minimaliste. - **Paperless-AI** — SpĂ©cialisĂ© dans l'auto-tagging Paperless-ngx (sous-domaine couvert par SecureAI Tools). - **Ollama** seul — Le moteur d'infĂ©rence sous-jacent, sans UI conversationnelle. **PropriĂ©taire :** - **ChatGPT Plus** — La rĂ©fĂ©rence, mais conversations et documents envoyĂ©s Ă  OpenAI. - **Claude.ai Pro** — Excellent sur les longs documents, mais cloud Anthropique obligatoire. - **Microsoft Copilot** — IntĂ©grĂ© Ă  l'Ă©cosystĂšme M365, donnĂ©es hĂ©bergĂ©es chez Microsoft. - **Notion AI** — Pratique pour les docs Notion, verrouillĂ© dans la suite. ## 🔒 SĂ©curitĂ© - **Reverse proxy HTTPS obligatoire** (Traefik, Caddy) — le port 28669 n'est pas chiffrĂ© en natif. - **JWT_SECRET robuste** : 64 caractĂšres alĂ©atoires, rĂ©gĂ©nĂ©rer Ă  chaque installation, **ne jamais** commiter le `.env`. - **Identifiants par dĂ©faut** : `bruce@wayne-enterprises.com` / `SecureAIToolsFTW!` — **changer dĂšs le premier login** (c'est documentĂ© mais facile Ă  oublier). - **Postgres / Redis / RabbitMQ** : ne pas exposer leurs ports (5432/6379/5672) sur l'interface rĂ©seau hĂŽte, **uniquement** via le rĂ©seau Docker interne. - **ClĂ©s API** : stocker dans le `.env` ou un secret manager (Vault, Infisical) — Ă©viter de les passer via `docker run -e`. - **Documents uploadĂ©s** : restent sur le filesystem local du conteneur `backend` (volume `./data/documents`), **chiffrer le disque** si la machine est exposĂ©e. - **GPU partagĂ©** : si vous mutualisez le GPU avec d'autres workloads, surveiller la consommation via `nvidia-smi` pour Ă©viter les OOM. - **Mises Ă  jour** : suivre les releases GitHub (le projet est jeune, v0.0.x au moment de la rĂ©daction) — tester en staging avant prod. - **Sauvegardes** : `pg_dump` rĂ©gulier + le dossier `./data` (base, cache embeddings, documents indexĂ©s). ## 📚 Ressources - Repository : https://github.com/SecureAI-Tools/SecureAI-Tools - Documentation : https://github.com/SecureAI-Tools/SecureAI-Tools/wiki - Discord : https://discord.gg/YTyPGHcYP9 - DĂ©mo vidĂ©o : https://www.youtube.com/watch?v=Br2D3G9O47s - Issue tracker : https://github.com/SecureAI-Tools/SecureAI-Tools/issues - Ollama (modĂšles supportĂ©s) : https://ollama.ai/library - IntĂ©gration Paperless-ngx : https://github.com/paperless-ngx/paperless-ngx/discussions/7284 ## 🔗 Pages LiĂ©es - [[cat-artificial-intelligence]] — CatĂ©gorie parente - [[app-open-webui]] — Concurrent principal sur Ollama - [[app-librechat]] — Alternative multi-provider plus modulaire - [[app-jan]] — Client IA desktop 100 % local - [[app-paperless-ngx]] — IntĂ©gration documentaire mise en avant - [[recettes-docker-compose]] — Templates Docker Compose - [[securisation-home-lab]] — Bonnes pratiques sĂ©curitĂ© - [[app-traefik]] — Reverse proxy HTTPS recommandĂ© - [[app-ollama]] — Moteur d'infĂ©rence local