mirror of
https://github.com/R0m1k3/Loki.git
synced 2026-10-20 21:48:47 +02:00
Phase 4 : boucle agentique, outils fichiers et aperçu live
Backend : - tools.py : read_file / write_file / list_dir confinés au workspace (anti-traversal) - agent.py : boucle de tool-calling itérative au-dessus d'Ollama, génère des événements (token, tool_call, tool_result, final) - routes/chat.py : pilote run_agent, relaie les événements en SSE, persiste la réponse finale + le récap des outils (meta) - routes/files.py : arborescence et contenu du workspace (confiné) - db.py : colonne meta sur messages (+ migration douce), list_messages_for_model Frontend : - ToolCard : carte d'appel d'outil dans le fil (statut en cours/terminé/échec) - streamChat : événements tool_call / tool_result - store : streamTools, fileTree, preview (ouverture auto d'un HTML écrit) - LeftPanel : arborescence réelle du workspace, clic -> aperçu - PreviewPanel : rendu HTML en iframe + onglet Code - ChatPanel : rendu des outils dans les bulles agent (streaming + persisté) Tests manuels : outils + confinement, boucle agent (mock Ollama), chat HTTP de bout en bout (SSE, persistance meta, fichiers écrits, confinement route). 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
48cbcaafaf
commit
b6bf4edf97
13 files changed
+677
-80
No files matched your search
@@ -16,8 +16,9 @@ Frontend (React + Vite + TS + Tailwind)
|
||||
Backend (FastAPI, Python)
|
||||
├── /api/status, /api/models, /api/models/pull (Ollama)
|
||||
├── /api/sessions (CRUD sessions)
|
||||
├── /api/chat (conversation streaming, SSE)
|
||||
│ (outils agentiques : phases suivantes)
|
||||
├── /api/chat (boucle agentique + outils, streaming SSE)
|
||||
├── /api/files (arborescence + contenu du workspace)
|
||||
│ Outils agent : read_file · write_file · list_dir (confinés au workspace)
|
||||
│ httpx │ volume
|
||||
Ollama (:11434) /workspace + /data (SQLite)
|
||||
```
|
||||
@@ -70,8 +71,8 @@ npm run dev # http://localhost:5173
|
||||
- [x] **Phase 1** — Socle + design system fidèle au thème, layout 3 panneaux
|
||||
- [x] **Phase 2** — Connexion Ollama : statut, liste des modèles, pull avec progression, sélecteur
|
||||
- [x] **Phase 3** — Chat streaming (SSE) + persistance des sessions (SQLite)
|
||||
- [ ] **Phase 4** — Boucle agentique & outils fichiers (read/write/list)
|
||||
- [ ] **Phase 5** — Aperçu HTML live + onglets Code/Logs + arborescence
|
||||
- [x] **Phase 4** — Boucle agentique & outils fichiers (read/write/list), confinés au workspace, rendu des appels d'outils dans le fil
|
||||
- [~] **Phase 5** — Aperçu HTML live + onglet Code + arborescence du workspace (fait) · onglet Logs (à venir)
|
||||
- [ ] **Phase 6** — Configuration complète (génération, toggles d'outils, invite système)
|
||||
- [ ] **Phase 7** — Outils avancés (web_search, run_shell confirmé, html_preview)
|
||||
- [ ] **Phase 8** — Hardening & documentation Docker
|
||||
|
||||
Reference in new issue
Block a user