docs: i18n et suivi #187 - assistant agent toujours actif
This commit is contained in:
@@ -16,6 +16,17 @@ et [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|||||||
|
|
||||||
## [2.53.2] — 2026-10-07
|
## [2.53.2] — 2026-10-07
|
||||||
|
|
||||||
|
### Modifié
|
||||||
|
|
||||||
|
- **#187 - Assistant IA : mode agent toujours actif**
|
||||||
|
- Le bouton « mode agent » du panneau a été **supprimé** : l'assistant utilise
|
||||||
|
en permanence ses outils (lire, lister, chercher, modifier) ; la sécurité
|
||||||
|
est inchangée — chaque modification demande une confirmation avec aperçu.
|
||||||
|
Les images jointes passent toujours par l'endpoint multimodal classique.
|
||||||
|
- Le provider réel de l'agent est désormais résolu comme pour le chat simple
|
||||||
|
(l'étiquette « fournisseur · modèle » affichée est exacte), et les schémas
|
||||||
|
d'outils sont mis en cache (≈ 27 ms économisées par requête).
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## [2.53.1] — 2026-10-04
|
## [2.53.1] — 2026-10-04
|
||||||
|
|||||||
@@ -181,6 +181,33 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## ✅ Terminé — Assistant IA
|
||||||
|
|
||||||
|
### 187. Assistant IA — mode agent toujours actif, retrait du bouton toggle
|
||||||
|
|
||||||
|
- **Effort :** 0,5 jour | **Impact :** 🟢
|
||||||
|
- **Statut :** ✅ **livré le 2026-10-06** — ouvert le 2026-10-06
|
||||||
|
- **Description :** le bouton « mode agent » du panneau (toggle persisté en
|
||||||
|
localStorage, défaut OFF) n'était plus protecteur : Deep Research et les
|
||||||
|
quick actions `agent: true` basculaient déjà le mode en silence. Retiré au
|
||||||
|
profit d'un agent toujours actif : toute requête texte part sur
|
||||||
|
`/api/ai/bookslm/agent` (outils lire/lister/chercher/modifier ; les mutations
|
||||||
|
gardent la confirmation two-step) ; les images seules restent sur
|
||||||
|
`/api/ai/bookslm/chat` (endpoint multimodal, la boucle agent étant textuelle).
|
||||||
|
- **Sous-tâches :**
|
||||||
|
- [x] **A1** Frontend : bouton header, `_agentMode`, toggle/persistance et les
|
||||||
|
auto-bascules (Deep Research, quick actions) supprimés ; `_postChat`
|
||||||
|
route texte→`/agent`, images→`/chat` ; aide et i18n FR/EN mises à jour
|
||||||
|
- [x] **A2** Optimisations requêtes AI : `/agent` résout le provider comme
|
||||||
|
`/chat` (avant : `req.provider` brut transmis au provider adapter →
|
||||||
|
moteur réel ≠ étiquette SSE) ; schémas d'outils mis en cache (~27 ms de
|
||||||
|
pydantic économisés par requête agent/MCP)
|
||||||
|
- [x] **A3** Tests : `ai.test.mjs` adapté (100/100) ; non-régression pytest
|
||||||
|
(`test_bookslm.py` provider résolu, `test_tools.py` cache sûr) ;
|
||||||
|
ruff/mypy 0 erreur ; build + instance Docker locale à jour
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## ✅ Terminé — Navigation
|
## ✅ Terminé — Navigation
|
||||||
|
|
||||||
### 158. Navigation — vue répertoire en onglet, filtres & tris, retour Home complet
|
### 158. Navigation — vue répertoire en onglet, filtres & tris, retour Home complet
|
||||||
|
|||||||
@@ -90,8 +90,6 @@
|
|||||||
"ai.confirm_actions": "{count} actions to approve",
|
"ai.confirm_actions": "{count} actions to approve",
|
||||||
"ai.stop": "Stop the assistant",
|
"ai.stop": "Stop the assistant",
|
||||||
"ai.stopped": "Run stopped.",
|
"ai.stopped": "Run stopped.",
|
||||||
"ai.agent_mode_off": "Agent mode off (read/search + actions)",
|
|
||||||
"ai.agent_mode_on": "Agent mode on (read/search tools + actions)",
|
|
||||||
"ai.casual": "Casual tone",
|
"ai.casual": "Casual tone",
|
||||||
"ai.close": "Close assistant",
|
"ai.close": "Close assistant",
|
||||||
"ai.completion_added": "AI: completion added",
|
"ai.completion_added": "AI: completion added",
|
||||||
@@ -1365,7 +1363,7 @@
|
|||||||
"help.assistant_insert": "The \"Add\" button (revealed on hover of an answer) inserts the answer into the document open in the editor (Editer or Forge); each code block offers \"Add section\" to insert just that block.",
|
"help.assistant_insert": "The \"Add\" button (revealed on hover of an answer) inserts the answer into the document open in the editor (Editer or Forge); each code block offers \"Add section\" to insert just that block.",
|
||||||
"help.assistant_links": "Cited files and paths are links: a bare filename copies the name to the clipboard, a folder is revealed in the tree, and a file path opens it in the viewer.",
|
"help.assistant_links": "Cited files and paths are links: a bare filename copies the name to the clipboard, a folder is revealed in the tree, and a file path opens it in the viewer.",
|
||||||
"help.assistant_sessions": "The header history icon lists past sessions (reopen or delete); “+” starts a new conversation.",
|
"help.assistant_sessions": "The header history icon lists past sessions (reopen or delete); “+” starts a new conversation.",
|
||||||
"help.assistant_agent": "The \"agent mode\" button enables tools (read, list, search); modifying actions require confirmation with a change preview.",
|
"help.assistant_agent": "The assistant always uses its tools (read, list, search, modify); modifying actions require confirmation with a change preview.",
|
||||||
"help.assistant_agent_run": "Actions appear in the thread: the assistant groups modifications into a single approval (\"Approve all\") and refreshes the file tree and the open document as soon as they are applied. The send button becomes \"Stop\" to interrupt the run at any time.",
|
"help.assistant_agent_run": "Actions appear in the thread: the assistant groups modifications into a single approval (\"Approve all\") and refreshes the file tree and the open document as soon as they are applied. The send button becomes \"Stop\" to interrupt the run at any time.",
|
||||||
"help.assistant_resize": "The left edge of the panel is resizable; the width is remembered.",
|
"help.assistant_resize": "The left edge of the panel is resizable; the width is remembered.",
|
||||||
"help.assistant_at": "Type @ to attach a file or directory to the context, or to attach an image from a directory.",
|
"help.assistant_at": "Type @ to attach a file or directory to the context, or to attach an image from a directory.",
|
||||||
|
|||||||
@@ -90,8 +90,6 @@
|
|||||||
"ai.confirm_actions": "{count} actions à approuver",
|
"ai.confirm_actions": "{count} actions à approuver",
|
||||||
"ai.stop": "Arrêter l'assistant",
|
"ai.stop": "Arrêter l'assistant",
|
||||||
"ai.stopped": "Exécution arrêtée.",
|
"ai.stopped": "Exécution arrêtée.",
|
||||||
"ai.agent_mode_off": "Mode agent désactivé (lecture/recherche + actions)",
|
|
||||||
"ai.agent_mode_on": "Mode agent activé (outils de lecture/recherche + actions)",
|
|
||||||
"ai.casual": "Ton décontracté",
|
"ai.casual": "Ton décontracté",
|
||||||
"ai.close": "Fermer l'assistant",
|
"ai.close": "Fermer l'assistant",
|
||||||
"ai.completion_added": "AI: complétion ajoutée",
|
"ai.completion_added": "AI: complétion ajoutée",
|
||||||
@@ -1365,7 +1363,7 @@
|
|||||||
"help.assistant_insert": "Le bouton « Ajouter » (au survol d'une réponse) insère la réponse dans le document ouvert dans l'éditeur (Editer ou Forge) ; chaque bloc de code propose « Ajouter la section » pour n'insérer que ce bloc.",
|
"help.assistant_insert": "Le bouton « Ajouter » (au survol d'une réponse) insère la réponse dans le document ouvert dans l'éditeur (Editer ou Forge) ; chaque bloc de code propose « Ajouter la section » pour n'insérer que ce bloc.",
|
||||||
"help.assistant_links": "Les fichiers et chemins cités sont des liens : un simple nom de fichier copie le nom dans le presse-papiers, un dossier est révélé dans l'arborescence, et un chemin de fichier l'ouvre dans le viewer.",
|
"help.assistant_links": "Les fichiers et chemins cités sont des liens : un simple nom de fichier copie le nom dans le presse-papiers, un dossier est révélé dans l'arborescence, et un chemin de fichier l'ouvre dans le viewer.",
|
||||||
"help.assistant_sessions": "L'icône historique de l'en-tête liste les sessions passées (recharger ou supprimer) ; « + » démarre une nouvelle conversation.",
|
"help.assistant_sessions": "L'icône historique de l'en-tête liste les sessions passées (recharger ou supprimer) ; « + » démarre une nouvelle conversation.",
|
||||||
"help.assistant_agent": "Le bouton « mode agent » active les outils (lire, lister, chercher) ; les actions de modification demandent une confirmation avec aperçu des changements.",
|
"help.assistant_agent": "L'assistant utilise toujours ses outils (lire, lister, chercher, modifier) ; les actions de modification demandent une confirmation avec aperçu des changements.",
|
||||||
"help.assistant_agent_run": "Les actions s'affichent dans le fil : l'assistant regroupe les modifications en une seule approbation (« Tout approuver ») et met à jour l'arborescence et le document ouvert dès qu'elles sont appliquées. Le bouton d'envoi devient « Stop » pour interrompre l'exécution à tout moment.",
|
"help.assistant_agent_run": "Les actions s'affichent dans le fil : l'assistant regroupe les modifications en une seule approbation (« Tout approuver ») et met à jour l'arborescence et le document ouvert dès qu'elles sont appliquées. Le bouton d'envoi devient « Stop » pour interrompre l'exécution à tout moment.",
|
||||||
"help.assistant_resize": "Le bord gauche du panneau est redimensionnable ; la largeur est mémorisée.",
|
"help.assistant_resize": "Le bord gauche du panneau est redimensionnable ; la largeur est mémorisée.",
|
||||||
"help.assistant_at": "Tapez @ pour joindre un fichier ou un répertoire au contexte, ou pour attacher une image d'un répertoire.",
|
"help.assistant_at": "Tapez @ pour joindre un fichier ou un répertoire au contexte, ou pour attacher une image d'un répertoire.",
|
||||||
|
|||||||
@@ -12244,8 +12244,6 @@ mark {
|
|||||||
background: var(--accent); color: #fff; cursor: pointer; font-size: 12px; flex-shrink: 0; }
|
background: var(--accent); color: #fff; cursor: pointer; font-size: 12px; flex-shrink: 0; }
|
||||||
.bookslm-action-apply:disabled { opacity: 0.6; cursor: default; }
|
.bookslm-action-apply:disabled { opacity: 0.6; cursor: default; }
|
||||||
.bookslm-action-apply:not(:disabled):hover { filter: brightness(1.08); }
|
.bookslm-action-apply:not(:disabled):hover { filter: brightness(1.08); }
|
||||||
/* Agent-mode toggle in the header. */
|
|
||||||
.bookslm-header button.bookslm-btn-agent.active { color: var(--accent); background: var(--surface2); }
|
|
||||||
/* Tool-call trace shown above an assistant answer (agent mode).
|
/* Tool-call trace shown above an assistant answer (agent mode).
|
||||||
The header is the live indicator (« ●●● 3 étapes ▶ »); expanding it reveals
|
The header is the live indicator (« ●●● 3 étapes ▶ »); expanding it reveals
|
||||||
the chronological steps, thinking notes as « Réflexion » sub-sections and
|
the chronological steps, thinking notes as « Réflexion » sub-sections and
|
||||||
|
|||||||
Reference in New Issue
Block a user