mirror of
https://github.com/R0m1k3/Loki.git
synced 2026-10-18 04:36:44 +02:00
Phases 5 & 8 : onglet Logs, durcissement Docker et documentation
Phase 5 (fin) : - PreviewPanel : onglet Logs (journal d'activité des outils de la session, compteur dynamique, statuts ✓/✕/⏸/…) Phase 8 : - .dockerignore - Dockerfile : utilisateur non-root (uid 10001), HEALTHCHECK via curl, dossiers de runtime détenus par l'utilisateur - docker-compose : healthcheck, variable SEARX_URL optionnelle - .env.example : SEARX_URL - README : sections Utilisation, Outils de l'agent, Sécurité (confinement, validation run_shell, non-root) ; feuille de route complète Validation : config docker compose OK ; build d'image non exécutable ici (démon Docker absent de l'environnement). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SVay7z3y7q2gEe54ByAE6N
This commit is contained in:
1 parent
de2befe31e
commit
66be893ea6
6 files changed
+159
-14
No files matched your search
@@ -63,8 +63,44 @@ npm run dev # http://localhost:5173
|
||||
| `OLLAMA_HOST` | `http://host.docker.internal:11434` | URL de l'instance Ollama |
|
||||
| `DEFAULT_MODEL` | `llama3.1:8b` | Modèle sélectionné au démarrage |
|
||||
| `WORKSPACE_DIR` | `/workspace` | Dossier de travail de l'agent |
|
||||
| `DATA_DIR` | `/data` | Base SQLite (sessions) |
|
||||
| `DATA_DIR` | `/data` | Base SQLite (sessions + config) |
|
||||
| `PORT` | `8080` | Port exposé |
|
||||
| `SEARX_URL` | *(vide)* | Instance SearxNG pour `web_search` (sinon DuckDuckGo) |
|
||||
|
||||
## Utilisation
|
||||
|
||||
1. Vérifie la pastille **Ollama** (verte = connecté) en haut à droite, et choisis
|
||||
un modèle qui supporte le *function calling* (ex. `llama3.1:8b`,
|
||||
`qwen2.5-coder`).
|
||||
2. Décris une tâche dans le tchat, p. ex. *« Crée une landing page pour un café
|
||||
nommé Café Lumière, avec menu et horaires »*.
|
||||
3. L'agent lit/écrit des fichiers dans le **workspace** ; chaque appel d'outil
|
||||
s'affiche dans le fil, et l'aperçu HTML apparaît à droite (onglets **Aperçu /
|
||||
Code / Logs**).
|
||||
4. Règle le comportement dans **Configuration** (modèle, température/top-p/top-k,
|
||||
jetons max, outils actifs, invite système).
|
||||
|
||||
## Outils de l'agent
|
||||
|
||||
| Outil | Rôle | Par défaut |
|
||||
| ------------- | -------------------------------------- | ---------- |
|
||||
| `read_file` | Lire un fichier du workspace | activé |
|
||||
| `write_file` | Créer / modifier un fichier | activé |
|
||||
| `list_dir` | Lister un répertoire | activé |
|
||||
| `web_search` | Recherche web (DuckDuckGo / SearxNG) | désactivé |
|
||||
| `run_shell` | Exécuter une commande **(sensible)** | désactivé |
|
||||
|
||||
## Sécurité
|
||||
|
||||
- **Confinement** : toutes les opérations fichier (`read_file`, `write_file`,
|
||||
`list_dir`) et `run_shell` sont strictement confinées au `WORKSPACE_DIR`. Toute
|
||||
tentative de sortie (`../`, chemin absolu) est rejetée.
|
||||
- **`run_shell`** est désactivé par défaut. Une fois activé, chaque commande
|
||||
proposée par l'agent demande une **validation explicite** dans l'interface
|
||||
(option *confirm_shell*, activée par défaut) avant exécution.
|
||||
- Le conteneur tourne en **utilisateur non-root** et expose un **HEALTHCHECK**.
|
||||
- Loki est conçu pour un usage **local** : n'expose pas le port publiquement sans
|
||||
ajouter ta propre couche d'authentification.
|
||||
|
||||
## Feuille de route
|
||||
|
||||
|
||||
Reference in new issue
Block a user