chore(i18n): refresh fr translations

This commit is contained in:
openclaw-docs-i18n[bot] 2026-04-15 14:48:50 +00:00
parent c297b7038e
commit 09a558d9e4
12 changed files with 1971 additions and 1890 deletions

View File

@ -1,74 +1,74 @@
---
read_when:
- Vous souhaitez que la promotion de la mémoire sexécute automatiquement
- Vous voulez comprendre ce que fait chaque phase de Dreaming
- Vous voulez ajuster la consolidation sans polluer `MEMORY.md`
summary: Consolidation de la mémoire en arrière-plan avec des phases légères, profondes et REM, plus un journal de rêves
title: Dreaming (expérimental)
- Vous souhaitez comprendre le rôle de chaque phase de Dreaming
- Vous souhaitez ajuster la consolidation sans polluer `MEMORY.md`
summary: Consolidation de la mémoire en arrière-plan avec des phases légères, profondes et REM, ainsi quun journal des rêves
title: Dreaming
x-i18n:
generated_at: "2026-04-15T06:56:37Z"
generated_at: "2026-04-15T14:40:40Z"
model: gpt-5.4
provider: openai
source_hash: 5882a5068f2eabe54ca9893184e5385330a432b921870c38626399ce11c31e25
source_hash: a5bcaec80f62e7611ed533094ef1917bd72c885f57252824db910e1f0496adc6
source_path: concepts/dreaming.md
workflow: 15
---
# Dreaming (expérimental)
# Dreaming
Dreaming est le système de consolidation de la mémoire en arrière-plan dans `memory-core`.
Il aide OpenClaw à déplacer les signaux forts à court terme vers une mémoire durable tout en
Il aide OpenClaw à déplacer les signaux forts de mémoire à court terme vers une mémoire durable tout en
gardant le processus explicable et révisable.
Dreaming est **optionnel** et désactivé par défaut.
## Ce que Dreaming écrit
Dreaming conserve deux types de sortie :
Dreaming conserve deux types de sortie :
- **État machine** dans `memory/.dreams/` (magasin de rappel, signaux de phase, points de contrôle dingestion, verrous).
- **Sortie lisible par des humains** dans `DREAMS.md` (ou `dreams.md` existant) et des fichiers de rapport de phase facultatifs sous `memory/dreaming/<phase>/YYYY-MM-DD.md`.
- **Sortie lisible par des humains** dans `DREAMS.md` (ou le `dreams.md` existant) et des fichiers de rapport de phase facultatifs sous `memory/dreaming/<phase>/YYYY-MM-DD.md`.
La promotion à long terme continue décrire uniquement dans `MEMORY.md`.
## Modèle de phase
Dreaming utilise trois phases coopératives :
Dreaming utilise trois phases coopératives :
| Phase | Objectif | Écriture durable |
| ----- | ----------------------------------------- | ----------------- |
| Light | Trier et préparer le matériel récent à court terme | Non |
| Light | Trier et préparer le contenu récent à court terme | Non |
| Deep | Évaluer et promouvoir les candidats durables | Oui (`MEMORY.md`) |
| REM | Réfléchir aux thèmes et aux idées récurrentes | Non |
Ces phases sont des détails dimplémentation internes, et non des « modes »
distincts configurés par lutilisateur.
Ces phases sont des détails dimplémentation internes, pas des « modes »
séparés configurés par lutilisateur.
### Phase Light
La phase Light ingère les signaux récents de mémoire quotidienne et les traces de rappel, les déduplique,
et prépare les lignes candidates.
et prépare des lignes candidates.
- Lit létat de rappel à court terme, les fichiers récents de mémoire quotidienne et les transcriptions de session expurgées lorsquelles sont disponibles.
- Lit létat de rappel à court terme, les fichiers récents de mémoire quotidienne et les transcriptions de session expurgées lorsque disponibles.
- Écrit un bloc géré `## Light Sleep` lorsque le stockage inclut une sortie en ligne.
- Enregistre des signaux de renforcement pour le classement Deep ultérieur.
- Nécrit jamais dans `MEMORY.md`.
### Phase Deep
La phase Deep décide de ce qui devient une mémoire à long terme.
La phase Deep décide de ce qui devient de la mémoire à long terme.
- Classe les candidats à laide dun score pondéré et de seuils de validation.
- Exige que `minScore`, `minRecallCount` et `minUniqueQueries` soient atteints.
- Réhydrate les extraits à partir des fichiers quotidiens actifs avant lécriture, de sorte que les extraits obsolètes ou supprimés soient ignorés.
- Réhydrate les extraits à partir des fichiers quotidiens actifs avant lécriture, afin que les extraits obsolètes/supprimés soient ignorés.
- Ajoute les entrées promues à `MEMORY.md`.
- Écrit un résumé `## Deep Sleep` dans `DREAMS.md` et peut aussi écrire `memory/dreaming/deep/YYYY-MM-DD.md`.
- Écrit un résumé `## Deep Sleep` dans `DREAMS.md` et peut éventuellement écrire `memory/dreaming/deep/YYYY-MM-DD.md`.
### Phase REM
La phase REM extrait des motifs et des signaux réflexifs.
- Construit des résumés de thèmes et de réflexions à partir des traces récentes à court terme.
- Construit des résumés de thèmes et de réflexions à partir de traces récentes à court terme.
- Écrit un bloc géré `## REM Sleep` lorsque le stockage inclut une sortie en ligne.
- Enregistre des signaux de renforcement REM utilisés par le classement Deep.
- Nécrit jamais dans `MEMORY.md`.
@ -76,58 +76,56 @@ La phase REM extrait des motifs et des signaux réflexifs.
## Ingestion des transcriptions de session
Dreaming peut ingérer des transcriptions de session expurgées dans le corpus de Dreaming. Lorsque
des transcriptions sont disponibles, elles sont intégrées à la phase Light en plus des signaux de
mémoire quotidienne et des traces de rappel. Le contenu personnel et sensible est expurgé
avant lingestion.
des transcriptions sont disponibles, elles sont injectées dans la phase Light avec les signaux de mémoire quotidienne
et les traces de rappel. Le contenu personnel et sensible est expurgé
avant ingestion.
## Journal des rêves
Dreaming conserve aussi un **journal des rêves** narratif dans `DREAMS.md`.
Après que chaque phase a accumulé suffisamment de matière, `memory-core` exécute un tour
de sous-agent en arrière-plan en mode best-effort (en utilisant le modèle dexécution par défaut)
et ajoute une courte entrée au journal.
Dreaming conserve également un **journal des rêves** narratif dans `DREAMS.md`.
Après que chaque phase dispose de suffisamment de matière, `memory-core` exécute un tour
de sous-agent en arrière-plan en mode best-effort (en utilisant le modèle dexécution par défaut) et ajoute une courte entrée de journal.
Ce journal est destiné à la lecture humaine dans linterface Dreams, et non à servir de source de promotion.
Ce journal est destiné à la lecture humaine dans linterface Dreams, pas à servir de source de promotion.
Les artefacts de journal/rapport générés par Dreaming sont exclus de la
promotion à court terme. Seuls les extraits de mémoire ancrés dans les faits peuvent être promus dans
promotion à court terme. Seuls les extraits de mémoire fondés peuvent être promus dans
`MEMORY.md`.
Il existe aussi un circuit de remplissage historique ancré dans les faits pour les travaux de révision et de récupération :
Il existe également une voie de remplissage historique fondée pour les travaux de révision et de récupération :
- `memory rem-harness --path ... --grounded` prévisualise la sortie du journal ancré dans les faits à partir des notes historiques `YYYY-MM-DD.md`.
- `memory rem-backfill --path ...` écrit des entrées réversibles de journal ancré dans les faits dans `DREAMS.md`.
- `memory rem-backfill --path ... --stage-short-term` prépare des candidats durables ancrés dans les faits dans le même magasin de preuves à court terme que la phase Deep normale utilise déjà.
- `memory rem-backfill --rollback` et `--rollback-short-term` suppriment ces artefacts de remplissage préparés sans toucher aux entrées ordinaires du journal ni au rappel actif à court terme.
- `memory rem-harness --path ... --grounded` prévisualise une sortie de journal fondée à partir de notes historiques `YYYY-MM-DD.md`.
- `memory rem-backfill --path ...` écrit des entrées de journal fondées réversibles dans `DREAMS.md`.
- `memory rem-backfill --path ... --stage-short-term` prépare des candidats durables fondés dans le même magasin de preuves à court terme que celui déjà utilisé par la phase Deep normale.
- `memory rem-backfill --rollback` et `--rollback-short-term` suppriment ces artefacts de remplissage préparés sans toucher aux entrées de journal ordinaires ni au rappel actif à court terme.
Linterface Control expose le même flux de remplissage/réinitialisation du journal afin que vous puissiez inspecter
les résultats dans la scène Dreams avant de décider si les candidats ancrés dans les faits
méritent une promotion. La scène affiche aussi une voie ancrée distincte pour que vous puissiez voir
quelles entrées préparées à court terme proviennent dune relecture historique, quels éléments promus
ont été guidés par des données ancrées dans les faits, et effacer uniquement les entrées préparées ancrées
les résultats dans la scène Dreams avant de décider si les candidats fondés
méritent une promotion. La scène affiche également une voie fondée distincte pour que vous puissiez voir
quelles entrées préparées à court terme proviennent de la relecture historique, quels éléments promus
ont été guidés par du contenu fondé, et effacer uniquement les entrées préparées fondées
sans toucher à létat ordinaire actif à court terme.
## Signaux de classement Deep
Le classement Deep utilise six signaux de base pondérés plus le renforcement de phase :
Le classement Deep utilise six signaux de base pondérés ainsi quun renforcement par phase :
| Signal | Poids | Description |
| ------------------- | ----- | ------------------------------------------------- |
| Fréquence | 0.24 | Nombre de signaux à court terme accumulés par lentrée |
| Pertinence | 0.30 | Qualité moyenne de récupération pour lentrée |
| Diversité des requêtes | 0.15 | Contextes distincts de requête/jour qui lont fait apparaître |
| Diversité des requêtes | 0.15 | Contextes distincts de requête/jour qui lont fait émerger |
| Récence | 0.15 | Score de fraîcheur décroissant avec le temps |
| Consolidation | 0.10 | Force de récurrence sur plusieurs jours |
| Richesse conceptuelle | 0.06 | Densité des balises de concept à partir de lextrait/du chemin |
Les occurrences des phases Light et REM ajoutent un petit bonus décroissant avec le temps à partir de
Les occurrences des phases Light et REM ajoutent un faible bonus décroissant avec le temps à partir de
`memory/.dreams/phase-signals.json`.
## Planification
Lorsquil est activé, `memory-core` gère automatiquement une tâche Cron pour un cycle complet
de Dreaming. Chaque cycle exécute les phases dans lordre : light -> REM -> deep.
Lorsquil est activé, `memory-core` gère automatiquement une tâche Cron pour un balayage Dreaming complet. Chaque balayage exécute les phases dans lordre : light -> REM -> deep.
Comportement de cadence par défaut :
Comportement de cadence par défaut :
| Paramètre | Par défaut |
| -------------------- | ---------- |
@ -135,7 +133,7 @@ Comportement de cadence par défaut :
## Démarrage rapide
Activer Dreaming :
Activer Dreaming :
```json
{
@ -153,7 +151,7 @@ Activer Dreaming :
}
```
Activer Dreaming avec une cadence de cycle personnalisée :
Activer Dreaming avec une cadence de balayage personnalisée :
```json
{
@ -184,7 +182,7 @@ Activer Dreaming avec une cadence de cycle personnalisée :
## Flux de travail CLI
Utilisez la promotion CLI pour prévisualiser ou appliquer manuellement :
Utilisez la promotion CLI pour prévisualiser ou appliquer manuellement :
```bash
openclaw memory promote
@ -193,10 +191,10 @@ openclaw memory promote --limit 5
openclaw memory status --deep
```
La commande manuelle `memory promote` utilise par défaut les seuils de la phase Deep, sauf en cas de remplacement
La commande manuelle `memory promote` utilise par défaut les seuils de la phase Deep, sauf remplacement
par des indicateurs CLI.
Expliquer pourquoi un candidat spécifique serait ou ne serait pas promu :
Expliquer pourquoi un candidat spécifique serait ou ne serait pas promu :
```bash
openclaw memory promote-explain "router vlan"
@ -204,7 +202,7 @@ openclaw memory promote-explain "router vlan" --json
```
Prévisualiser les réflexions REM, les vérités candidates et la sortie de promotion Deep sans
rien écrire :
rien écrire :
```bash
openclaw memory rem-harness
@ -220,26 +218,26 @@ Tous les paramètres se trouvent sous `plugins.entries.memory-core.config.dreami
| `enabled` | `false` |
| `frequency` | `0 3 * * *` |
La politique des phases, les seuils et le comportement de stockage sont des détails
dimplémentation internes (et non une configuration destinée aux utilisateurs).
La politique de phase, les seuils et le comportement de stockage sont des détails dimplémentation
internes (pas une configuration destinée à lutilisateur).
Voir la [référence de configuration Memory](/fr/reference/memory-config#dreaming-experimental)
Voir la [référence de configuration de la mémoire](/fr/reference/memory-config#dreaming)
pour la liste complète des clés.
## Interface Dreams
Lorsquil est activé, longlet **Dreams** du Gateway affiche :
Lorsquil est activé, longlet **Dreams** de Gateway affiche :
- létat actuel dactivation de Dreaming
- le statut au niveau des phases et la présence dun cycle géré
- les nombres déléments à court terme, ancrés dans les faits, de signaux et promus aujourdhui
- létat au niveau des phases et la présence dun balayage géré
- les nombres déléments à court terme, fondés, de signaux et promus aujourdhui
- lheure de la prochaine exécution planifiée
- une voie ancrée distincte dans la scène pour les entrées préparées issues dune relecture historique
- une voie de scène fondée distincte pour les entrées de relecture historique préparées
- un lecteur de journal des rêves extensible alimenté par `doctor.memory.dreamDiary`
## Lié
## Liens associés
- [Memory](/fr/concepts/memory)
- [Recherche Memory](/fr/concepts/memory-search)
- [Mémoire](/fr/concepts/memory)
- [Recherche en mémoire](/fr/concepts/memory-search)
- [CLI memory](/cli/memory)
- [Référence de configuration Memory](/fr/reference/memory-config)
- [Référence de configuration de la mémoire](/fr/reference/memory-config)

View File

@ -0,0 +1,54 @@
---
read_when:
- Vous voyez une clé de configuration `.experimental` et vous voulez savoir si elle est stable.
- Vous voulez essayer des fonctionnalités dexécution en préversion sans les confondre avec les valeurs par défaut normales.
- Vous voulez un endroit unique pour trouver les indicateurs expérimentaux actuellement documentés.
summary: Que signifient les indicateurs expérimentaux dans OpenClaw et lesquels sont actuellement documentés ?
title: Fonctionnalités expérimentales
x-i18n:
generated_at: "2026-04-15T14:40:32Z"
model: gpt-5.4
provider: openai
source_hash: 2d1c7b3d4cd56ef8a0bdab1deb9918e9b2c9a33f956d63193246087f8633dcf3
source_path: concepts/experimental-features.md
workflow: 15
---
# Fonctionnalités expérimentales
Les fonctionnalités expérimentales dans OpenClaw sont des **surfaces de préversion activées explicitement**. Elles sont
placées derrière des indicateurs explicites parce quelles ont encore besoin dune utilisation réelle avant de
mériter une valeur par défaut stable ou un contrat public durable.
Traitez-les différemment dune configuration normale :
- Laissez-les **désactivées par défaut** à moins que la documentation associée ne vous dise den essayer une.
- Attendez-vous à ce que leur **structure et leur comportement changent** plus rapidement que pour une configuration stable.
- Privilégiez dabord la voie stable lorsquelle existe déjà.
- Si vous déployez OpenClaw à grande échelle, testez les indicateurs expérimentaux dans un environnement plus restreint
avant de les intégrer dans une base de référence partagée.
## Indicateurs actuellement documentés
| Surface | Key | Use it when | More |
| ------------------------ | --------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| Environnement dexécution des modèles locaux | `agents.defaults.experimental.localModelLean` | Un backend local plus petit ou plus strict a du mal avec la surface complète des outils par défaut dOpenClaw | [Modèles locaux](/fr/gateway/local-models) |
| Recherche en mémoire | `agents.defaults.memorySearch.experimental.sessionMemory` | Vous voulez que `memory_search` indexe les transcriptions des sessions précédentes et acceptez le coût supplémentaire de stockage et dindexation | [Référence de configuration de la mémoire](/fr/reference/memory-config#session-memory-search-experimental) |
| Outil de planification structurée | `tools.experimental.planTool` | Vous voulez que loutil structuré `update_plan` soit exposé pour le suivi de travaux en plusieurs étapes dans les environnements dexécution et interfaces compatibles | [Référence de configuration de la Gateway](/fr/gateway/configuration-reference#toolsexperimental) |
## Mode allégé pour modèles locaux
`agents.defaults.experimental.localModelLean: true` est une soupape de sécurité
pour les configurations de modèles locaux plus faibles. Il réduit les outils par défaut lourds comme
`browser`, `cron` et `message` afin que la structure du prompt soit plus petite et moins fragile
pour les backends compatibles OpenAI à petit contexte ou plus stricts.
Ce nest intentionnellement **pas** la voie normale. Si votre backend gère correctement lenvironnement dexécution
complet, laissez cette option désactivée.
## Expérimental ne veut pas dire caché
Si une fonctionnalité est expérimentale, OpenClaw doit lindiquer clairement dans la documentation et dans le
chemin de configuration lui-même. En revanche, il ne doit **pas** glisser un comportement de préversion dans un
paramètre qui semble stable et prétendre que cest normal. Cest comme ça que les surfaces de configuration
deviennent désordonnées.

View File

@ -3,31 +3,31 @@ read_when:
- Vous voulez comprendre comment fonctionne `memory_search`
- Vous voulez choisir un fournisseur dembeddings
- Vous voulez ajuster la qualité de la recherche
summary: Comment la recherche en mémoire trouve des notes pertinentes à laide des embeddings et de la récupération hybride
title: Recherche en mémoire
summary: Comment la recherche mémoire trouve des notes pertinentes à laide dembeddings et dune récupération hybride
title: Recherche mémoire
x-i18n:
generated_at: "2026-04-12T23:28:10Z"
generated_at: "2026-04-15T14:40:31Z"
model: gpt-5.4
provider: openai
source_hash: 71fde251b7d2dc455574aa458e7e09136f30613609ad8dafeafd53b2729a0310
source_hash: f5757aa8fe8f7fec30ef5c826f72230f591ce4cad591d81a091189d50d4262ed
source_path: concepts/memory-search.md
workflow: 15
---
# Recherche en mémoire
# Recherche mémoire
`memory_search` trouve des notes pertinentes à partir de vos fichiers mémoire, même lorsque la formulation diffère du texte dorigine. Elle fonctionne en indexant la mémoire en petits fragments et en les recherchant à laide des embeddings, de mots-clés, ou des deux.
`memory_search` trouve des notes pertinentes à partir de vos fichiers mémoire, même lorsque la formulation diffère du texte dorigine. Il fonctionne en indexant la mémoire en petits segments et en les recherchant à laide dembeddings, de mots-clés, ou des deux.
## Démarrage rapide
Si vous avez une clé API OpenAI, Gemini, Voyage ou Mistral configurée, la recherche en mémoire fonctionne automatiquement. Pour définir explicitement un fournisseur :
Si vous avez un abonnement GitHub Copilot, ou une clé API OpenAI, Gemini, Voyage ou Mistral configurée, la recherche mémoire fonctionne automatiquement. Pour définir explicitement un fournisseur :
```json5
{
agents: {
defaults: {
memorySearch: {
provider: "openai", // or "gemini", "local", "ollama", etc.
provider: "openai", // ou "gemini", "local", "ollama", etc.
},
},
},
@ -38,19 +38,20 @@ Pour des embeddings locaux sans clé API, utilisez `provider: "local"` (nécessi
## Fournisseurs pris en charge
| Fournisseur | ID | Nécessite une clé API | Remarques |
| ----------- | --------- | --------------------- | --------------------------------------------------- |
| OpenAI | `openai` | Oui | Détecté automatiquement, rapide |
| Gemini | `gemini` | Oui | Prend en charge lindexation dimages et daudio |
| Voyage | `voyage` | Oui | Détecté automatiquement |
| Mistral | `mistral` | Oui | Détecté automatiquement |
| Bedrock | `bedrock` | Non | Détecté automatiquement lorsque la chaîne didentifiants AWS est résolue |
| Ollama | `ollama` | Non | Local, doit être défini explicitement |
| Local | `local` | Non | Modèle GGUF, téléchargement denviron 0,6 Go |
| Fournisseur | ID | Nécessite une clé API | Notes |
| -------------- | ---------------- | --------------------- | ----------------------------------------------------- |
| Bedrock | `bedrock` | Non | Détecté automatiquement lorsque la chaîne didentifiants AWS est résolue |
| Gemini | `gemini` | Oui | Prend en charge lindexation dimages et daudio |
| GitHub Copilot | `github-copilot` | Non | Détecté automatiquement, utilise labonnement Copilot |
| Local | `local` | Non | Modèle GGUF, téléchargement denviron 0,6 Go |
| Mistral | `mistral` | Oui | Détecté automatiquement |
| Ollama | `ollama` | Non | Local, doit être défini explicitement |
| OpenAI | `openai` | Oui | Détecté automatiquement, rapide |
| Voyage | `voyage` | Oui | Détecté automatiquement |
## Fonctionnement de la recherche
OpenClaw exécute deux chemins de récupération en parallèle et fusionne les résultats :
OpenClaw exécute deux chemins de récupération en parallèle et fusionne les résultats :
```mermaid
flowchart LR
@ -63,21 +64,20 @@ flowchart LR
M --> R["Top Results"]
```
- **La recherche vectorielle** trouve des notes au sens similaire (« gateway host » correspond à « la machine qui exécute OpenClaw »).
- **La recherche vectorielle** trouve des notes au sens similaire ("gateway host" correspond à "the machine running OpenClaw").
- **La recherche par mots-clés BM25** trouve les correspondances exactes (ID, chaînes derreur, clés de configuration).
Si un seul chemin est disponible (pas dembeddings ou pas de FTS), lautre sexécute seul.
Lorsque les embeddings ne sont pas disponibles, OpenClaw utilise tout de même un classement lexical sur les résultats FTS au lieu de revenir uniquement à un ordre brut par correspondance exacte. Ce mode dégradé favorise les fragments avec une meilleure couverture des termes de la requête et des chemins de fichiers pertinents, ce qui maintient un bon rappel même sans `sqlite-vec` ni fournisseur dembeddings.
Lorsque les embeddings ne sont pas disponibles, OpenClaw utilise tout de même un classement lexical sur les résultats FTS au lieu de revenir uniquement à un tri brut par correspondance exacte. Ce mode dégradé met en avant les segments avec une meilleure couverture des termes de la requête et des chemins de fichiers pertinents, ce qui permet de conserver un bon rappel même sans `sqlite-vec` ni fournisseur dembeddings.
## Améliorer la qualité de la recherche
Deux fonctionnalités optionnelles aident lorsque vous avez un long historique de notes :
Deux fonctionnalités optionnelles aident lorsque vous avez un historique de notes volumineux :
### Décroissance temporelle
Les anciennes notes perdent progressivement du poids dans le classement afin que les informations récentes remontent en premier.
Avec la demi-vie par défaut de 30 jours, une note du mois dernier obtient 50 % de son poids dorigine. Les fichiers persistants comme `MEMORY.md` ne sont jamais affectés par cette décroissance.
Les anciennes notes perdent progressivement du poids dans le classement afin que les informations récentes remontent en premier. Avec la demi-vie par défaut de 30 jours, une note du mois dernier obtient un score égal à 50 % de son poids dorigine. Les fichiers pérennes comme `MEMORY.md` ne sont jamais affectés par cette décroissance.
<Tip>
Activez la décroissance temporelle si votre agent a plusieurs mois de notes quotidiennes et que des informations obsolètes continuent de dépasser le contexte récent dans le classement.
@ -85,10 +85,10 @@ Activez la décroissance temporelle si votre agent a plusieurs mois de notes quo
### MMR (diversité)
Réduit les résultats redondants. Si cinq notes mentionnent toutes la même configuration de routeur, MMR garantit que les premiers résultats couvrent différents sujets au lieu de se répéter.
Réduit les résultats redondants. Si cinq notes mentionnent toutes la même configuration de routeur, MMR veille à ce que les premiers résultats couvrent différents sujets au lieu de se répéter.
<Tip>
Activez MMR si `memory_search` continue de renvoyer des extraits presque dupliqués provenant de différentes notes quotidiennes.
Activez MMR si `memory_search` continue de renvoyer des extraits quasi identiques provenant de différentes notes quotidiennes.
</Tip>
### Activer les deux
@ -112,21 +112,21 @@ Activez MMR si `memory_search` continue de renvoyer des extraits presque dupliqu
## Mémoire multimodale
Avec Gemini Embedding 2, vous pouvez indexer des images et des fichiers audio en plus du Markdown. Les requêtes de recherche restent textuelles, mais elles correspondent aussi au contenu visuel et audio. Consultez la [référence de configuration de la mémoire](/fr/reference/memory-config) pour la configuration.
Avec Gemini Embedding 2, vous pouvez indexer des images et des fichiers audio en plus du Markdown. Les requêtes de recherche restent textuelles, mais elles correspondent à du contenu visuel et audio. Consultez la [référence de configuration de la mémoire](/fr/reference/memory-config) pour la configuration.
## Recherche dans la mémoire de session
Vous pouvez éventuellement indexer les transcriptions de session afin que `memory_search` puisse rappeler des conversations précédentes. Cette fonctionnalité est activée sur opt-in via `memorySearch.experimental.sessionMemory`. Consultez la [référence de configuration](/fr/reference/memory-config) pour plus de détails.
Vous pouvez éventuellement indexer les transcriptions de session afin que `memory_search` puisse se souvenir de conversations antérieures. Cette fonctionnalité est optionnelle via `memorySearch.experimental.sessionMemory`. Consultez la [référence de configuration](/fr/reference/memory-config) pour plus de détails.
## Dépannage
**Aucun résultat ?** Exécutez `openclaw memory status` pour vérifier lindex. Sil est vide, exécutez `openclaw memory index --force`.
**Aucun résultat ?** Exécutez `openclaw memory status` pour vérifier lindex. Sil est vide, exécutez `openclaw memory index --force`.
**Seulement des correspondances par mots-clés ?** Il se peut que votre fournisseur dembeddings ne soit pas configuré. Vérifiez avec `openclaw memory status --deep`.
**Uniquement des correspondances par mot-clé ?** Il se peut que votre fournisseur dembeddings ne soit pas configuré. Vérifiez avec `openclaw memory status --deep`.
**Le texte CJK est introuvable ?** Reconstruisez lindex FTS avec `openclaw memory index --force`.
**Texte CJK introuvable ?** Reconstruisez lindex FTS avec `openclaw memory index --force`.
## Pour aller plus loin
## Lectures complémentaires
- [Active Memory](/fr/concepts/active-memory) -- mémoire de sous-agent pour les sessions de chat interactives
- [Mémoire](/fr/concepts/memory) -- disposition des fichiers, backends, outils

View File

@ -2,82 +2,82 @@
read_when:
- Vous voulez comprendre comment fonctionne la mémoire
- Vous voulez savoir quels fichiers de mémoire écrire
summary: Comment OpenClaw se souvient des choses d'une session à l'autre
title: Vue d'ensemble de la mémoire
summary: Comment OpenClaw se souvient des choses dune session à lautre
title: Vue densemble de la mémoire
x-i18n:
generated_at: "2026-04-09T01:27:50Z"
generated_at: "2026-04-15T14:40:30Z"
model: gpt-5.4
provider: openai
source_hash: 2fe47910f5bf1c44be379e971c605f1cb3a29befcf2a7ee11fb3833cbe3b9059
source_hash: ad1adafe1d81f1703d24f48a9c9da2b25a0ebbd4aad4f65d8bde5df78195d55b
source_path: concepts/memory.md
workflow: 15
---
# Vue d'ensemble de la mémoire
# Vue densemble de la mémoire
OpenClaw se souvient des choses en écrivant des **fichiers Markdown simples** dans l'espace de travail de votre agent. Le modèle ne « se souvient » que de ce qui est enregistré sur le disque -- il n'y a pas d'état caché.
OpenClaw se souvient des choses en écrivant des **fichiers Markdown simples** dans lespace de travail de votre agent. Le modèle ne « se souvient » que de ce qui est enregistré sur le disque — il ny a pas détat caché.
## Fonctionnement
Votre agent dispose de trois fichiers liés à la mémoire :
- **`MEMORY.md`** -- mémoire à long terme. Faits durables, préférences et décisions. Chargé au début de chaque session de message direct.
- **`memory/YYYY-MM-DD.md`** -- notes quotidiennes. Contexte courant et observations. Les notes d'aujourd'hui et d'hier sont chargées automatiquement.
- **`DREAMS.md`** (expérimental, facultatif) -- journal des rêves et résumés des passes de rêverie pour relecture humaine, y compris des entrées de rétrospective historique fondée.
- **`MEMORY.md`** mémoire à long terme. Faits durables, préférences et décisions. Chargé au début de chaque session de message privé.
- **`memory/YYYY-MM-DD.md`** — notes quotidiennes. Contexte courant et observations. Les notes daujourdhui et dhier sont chargées automatiquement.
- **`DREAMS.md`** (optionnel) — journal des rêves et résumés des phases de Dreaming pour relecture humaine, y compris les entrées de remplissage rétrospectif ancrées dans lhistorique.
Ces fichiers se trouvent dans l'espace de travail de l'agent (par défaut `~/.openclaw/workspace`).
Ces fichiers se trouvent dans lespace de travail de lagent (par défaut `~/.openclaw/workspace`).
<Tip>
Si vous voulez que votre agent se souvienne de quelque chose, demandez-le-lui simplement : « Souviens-toi que je préfère TypeScript. » Il l'écrira dans le fichier approprié.
Si vous voulez que votre agent se souvienne de quelque chose, demandez-le-lui simplement : « Souviens-toi que je préfère TypeScript. » Il lécrira dans le fichier approprié.
</Tip>
## Outils de mémoire
L'agent dispose de deux outils pour travailler avec la mémoire :
Lagent dispose de deux outils pour travailler avec la mémoire :
- **`memory_search`** -- trouve les notes pertinentes à l'aide de la recherche sémantique, même lorsque la formulation diffère de l'original.
- **`memory_get`** -- lit un fichier de mémoire spécifique ou une plage de lignes.
- **`memory_search`** — trouve des notes pertinentes à laide de la recherche sémantique, même lorsque la formulation diffère de loriginal.
- **`memory_get`** lit un fichier de mémoire spécifique ou une plage de lignes.
Les deux outils sont fournis par le plugin de mémoire actif (par défaut : `memory-core`).
Ces deux outils sont fournis par le Plugin de mémoire actif (par défaut : `memory-core`).
## Plugin compagnon Memory Wiki
Si vous voulez que la mémoire durable se comporte davantage comme une base de connaissances entretenue que comme de simples notes brutes, utilisez le plugin intégré `memory-wiki`.
Si vous voulez que la mémoire durable se comporte davantage comme une base de connaissances maintenue que comme de simples notes brutes, utilisez le Plugin intégré `memory-wiki`.
`memory-wiki` compile les connaissances durables dans un coffre wiki avec :
- une structure de page déterministe
- une structure de pages déterministe
- des affirmations et preuves structurées
- le suivi des contradictions et de la fraîcheur
- des tableaux de bord générés
- des synthèses compilées pour les consommateurs agent/runtime
- des condensés compilés pour les consommateurs agent/runtime
- des outils natifs du wiki comme `wiki_search`, `wiki_get`, `wiki_apply` et `wiki_lint`
Il ne remplace pas le plugin de mémoire actif. Le plugin de mémoire actif reste responsable du rappel, de la promotion et de la rêverie. `memory-wiki` ajoute à côté une couche de connaissances riche en provenance.
Il ne remplace pas le Plugin de mémoire actif. Le Plugin de mémoire actif reste responsable du rappel, de la promotion et de Dreaming. `memory-wiki` ajoute à côté une couche de connaissances riche en provenance.
Voir [Memory Wiki](/fr/plugins/memory-wiki).
## Recherche dans la mémoire
## Recherche mémoire
Lorsqu'un fournisseur d'embeddings est configuré, `memory_search` utilise une **recherche hybride** -- combinant la similarité vectorielle (sens sémantique) avec la correspondance par mots-clés (termes exacts comme les identifiants et les symboles de code). Cela fonctionne immédiatement dès que vous avez une clé API pour n'importe quel fournisseur pris en charge.
Lorsquun fournisseur dembeddings est configuré, `memory_search` utilise une **recherche hybride** — en combinant similarité vectorielle (sens sémantique) et correspondance par mots-clés (termes exacts comme les ID et les symboles de code). Cela fonctionne immédiatement dès que vous avez une clé API pour nimporte quel fournisseur pris en charge.
<Info>
OpenClaw détecte automatiquement votre fournisseur d'embeddings à partir des clés API disponibles. Si vous avez configuré une clé OpenAI, Gemini, Voyage ou Mistral, la recherche dans la mémoire est activée automatiquement.
OpenClaw détecte automatiquement votre fournisseur dembeddings à partir des clés API disponibles. Si vous avez configuré une clé OpenAI, Gemini, Voyage ou Mistral, la recherche mémoire est activée automatiquement.
</Info>
Pour plus de détails sur le fonctionnement de la recherche, les options de réglage et la configuration du fournisseur, voir [Memory Search](/fr/concepts/memory-search).
## Backends de mémoire
## Backends mémoire
<CardGroup cols={3}>
<Card title="Intégré (par défaut)" icon="database" href="/fr/concepts/memory-builtin">
Basé sur SQLite. Fonctionne immédiatement avec la recherche par mots-clés, la similarité vectorielle et la recherche hybride. Aucune dépendance supplémentaire.
</Card>
<Card title="QMD" icon="search" href="/fr/concepts/memory-qmd">
Sidecar local-first avec reranking, expansion de requête et capacité d'indexer des répertoires en dehors de l'espace de travail.
Sidecar local-first avec reranking, expansion de requête et possibilité dindexer des répertoires en dehors de lespace de travail.
</Card>
<Card title="Honcho" icon="brain" href="/fr/concepts/memory-honcho">
Mémoire intersession native IA avec modélisation utilisateur, recherche sémantique et prise en compte de plusieurs agents. Installation par plugin.
Mémoire intersession native IA avec modélisation utilisateur, recherche sémantique et conscience multi-agent. Installation par Plugin.
</Card>
</CardGroup>
@ -85,53 +85,53 @@ Mémoire intersession native IA avec modélisation utilisateur, recherche séman
<CardGroup cols={1}>
<Card title="Memory Wiki" icon="book" href="/fr/plugins/memory-wiki">
Compile la mémoire durable dans un coffre wiki riche en provenance avec affirmations, tableaux de bord, mode pont et workflows compatibles avec Obsidian.
Compile la mémoire durable dans un coffre wiki riche en provenance avec affirmations, tableaux de bord, mode bridge et workflows compatibles avec Obsidian.
</Card>
</CardGroup>
## Flush automatique de la mémoire
## Vidage automatique de la mémoire
Avant que la [compaction](/fr/concepts/compaction) résume votre conversation, OpenClaw exécute un tour silencieux qui rappelle à l'agent d'enregistrer le contexte important dans les fichiers de mémoire. Cette option est activée par défaut -- vous n'avez rien à configurer.
Avant que la [Compaction](/fr/concepts/compaction) ne résume votre conversation, OpenClaw exécute un tour silencieux qui rappelle à lagent denregistrer le contexte important dans les fichiers de mémoire. Cette fonctionnalité est activée par défaut — vous navez rien à configurer.
<Tip>
Le flush de la mémoire évite la perte de contexte pendant la compaction. Si votre agent a dans la conversation des faits importants qui ne sont pas encore écrits dans un fichier, ils seront enregistrés automatiquement avant que le résumé n'ait lieu.
Le vidage de la mémoire évite la perte de contexte pendant la compaction. Si votre agent a dans la conversation des faits importants qui ne sont pas encore écrits dans un fichier, ils seront enregistrés automatiquement avant que le résumé nait lieu.
</Tip>
## Rêverie (expérimental)
## Dreaming
La rêverie est une passe de consolidation en arrière-plan facultative pour la mémoire. Elle collecte des signaux à court terme, évalue les candidats et ne promeut que les éléments qualifiés dans la mémoire à long terme (`MEMORY.md`).
Dreaming est une passe optionnelle de consolidation en arrière-plan pour la mémoire. Elle collecte les signaux à court terme, évalue les candidats et ne promeut dans la mémoire à long terme (`MEMORY.md`) que les éléments qualifiés.
Elle est conçue pour maintenir un signal élevé dans la mémoire à long terme :
- **Option d'activation** : désactivée par défaut.
- **Planifiée** : lorsqu'elle est activée, `memory-core` gère automatiquement une tâche cron récurrente pour une passe complète de rêverie.
- **Avec seuils** : les promotions doivent franchir des seuils de score, de fréquence de rappel et de diversité des requêtes.
- **Opt-in** : désactivée par défaut.
- **Planifiée** : lorsquelle est activée, `memory-core` gère automatiquement une tâche Cron récurrente pour une phase complète de Dreaming.
- **À seuil** : les promotions doivent franchir des seuils de score, de fréquence de rappel et de diversité des requêtes.
- **Révisable** : les résumés de phase et les entrées du journal sont écrits dans `DREAMS.md` pour relecture humaine.
Pour le comportement des phases, les signaux de score et les détails du journal des rêves, voir [Dreaming (experimental)](/fr/concepts/dreaming).
Pour le comportement des phases, les signaux de score et les détails du journal des rêves, voir [Dreaming](/fr/concepts/dreaming).
## Rétrospective fondée et promotion en direct
## Remplissage rétrospectif ancré dans lhistorique et promotion en direct
Le système de rêverie possède désormais deux voies de relecture étroitement liées :
Le système de Dreaming dispose désormais de deux voies de relecture étroitement liées :
- **La rêverie en direct** fonctionne à partir du stockage de rêverie à court terme sous `memory/.dreams/` et c'est ce que la phase profonde normale utilise pour décider ce qui peut être promu dans `MEMORY.md`.
- **La rétrospective fondée** lit les notes historiques `memory/YYYY-MM-DD.md` comme des fichiers de jour autonomes et écrit une sortie de relecture structurée dans `DREAMS.md`.
- **Le Dreaming en direct** fonctionne à partir du magasin de Dreaming à court terme situé dans `memory/.dreams/` et correspond à ce que la phase profonde normale utilise pour décider de ce qui peut être promu dans `MEMORY.md`.
- **Le remplissage rétrospectif ancré dans lhistorique** lit les anciennes notes `memory/YYYY-MM-DD.md` comme des fichiers journaliers autonomes et écrit une sortie de relecture structurée dans `DREAMS.md`.
La rétrospective fondée est utile lorsque vous voulez rejouer d'anciennes notes et examiner ce que le système considère comme durable sans modifier manuellement `MEMORY.md`.
Le remplissage rétrospectif ancré dans lhistorique est utile lorsque vous voulez rejouer danciennes notes et examiner ce que le système considère comme durable sans modifier manuellement `MEMORY.md`.
Lorsque vous utilisez :
Quand vous utilisez :
```bash
openclaw memory rem-backfill --path ./memory --stage-short-term
```
les candidats durables fondés ne sont pas promus directement. Ils sont préparés dans le même stockage de rêverie à court terme que la phase profonde normale utilise déjà. Cela signifie :
les candidats durables ancrés dans lhistorique ne sont pas promus directement. Ils sont placés dans le même magasin de Dreaming à court terme que celui déjà utilisé par la phase profonde normale. Cela signifie que :
- `DREAMS.md` reste la surface de relecture humaine.
- le stockage à court terme reste la surface de classement orientée machine.
- `MEMORY.md` n'est toujours écrit que par la promotion profonde.
- le magasin à court terme reste la surface de classement orientée machine.
- `MEMORY.md` nest toujours écrit que par la promotion profonde.
Si vous décidez que la relecture n'était pas utile, vous pouvez supprimer les artefacts préparés sans toucher aux entrées de journal ordinaires ni à l'état normal de rappel :
Si vous décidez que la relecture nétait pas utile, vous pouvez supprimer les artefacts mis en attente sans toucher aux entrées ordinaires du journal ni à létat normal de rappel :
```bash
openclaw memory rem-backfill --rollback
@ -141,19 +141,19 @@ openclaw memory rem-backfill --rollback-short-term
## CLI
```bash
openclaw memory status # Vérifier l'état de l'index et le fournisseur
openclaw memory status # Vérifier létat de lindex et le fournisseur
openclaw memory search "query" # Rechercher depuis la ligne de commande
openclaw memory index --force # Reconstruire l'index
openclaw memory index --force # Reconstruire lindex
```
## Pour aller plus loin
- [Builtin Memory Engine](/fr/concepts/memory-builtin) -- backend SQLite par défaut
- [QMD Memory Engine](/fr/concepts/memory-qmd) -- sidecar local-first avancé
- [Honcho Memory](/fr/concepts/memory-honcho) -- mémoire intersession native IA
- [Memory Wiki](/fr/plugins/memory-wiki) -- coffre de connaissances compilé et outils natifs du wiki
- [Memory Search](/fr/concepts/memory-search) -- pipeline de recherche, fournisseurs et réglages
- [Dreaming (experimental)](/fr/concepts/dreaming) -- promotion en arrière-plan
- [Builtin Memory Engine](/fr/concepts/memory-builtin) backend SQLite par défaut
- [QMD Memory Engine](/fr/concepts/memory-qmd) — sidecar avancé local-first
- [Honcho Memory](/fr/concepts/memory-honcho) mémoire intersession native IA
- [Memory Wiki](/fr/plugins/memory-wiki) coffre de connaissances compilé et outils natifs du wiki
- [Memory Search](/fr/concepts/memory-search) pipeline de recherche, fournisseurs et réglages
- [Dreaming](/fr/concepts/dreaming) — promotion en arrière-plan
du rappel à court terme vers la mémoire à long terme
- [Référence de configuration de la mémoire](/fr/reference/memory-config) -- tous les paramètres de configuration
- [Compaction](/fr/concepts/compaction) -- comment la compaction interagit avec la mémoire
- [Référence de configuration de la mémoire](/fr/reference/memory-config) tous les paramètres de configuration
- [Compaction](/fr/concepts/compaction) comment la compaction interagit avec la mémoire

File diff suppressed because it is too large Load Diff

View File

@ -1,28 +1,28 @@
---
read_when:
- Vous voulez servir des modèles depuis votre propre machine GPU
- Vous souhaitez servir des modèles depuis votre propre machine GPU
- Vous configurez LM Studio ou un proxy compatible OpenAI
- Vous avez besoin des conseils les plus sûrs pour les modèles locaux
summary: Exécuter OpenClaw sur des LLM locaux (LM Studio, vLLM, LiteLLM, points de terminaison OpenAI personnalisés)
- Vous avez besoin des recommandations les plus sûres pour les modèles locaux
summary: Exécutez OpenClaw sur des LLM locaux (LM Studio, vLLM, LiteLLM, points de terminaison OpenAI personnalisés)
title: Modèles locaux
x-i18n:
generated_at: "2026-04-15T06:56:33Z"
generated_at: "2026-04-15T14:40:31Z"
model: gpt-5.4
provider: openai
source_hash: 8778cc1c623a356ff3cf306c494c046887f9417a70ec71e659e4a8aae912a780
source_hash: 7a506ff83e4c2870d3878339f646c906584454a156ecd618c360f592cf3b0011
source_path: gateway/local-models.md
workflow: 15
---
# Modèles locaux
Le local est possible, mais OpenClaw attend une grande fenêtre de contexte ainsi que de solides défenses contre linjection de prompt. Les petites cartes tronquent le contexte et affaiblissent la sécurité. Visez haut : **≥2 Mac Studio au maximum ou une machine GPU équivalente (~30 k$+)**. Un seul GPU de **24 Go** ne fonctionne que pour des prompts plus légers, avec une latence plus élevée. Utilisez la **variante de modèle la plus grande / pleine taille que vous puissiez exécuter** ; les checkpoints fortement quantifiés ou « petits » augmentent le risque dinjection de prompt (voir [Sécurité](/fr/gateway/security)).
Le local est possible, mais OpenClaw attend un grand contexte ainsi que de solides défenses contre linjection de prompt. Les petites cartes tronquent le contexte et dégradent la sécurité. Visez haut : **≥2 Mac Studio au maximum de leur configuration ou un rig GPU équivalent (~30 k$+)**. Un seul GPU de **24 Go** ne fonctionne que pour des prompts plus légers, avec une latence plus élevée. Utilisez la **variante de modèle la plus grande / en taille complète que vous pouvez exécuter** ; les checkpoints fortement quantifiés ou « small » augmentent le risque dinjection de prompt (voir [Security](/fr/gateway/security)).
Si vous voulez la configuration locale la plus simple, commencez par [LM Studio](/fr/providers/lmstudio) ou [Ollama](/fr/providers/ollama) et `openclaw onboard`. Cette page est le guide prescriptif pour les piles locales plus haut de gamme et les serveurs locaux personnalisés compatibles OpenAI.
Si vous voulez la configuration locale avec le moins de friction, commencez par [LM Studio](/fr/providers/lmstudio) ou [Ollama](/fr/providers/ollama) puis lancez `openclaw onboard`. Cette page est le guide prescriptif pour des piles locales haut de gamme et des serveurs locaux personnalisés compatibles OpenAI.
## Recommandé : LM Studio + grand modèle local (API Responses)
La meilleure pile locale actuelle. Chargez un grand modèle dans LM Studio (par exemple, une version pleine taille de Qwen, DeepSeek ou Llama), activez le serveur local (par défaut `http://127.0.0.1:1234`), et utilisez lAPI Responses pour séparer le raisonnement du texte final.
La meilleure pile locale actuelle. Chargez un grand modèle dans LM Studio (par exemple, une version complète de Qwen, DeepSeek ou Llama), activez le serveur local (par défaut `http://127.0.0.1:1234`), et utilisez lAPI Responses pour séparer le raisonnement du texte final.
```json5
{
@ -45,7 +45,7 @@ La meilleure pile locale actuelle. Chargez un grand modèle dans LM Studio (par
models: [
{
id: “my-local-model”,
name: “Local Model”,
name: “Modèle local”,
reasoning: false,
input: [“text”],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
@ -59,16 +59,16 @@ La meilleure pile locale actuelle. Chargez un grand modèle dans LM Studio (par
}
```
**Liste de vérification de configuration**
**Checklist de configuration**
- Installez LM Studio : [https://lmstudio.ai](https://lmstudio.ai)
- Dans LM Studio, téléchargez la **plus grande version de modèle disponible** (évitez les variantes « small » / fortement quantifiées), démarrez le serveur et confirmez que `http://127.0.0.1:1234/v1/models` le liste.
- Dans LM Studio, téléchargez la **plus grande version de modèle disponible** (évitez les variantes « small » / fortement quantifiées), démarrez le serveur, puis vérifiez que `http://127.0.0.1:1234/v1/models` laffiche.
- Remplacez `my-local-model` par lID réel du modèle affiché dans LM Studio.
- Gardez le modèle chargé ; le chargement à froid ajoute de la latence au démarrage.
- Gardez le modèle chargé ; un chargement à froid ajoute de la latence au démarrage.
- Ajustez `contextWindow` / `maxTokens` si votre version de LM Studio diffère.
- Pour WhatsApp, restez sur lAPI Responses afin que seul le texte final soit envoyé.
Conservez aussi des modèles hébergés configurés même lorsque vous exécutez en local ; utilisez `models.mode: "merge"` pour garder des solutions de repli disponibles.
Gardez aussi les modèles hébergés configurés même quand vous exécutez du local ; utilisez `models.mode: "merge"` afin que les solutions de repli restent disponibles.
### Configuration hybride : primaire hébergé, repli local
@ -97,7 +97,7 @@ Conservez aussi des modèles hébergés configurés même lorsque vous exécutez
models: [
{
id: "my-local-model",
name: "Local Model",
name: "Modèle local",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
@ -113,16 +113,16 @@ Conservez aussi des modèles hébergés configurés même lorsque vous exécutez
### Priorité au local avec filet de sécurité hébergé
Inversez lordre du primaire et des fallbacks ; conservez le même bloc `providers` et `models.mode: "merge"` afin de pouvoir revenir sur Sonnet ou Opus lorsque la machine locale est indisponible.
Inversez lordre entre primaire et fallback ; conservez le même bloc providers et `models.mode: "merge"` afin de pouvoir basculer vers Sonnet ou Opus quand la machine locale est indisponible.
### Hébergement régional / routage des données
- Des variantes MiniMax/Kimi/GLM hébergées existent aussi sur OpenRouter avec des points de terminaison épinglés par région (par exemple, hébergés aux États-Unis). Choisissez-y la variante régionale pour conserver le trafic dans la juridiction de votre choix tout en utilisant `models.mode: "merge"` pour les fallbacks Anthropic/OpenAI.
- Le tout-local reste la meilleure option pour la confidentialité ; le routage régional hébergé est lentre-deux lorsque vous avez besoin de fonctionnalités fournisseur tout en gardant le contrôle du flux de données.
- Le local uniquement reste la voie la plus protectrice pour la confidentialité ; le routage régional hébergé est loption intermédiaire lorsque vous avez besoin de fonctionnalités du fournisseur tout en gardant le contrôle du flux de données.
## Autres proxys locaux compatibles OpenAI
vLLM, LiteLLM, OAI-proxy ou des Gateway personnalisés fonctionnent sils exposent un point de terminaison `/v1` de style OpenAI. Remplacez le bloc fournisseur ci-dessus par votre point de terminaison et lID de modèle :
vLLM, LiteLLM, OAI-proxy ou des passerelles personnalisées fonctionnent sils exposent un point de terminaison `/v1` de style OpenAI. Remplacez le bloc provider ci-dessus par votre point de terminaison et votre ID de modèle :
```json5
{
@ -136,7 +136,7 @@ vLLM, LiteLLM, OAI-proxy ou des Gateway personnalisés fonctionnent sils expo
models: [
{
id: "my-local-model",
name: "Local Model",
name: "Modèle local",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
@ -150,30 +150,30 @@ vLLM, LiteLLM, OAI-proxy ou des Gateway personnalisés fonctionnent sils expo
}
```
Conservez `models.mode: "merge"` afin que les modèles hébergés restent disponibles comme solutions de repli.
Conservez `models.mode: "merge"` pour que les modèles hébergés restent disponibles en fallback.
Remarque de comportement pour les backends `/v1` locaux/proxifiés :
Remarque de comportement pour les backends locaux / proxifiés `/v1` :
- OpenClaw les traite comme des routes compatibles OpenAI de type proxy, et non comme des points de terminaison OpenAI natifs
- la mise en forme des requêtes propre à OpenAI natif ne sapplique pas ici : pas de `service_tier`, pas de `store` Responses, pas de mise en forme de payload de compatibilité de raisonnement OpenAI, et pas dindices de cache de prompt
- les en-têtes dattribution OpenClaw cachés (`originator`, `version`, `User-Agent`) ne sont pas injectés sur ces URL de proxy personnalisées
- le façonnage de requête réservé à OpenAI natif ne sapplique pas ici : pas de `service_tier`, pas de `store` Responses, pas de façonnage de payload de compatibilité de raisonnement OpenAI, et pas dindices de cache de prompt
- les en-têtes dattribution OpenClaw masqués (`originator`, `version`, `User-Agent`) ne sont pas injectés sur ces URL de proxy personnalisées
Notes de compatibilité pour les backends compatibles OpenAI plus stricts :
- Certains serveurs nacceptent que `messages[].content` sous forme de chaîne sur Chat Completions, et non des tableaux structurés de parties de contenu. Définissez `models.providers.<provider>.models[].compat.requiresStringContent: true` pour ces points de terminaison.
- Certains backends locaux plus petits ou plus stricts sont instables avec la forme complète du prompt de lenvironnement dexécution agent dOpenClaw, en particulier lorsque des schémas doutils sont inclus. Si le backend fonctionne pour de petits appels directs `/v1/chat/completions` mais échoue sur des tours agent OpenClaw normaux, essayez dabord `agents.defaults.localModelMode: "lean"` pour supprimer les outils par défaut lourds comme `browser`, `cron` et `message` ; si cela échoue encore, essayez `models.providers.<provider>.models[].compat.supportsTools: false`.
- Si le backend échoue encore uniquement sur des exécutions OpenClaw plus importantes, le problème restant est généralement lié à la capacité du modèle/serveur en amont ou à un bug du backend, pas à la couche de transport dOpenClaw.
- Certains backends locaux plus petits ou plus stricts sont instables avec la forme complète des prompts du runtime dagent dOpenClaw, en particulier lorsque des schémas doutils sont inclus. Si le backend fonctionne pour de petits appels directs à `/v1/chat/completions` mais échoue sur des tours dagent OpenClaw normaux, essayez dabord `agents.defaults.experimental.localModelLean: true` pour retirer les outils par défaut les plus lourds comme `browser`, `cron` et `message` ; il sagit dun indicateur expérimental, pas dun réglage stable du mode par défaut. Voir [Experimental Features](/fr/concepts/experimental-features). Si cela échoue encore, essayez `models.providers.<provider>.models[].compat.supportsTools: false`.
- Si le backend échoue encore uniquement sur des exécutions OpenClaw plus importantes, le problème restant est généralement une limite de capacité du modèle/serveur en amont ou un bug du backend, et non la couche de transport dOpenClaw.
## Dépannage
- Le Gateway peut-il atteindre le proxy ? `curl http://127.0.0.1:1234/v1/models`.
- Modèle LM Studio déchargé ? Rechargez-le ; un démarrage à froid est une cause fréquente de « blocage ».
- OpenClaw avertit lorsque la fenêtre de contexte détectée est inférieure à **32k** et bloque en dessous de **16k**. Si vous atteignez ce précontrôle, augmentez la limite de contexte du serveur/modèle ou choisissez un modèle plus grand.
- Le Gateway peut atteindre le proxy ? `curl http://127.0.0.1:1234/v1/models`.
- Le modèle LM Studio est déchargé ? Rechargez-le ; le démarrage à froid est une cause fréquente de « blocage ».
- OpenClaw avertit lorsque la fenêtre de contexte détectée est inférieure à **32k** et bloque en dessous de **16k**. Si vous atteignez cette vérification préalable, augmentez la limite de contexte du serveur/modèle ou choisissez un modèle plus grand.
- Erreurs de contexte ? Réduisez `contextWindow` ou augmentez la limite de votre serveur.
- Le serveur compatible OpenAI renvoie `messages[].content ... expected a string` ?
Ajoutez `compat.requiresStringContent: true` sur cette entrée de modèle.
- Les petits appels directs `/v1/chat/completions` fonctionnent, mais `openclaw infer model run`
- Les petits appels directs à `/v1/chat/completions` fonctionnent, mais `openclaw infer model run`
échoue sur Gemma ou un autre modèle local ? Désactivez dabord les schémas doutils avec
`compat.supportsTools: false`, puis testez à nouveau. Si le serveur plante encore uniquement
sur des prompts OpenClaw plus volumineux, considérez cela comme une limitation du serveur/modèle en amont.
- Sécurité : les modèles locaux contournent les filtres côté fournisseur ; gardez des agents limités et laissez Compaction activé pour limiter le rayon dimpact de linjection de prompt.
`compat.supportsTools: false`, puis retestez. Si le serveur plante encore uniquement
sur de plus gros prompts OpenClaw, considérez cela comme une limite du serveur/modèle en amont.
- Sécurité : les modèles locaux contournent les filtres côté fournisseur ; gardez les agents limités et Compaction activé pour limiter le rayon dimpact dune injection de prompt.

File diff suppressed because it is too large Load Diff

View File

@ -1,27 +1,27 @@
---
read_when:
- Vous voulez utiliser GitHub Copilot comme fournisseur de modèles
- Vous avez besoin du flux `openclaw models auth login-github-copilot`
summary: Connectez-vous à GitHub Copilot depuis OpenClaw à laide du flux dappareil
- Vous souhaitez utiliser GitHub Copilot comme fournisseur de modèles
- Vous avez besoin du flux `openclaw models auth login-github-copilot`.
summary: Connectez-vous à GitHub Copilot depuis OpenClaw en utilisant le flux dappareil
title: GitHub Copilot
x-i18n:
generated_at: "2026-04-12T23:30:51Z"
generated_at: "2026-04-15T14:40:31Z"
model: gpt-5.4
provider: openai
source_hash: 51fee006e7d4e78e37b0c29356b0090b132de727d99b603441767d3fb642140b
source_hash: b8258fecff22fb73b057de878462941f6eb86d0c5f775c5eac4840e95ba5eccf
source_path: providers/github-copilot.md
workflow: 15
---
# GitHub Copilot
GitHub Copilot est lassistant de codage IA de GitHub. Il donne accès aux modèles Copilot pour votre compte GitHub et votre forfait. OpenClaw peut utiliser Copilot comme fournisseur de modèles de deux façons différentes.
GitHub Copilot est lassistant de programmation par IA de GitHub. Il fournit un accès aux modèles Copilot pour votre compte et votre forfait GitHub. OpenClaw peut utiliser Copilot comme fournisseur de modèles de deux façons différentes.
## Deux façons dutiliser Copilot dans OpenClaw
<Tabs>
<Tab title="Fournisseur intégré (github-copilot)">
Utilisez le flux natif de connexion par appareil pour obtenir un jeton GitHub, puis léchanger contre des jetons dAPI Copilot lorsque OpenClaw sexécute. Cest le chemin **par défaut** et le plus simple, car il ne nécessite pas VS Code.
Utilisez le flux natif de connexion par appareil pour obtenir un jeton GitHub, puis léchanger contre des jetons dAPI Copilot lors de lexécution dOpenClaw. Il sagit du chemin **par défaut** et du plus simple, car il ne nécessite pas VS Code.
<Steps>
<Step title="Exécuter la commande de connexion">
@ -29,7 +29,7 @@ GitHub Copilot est lassistant de codage IA de GitHub. Il donne accès aux mod
openclaw models auth login-github-copilot
```
Il vous sera demandé de visiter une URL et de saisir un code à usage unique. Gardez le terminal ouvert jusquà la fin du processus.
Il vous sera demandé de visiter une URL et de saisir un code à usage unique. Gardez le terminal ouvert jusquà la fin de lopération.
</Step>
<Step title="Définir un modèle par défaut">
```bash
@ -52,17 +52,17 @@ GitHub Copilot est lassistant de codage IA de GitHub. Il donne accès aux mod
Utilisez lextension VS Code **Copilot Proxy** comme pont local. OpenClaw communique avec le point de terminaison `/v1` du proxy et utilise la liste de modèles que vous y configurez.
<Note>
Choisissez cette option si vous utilisez déjà Copilot Proxy dans VS Code ou si vous devez passer par lui. Vous devez activer le Plugin et garder lextension VS Code en cours dexécution.
Choisissez cette option si vous utilisez déjà Copilot Proxy dans VS Code ou si vous devez passer par lui. Vous devez activer le Plugin et laisser lextension VS Code en cours dexécution.
</Note>
</Tab>
</Tabs>
## Drapeaux facultatifs
## Indicateurs facultatifs
| Drapeau | Description |
| ------------- | ---------------------------------------------------------- |
| `--yes` | Ignorer la demande de confirmation |
| Flag | Description |
| --------------- | --------------------------------------------------- |
| `--yes` | Ignorer linvite de confirmation |
| `--set-default` | Appliquer également le modèle par défaut recommandé du fournisseur |
```bash
@ -75,47 +75,87 @@ openclaw models auth login --provider github-copilot --method device --set-defau
<AccordionGroup>
<Accordion title="TTY interactif requis">
Le flux de connexion par appareil nécessite un TTY interactif. Exécutez-le directement dans un terminal, pas dans un script non interactif ni dans un pipeline CI.
Le flux de connexion par appareil nécessite un TTY interactif. Exécutez-le directement dans un terminal, et non dans un script non interactif ou un pipeline CI.
</Accordion>
<Accordion title="La disponibilité des modèles dépend de votre forfait">
La disponibilité des modèles Copilot dépend de votre forfait GitHub. Si un modèle est refusé, essayez un autre ID (par exemple `github-copilot/gpt-4.1`).
La disponibilité des modèles Copilot dépend de votre forfait GitHub. Si un modèle est refusé, essayez un autre identifiant (par exemple `github-copilot/gpt-4.1`).
</Accordion>
<Accordion title="Sélection du transport">
Les ID de modèles Claude utilisent automatiquement le transport Anthropic Messages. Les modèles GPT, série o et Gemini conservent le transport OpenAI Responses. OpenClaw sélectionne le transport correct en fonction de la référence du modèle.
Les identifiants de modèles Claude utilisent automatiquement le transport Anthropic Messages. Les modèles GPT, de série o et Gemini conservent le transport OpenAI Responses. OpenClaw sélectionne le transport correct en fonction de la référence du modèle.
</Accordion>
<Accordion title="Ordre de résolution des variables denvironnement">
OpenClaw résout lauthentification Copilot à partir des variables denvironnement selon lordre de priorité suivant :
OpenClaw résout lauthentification Copilot à partir des variables denvironnement dans lordre de priorité suivant :
| Priorité | Variable | Remarques |
| -------- | ---------------------- | -------------------------------------- |
| Priority | Variable | Notes |
| -------- | --------------------- | -------------------------------- |
| 1 | `COPILOT_GITHUB_TOKEN` | Priorité la plus élevée, spécifique à Copilot |
| 2 | `GH_TOKEN` | Jeton GitHub CLI (secours) |
| 3 | `GITHUB_TOKEN` | Jeton GitHub standard (priorité la plus basse) |
| 2 | `GH_TOKEN` | Jeton GitHub CLI (repli) |
| 3 | `GITHUB_TOKEN` | Jeton GitHub standard (priorité la plus basse) |
Lorsque plusieurs variables sont définies, OpenClaw utilise celle ayant la priorité la plus élevée.
Le flux de connexion par appareil (`openclaw models auth login-github-copilot`) stocke son jeton dans le magasin de profils dauthentification et a priorité sur toutes les variables denvironnement.
Le flux de connexion par appareil (`openclaw models auth login-github-copilot`) stocke
son jeton dans le magasin de profils dauthentification et a priorité sur toutes les variables denvironnement.
</Accordion>
<Accordion title="Stockage du jeton">
La connexion stocke un jeton GitHub dans le magasin de profils dauthentification et léchange contre un jeton dAPI Copilot lorsque OpenClaw sexécute. Vous navez pas besoin de gérer le jeton manuellement.
La connexion stocke un jeton GitHub dans le magasin de profils dauthentification et léchange contre un jeton dAPI Copilot lors de lexécution dOpenClaw. Vous navez pas besoin de gérer le jeton manuellement.
</Accordion>
</AccordionGroup>
<Warning>
Nécessite un TTY interactif. Exécutez la commande de connexion directement dans un terminal, pas dans un script sans interface ni dans une tâche CI.
Nécessite un TTY interactif. Exécutez la commande de connexion directement dans un terminal, et non dans un script sans interface ou une tâche CI.
</Warning>
## Liens associés
## Intégrations de recherche en mémoire
GitHub Copilot peut également servir de fournisseur dintégrations pour la
[recherche en mémoire](/fr/concepts/memory-search). Si vous avez un abonnement Copilot et
vous êtes connecté, OpenClaw peut lutiliser pour les intégrations sans clé dAPI distincte.
### Détection automatique
Lorsque `memorySearch.provider` vaut `"auto"` (par défaut), GitHub Copilot est essayé
avec une priorité de 15 -- après les intégrations locales mais avant OpenAI et les autres fournisseurs payants. Si un jeton GitHub est disponible, OpenClaw découvre les modèles
dintégration disponibles via lAPI Copilot et sélectionne automatiquement le meilleur.
### Configuration explicite
```json5
{
agents: {
defaults: {
memorySearch: {
provider: "github-copilot",
// Facultatif : remplacer le modèle détecté automatiquement
model: "text-embedding-3-small",
},
},
},
}
```
### Fonctionnement
1. OpenClaw résout votre jeton GitHub (à partir des variables denvironnement ou du profil dauthentification).
2. Léchange contre un jeton dAPI Copilot de courte durée.
3. Interroge le point de terminaison Copilot `/models` pour découvrir les modèles dintégration disponibles.
4. Sélectionne le meilleur modèle (préfère `text-embedding-3-small`).
5. Envoie les requêtes dintégration au point de terminaison Copilot `/embeddings`.
La disponibilité des modèles dépend de votre forfait GitHub. Si aucun modèle dintégration nest
disponible, OpenClaw ignore Copilot et essaie le fournisseur suivant.
## Associé
<CardGroup cols={2}>
<Card title="Sélection du modèle" href="/fr/concepts/model-providers" icon="layers">
Choisir les fournisseurs, les références de modèles et le comportement de basculement.
</Card>
<Card title="OAuth et authentification" href="/fr/gateway/authentication" icon="key">
Détails dauthentification et règles de réutilisation des identifiants.
Détails sur lauthentification et règles de réutilisation des identifiants.
</Card>
</CardGroup>

View File

@ -1,36 +1,36 @@
---
read_when:
- Vous souhaitez exécuter OpenClaw avec des modèles cloud ou locaux via Ollama
- Vous avez besoin d'instructions de configuration et de paramétrage pour Ollama
- Vous voulez exécuter OpenClaw avec des modèles cloud ou locaux via Ollama
- Vous avez besoin dun guide de configuration et de paramétrage pour Ollama
summary: Exécuter OpenClaw avec Ollama (modèles cloud et locaux)
title: Ollama
x-i18n:
generated_at: "2026-04-12T23:31:49Z"
generated_at: "2026-04-15T14:41:03Z"
model: gpt-5.4
provider: openai
source_hash: ec796241b884ca16ec7077df4f3f1910e2850487bb3ea94f8fdb37c77e02b219
source_hash: 098e083e0fc484bddb5270eb630c55d7832039b462d1710372b6afece5cefcdf
source_path: providers/ollama.md
workflow: 15
---
# Ollama
Ollama est un runtime LLM local qui facilite l'exécution de modèles open source sur votre machine. OpenClaw s'intègre à l'API native d'Ollama (`/api/chat`), prend en charge le streaming et l'appel d'outils, et peut découvrir automatiquement les modèles Ollama locaux lorsque vous activez cette option avec `OLLAMA_API_KEY` (ou un profil d'authentification) et que vous ne définissez pas d'entrée explicite `models.providers.ollama`.
OpenClaw sintègre à lAPI native dOllama (`/api/chat`) pour les modèles cloud hébergés et les serveurs Ollama locaux/autohébergés. Vous pouvez utiliser Ollama selon trois modes : `Cloud + Local` via un hôte Ollama accessible, `Cloud only` sur `https://ollama.com`, ou `Local only` via un hôte Ollama accessible.
<Warning>
**Utilisateurs d'Ollama distant** : n'utilisez pas l'URL compatible OpenAI `/v1` (`http://host:11434/v1`) avec OpenClaw. Cela casse l'appel d'outils et les modèles peuvent produire du JSON d'outil brut en texte brut. Utilisez plutôt l'URL de l'API native Ollama : `baseUrl: "http://host:11434"` (sans `/v1`).
**Utilisateurs dOllama à distance** : nutilisez pas lURL compatible OpenAI `/v1` (`http://host:11434/v1`) avec OpenClaw. Cela casse lappel doutils et les modèles peuvent produire du JSON doutil brut sous forme de texte brut. Utilisez plutôt lURL de lAPI native dOllama : `baseUrl: "http://host:11434"` (sans `/v1`).
</Warning>
## Prise en main
## Premiers pas
Choisissez votre méthode de configuration et votre mode préférés.
<Tabs>
<Tab title="Onboarding (recommandé)">
**Idéal pour :** le chemin le plus rapide vers une configuration Ollama fonctionnelle avec découverte automatique des modèles.
<Tab title="Intégration guidée (recommandée)">
**Idéal pour :** le chemin le plus rapide vers une configuration Ollama cloud ou locale fonctionnelle.
<Steps>
<Step title="Lancer l'onboarding">
<Step title="Lancer lintégration guidée">
```bash
openclaw onboard
```
@ -38,13 +38,12 @@ Choisissez votre méthode de configuration et votre mode préférés.
Sélectionnez **Ollama** dans la liste des fournisseurs.
</Step>
<Step title="Choisir votre mode">
- **Cloud + Local** — modèles hébergés dans le cloud et modèles locaux ensemble
- **Local** — modèles locaux uniquement
Si vous choisissez **Cloud + Local** et que vous n'êtes pas connecté à ollama.com, l'onboarding ouvre un flux de connexion dans le navigateur.
- **Cloud + Local** — hôte Ollama local plus modèles cloud routés via cet hôte
- **Cloud only** — modèles Ollama hébergés via `https://ollama.com`
- **Local only** — modèles locaux uniquement
</Step>
<Step title="Sélectionner un modèle">
L'onboarding découvre les modèles disponibles et suggère des valeurs par défaut. Il télécharge automatiquement le modèle sélectionné s'il n'est pas disponible localement.
`Cloud only` demande `OLLAMA_API_KEY` et suggère des valeurs par défaut cloud hébergées. `Cloud + Local` et `Local only` demandent une URL de base Ollama, découvrent les modèles disponibles et téléchargent automatiquement le modèle local sélectionné sil nest pas encore disponible. `Cloud + Local` vérifie aussi si cet hôte Ollama est connecté pour laccès cloud.
</Step>
<Step title="Vérifier que le modèle est disponible">
```bash
@ -61,7 +60,7 @@ Choisissez votre méthode de configuration et votre mode préférés.
--accept-risk
```
Vous pouvez aussi spécifier une URL de base ou un modèle personnalisés :
Vous pouvez éventuellement indiquer une URL de base ou un modèle personnalisé :
```bash
openclaw onboard --non-interactive \
@ -74,13 +73,15 @@ Choisissez votre méthode de configuration et votre mode préférés.
</Tab>
<Tab title="Configuration manuelle">
**Idéal pour :** un contrôle total de l'installation, du téléchargement des modèles et de la configuration.
**Idéal pour :** un contrôle complet de la configuration cloud ou locale.
<Steps>
<Step title="Installer Ollama">
Téléchargez-le depuis [ollama.com/download](https://ollama.com/download).
<Step title="Choisir cloud ou local">
- **Cloud + Local** : installez Ollama, connectez-vous avec `ollama signin` et acheminez les requêtes cloud via cet hôte
- **Cloud only** : utilisez `https://ollama.com` avec une `OLLAMA_API_KEY`
- **Local only** : installez Ollama depuis [ollama.com/download](https://ollama.com/download)
</Step>
<Step title="Télécharger un modèle local">
<Step title="Télécharger un modèle local (local only)">
```bash
ollama pull gemma4
# ou
@ -89,22 +90,18 @@ Choisissez votre méthode de configuration et votre mode préférés.
ollama pull llama3.3
```
</Step>
<Step title="Se connecter pour les modèles cloud (facultatif)">
Si vous souhaitez aussi les modèles cloud :
```bash
ollama signin
```
</Step>
<Step title="Activer Ollama pour OpenClaw">
Définissez n'importe quelle valeur pour la clé API (Ollama n'exige pas de vraie clé) :
Pour `Cloud only`, utilisez votre vraie `OLLAMA_API_KEY`. Pour les configurations reposant sur un hôte, nimporte quelle valeur fictive fonctionne :
```bash
# Définir la variable d'environnement
# Cloud
export OLLAMA_API_KEY="your-ollama-api-key"
# Local-only
export OLLAMA_API_KEY="ollama-local"
# Ou configurer dans votre fichier de configuration
openclaw config set models.providers.ollama.apiKey "ollama-local"
openclaw config set models.providers.ollama.apiKey "OLLAMA_API_KEY"
```
</Step>
<Step title="Inspecter et définir votre modèle">
@ -134,38 +131,43 @@ Choisissez votre méthode de configuration et votre mode préférés.
<Tabs>
<Tab title="Cloud + Local">
Les modèles cloud vous permettent d'exécuter des modèles hébergés dans le cloud en parallèle de vos modèles locaux. Exemples : `kimi-k2.5:cloud`, `minimax-m2.7:cloud` et `glm-5.1:cloud` -- ceux-ci **n'exigent pas** de `ollama pull` local.
`Cloud + Local` utilise un hôte Ollama accessible comme point de contrôle pour les modèles locaux et cloud. Il sagit du flux hybride recommandé par Ollama.
Sélectionnez le mode **Cloud + Local** pendant la configuration. L'assistant vérifie si vous êtes connecté et ouvre un flux de connexion dans le navigateur si nécessaire. Si l'authentification ne peut pas être vérifiée, l'assistant revient aux modèles locaux par défaut.
Utilisez **Cloud + Local** pendant la configuration. OpenClaw demande lURL de base Ollama, découvre les modèles locaux sur cet hôte et vérifie si lhôte est connecté pour laccès cloud avec `ollama signin`. Lorsque lhôte est connecté, OpenClaw suggère aussi des valeurs par défaut cloud hébergées comme `kimi-k2.5:cloud`, `minimax-m2.7:cloud` et `glm-5.1:cloud`.
Vous pouvez aussi vous connecter directement sur [ollama.com/signin](https://ollama.com/signin).
OpenClaw suggère actuellement ces valeurs cloud par défaut : `kimi-k2.5:cloud`, `minimax-m2.7:cloud`, `glm-5.1:cloud`.
Si lhôte nest pas encore connecté, OpenClaw conserve une configuration locale uniquement jusquà ce que vous exécutiez `ollama signin`.
</Tab>
<Tab title="Local uniquement">
En mode local uniquement, OpenClaw découvre les modèles depuis l'instance Ollama locale. Aucune connexion cloud n'est nécessaire.
<Tab title="Cloud only">
`Cloud only` sexécute sur lAPI hébergée dOllama à ladresse `https://ollama.com`.
OpenClaw suggère actuellement `gemma4` comme modèle local par défaut.
Utilisez **Cloud only** pendant la configuration. OpenClaw demande `OLLAMA_API_KEY`, définit `baseUrl: "https://ollama.com"` et initialise la liste des modèles cloud hébergés. Ce chemin **nexige pas** de serveur Ollama local ni `ollama signin`.
</Tab>
<Tab title="Local only">
En mode local uniquement, OpenClaw découvre les modèles à partir de linstance Ollama configurée. Ce chemin est destiné aux serveurs Ollama locaux ou autohébergés.
OpenClaw suggère actuellement `gemma4` comme valeur locale par défaut.
</Tab>
</Tabs>
## Découverte de modèles (fournisseur implicite)
## Découverte des modèles (fournisseur implicite)
Lorsque vous définissez `OLLAMA_API_KEY` (ou un profil d'authentification) et que vous **ne** définissez **pas** `models.providers.ollama`, OpenClaw découvre les modèles depuis l'instance Ollama locale à l'adresse `http://127.0.0.1:11434`.
Lorsque vous définissez `OLLAMA_API_KEY` (ou un profil dauthentification) et que vous **ne définissez pas** `models.providers.ollama`, OpenClaw découvre les modèles à partir de linstance Ollama locale à ladresse `http://127.0.0.1:11434`.
| Comportement | Détail |
| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Requête de catalogue | Interroge `/api/tags` |
| Détection des capacités | Utilise des consultations `/api/show` au mieux pour lire `contextWindow` et détecter les capacités (y compris la vision) |
| Modèles de vision | Les modèles avec une capacité `vision` signalée par `/api/show` sont marqués comme compatibles image (`input: ["text", "image"]`), OpenClaw injecte donc automatiquement les images dans l'invite |
| Détection du raisonnement | Marque `reasoning` avec une heuristique sur le nom du modèle (`r1`, `reasoning`, `think`) |
| Limites de jetons | Définit `maxTokens` sur la limite maximale de jetons Ollama par défaut utilisée par OpenClaw |
| Coûts | Définit tous les coûts sur `0` |
| Comportement | Détail |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Requête du catalogue | Interroge `/api/tags` |
| Détection des capacités | Utilise des recherches `/api/show` au mieux pour lire `contextWindow` et détecter les capacités (y compris la vision) |
| Modèles avec vision | Les modèles avec une capacité `vision` signalée par `/api/show` sont marqués comme compatibles image (`input: ["text", "image"]`), afin quOpenClaw injecte automatiquement les images dans le prompt |
| Détection du raisonnement | Marque `reasoning` avec une heuristique basée sur le nom du modèle (`r1`, `reasoning`, `think`) |
| Limites de jetons | Définit `maxTokens` sur la limite maximale de jetons Ollama par défaut utilisée par OpenClaw |
| Coûts | Définit tous les coûts à `0` |
Cela évite les entrées de modèle manuelles tout en gardant le catalogue aligné avec l'instance Ollama locale.
Cela évite les entrées de modèle manuelles tout en gardant le catalogue aligné sur linstance Ollama locale.
```bash
# Voir quels modèles sont disponibles
@ -173,54 +175,54 @@ ollama list
openclaw models list
```
Pour ajouter un nouveau modèle, téléchargez-le simplement avec Ollama :
Pour ajouter un nouveau modèle, il suffit de le télécharger avec Ollama :
```bash
ollama pull mistral
```
Le nouveau modèle sera automatiquement découvert et disponible à l'utilisation.
Le nouveau modèle sera automatiquement découvert et disponible à lutilisation.
<Note>
Si vous définissez explicitement `models.providers.ollama`, la découverte automatique est ignorée et vous devez définir les modèles manuellement. Consultez la section de configuration explicite ci-dessous.
Si vous définissez explicitement `models.providers.ollama`, la découverte automatique est ignorée et vous devez définir les modèles manuellement. Voir la section de configuration explicite ci-dessous.
</Note>
## Configuration
<Tabs>
<Tab title="Basique (découverte implicite)">
Le moyen le plus simple d'activer Ollama est via une variable d'environnement :
Le chemin le plus simple pour activer le mode local uniquement passe par une variable denvironnement :
```bash
export OLLAMA_API_KEY="ollama-local"
```
<Tip>
Si `OLLAMA_API_KEY` est défini, vous pouvez omettre `apiKey` dans l'entrée du fournisseur et OpenClaw le renseignera pour les vérifications de disponibilité.
Si `OLLAMA_API_KEY` est défini, vous pouvez omettre `apiKey` dans lentrée du fournisseur et OpenClaw le renseignera pour les vérifications de disponibilité.
</Tip>
</Tab>
<Tab title="Explicite (modèles manuels)">
Utilisez une configuration explicite lorsque Ollama s'exécute sur un autre hôte/port, que vous souhaitez forcer des fenêtres de contexte ou des listes de modèles spécifiques, ou que vous voulez des définitions de modèles entièrement manuelles.
Utilisez une configuration explicite si vous voulez une configuration cloud hébergée, si Ollama sexécute sur un autre hôte/port, si vous voulez forcer des fenêtres de contexte ou des listes de modèles spécifiques, ou si vous voulez des définitions de modèles entièrement manuelles.
```json5
{
models: {
providers: {
ollama: {
baseUrl: "http://ollama-host:11434",
apiKey: "ollama-local",
baseUrl: "https://ollama.com",
apiKey: "OLLAMA_API_KEY",
api: "ollama",
models: [
{
id: "gpt-oss:20b",
name: "GPT-OSS 20B",
id: "kimi-k2.5:cloud",
name: "kimi-k2.5:cloud",
reasoning: false,
input: ["text"],
input: ["text", "image"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 8192,
maxTokens: 8192 * 10
contextWindow: 128000,
maxTokens: 8192
}
]
}
@ -232,7 +234,7 @@ Si vous définissez explicitement `models.providers.ollama`, la découverte auto
</Tab>
<Tab title="URL de base personnalisée">
Si Ollama s'exécute sur un autre hôte ou port (la configuration explicite désactive la découverte automatique, définissez donc les modèles manuellement) :
Si Ollama sexécute sur un autre hôte ou port (la configuration explicite désactive la découverte automatique, définissez donc les modèles manuellement) :
```json5
{
@ -240,8 +242,8 @@ Si vous définissez explicitement `models.providers.ollama`, la découverte auto
providers: {
ollama: {
apiKey: "ollama-local",
baseUrl: "http://ollama-host:11434", // Pas de /v1 - utilisez l'URL de l'API native Ollama
api: "ollama", // Définissez-le explicitement pour garantir le comportement natif d'appel d'outils
baseUrl: "http://ollama-host:11434", // Pas de /v1 - utilisez lURL de lAPI native Ollama
api: "ollama", // Définissez-la explicitement pour garantir le comportement natif dappel doutils
},
},
},
@ -249,7 +251,7 @@ Si vous définissez explicitement `models.providers.ollama`, la découverte auto
```
<Warning>
N'ajoutez pas `/v1` à l'URL. Le chemin `/v1` utilise le mode compatible OpenAI, où l'appel d'outils n'est pas fiable. Utilisez l'URL de base Ollama sans suffixe de chemin.
Najoutez pas `/v1` à lURL. Le chemin `/v1` utilise le mode compatible OpenAI, dans lequel lappel doutils nest pas fiable. Utilisez lURL de base Ollama sans suffixe de chemin.
</Warning>
</Tab>
@ -276,11 +278,11 @@ Une fois configurés, tous vos modèles Ollama sont disponibles :
OpenClaw prend en charge **Ollama Web Search** comme fournisseur `web_search` intégré.
| Propriété | Détail |
| Propriété | Détail |
| ----------- | ----------------------------------------------------------------------------------------------------------------- |
| Hôte | Utilise votre hôte Ollama configuré (`models.providers.ollama.baseUrl` lorsqu'il est défini, sinon `http://127.0.0.1:11434`) |
| Authentification | Sans clé |
| Condition requise | Ollama doit être en cours d'exécution et connecté avec `ollama signin` |
| Hôte | Utilise votre hôte Ollama configuré (`models.providers.ollama.baseUrl` lorsquil est défini, sinon `http://127.0.0.1:11434`) |
| Authentification | Sans clé |
| Condition requise | Ollama doit être en cours dexécution et connecté avec `ollama signin` |
Choisissez **Ollama Web Search** pendant `openclaw onboard` ou `openclaw configure --section web`, ou définissez :
@ -297,7 +299,7 @@ Choisissez **Ollama Web Search** pendant `openclaw onboard` ou `openclaw configu
```
<Note>
Pour la configuration complète et les détails de comportement, consultez [Ollama Web Search](/fr/tools/ollama-search).
Pour tous les détails de configuration et de comportement, voir [Ollama Web Search](/fr/tools/ollama-search).
</Note>
## Configuration avancée
@ -305,7 +307,7 @@ Pour la configuration complète et les détails de comportement, consultez [Olla
<AccordionGroup>
<Accordion title="Mode hérité compatible OpenAI">
<Warning>
**L'appel d'outils n'est pas fiable en mode compatible OpenAI.** Utilisez ce mode uniquement si vous avez besoin du format OpenAI pour un proxy et que vous ne dépendez pas du comportement natif d'appel d'outils.
**Lappel doutils nest pas fiable en mode compatible OpenAI.** Utilisez ce mode uniquement si vous avez besoin du format OpenAI pour un proxy et que vous ne dépendez pas du comportement natif dappel doutils.
</Warning>
Si vous devez utiliser à la place le point de terminaison compatible OpenAI (par exemple derrière un proxy qui ne prend en charge que le format OpenAI), définissez explicitement `api: "openai-completions"` :
@ -326,9 +328,9 @@ Pour la configuration complète et les détails de comportement, consultez [Olla
}
```
Ce mode peut ne pas prendre en charge simultanément le streaming et l'appel d'outils. Vous devrez peut-être désactiver le streaming avec `params: { streaming: false }` dans la configuration du modèle.
Ce mode peut ne pas prendre en charge simultanément le streaming et lappel doutils. Vous devrez peut-être désactiver le streaming avec `params: { streaming: false }` dans la configuration du modèle.
Lorsque `api: "openai-completions"` est utilisé avec Ollama, OpenClaw injecte `options.num_ctx` par défaut afin qu'Ollama ne revienne pas silencieusement à une fenêtre de contexte de 4096. Si votre proxy/upstream rejette les champs `options` inconnus, désactivez ce comportement :
Lorsque `api: "openai-completions"` est utilisé avec Ollama, OpenClaw injecte `options.num_ctx` par défaut afin quOllama ne revienne pas silencieusement à une fenêtre de contexte de 4096. Si votre proxy/amont rejette les champs `options` inconnus, désactivez ce comportement :
```json5
{
@ -349,7 +351,7 @@ Pour la configuration complète et les détails de comportement, consultez [Olla
</Accordion>
<Accordion title="Fenêtres de contexte">
Pour les modèles découverts automatiquement, OpenClaw utilise la fenêtre de contexte signalée par Ollama lorsqu'elle est disponible ; sinon, il revient à la fenêtre de contexte Ollama par défaut utilisée par OpenClaw.
Pour les modèles découverts automatiquement, OpenClaw utilise la fenêtre de contexte signalée par Ollama lorsquelle est disponible ; sinon, il revient à la fenêtre de contexte Ollama par défaut utilisée par OpenClaw.
Vous pouvez remplacer `contextWindow` et `maxTokens` dans la configuration explicite du fournisseur :
@ -374,31 +376,31 @@ Pour la configuration complète et les détails de comportement, consultez [Olla
</Accordion>
<Accordion title="Modèles de raisonnement">
OpenClaw traite par défaut comme compatibles avec le raisonnement les modèles dont le nom contient `deepseek-r1`, `reasoning` ou `think`.
OpenClaw considère par défaut que les modèles portant des noms comme `deepseek-r1`, `reasoning` ou `think` sont capables de raisonnement.
```bash
ollama pull deepseek-r1:32b
```
Aucune configuration supplémentaire n'est nécessaire -- OpenClaw les marque automatiquement.
Aucune configuration supplémentaire nest nécessaire -- OpenClaw les marque automatiquement.
</Accordion>
<Accordion title="Coûts des modèles">
Ollama est gratuit et s'exécute en local, donc tous les coûts de modèle sont définis à $0. Cela s'applique aussi bien aux modèles découverts automatiquement qu'aux modèles définis manuellement.
Ollama est gratuit et sexécute localement, donc tous les coûts des modèles sont définis à 0 $. Cela sapplique aussi bien aux modèles découverts automatiquement quaux modèles définis manuellement.
</Accordion>
<Accordion title="Embeddings de mémoire">
Le Plugin Ollama intégré enregistre un fournisseur d'embeddings de mémoire pour
la [recherche mémoire](/fr/concepts/memory). Il utilise l'URL de base Ollama
Le Plugin Ollama intégré enregistre un fournisseur dembeddings de mémoire pour la
[recherche en mémoire](/fr/concepts/memory). Il utilise lURL de base Ollama
et la clé API configurées.
| Propriété | Valeur |
| Property | Value |
| ------------- | ------------------- |
| Modèle par défaut | `nomic-embed-text` |
| Téléchargement automatique | Oui — le modèle d'embedding est téléchargé automatiquement s'il n'est pas présent localement |
| Téléchargement automatique | Oui — le modèle dembedding est téléchargé automatiquement sil nest pas présent localement |
Pour sélectionner Ollama comme fournisseur d'embeddings pour la recherche mémoire :
Pour sélectionner Ollama comme fournisseur dembeddings pour la recherche en mémoire :
```json5
{
@ -413,10 +415,10 @@ Pour la configuration complète et les détails de comportement, consultez [Olla
</Accordion>
<Accordion title="Configuration du streaming">
L'intégration Ollama d'OpenClaw utilise par défaut l'**API native Ollama** (`/api/chat`), qui prend entièrement en charge simultanément le streaming et l'appel d'outils. Aucune configuration particulière n'est nécessaire.
Lintégration Ollama dOpenClaw utilise par défaut l**API native dOllama** (`/api/chat`), qui prend entièrement en charge simultanément le streaming et lappel doutils. Aucune configuration particulière nest nécessaire.
<Tip>
Si vous devez utiliser le point de terminaison compatible OpenAI, consultez la section « Mode hérité compatible OpenAI » ci-dessus. Le streaming et l'appel d'outils peuvent ne pas fonctionner simultanément dans ce mode.
Si vous devez utiliser le point de terminaison compatible OpenAI, consultez la section « Mode hérité compatible OpenAI » ci-dessus. Le streaming et lappel doutils peuvent ne pas fonctionner simultanément dans ce mode.
</Tip>
</Accordion>
@ -426,13 +428,13 @@ Pour la configuration complète et les détails de comportement, consultez [Olla
<AccordionGroup>
<Accordion title="Ollama non détecté">
Assurez-vous qu'Ollama est en cours d'exécution, que vous avez défini `OLLAMA_API_KEY` (ou un profil d'authentification), et que vous n'avez **pas** défini d'entrée explicite `models.providers.ollama` :
Assurez-vous quOllama est en cours dexécution, que vous avez défini `OLLAMA_API_KEY` (ou un profil dauthentification), et que vous **navez pas** défini dentrée `models.providers.ollama` explicite :
```bash
ollama serve
```
Vérifiez que l'API est accessible :
Vérifiez que lAPI est accessible :
```bash
curl http://localhost:11434/api/tags
@ -441,7 +443,7 @@ Pour la configuration complète et les détails de comportement, consultez [Olla
</Accordion>
<Accordion title="Aucun modèle disponible">
Si votre modèle n'est pas listé, téléchargez-le localement ou définissez-le explicitement dans `models.providers.ollama`.
Si votre modèle napparaît pas dans la liste, téléchargez-le localement ou définissez-le explicitement dans `models.providers.ollama`.
```bash
ollama list # Voir ce qui est installé
@ -453,10 +455,10 @@ Pour la configuration complète et les détails de comportement, consultez [Olla
</Accordion>
<Accordion title="Connexion refusée">
Vérifiez qu'Ollama fonctionne sur le bon port :
Vérifiez quOllama sexécute sur le bon port :
```bash
# Vérifier si Ollama est en cours d'exécution
# Vérifier si Ollama est en cours dexécution
ps aux | grep ollama
# Ou redémarrer Ollama
@ -467,20 +469,20 @@ Pour la configuration complète et les détails de comportement, consultez [Olla
</AccordionGroup>
<Note>
Aide supplémentaire : [Dépannage](/fr/help/troubleshooting) et [FAQ](/fr/help/faq).
Plus daide : [Dépannage](/fr/help/troubleshooting) et [FAQ](/fr/help/faq).
</Note>
## Voir aussi
## En lien
<CardGroup cols={2}>
<Card title="Fournisseurs de modèles" href="/fr/concepts/model-providers" icon="layers">
Vue d'ensemble de tous les fournisseurs, des références de modèles et du comportement de basculement.
Vue densemble de tous les fournisseurs, des références de modèles et du comportement de basculement.
</Card>
<Card title="Sélection de modèle" href="/fr/concepts/models" icon="brain">
Comment choisir et configurer les modèles.
</Card>
<Card title="Ollama Web Search" href="/fr/tools/ollama-search" icon="magnifying-glass">
Configuration complète et détails de comportement pour la recherche web alimentée par Ollama.
Détails complets de configuration et de comportement pour la recherche web alimentée par Ollama.
</Card>
<Card title="Configuration" href="/fr/gateway/configuration" icon="gear">
Référence complète de configuration.

View File

@ -1,96 +1,92 @@
---
read_when:
- Vous souhaitez configurer des fournisseurs de recherche mémoire ou des modèles dembeddings
- Vous souhaitez configurer les fournisseurs de recherche en mémoire ou les modèles dintégration
- Vous souhaitez configurer le backend QMD
- Vous souhaitez ajuster la recherche hybride, MMR ou la décroissance temporelle
- Vous souhaitez activer lindexation mémoire multimodale
summary: Tous les réglages de configuration pour la recherche mémoire, les fournisseurs dembeddings, QMD, la recherche hybride et lindexation multimodale
- Vous souhaitez ajuster la recherche hybride, le MMR ou la décroissance temporelle
- Vous souhaitez activer lindexation de mémoire multimodale
summary: Tous les paramètres de configuration pour la recherche en mémoire, les fournisseurs dintégrations, QMD, la recherche hybride et lindexation multimodale
title: Référence de configuration de la mémoire
x-i18n:
generated_at: "2026-04-12T23:33:24Z"
generated_at: "2026-04-15T14:40:55Z"
model: gpt-5.4
provider: openai
source_hash: 299ca9b69eea292ea557a2841232c637f5c1daf2bc0f73c0a42f7c0d8d566ce2
source_hash: 334c3c4dac08e864487047d3822c75f96e9e7a97c38be4b4e0cd9e63c4489a53
source_path: reference/memory-config.md
workflow: 15
---
# Référence de configuration de la mémoire
Cette page liste tous les réglages de configuration pour la recherche mémoire dOpenClaw. Pour
les vues densemble conceptuelles, voir :
Cette page répertorie tous les paramètres de configuration de la recherche en mémoire dOpenClaw. Pour des vues densemble conceptuelles, voir :
- [Memory Overview](/fr/concepts/memory) -- comment fonctionne la mémoire
- [Builtin Engine](/fr/concepts/memory-builtin) -- backend SQLite par défaut
- [QMD Engine](/fr/concepts/memory-qmd) -- sidecar local-first
- [Memory Search](/fr/concepts/memory-search) -- pipeline de recherche et réglages
- [Active Memory](/fr/concepts/active-memory) -- activation du sous-agent mémoire pour les sessions interactives
- [Vue densemble de la mémoire](/fr/concepts/memory) -- fonctionnement de la mémoire
- [Moteur intégré](/fr/concepts/memory-builtin) -- backend SQLite par défaut
- [Moteur QMD](/fr/concepts/memory-qmd) -- sidecar local-first
- [Recherche en mémoire](/fr/concepts/memory-search) -- pipeline de recherche et réglage
- [Active Memory](/fr/concepts/active-memory) -- activation du sous-agent de mémoire pour les sessions interactives
Tous les paramètres de recherche mémoire se trouvent sous `agents.defaults.memorySearch` dans
`openclaw.json`, sauf indication contraire.
Tous les paramètres de recherche en mémoire se trouvent sous `agents.defaults.memorySearch` dans `openclaw.json`, sauf indication contraire.
Si vous recherchez le bouton de fonctionnalité **Active Memory** et la configuration du sous-agent,
cela se trouve sous `plugins.entries.active-memory` plutôt que sous `memorySearch`.
Si vous recherchez le bouton de fonctionnalité **Active Memory** et la configuration du sous-agent, ils se trouvent sous `plugins.entries.active-memory` plutôt que sous `memorySearch`.
Active Memory utilise un modèle à deux conditions :
Active Memory utilise un modèle à deux conditions :
1. le plugin doit être activé et cibler lid dagent actuel
2. la requête doit être une session de chat persistante interactive admissible
1. le Plugin doit être activé et cibler lidentifiant dagent actuel
2. la requête doit correspondre à une session de chat persistante interactive admissible
Voir [Active Memory](/fr/concepts/active-memory) pour le modèle dactivation,
la configuration gérée par le Plugin, la persistance des transcriptions et le modèle de déploiement sécurisé.
Voir [Active Memory](/fr/concepts/active-memory) pour le modèle dactivation, la configuration détenue par le Plugin, la persistance des transcriptions et le modèle de déploiement sûr.
---
## Sélection du fournisseur
| Clé | Type | Par défaut | Description |
| ---------- | --------- | ---------------- | ------------------------------------------------------------------------------------------- |
| `provider` | `string` | détection automatique | ID dadaptateur dembeddings : `openai`, `gemini`, `voyage`, `mistral`, `bedrock`, `ollama`, `local` |
| `model` | `string` | valeur par défaut du fournisseur | Nom du modèle dembeddings |
| `fallback` | `string` | `"none"` | ID dadaptateur de repli lorsque le principal échoue |
| `enabled` | `boolean` | `true` | Activer ou désactiver la recherche mémoire |
| Key | Type | Default | Description |
| ---------- | --------- | ---------------- | ------------------------------------------------------------------------------------------------------------- |
| `provider` | `string` | détecté automatiquement | ID de ladaptateur dintégration : `bedrock`, `gemini`, `github-copilot`, `local`, `mistral`, `ollama`, `openai`, `voyage` |
| `model` | `string` | valeur par défaut du fournisseur | Nom du modèle dintégration |
| `fallback` | `string` | `"none"` | ID de ladaptateur de secours en cas déchec du principal |
| `enabled` | `boolean` | `true` | Activer ou désactiver la recherche en mémoire |
### Ordre de détection automatique
Lorsque `provider` nest pas défini, OpenClaw sélectionne le premier disponible :
Lorsque `provider` nest pas défini, OpenClaw sélectionne le premier disponible :
1. `local` -- si `memorySearch.local.modelPath` est configuré et que le fichier existe.
2. `openai` -- si une clé OpenAI peut être résolue.
3. `gemini` -- si une clé Gemini peut être résolue.
4. `voyage` -- si une clé Voyage peut être résolue.
5. `mistral` -- si une clé Mistral peut être résolue.
6. `bedrock` -- si la chaîne didentifiants AWS SDK peut être résolue (rôle dinstance, clés daccès, profil, SSO, identité web ou configuration partagée).
2. `github-copilot` -- si un jeton GitHub Copilot peut être résolu (variable denvironnement ou profil dauthentification).
3. `openai` -- si une clé OpenAI peut être résolue.
4. `gemini` -- si une clé Gemini peut être résolue.
5. `voyage` -- si une clé Voyage peut être résolue.
6. `mistral` -- si une clé Mistral peut être résolue.
7. `bedrock` -- si la chaîne didentifiants AWS SDK est résolue (rôle dinstance, clés daccès, profil, SSO, identité web ou configuration partagée).
`ollama` est pris en charge mais nest pas détecté automatiquement (définissez-le explicitement).
`ollama` est pris en charge, mais nest pas détecté automatiquement (définissez-le explicitement).
### Résolution des clés API
### Résolution des clés dAPI
Les embeddings distants nécessitent une clé API. Bedrock utilise à la place la
chaîne didentifiants par défaut AWS SDK (rôles dinstance, SSO, clés daccès).
Les intégrations distantes nécessitent une clé dAPI. Bedrock utilise à la place la chaîne didentifiants par défaut de lAWS SDK (rôles dinstance, SSO, clés daccès).
| Fournisseur | Variable denvironnement | Clé de configuration |
| ----------- | ----------------------------- | ---------------------------------- |
| OpenAI | `OPENAI_API_KEY` | `models.providers.openai.apiKey` |
| Gemini | `GEMINI_API_KEY` | `models.providers.google.apiKey` |
| Voyage | `VOYAGE_API_KEY` | `models.providers.voyage.apiKey` |
| Mistral | `MISTRAL_API_KEY` | `models.providers.mistral.apiKey` |
| Bedrock | chaîne didentifiants AWS | Aucune clé API nécessaire |
| Ollama | `OLLAMA_API_KEY` (espace réservé) | -- |
| Provider | Env var | Config key |
| -------------- | -------------------------------------------------- | --------------------------------- |
| Bedrock | chaîne didentifiants AWS | Aucune clé dAPI requise |
| Gemini | `GEMINI_API_KEY` | `models.providers.google.apiKey` |
| GitHub Copilot | `COPILOT_GITHUB_TOKEN`, `GH_TOKEN`, `GITHUB_TOKEN` | Profil dauthentification via connexion par appareil |
| Mistral | `MISTRAL_API_KEY` | `models.providers.mistral.apiKey` |
| Ollama | `OLLAMA_API_KEY` (espace réservé) | -- |
| OpenAI | `OPENAI_API_KEY` | `models.providers.openai.apiKey` |
| Voyage | `VOYAGE_API_KEY` | `models.providers.voyage.apiKey` |
Codex OAuth couvre uniquement le chat/les complétions et ne satisfait pas les
requêtes dembeddings.
Lauthentification OAuth Codex couvre uniquement le chat/les complétions et ne satisfait pas les requêtes dintégration.
---
## Configuration du point de terminaison distant
## Configuration des points de terminaison distants
Pour des points de terminaison compatibles OpenAI personnalisés ou pour remplacer les valeurs par défaut du fournisseur :
Pour les points de terminaison personnalisés compatibles OpenAI ou le remplacement des valeurs par défaut du fournisseur :
| Clé | Type | Description |
| ---------------- | -------- | ------------------------------------------------ |
| `remote.baseUrl` | `string` | URL de base API personnalisée |
| `remote.apiKey` | `string` | Remplacer la clé API |
| Key | Type | Description |
| ---------------- | -------- | -------------------------------------------------- |
| `remote.baseUrl` | `string` | URL de base dAPI personnalisée |
| `remote.apiKey` | `string` | Remplacer la clé dAPI |
| `remote.headers` | `object` | En-têtes HTTP supplémentaires (fusionnés avec les valeurs par défaut du fournisseur) |
```json5
@ -114,22 +110,21 @@ Pour des points de terminaison compatibles OpenAI personnalisés ou pour remplac
## Configuration spécifique à Gemini
| Clé | Type | Par défaut | Description |
| Key | Type | Default | Description |
| ---------------------- | -------- | ---------------------- | ------------------------------------------ |
| `model` | `string` | `gemini-embedding-001` | Prend aussi en charge `gemini-embedding-2-preview` |
| `outputDimensionality` | `number` | `3072` | Pour Embedding 2 : 768, 1536 ou 3072 |
| `model` | `string` | `gemini-embedding-001` | Prend également en charge `gemini-embedding-2-preview` |
| `outputDimensionality` | `number` | `3072` | Pour Embedding 2 : 768, 1536 ou 3072 |
<Warning>
Modifier le modèle ou `outputDimensionality` déclenche une réindexation complète automatique.
La modification du modèle ou de `outputDimensionality` déclenche une réindexation complète automatique.
</Warning>
---
## Configuration des embeddings Bedrock
## Configuration des ingrations Bedrock
Bedrock utilise la chaîne didentifiants par défaut AWS SDK -- aucune clé API nest nécessaire.
Si OpenClaw sexécute sur EC2 avec un rôle dinstance activé pour Bedrock, définissez simplement le
fournisseur et le modèle :
Bedrock utilise la chaîne didentifiants par défaut de lAWS SDK -- aucune clé dAPI requise.
Si OpenClaw sexécute sur EC2 avec un rôle dinstance activé pour Bedrock, définissez simplement le fournisseur et le modèle :
```json5
{
@ -144,48 +139,45 @@ fournisseur et le modèle :
}
```
| Clé | Type | Par défaut | Description |
| ---------------------- | -------- | ------------------------------ | ------------------------------------ |
| `model` | `string` | `amazon.titan-embed-text-v2:0` | Tout ID de modèle dembeddings Bedrock |
| `outputDimensionality` | `number` | valeur par défaut du modèle | Pour Titan V2 : 256, 512 ou 1024 |
| Key | Type | Default | Description |
| ---------------------- | -------- | ------------------------------ | ------------------------------- |
| `model` | `string` | `amazon.titan-embed-text-v2:0` | Tout ID de modèle dintégration Bedrock |
| `outputDimensionality` | `number` | valeur par défaut du modèle | Pour Titan V2 : 256, 512 ou 1024 |
### Modèles pris en charge
Les modèles suivants sont pris en charge (avec détection de famille et dimensions
par défaut) :
Les modèles suivants sont pris en charge (avec détection de famille et dimensions par défaut) :
| ID du modèle | Fournisseur | Dimensions par défaut | Dimensions configurables |
| ------------------------------------------ | ----------- | --------------------- | ------------------------ |
| `amazon.titan-embed-text-v2:0` | Amazon | 1024 | 256, 512, 1024 |
| `amazon.titan-embed-text-v1` | Amazon | 1536 | -- |
| `amazon.titan-embed-g1-text-02` | Amazon | 1536 | -- |
| `amazon.titan-embed-image-v1` | Amazon | 1024 | -- |
| `amazon.nova-2-multimodal-embeddings-v1:0` | Amazon | 1024 | 256, 384, 1024, 3072 |
| `cohere.embed-english-v3` | Cohere | 1024 | -- |
| `cohere.embed-multilingual-v3` | Cohere | 1024 | -- |
| `cohere.embed-v4:0` | Cohere | 1536 | 256-1536 |
| `twelvelabs.marengo-embed-3-0-v1:0` | TwelveLabs | 512 | -- |
| `twelvelabs.marengo-embed-2-7-v1:0` | TwelveLabs | 1024 | -- |
| Model ID | Provider | Default Dims | Configurable Dims |
| ------------------------------------------ | ---------- | ------------ | -------------------- |
| `amazon.titan-embed-text-v2:0` | Amazon | 1024 | 256, 512, 1024 |
| `amazon.titan-embed-text-v1` | Amazon | 1536 | -- |
| `amazon.titan-embed-g1-text-02` | Amazon | 1536 | -- |
| `amazon.titan-embed-image-v1` | Amazon | 1024 | -- |
| `amazon.nova-2-multimodal-embeddings-v1:0` | Amazon | 1024 | 256, 384, 1024, 3072 |
| `cohere.embed-english-v3` | Cohere | 1024 | -- |
| `cohere.embed-multilingual-v3` | Cohere | 1024 | -- |
| `cohere.embed-v4:0` | Cohere | 1536 | 256-1536 |
| `twelvelabs.marengo-embed-3-0-v1:0` | TwelveLabs | 512 | -- |
| `twelvelabs.marengo-embed-2-7-v1:0` | TwelveLabs | 1024 | -- |
Les variantes suffixées par débit (par exemple `amazon.titan-embed-text-v1:2:8k`) héritent
de la configuration du modèle de base.
Les variantes suffixées par débit (par exemple `amazon.titan-embed-text-v1:2:8k`) héritent de la configuration du modèle de base.
### Auth
### Authentification
Lauth Bedrock utilise lordre standard de résolution des identifiants AWS SDK :
Lauthentification Bedrock utilise lordre standard de résolution des identifiants de lAWS SDK :
1. Variables denvironnement (`AWS_ACCESS_KEY_ID` + `AWS_SECRET_ACCESS_KEY`)
2. Cache de jetons SSO
3. Identifiants par jeton didentité web
3. Identifiants de jeton didentité web
4. Fichiers partagés didentifiants et de configuration
5. Identifiants de métadonnées ECS ou EC2
La région est résolue à partir de `AWS_REGION`, `AWS_DEFAULT_REGION`, du
`baseUrl` du fournisseur `amazon-bedrock`, ou utilise par défaut `us-east-1`.
La région est résolue à partir de `AWS_REGION`, `AWS_DEFAULT_REGION`, du `baseUrl` du fournisseur `amazon-bedrock`, ou prend par défaut `us-east-1`.
### Permissions IAM
### Autorisations IAM
Le rôle ou lutilisateur IAM doit disposer de :
Le rôle ou lutilisateur IAM doit disposer de :
```json
{
@ -195,7 +187,7 @@ Le rôle ou lutilisateur IAM doit disposer de :
}
```
Pour le moindre privilège, limitez `InvokeModel` au modèle spécifique :
Pour le principe du moindre privilège, limitez `InvokeModel` au modèle spécifique :
```
arn:aws:bedrock:*::foundation-model/amazon.titan-embed-text-v2:0
@ -203,44 +195,44 @@ arn:aws:bedrock:*::foundation-model/amazon.titan-embed-text-v2:0
---
## Configuration des embeddings locaux
## Configuration des intégrations locales
| Clé | Type | Par défaut | Description |
| --------------------- | -------- | ---------------------- | ------------------------------------ |
| `local.modelPath` | `string` | téléchargé automatiquement | Chemin vers le fichier de modèle GGUF |
| `local.modelCacheDir` | `string` | valeur par défaut node-llama-cpp | Répertoire de cache pour les modèles téléchargés |
| Key | Type | Default | Description |
| --------------------- | -------- | ---------------------- | ------------------------------- |
| `local.modelPath` | `string` | téléchargé automatiquement | Chemin vers le fichier de modèle GGUF |
| `local.modelCacheDir` | `string` | valeur par défaut de node-llama-cpp | Répertoire de cache pour les modèles téléchargés |
Modèle par défaut : `embeddinggemma-300m-qat-Q8_0.gguf` (~0,6 Go, téléchargé automatiquement).
Nécessite une build native : `pnpm approve-builds` puis `pnpm rebuild node-llama-cpp`.
Modèle par défaut : `embeddinggemma-300m-qat-Q8_0.gguf` (~0,6 Go, téléchargé automatiquement).
Nécessite une build native : `pnpm approve-builds` puis `pnpm rebuild node-llama-cpp`.
---
## Configuration de la recherche hybride
Tous sous `memorySearch.query.hybrid` :
Tout se trouve sous `memorySearch.query.hybrid` :
| Clé | Type | Par défaut | Description |
| --------------------- | --------- | ---------- | ---------------------------------------- |
| `enabled` | `boolean` | `true` | Activer la recherche hybride BM25 + vecteur |
| `vectorWeight` | `number` | `0.7` | Poids des scores vectoriels (0-1) |
| `textWeight` | `number` | `0.3` | Poids des scores BM25 (0-1) |
| `candidateMultiplier` | `number` | `4` | Multiplicateur de taille du vivier de candidats |
| Key | Type | Default | Description |
| --------------------- | --------- | ------- | ---------------------------------- |
| `enabled` | `boolean` | `true` | Activer la recherche hybride BM25 + vectorielle |
| `vectorWeight` | `number` | `0.7` | Poids des scores vectoriels (0-1) |
| `textWeight` | `number` | `0.3` | Poids des scores BM25 (0-1) |
| `candidateMultiplier` | `number` | `4` | Multiplicateur de taille du groupe de candidats |
### MMR (diversité)
| Clé | Type | Par défaut | Description |
| ------------- | --------- | ---------- | -------------------------------------------- |
| `mmr.enabled` | `boolean` | `false` | Activer le reclassement MMR |
| `mmr.lambda` | `number` | `0.7` | 0 = diversité maximale, 1 = pertinence maximale |
| Key | Type | Default | Description |
| ------------- | --------- | ------- | ------------------------------------ |
| `mmr.enabled` | `boolean` | `false` | Activer le reranking MMR |
| `mmr.lambda` | `number` | `0.7` | 0 = diversité maximale, 1 = pertinence maximale |
### Décroissance temporelle (récence)
| Clé | Type | Par défaut | Description |
| ---------------------------- | --------- | ---------- | ------------------------------------ |
| `temporalDecay.enabled` | `boolean` | `false` | Activer le boost de récence |
| `temporalDecay.halfLifeDays` | `number` | `30` | Le score est divisé par deux tous les N jours |
| Key | Type | Default | Description |
| ---------------------------- | --------- | ------- | ------------------------- |
| `temporalDecay.enabled` | `boolean` | `false` | Activer le boost de récence |
| `temporalDecay.halfLifeDays` | `number` | `30` | Le score est divisé par deux tous les N jours |
Les fichiers persistants (`MEMORY.md`, fichiers non datés dans `memory/`) ne subissent jamais de décroissance.
Les fichiers pérennes (`MEMORY.md`, fichiers non datés dans `memory/`) ne sont jamais affectés par la décroissance.
### Exemple complet
@ -265,10 +257,10 @@ Les fichiers persistants (`MEMORY.md`, fichiers non datés dans `memory/`) ne su
---
## Chemins mémoire supplémentaires
## Chemins de mémoire supplémentaires
| Clé | Type | Description |
| ------------ | ---------- | -------------------------------------------- |
| Key | Type | Description |
| ------------ | ---------- | ---------------------------------------- |
| `extraPaths` | `string[]` | Répertoires ou fichiers supplémentaires à indexer |
```json5
@ -283,15 +275,12 @@ Les fichiers persistants (`MEMORY.md`, fichiers non datés dans `memory/`) ne su
}
```
Les chemins peuvent être absolus ou relatifs à lespace de travail. Les répertoires sont analysés
récursivement à la recherche de fichiers `.md`. La gestion des liens symboliques dépend du backend actif :
le moteur intégré ignore les liens symboliques, tandis que QMD suit le comportement du scanner QMD
sous-jacent.
Les chemins peuvent être absolus ou relatifs à lespace de travail. Les répertoires sont analysés récursivement à la recherche de fichiers `.md`. La gestion des liens symboliques dépend du backend actif : le moteur intégré ignore les liens symboliques, tandis que QMD suit le comportement du scanner QMD sous-jacent.
Pour la recherche de transcriptions inter-agents à portée dagent, utilisez
`agents.list[].memorySearch.qmd.extraCollections` au lieu de `memory.qmd.paths`.
Ces collections supplémentaires suivent la même forme `{ path, name, pattern? }`, mais
elles sont fusionnées par agent et peuvent conserver des noms partagés explicites lorsque le chemin
elles sont fusionnées par agent et peuvent préserver des noms partagés explicites lorsque le chemin
pointe en dehors de lespace de travail actuel.
Si le même chemin résolu apparaît à la fois dans `memory.qmd.paths` et
`memorySearch.qmd.extraCollections`, QMD conserve la première entrée et ignore le doublon.
@ -300,135 +289,135 @@ Si le même chemin résolu apparaît à la fois dans `memory.qmd.paths` et
## Mémoire multimodale (Gemini)
Indexez des images et de laudio en plus du Markdown à laide de Gemini Embedding 2 :
Indexez des images et de laudio en plus du Markdown à laide de Gemini Embedding 2 :
| Clé | Type | Par défaut | Description |
| ------------------------- | ---------- | ---------- | ---------------------------------------- |
| `multimodal.enabled` | `boolean` | `false` | Activer lindexation multimodale |
| `multimodal.modalities` | `string[]` | -- | `["image"]`, `["audio"]` ou `["all"]` |
| `multimodal.maxFileBytes` | `number` | `10000000` | Taille maximale des fichiers à indexer |
| Key | Type | Default | Description |
| ------------------------- | ---------- | ---------- | -------------------------------------- |
| `multimodal.enabled` | `boolean` | `false` | Activer lindexation multimodale |
| `multimodal.modalities` | `string[]` | -- | `["image"]`, `["audio"]` ou `["all"]` |
| `multimodal.maxFileBytes` | `number` | `10000000` | Taille maximale des fichiers pour lindexation |
Sapplique uniquement aux fichiers de `extraPaths`. Les racines mémoire par défaut restent limitées au Markdown.
Sapplique uniquement aux fichiers dans `extraPaths`. Les racines de mémoire par défaut restent limitées au Markdown.
Nécessite `gemini-embedding-2-preview`. `fallback` doit être `"none"`.
Formats pris en charge : `.jpg`, `.jpeg`, `.png`, `.webp`, `.gif`, `.heic`, `.heif`
(images) ; `.mp3`, `.wav`, `.ogg`, `.opus`, `.m4a`, `.aac`, `.flac` (audio).
Formats pris en charge : `.jpg`, `.jpeg`, `.png`, `.webp`, `.gif`, `.heic`, `.heif`
(images) ; `.mp3`, `.wav`, `.ogg`, `.opus`, `.m4a`, `.aac`, `.flac` (audio).
---
## Cache des embeddings
## Cache dintégration
| Clé | Type | Par défaut | Description |
| ------------------ | --------- | ---------- | ------------------------------------- |
| `cache.enabled` | `boolean` | `false` | Mettre en cache les embeddings de segments dans SQLite |
| `cache.maxEntries` | `number` | `50000` | Nombre maximal dembeddings en cache |
| Key | Type | Default | Description |
| ------------------ | --------- | ------- | -------------------------------- |
| `cache.enabled` | `boolean` | `false` | Mettre en cache les ingrations de segments dans SQLite |
| `cache.maxEntries` | `number` | `50000` | Nombre maximal dingrations en cache |
Évite de recalculer les embeddings dun texte inchangé lors dune réindexation ou de mises à jour de transcription.
Empêche de recalculer les intégrations dun texte inchangé lors de la réindexation ou des mises à jour de transcription.
---
## Indexation par lots
| Clé | Type | Par défaut | Description |
| ----------------------------- | --------- | ---------- | -------------------------------- |
| `remote.batch.enabled` | `boolean` | `false` | Activer lAPI dembeddings par lots |
| `remote.batch.concurrency` | `number` | `2` | Tâches par lots en parallèle |
| `remote.batch.wait` | `boolean` | `true` | Attendre la fin du lot |
| `remote.batch.pollIntervalMs` | `number` | -- | Intervalle dinterrogation |
| `remote.batch.timeoutMinutes` | `number` | -- | Délai maximal du lot |
| Key | Type | Default | Description |
| ----------------------------- | --------- | ------- | -------------------------- |
| `remote.batch.enabled` | `boolean` | `false` | Activer lAPI dintégration par lots |
| `remote.batch.concurrency` | `number` | `2` | Tâches par lots parallèles |
| `remote.batch.wait` | `boolean` | `true` | Attendre la fin des lots |
| `remote.batch.pollIntervalMs` | `number` | -- | Intervalle dinterrogation |
| `remote.batch.timeoutMinutes` | `number` | -- | Délai dexpiration des lots |
Disponible pour `openai`, `gemini` et `voyage`. Le traitement par lots OpenAI est généralement
le plus rapide et le moins coûteux pour les grands remplissages initiaux.
Disponible pour `openai`, `gemini` et `voyage`. Lindexation par lots OpenAI est généralement
la plus rapide et la moins coûteuse pour les gros remplissages initiaux.
---
## Recherche mémoire de session (expérimental)
## Recherche en mémoire de session (expérimental)
Indexez les transcriptions de session et exposez-les via `memory_search` :
Indexez les transcriptions de session et exposez-les via `memory_search` :
| Clé | Type | Par défaut | Description |
| ----------------------------- | ---------- | ------------- | --------------------------------------------- |
| `experimental.sessionMemory` | `boolean` | `false` | Activer lindexation des sessions |
| `sources` | `string[]` | `["memory"]` | Ajouter `"sessions"` pour inclure les transcriptions |
| `sync.sessions.deltaBytes` | `number` | `100000` | Seuil en octets pour la réindexation |
| `sync.sessions.deltaMessages` | `number` | `50` | Seuil en nombre de messages pour la réindexation |
| Key | Type | Default | Description |
| ----------------------------- | ---------- | ------------ | --------------------------------------- |
| `experimental.sessionMemory` | `boolean` | `false` | Activer lindexation des sessions |
| `sources` | `string[]` | `["memory"]` | Ajouter `"sessions"` pour inclure les transcriptions |
| `sync.sessions.deltaBytes` | `number` | `100000` | Seuil en octets pour la réindexation |
| `sync.sessions.deltaMessages` | `number` | `50` | Seuil en messages pour la réindexation |
Lindexation des sessions est facultative et sexécute de manière asynchrone. Les résultats peuvent être légèrement
obsolètes. Les journaux de session résident sur le disque ; considérez donc laccès au système de fichiers comme la frontière de confiance.
Lindexation des sessions est optionnelle et sexécute de manière asynchrone. Les résultats peuvent être légèrement
obsolètes. Les journaux de session sont stockés sur disque ; considérez donc laccès au système de fichiers comme la
limite de confiance.
---
## Accélération vectorielle SQLite (`sqlite-vec`)
## Accélération vectorielle SQLite (sqlite-vec)
| Clé | Type | Par défaut | Description |
| ---------------------------- | --------- | ---------- | ---------------------------------------- |
| `store.vector.enabled` | `boolean` | `true` | Utiliser `sqlite-vec` pour les requêtes vectorielles |
| `store.vector.extensionPath` | `string` | intégré | Remplacer le chemin de `sqlite-vec` |
| Key | Type | Default | Description |
| ---------------------------- | --------- | ------- | --------------------------------- |
| `store.vector.enabled` | `boolean` | `true` | Utiliser sqlite-vec pour les requêtes vectorielles |
| `store.vector.extensionPath` | `string` | bundled | Remplacer le chemin de sqlite-vec |
Lorsque `sqlite-vec` nest pas disponible, OpenClaw se replie automatiquement sur une
similarité cosinus en processus.
Lorsque sqlite-vec nest pas disponible, OpenClaw revient automatiquement à la similarité cosinus en mémoire de processus.
---
## Stockage de lindex
| Clé | Type | Par défaut | Description |
| --------------------- | -------- | ------------------------------------ | -------------------------------------------- |
| Key | Type | Default | Description |
| --------------------- | -------- | ------------------------------------- | ------------------------------------------- |
| `store.path` | `string` | `~/.openclaw/memory/{agentId}.sqlite` | Emplacement de lindex (prend en charge le jeton `{agentId}`) |
| `store.fts.tokenizer` | `string` | `unicode61` | Tokenizer FTS5 (`unicode61` ou `trigram`) |
| `store.fts.tokenizer` | `string` | `unicode61` | Tokenizer FTS5 (`unicode61` ou `trigram`) |
---
## Configuration du backend QMD
Définissez `memory.backend = "qmd"` pour lactiver. Tous les paramètres QMD se trouvent sous
`memory.qmd` :
`memory.qmd` :
| Clé | Type | Par défaut | Description |
| ------------------------ | --------- | ---------- | -------------------------------------------- |
| `command` | `string` | `qmd` | Chemin de lexécutable QMD |
| `searchMode` | `string` | `search` | Commande de recherche : `search`, `vsearch`, `query` |
| `includeDefaultMemory` | `boolean` | `true` | Indexer automatiquement `MEMORY.md` + `memory/**/*.md` |
| `paths[]` | `array` | -- | Chemins supplémentaires : `{ name, path, pattern? }` |
| `sessions.enabled` | `boolean` | `false` | Indexer les transcriptions de session |
| `sessions.retentionDays` | `number` | -- | Rétention des transcriptions |
| `sessions.exportDir` | `string` | -- | Répertoire dexport |
| Key | Type | Default | Description |
| ------------------------ | --------- | -------- | -------------------------------------------- |
| `command` | `string` | `qmd` | Chemin de lexécutable QMD |
| `searchMode` | `string` | `search` | Commande de recherche : `search`, `vsearch`, `query` |
| `includeDefaultMemory` | `boolean` | `true` | Indexer automatiquement `MEMORY.md` + `memory/**/*.md` |
| `paths[]` | `array` | -- | Chemins supplémentaires : `{ name, path, pattern? }` |
| `sessions.enabled` | `boolean` | `false` | Indexer les transcriptions de session |
| `sessions.retentionDays` | `number` | -- | Rétention des transcriptions |
| `sessions.exportDir` | `string` | -- | Répertoire dexportation |
OpenClaw privilégie les formes actuelles de collection QMD et de requête MCP, mais conserve
la compatibilité avec les anciennes versions de QMD en se repliant sur les drapeaux de collection
hérités `--mask` et sur les anciens noms doutils MCP lorsque nécessaire.
OpenClaw privilégie les formes actuelles de collection QMD et de requête MCP, mais maintient
la compatibilité avec les anciennes versions de QMD en revenant aux indicateurs de collection hérités `--mask`
et aux anciens noms doutils MCP lorsque nécessaire.
Les remplacements de modèles QMD restent du côté QMD, et non dans la configuration OpenClaw. Si vous devez
Les remplacements de modèle QMD restent du côté de QMD, et non dans la configuration dOpenClaw. Si vous devez
remplacer globalement les modèles de QMD, définissez des variables denvironnement telles que
`QMD_EMBED_MODEL`, `QMD_RERANK_MODEL` et `QMD_GENERATE_MODEL` dans lenvironnement
runtime de la gateway.
`QMD_EMBED_MODEL`, `QMD_RERANK_MODEL` et `QMD_GENERATE_MODEL` dans lenvironnement dexécution
de la Gateway.
### Planification des mises à jour
| Clé | Type | Par défaut | Description |
| ------------------------- | --------- | ---------- | -------------------------------------------- |
| `update.interval` | `string` | `5m` | Intervalle dactualisation |
| `update.debounceMs` | `number` | `15000` | Anti-rebond des changements de fichiers |
| `update.onBoot` | `boolean` | `true` | Actualiser au démarrage |
| `update.waitForBootSync` | `boolean` | `false` | Bloquer le démarrage jusquà la fin de lactualisation |
| `update.embedInterval` | `string` | -- | Cadence distincte pour les embeddings |
| `update.commandTimeoutMs` | `number` | -- | Délai maximal pour les commandes QMD |
| `update.updateTimeoutMs` | `number` | -- | Délai maximal pour les opérations de mise à jour QMD |
| `update.embedTimeoutMs` | `number` | -- | Délai maximal pour les opérations dembeddings QMD |
| Key | Type | Default | Description |
| ------------------------- | --------- | ------- | ------------------------------------- |
| `update.interval` | `string` | `5m` | Intervalle de rafraîchissement |
| `update.debounceMs` | `number` | `15000` | Anti-rebond des modifications de fichiers |
| `update.onBoot` | `boolean` | `true` | Rafraîchir au démarrage |
| `update.waitForBootSync` | `boolean` | `false` | Bloquer le démarrage jusquà la fin du rafraîchissement |
| `update.embedInterval` | `string` | -- | Cadence dintégration distincte |
| `update.commandTimeoutMs` | `number` | -- | Délai dexpiration pour les commandes QMD |
| `update.updateTimeoutMs` | `number` | -- | Délai dexpiration pour les opérations de mise à jour QMD |
| `update.embedTimeoutMs` | `number` | -- | Délai dexpiration pour les opérations dintégration QMD |
### Limites
| Clé | Type | Par défaut | Description |
| ------------------------- | -------- | ---------- | ---------------------------------- |
| `limits.maxResults` | `number` | `6` | Nombre maximal de résultats de recherche |
| `limits.maxSnippetChars` | `number` | -- | Limiter la longueur des extraits |
| `limits.maxInjectedChars` | `number` | -- | Limiter le nombre total de caractères injectés |
| `limits.timeoutMs` | `number` | `4000` | Délai maximal de recherche |
| Key | Type | Default | Description |
| ------------------------- | -------- | ------- | -------------------------- |
| `limits.maxResults` | `number` | `6` | Nombre maximal de résultats de recherche |
| `limits.maxSnippetChars` | `number` | -- | Limiter la longueur des extraits |
| `limits.maxInjectedChars` | `number` | -- | Limiter le nombre total de caractères injectés |
| `limits.timeoutMs` | `number` | `4000` | Délai dexpiration de la recherche |
### Portée
Contrôle quelles sessions peuvent recevoir des résultats de recherche QMD. Même schéma que
[`session.sendPolicy`](/fr/gateway/configuration-reference#session) :
Contrôle quelles sessions peuvent recevoir les résultats de recherche QMD. Même schéma que
[`session.sendPolicy`](/fr/gateway/configuration-reference#session) :
```json5
{
@ -443,23 +432,23 @@ Contrôle quelles sessions peuvent recevoir des résultats de recherche QMD. Mê
}
```
La valeur par défaut fournie autorise les sessions directes et en canal, tout en refusant
toujours les groupes.
La valeur par défaut fournie autorise les sessions directes et de canal, tout en refusant
les groupes.
La valeur par défaut est limitée aux MP. `match.keyPrefix` correspond à la clé de session normalisée ;
La valeur par défaut est DM-only. `match.keyPrefix` correspond à la clé de session normalisée ;
`match.rawKeyPrefix` correspond à la clé brute, y compris `agent:<id>:`.
### Citations
`memory.citations` sapplique à tous les backends :
`memory.citations` sapplique à tous les backends :
| Valeur | Comportement |
| ---------------- | ---------------------------------------------------- |
| `auto` (par défaut) | Inclure un pied de page `Source: <path#line>` dans les extraits |
| `on` | Toujours inclure le pied de page |
| `off` | Omettre le pied de page (le chemin est tout de même transmis à lagent en interne) |
| Value | Behavior |
| ---------------- | --------------------------------------------------- |
| `auto` (par défaut) | Inclure le pied de page `Source: <path#line>` dans les extraits |
| `on` | Toujours inclure le pied de page |
| `off` | Omettre le pied de page (le chemin est toujours transmis à lagent en interne) |
### Exemple QMD complet
### Exemple complet QMD
```json5
{
@ -482,9 +471,9 @@ La valeur par défaut est limitée aux MP. `match.keyPrefix` correspond à la cl
---
## Dreaming (expérimental)
## Dreaming
Dreaming est configuré sous `plugins.entries.memory-core.config.dreaming`,
Dreaming se configure sous `plugins.entries.memory-core.config.dreaming`,
et non sous `agents.defaults.memorySearch`.
Dreaming sexécute comme un balayage planifié unique et utilise en interne des phases light/deep/REM comme
@ -494,10 +483,10 @@ Pour le comportement conceptuel et les commandes slash, voir [Dreaming](/fr/conc
### Paramètres utilisateur
| Clé | Type | Par défaut | Description |
| ----------- | --------- | ------------ | -------------------------------------------------- |
| `enabled` | `boolean` | `false` | Activer ou désactiver complètement Dreaming |
| `frequency` | `string` | `0 3 * * *` | Cadence Cron facultative pour le balayage complet de Dreaming |
| Key | Type | Default | Description |
| ----------- | --------- | ----------- | ------------------------------------------------- |
| `enabled` | `boolean` | `false` | Activer ou désactiver complètement Dreaming |
| `frequency` | `string` | `0 3 * * *` | Cadence Cron facultative pour le balayage complet de Dreaming |
### Exemple
@ -518,8 +507,8 @@ Pour le comportement conceptuel et les commandes slash, voir [Dreaming](/fr/conc
}
```
Remarques :
Remarques :
- Dreaming écrit létat machine dans `memory/.dreams/`.
- Dreaming écrit la sortie narrative lisible par un humain dans `DREAMS.md` (ou dans `dreams.md` existant).
- La politique de phases light/deep/REM et les seuils sont des comportements internes, pas une configuration destinée à lutilisateur.
- Dreaming écrit son état machine dans `memory/.dreams/`.
- Dreaming écrit une sortie narrative lisible par des humains dans `DREAMS.md` (ou `dreams.md` existant).
- La stratégie de phases light/deep/REM et les seuils sont un comportement interne, et non une configuration destinée à lutilisateur.

View File

@ -1,34 +1,34 @@
---
read_when:
- Rechercher une étape ou un drapeau donboarding spécifique
- Recherche dune étape ou dun drapeau donboarding spécifique
- Automatiser lonboarding avec le mode non interactif
- Déboguer le comportement de lonboarding
sidebarTitle: Onboarding Reference
summary: 'Référence complète pour lonboarding CLI : chaque étape, drapeau et champ de configuration'
title: Référence de lonboarding
summary: 'Référence complète pour lonboarding de la CLI : chaque étape, drapeau et champ de configuration'
title: Référence donboarding
x-i18n:
generated_at: "2026-04-07T06:55:19Z"
generated_at: "2026-04-15T14:40:53Z"
model: gpt-5.4
provider: openai
source_hash: a142b9ec4323fabb9982d05b64375d2b4a4007dffc910acbee3a38ff871a7236
source_hash: 1db3ff789422617634e6624f9d12c18b6a6c573721226b9c0fa6f6b7956ef33d
source_path: reference/wizard.md
workflow: 15
---
# Référence de lonboarding
# Référence donboarding
Ceci est la référence complète pour `openclaw onboard`.
Pour une vue densemble de haut niveau, voir [Onboarding (CLI)](/fr/start/wizard).
Voici la référence complète de `openclaw onboard`.
Pour une vue densemble de haut niveau, consultez [Onboarding (CLI)](/fr/start/wizard).
## Détails du flux (mode local)
<Steps>
<Step title="Détection de configuration existante">
<Step title="Détection de la configuration existante">
- Si `~/.openclaw/openclaw.json` existe, choisissez **Conserver / Modifier / Réinitialiser**.
- Relancer lonboarding **nefface rien** sauf si vous choisissez explicitement **Réinitialiser**
(ou passez `--reset`).
- La CLI `--reset` utilise par défaut `config+creds+sessions` ; utilisez `--reset-scope full`
pour supprimer aussi lespace de travail.
- Relancer lonboarding nefface **rien** à moins que vous choisissiez explicitement **Réinitialiser**
(ou que vous passiez `--reset`).
- Le drapeau CLI `--reset` utilise par défaut `config+creds+sessions` ; utilisez `--reset-scope full`
pour supprimer également lespace de travail.
- Si la configuration est invalide ou contient des clés héritées, lassistant sarrête et vous demande
dexécuter `openclaw doctor` avant de continuer.
- La réinitialisation utilise `trash` (jamais `rm`) et propose les portées suivantes :
@ -38,28 +38,28 @@ Pour une vue densemble de haut niveau, voir [Onboarding (CLI)](/fr/start/wiza
</Step>
<Step title="Modèle/Auth">
- **Clé API Anthropic** : utilise `ANTHROPIC_API_KEY` si présent ou demande une clé, puis lenregistre pour lutilisation du daemon.
- **Clé API Anthropic** : choix dassistant Anthropic préféré dans onboarding/configure.
- **Jeton de configuration Anthropic** : toujours disponible dans onboarding/configure, même si OpenClaw préfère maintenant réutiliser Claude CLI quand cest possible.
- **Abonnement OpenAI Code (Codex) (Codex CLI)** : si `~/.codex/auth.json` existe, lonboarding peut le réutiliser. Les identifiants Codex CLI réutilisés restent gérés par Codex CLI ; à expiration, OpenClaw relit dabord cette source et, lorsque le provider peut les rafraîchir, réécrit lidentifiant rafraîchi dans le stockage Codex au lieu den prendre lui-même la gestion.
- **Clé API Anthropic** : choix dassistant Anthropic privilégié dans lonboarding/configuration.
- **Jeton de configuration Anthropic** : toujours disponible dans lonboarding/configuration, bien quOpenClaw préfère désormais la réutilisation de Claude CLI lorsquelle est disponible.
- **Abonnement OpenAI Code (Codex) (Codex CLI)** : si `~/.codex/auth.json` existe, lonboarding peut le réutiliser. Les identifiants Codex CLI réutilisés restent gérés par Codex CLI ; à lexpiration, OpenClaw relit dabord cette source et, lorsque le fournisseur peut les actualiser, écrit lidentifiant actualisé dans le stockage Codex au lieu den prendre lui-même la gestion.
- **Abonnement OpenAI Code (Codex) (OAuth)** : flux navigateur ; collez le `code#state`.
- Définit `agents.defaults.model` sur `openai-codex/gpt-5.4` lorsque le modèle nest pas défini ou correspond à `openai/*`.
- Définit `agents.defaults.model` sur `openai-codex/gpt-5.4` lorsque le modèle nest pas défini ou vaut `openai/*`.
- **Clé API OpenAI** : utilise `OPENAI_API_KEY` si présent ou demande une clé, puis la stocke dans les profils dauthentification.
- Définit `agents.defaults.model` sur `openai/gpt-5.4` lorsque le modèle nest pas défini, correspond à `openai/*` ou à `openai-codex/*`.
- **Clé API xAI (Grok)** : demande `XAI_API_KEY` et configure xAI comme provider de modèle.
- **OpenCode** : demande `OPENCODE_API_KEY` (ou `OPENCODE_ZEN_API_KEY`, à obtenir sur https://opencode.ai/auth) et vous laisse choisir le catalogue Zen ou Go.
- **Ollama** : demande lURL de base Ollama, propose le mode **Cloud + Local** ou **Local**, découvre les modèles disponibles et récupère automatiquement le modèle local sélectionné si nécessaire.
- Définit `agents.defaults.model` sur `openai/gpt-5.4` lorsque le modèle nest pas défini, vaut `openai/*` ou `openai-codex/*`.
- **Clé API xAI (Grok)** : demande `XAI_API_KEY` et configure xAI comme fournisseur de modèle.
- **OpenCode** : demande `OPENCODE_API_KEY` (ou `OPENCODE_ZEN_API_KEY`, à obtenir sur https://opencode.ai/auth) et vous permet de choisir le catalogue Zen ou Go.
- **Ollama** : propose dabord **Cloud + Local**, **Cloud only** ou **Local only**. `Cloud only` demande `OLLAMA_API_KEY` et utilise `https://ollama.com` ; les modes adossés à lhôte demandent lURL de base Ollama, détectent les modèles disponibles et récupèrent automatiquement le modèle local sélectionné si nécessaire ; `Cloud + Local` vérifie aussi si cet hôte Ollama est connecté pour laccès cloud.
- Plus de détails : [Ollama](/fr/providers/ollama)
- **Clé API** : stocke la clé pour vous.
- **Vercel AI Gateway (proxy multi-modèles)** : demande `AI_GATEWAY_API_KEY`.
- Plus de détails : [Vercel AI Gateway](/fr/providers/vercel-ai-gateway)
- **Cloudflare AI Gateway** : demande lID de compte, lID Gateway et `CLOUDFLARE_AI_GATEWAY_API_KEY`.
- Plus de détails : [Cloudflare AI Gateway](/fr/providers/cloudflare-ai-gateway)
- **MiniMax** : la configuration est écrite automatiquement ; la valeur hébergée par défaut est `MiniMax-M2.7`.
- **MiniMax** : la configuration est écrite automatiquement ; le modèle hébergé par défaut est `MiniMax-M2.7`.
La configuration par clé API utilise `minimax/...`, et la configuration OAuth utilise
`minimax-portal/...`.
- Plus de détails : [MiniMax](/fr/providers/minimax)
- **StepFun** : la configuration est écrite automatiquement pour StepFun standard ou Step Plan sur les endpoints Chine ou globaux.
- Standard inclut actuellement `step-3.5-flash`, et Step Plan inclut aussi `step-3.5-flash-2603`.
- **StepFun** : la configuration est écrite automatiquement pour StepFun standard ou Step Plan sur les points de terminaison Chine ou globaux.
- La version standard inclut actuellement `step-3.5-flash`, et Step Plan inclut également `step-3.5-flash-2603`.
- Plus de détails : [StepFun](/fr/providers/stepfun)
- **Synthetic (compatible Anthropic)** : demande `SYNTHETIC_API_KEY`.
- Plus de détails : [Synthetic](/fr/providers/synthetic)
@ -67,89 +67,89 @@ Pour une vue densemble de haut niveau, voir [Onboarding (CLI)](/fr/start/wiza
- **Kimi Coding** : la configuration est écrite automatiquement.
- Plus de détails : [Moonshot AI (Kimi + Kimi Coding)](/fr/providers/moonshot)
- **Ignorer** : aucune authentification nest encore configurée.
- Choisissez un modèle par défaut parmi les options détectées (ou saisissez manuellement provider/model). Pour une meilleure qualité et un risque plus faible dinjection de prompt, choisissez le modèle de dernière génération le plus robuste disponible dans votre pile de providers.
- Lonboarding exécute une vérification du modèle et avertit si le modèle configuré est inconnu ou si lauthentification est manquante.
- Le mode de stockage des clés API utilise par défaut des valeurs de profil dauthentification en clair. Utilisez `--secret-input-mode ref` pour stocker à la place des références adossées à des variables denvironnement (par exemple `keyRef: { source: "env", provider: "default", id: "OPENAI_API_KEY" }`).
- Les profils dauthentification se trouvent dans `~/.openclaw/agents/<agentId>/agent/auth-profiles.json` (clés API + OAuth). `~/.openclaw/credentials/oauth.json` est une source héritée réservée à limportation.
- Choisissez un modèle par défaut parmi les options détectées (ou saisissez manuellement provider/model). Pour une qualité optimale et un risque plus faible dinjection de prompt, choisissez le modèle le plus puissant et de dernière génération disponible dans votre pile de fournisseurs.
- Lonboarding exécute une vérification du modèle et affiche un avertissement si le modèle configuré est inconnu ou si lauthentification manque.
- Le mode de stockage des clés API utilise par défaut des valeurs de profils dauthentification en texte brut. Utilisez `--secret-input-mode ref` pour stocker à la place des références adossées à lenvironnement (par exemple `keyRef: { source: "env", provider: "default", id: "OPENAI_API_KEY" }`).
- Les profils dauthentification se trouvent dans `~/.openclaw/agents/<agentId>/agent/auth-profiles.json` (clés API + OAuth). `~/.openclaw/credentials/oauth.json` est un mécanisme hérité réservé à limportation.
- Plus de détails : [/concepts/oauth](/fr/concepts/oauth)
<Note>
Astuce pour environnement headless/serveur : terminez OAuth sur une machine avec navigateur, puis copiez
Astuce pour les environnements headless/serveur : terminez OAuth sur une machine disposant dun navigateur, puis copiez
le `auth-profiles.json` de cet agent (par exemple
`~/.openclaw/agents/<agentId>/agent/auth-profiles.json`, ou le chemin correspondant
`$OPENCLAW_STATE_DIR/...`) vers lhôte Gateway. `credentials/oauth.json`
`~/.openclaw/agents/<agentId>/agent/auth-profiles.json`, ou le chemin
correspondant sous `$OPENCLAW_STATE_DIR/...`) vers lhôte Gateway. `credentials/oauth.json`
nest quune source dimportation héritée.
</Note>
</Step>
<Step title="Espace de travail">
- Valeur par défaut `~/.openclaw/workspace` (configurable).
- Initialise les fichiers despace de travail nécessaires au rituel damorçage de lagent.
- Valeur par défaut : `~/.openclaw/workspace` (configurable).
- Initialise les fichiers despace de travail nécessaires au rituel de bootstrap de lagent.
- Disposition complète de lespace de travail + guide de sauvegarde : [Espace de travail de lagent](/fr/concepts/agent-workspace)
</Step>
<Step title="Gateway">
- Port, mode de liaison, mode dauthentification, exposition Tailscale.
- Port, bind, mode dauthentification, exposition Tailscale.
- Recommandation dauthentification : conservez **Token** même pour loopback afin que les clients WS locaux doivent sauthentifier.
- En mode token, la configuration interactive propose :
- **Générer/stocker un token en clair** (par défaut)
- **Utiliser SecretRef** (opt-in)
- Le démarrage rapide réutilise les SecretRef `gateway.auth.token` existants via les providers `env`, `file` et `exec` pour la sonde donboarding/lamorçage du tableau de bord.
- Si ce SecretRef est configuré mais ne peut pas être résolu, lonboarding échoue tôt avec un message de correction clair au lieu de dégrader silencieusement lauthentification dexécution.
- En mode mot de passe, la configuration interactive prend également en charge le stockage en clair ou SecretRef.
- Chemin SecretRef pour token en mode non interactif : `--gateway-token-ref-env <ENV_VAR>`.
- **Générer/stocker un token en texte brut** (par défaut)
- **Utiliser SecretRef** (optionnel)
- Quickstart réutilise les SecretRef `gateway.auth.token` existants sur les fournisseurs `env`, `file` et `exec` pour le bootstrap de la sonde donboarding/du tableau de bord.
- Si ce SecretRef est configuré mais ne peut pas être résolu, lonboarding échoue tôt avec un message de correction clair au lieu de dégrader silencieusement lauthentification à lexécution.
- En mode mot de passe, la configuration interactive prend également en charge le stockage en texte brut ou via SecretRef.
- Chemin SecretRef de token non interactif : `--gateway-token-ref-env <ENV_VAR>`.
- Nécessite une variable denvironnement non vide dans lenvironnement du processus donboarding.
- Ne peut pas être combiné avec `--gateway-token`.
- Désactivez lauthentification uniquement si vous faites totalement confiance à chaque processus local.
- Les liaisons hors loopback nécessitent toujours une authentification.
- Désactivez lauthentification uniquement si vous faites entièrement confiance à chaque processus local.
- Les binds non loopback exigent toujours une authentification.
</Step>
<Step title="Canaux">
- [WhatsApp](/fr/channels/whatsapp) : connexion QR facultative.
- [WhatsApp](/fr/channels/whatsapp) : connexion par QR facultative.
- [Telegram](/fr/channels/telegram) : token de bot.
- [Discord](/fr/channels/discord) : token de bot.
- [Google Chat](/fr/channels/googlechat) : JSON de compte de service + audience webhook.
- [Mattermost](/fr/channels/mattermost) (plugin) : token de bot + URL de base.
- [Google Chat](/fr/channels/googlechat) : JSON de compte de service + audience Webhook.
- [Mattermost](/fr/channels/mattermost) (Plugin) : token de bot + URL de base.
- [Signal](/fr/channels/signal) : installation facultative de `signal-cli` + configuration du compte.
- [BlueBubbles](/fr/channels/bluebubbles) : **recommandé pour iMessage** ; URL du serveur + mot de passe + webhook.
- [iMessage](/fr/channels/imessage) : chemin CLI `imsg` hérité + accès à la base de données.
- Sécurité des messages privés : le mode par défaut est lappairage. Le premier message privé envoie un code ; approuvez-le via `openclaw pairing approve <channel> <code>` ou utilisez des listes dautorisation.
- Sécurité des DM : lappairage est le mode par défaut. Le premier DM envoie un code ; approuvez-le via `openclaw pairing approve <channel> <code>` ou utilisez des listes dautorisation.
</Step>
<Step title="Recherche web">
- Choisissez un provider pris en charge tel que Brave, DuckDuckGo, Exa, Firecrawl, Gemini, Grok, Kimi, MiniMax Search, Ollama Web Search, Perplexity, SearXNG ou Tavily (ou ignorez cette étape).
- Les providers adossés à une API peuvent utiliser des variables denvironnement ou une configuration existante pour une configuration rapide ; les providers sans clé utilisent à la place leurs prérequis spécifiques.
- Choisissez un fournisseur pris en charge comme Brave, DuckDuckGo, Exa, Firecrawl, Gemini, Grok, Kimi, MiniMax Search, Ollama Web Search, Perplexity, SearXNG ou Tavily (ou ignorez cette étape).
- Les fournisseurs adossés à une API peuvent utiliser des variables denvironnement ou une configuration existante pour une configuration rapide ; les fournisseurs sans clé utilisent à la place leurs prérequis spécifiques.
- Ignorez avec `--skip-search`.
- Configurez plus tard : `openclaw configure --section web`.
</Step>
<Step title="Installation du daemon">
- macOS : LaunchAgent
- Nécessite une session utilisateur connectée ; pour un environnement headless, utilisez un LaunchDaemon personnalisé (non fourni).
- Linux (et Windows via WSL2) : unité systemd utilisateur
- Lonboarding tente dactiver le lingering via `loginctl enable-linger <user>` afin que la Gateway reste active après déconnexion.
- Peut demander sudo (écrit dans `/var/lib/systemd/linger`) ; il essaie dabord sans sudo.
- **Sélection du runtime :** Node (recommandé ; requis pour WhatsApp/Telegram). Bun est **non recommandé**.
- Si lauthentification par token nécessite un token et que `gateway.auth.token` est géré par SecretRef, linstallation du daemon le valide mais ne conserve pas les valeurs de token en clair résolues dans les métadonnées denvironnement du service supervisé.
- Si lauthentification par token nécessite un token et que le SecretRef de token configuré nest pas résolu, linstallation du daemon est bloquée avec des indications exploitables.
- Si `gateway.auth.token` et `gateway.auth.password` sont tous deux configurés et que `gateway.auth.mode` nest pas défini, linstallation du daemon est bloquée jusquà ce que le mode soit défini explicitement.
- Linux (et Windows via WSL2) : unité utilisateur systemd
- Lonboarding tente dactiver le lingering via `loginctl enable-linger <user>` afin que la Gateway reste active après la déconnexion.
- Peut demander sudo (écriture dans `/var/lib/systemd/linger`) ; il essaie dabord sans sudo.
- **Sélection du runtime :** Node (recommandé ; requis pour WhatsApp/Telegram). Bun est **déconseillé**.
- Si lauthentification par token exige un token et que `gateway.auth.token` est géré par SecretRef, linstallation du daemon le valide mais ne persiste pas les valeurs de token en texte brut résolues dans les métadonnées denvironnement du service superviseur.
- Si lauthentification par token exige un token et que le SecretRef de token configuré nest pas résolu, linstallation du daemon est bloquée avec des instructions exploitables.
- Si `gateway.auth.token` et `gateway.auth.password` sont tous deux configurés et que `gateway.auth.mode` nest pas défini, linstallation du daemon est bloquée jusquà ce que le mode soit explicitement défini.
</Step>
<Step title="Vérification de létat de santé">
- Démarre la Gateway (si nécessaire) et exécute `openclaw health`.
- Astuce : `openclaw status --deep` ajoute la sonde de santé Gateway en direct à la sortie détat, y compris les sondes de canal lorsquelles sont prises en charge (nécessite une Gateway joignable).
- Astuce : `openclaw status --deep` ajoute la sonde détat de santé de la Gateway en direct à la sortie détat, y compris les sondes de canaux lorsque prises en charge (nécessite une Gateway accessible).
</Step>
<Step title="Skills (recommandé)">
- Lit les Skills disponibles et vérifie les exigences.
- Vous permet de choisir un gestionnaire de nœuds : **npm / pnpm** (bun non recommandé).
- Lit les Skills disponibles et vérifie les prérequis.
- Vous permet de choisir un gestionnaire Node : **npm / pnpm** (bun est déconseillé).
- Installe les dépendances facultatives (certaines utilisent Homebrew sur macOS).
</Step>
<Step title="Fin">
- Résumé + étapes suivantes, y compris les applications iOS/Android/macOS pour des fonctionnalités supplémentaires.
- Résumé + prochaines étapes, y compris les applications iOS/Android/macOS pour des fonctionnalités supplémentaires.
</Step>
</Steps>
<Note>
Si aucune interface graphique nest détectée, lonboarding affiche les instructions de redirection de port SSH pour linterface de contrôle au lieu douvrir un navigateur.
Si les assets de linterface de contrôle sont absents, lonboarding tente de les construire ; la solution de repli est `pnpm ui:build` (installe automatiquement les dépendances UI).
Si aucune interface graphique nest détectée, lonboarding affiche des instructions de redirection de port SSH pour linterface de contrôle au lieu douvrir un navigateur.
Si les ressources de linterface de contrôle sont absentes, lonboarding tente de les construire ; la solution de repli est `pnpm ui:build` (installe automatiquement les dépendances de linterface).
</Note>
## Mode non interactif
Utilisez `--non-interactive` pour automatiser ou script lonboarding :
Utilisez `--non-interactive` pour automatiser ou scriptiser lonboarding :
```bash
openclaw onboard --non-interactive \
@ -163,7 +163,7 @@ openclaw onboard --non-interactive \
--skip-skills
```
Ajoutez `--json` pour un résumé lisible par machine.
Ajoutez `--json` pour obtenir un résumé lisible par machine.
Token Gateway SecretRef en mode non interactif :
@ -176,13 +176,13 @@ openclaw onboard --non-interactive \
--gateway-token-ref-env OPENCLAW_GATEWAY_TOKEN
```
`--gateway-token` et `--gateway-token-ref-env` sont mutuellement exclusifs.
`--gateway-token` et `--gateway-token-ref-env` sexcluent mutuellement.
<Note>
`--json` **nimplique pas** le mode non interactif. Utilisez `--non-interactive` (et `--workspace`) pour les scripts.
`--json` nimplique **pas** le mode non interactif. Utilisez `--non-interactive` (et `--workspace`) pour les scripts.
</Note>
Des exemples de commandes spécifiques aux providers sont disponibles dans [Automatisation CLI](/fr/start/wizard-cli-automation#provider-specific-examples).
Des exemples de commandes spécifiques aux fournisseurs se trouvent dans [Automatisation CLI](/fr/start/wizard-cli-automation#provider-specific-examples).
Utilisez cette page de référence pour la sémantique des drapeaux et lordre des étapes.
### Ajouter un agent (mode non interactif)
@ -201,18 +201,18 @@ openclaw agents add work \
La Gateway expose le flux donboarding via RPC (`wizard.start`, `wizard.next`, `wizard.cancel`, `wizard.status`).
Les clients (application macOS, interface de contrôle) peuvent afficher les étapes sans réimplémenter la logique donboarding.
## Configuration Signal (`signal-cli`)
## Configuration de Signal (`signal-cli`)
Lonboarding peut installer `signal-cli` depuis les releases GitHub :
- Télécharge lasset de release approprié.
- Le stocke sous `~/.openclaw/tools/signal-cli/<version>/`.
- Télécharge la ressource de release appropriée.
- La stocke sous `~/.openclaw/tools/signal-cli/<version>/`.
- Écrit `channels.signal.cliPath` dans votre configuration.
Remarques :
- Les builds JVM nécessitent **Java 21**.
- Les builds natifs sont utilisés lorsquils sont disponibles.
- Les builds natives sont utilisées lorsquelles sont disponibles.
- Windows utilise WSL2 ; linstallation de signal-cli suit le flux Linux à lintérieur de WSL.
## Ce que lassistant écrit
@ -220,12 +220,12 @@ Remarques :
Champs typiques dans `~/.openclaw/openclaw.json` :
- `agents.defaults.workspace`
- `agents.defaults.model` / `models.providers` (si Minimax est choisi)
- `tools.profile` (lonboarding local utilise par défaut `"coding"` lorsquil nest pas défini ; les valeurs explicites existantes sont préservées)
- `gateway.*` (mode, liaison, authentification, Tailscale)
- `agents.defaults.model` / `models.providers` (si MiniMax est choisi)
- `tools.profile` (lonboarding local utilise par défaut `"coding"` lorsquil nest pas défini ; les valeurs explicites existantes sont conservées)
- `gateway.*` (mode, bind, auth, tailscale)
- `session.dmScope` (détails du comportement : [Référence de configuration CLI](/fr/start/wizard-cli-reference#outputs-and-internals))
- `channels.telegram.botToken`, `channels.discord.token`, `channels.matrix.*`, `channels.signal.*`, `channels.imessage.*`
- Listes dautorisation de canal (Slack/Discord/Matrix/Microsoft Teams) lorsque vous activez cette option pendant les invites (les noms sont résolus vers des identifiants lorsque cest possible).
- Listes dautorisation de canaux (Slack/Discord/Matrix/Microsoft Teams) lorsque vous activez cette option pendant les invites (les noms sont résolus en ID lorsque cest possible).
- `skills.install.nodeManager`
- `setup --node-manager` accepte `npm`, `pnpm` ou `bun`.
- La configuration manuelle peut toujours utiliser `yarn` en définissant directement `skills.install.nodeManager`.
@ -235,18 +235,18 @@ Champs typiques dans `~/.openclaw/openclaw.json` :
- `wizard.lastRunCommand`
- `wizard.lastRunMode`
`openclaw agents add` écrit `agents.list[]` et éventuellement `bindings`.
`openclaw agents add` écrit dans `agents.list[]` et `bindings` en option.
Les identifiants WhatsApp sont stockés sous `~/.openclaw/credentials/whatsapp/<accountId>/`.
Les sessions sont stockées sous `~/.openclaw/agents/<agentId>/sessions/`.
Certains canaux sont fournis sous forme de plugins. Lorsque vous en choisissez un pendant la configuration, lonboarding
vous demandera de linstaller (npm ou chemin local) avant de pouvoir le configurer.
vous invitera à linstaller (npm ou un chemin local) avant quil puisse être configuré.
## Documentation associée
- Vue densemble de lonboarding : [Onboarding (CLI)](/fr/start/wizard)
- Onboarding de lapplication macOS : [Onboarding](/fr/start/onboarding)
- Référence de configuration : [Configuration Gateway](/fr/gateway/configuration)
- Providers : [WhatsApp](/fr/channels/whatsapp), [Telegram](/fr/channels/telegram), [Discord](/fr/channels/discord), [Google Chat](/fr/channels/googlechat), [Signal](/fr/channels/signal), [BlueBubbles](/fr/channels/bluebubbles) (iMessage), [iMessage](/fr/channels/imessage) (hérité)
- Skills : [Skills](/fr/tools/skills), [Configuration Skills](/fr/tools/skills-config)
- Référence de configuration : [Configuration de la Gateway](/fr/gateway/configuration)
- Fournisseurs : [WhatsApp](/fr/channels/whatsapp), [Telegram](/fr/channels/telegram), [Discord](/fr/channels/discord), [Google Chat](/fr/channels/googlechat), [Signal](/fr/channels/signal), [BlueBubbles](/fr/channels/bluebubbles) (iMessage), [iMessage](/fr/channels/imessage) (hérité)
- Skills : [Skills](/fr/tools/skills), [Configuration des Skills](/fr/tools/skills-config)

View File

@ -1,15 +1,15 @@
---
read_when:
- Vous avez besoin du comportement détaillé de `openclaw onboard`
- Vous déboguez les résultats d'onboarding ou intégrez des clients d'onboarding
- Vous déboguez les résultats de lonboarding ou intégrez des clients donboarding
sidebarTitle: CLI reference
summary: Référence complète du flux de configuration de la CLI, de la configuration de l'authentification et des modèles, des sorties et des éléments internes
summary: Référence complète du flux de configuration de la CLI, de la configuration dauthentification/modèle, des sorties et des éléments internes
title: Référence de configuration de la CLI
x-i18n:
generated_at: "2026-04-06T03:13:18Z"
generated_at: "2026-04-15T14:40:59Z"
model: gpt-5.4
provider: openai
source_hash: 92f379b34a2b48c68335dae4f759117c770f018ec51b275f4f40421c6b3abb23
source_hash: 61ca679caca3b43fa02388294007f89db22d343e49e10b61d8d118cd8fbb7369
source_path: start/wizard-cli-reference.md
workflow: 15
---
@ -17,83 +17,83 @@ x-i18n:
# Référence de configuration de la CLI
Cette page est la référence complète pour `openclaw onboard`.
Pour le guide rapide, consultez [Onboarding (CLI)](/fr/start/wizard).
Pour le guide rapide, voir [Onboarding (CLI)](/fr/start/wizard).
## Ce que fait l'assistant
## Ce que fait lassistant
Le mode local (par défaut) vous guide à travers :
- La configuration du modèle et de l'authentification (abonnement OpenAI Code OAuth, Anthropic Claude CLI ou clé API, ainsi que les options MiniMax, GLM, Ollama, Moonshot, StepFun et AI Gateway)
- L'emplacement de l'espace de travail et les fichiers d'initialisation
- Les paramètres de la passerelle (port, liaison, authentification, tailscale)
- Les canaux et les fournisseurs (Telegram, WhatsApp, Discord, Google Chat, Mattermost, Signal, BlueBubbles et d'autres plugins de canal intégrés)
- L'installation du daemon (LaunchAgent, unité utilisateur systemd ou tâche planifiée Windows native avec solution de secours via le dossier Startup)
- La vérification d'état
- La configuration des Skills
- la configuration du modèle et de lauthentification (OAuth de labonnement OpenAI Code, Anthropic Claude CLI ou clé API, ainsi que les options MiniMax, GLM, Ollama, Moonshot, StepFun et AI Gateway)
- lemplacement de lespace de travail et les fichiers dinitialisation
- les paramètres du Gateway (port, bind, authentification, tailscale)
- les canaux et fournisseurs (Telegram, WhatsApp, Discord, Google Chat, Mattermost, Signal, BlueBubbles et autres Plugins de canal intégrés)
- linstallation du daemon (LaunchAgent, unité utilisateur systemd ou tâche planifiée Windows native avec solution de repli via le dossier Startup)
- la vérification de santé
- la configuration des Skills
Le mode distant configure cette machine pour se connecter à une passerelle située ailleurs.
Il n'installe ni ne modifie quoi que ce soit sur l'hôte distant.
Le mode distant configure cette machine pour quelle se connecte à un Gateway situé ailleurs.
Il ninstalle ni ne modifie quoi que ce soit sur lhôte distant.
## Détails du flux local
<Steps>
<Step title="Détection de la configuration existante">
- Si `~/.openclaw/openclaw.json` existe, choisissez Conserver, Modifier ou Réinitialiser.
- Réexécuter l'assistant n'efface rien à moins de choisir explicitement Réinitialiser (ou de passer `--reset`).
- La CLI `--reset` utilise par défaut `config+creds+sessions` ; utilisez `--reset-scope full` pour supprimer aussi l'espace de travail.
- Si la configuration est invalide ou contient des clés héritées, l'assistant s'arrête et vous demande d'exécuter `openclaw doctor` avant de continuer.
- La réinitialisation utilise `trash` et propose plusieurs périmètres :
- Relancer lassistant nefface rien sauf si vous choisissez explicitement Réinitialiser (ou passez `--reset`).
- Loption CLI `--reset` utilise par défaut `config+creds+sessions` ; utilisez `--reset-scope full` pour supprimer aussi lespace de travail.
- Si la configuration est invalide ou contient des clés héritées, lassistant sarrête et vous demande dexécuter `openclaw doctor` avant de continuer.
- La réinitialisation utilise `trash` et propose les portées suivantes :
- Configuration uniquement
- Configuration + identifiants + sessions
- Réinitialisation complète (supprime aussi l'espace de travail)
- Configuration + informations dauthentification + sessions
- Réinitialisation complète (supprime aussi lespace de travail)
</Step>
<Step title="Modèle et authentification">
- La matrice complète des options figure dans [Options d'authentification et de modèle](#options-dauthentification-et-de-modele).
- La matrice complète des options se trouve dans [Options dauthentification et de modèle](#options-dauthentification-et-de-modèle).
</Step>
<Step title="Espace de travail">
- Par défaut `~/.openclaw/workspace` (configurable).
- Initialise les fichiers de l'espace de travail nécessaires au rituel d'amorçage du premier démarrage.
- Structure de l'espace de travail : [Espace de travail de l'agent](/fr/concepts/agent-workspace).
- Initialise les fichiers despace de travail nécessaires au rituel de bootstrap du premier lancement.
- Structure de lespace de travail : [Espace de travail de lagent](/fr/concepts/agent-workspace).
</Step>
<Step title="Passerelle">
- Demande le port, la liaison, le mode d'authentification et l'exposition tailscale.
- Recommandé : garder l'authentification par jeton activée même pour loopback afin que les clients WS locaux doivent s'authentifier.
<Step title="Gateway">
- Demande le port, le bind, le mode dauthentification et lexposition tailscale.
- Recommandé : conserver lauthentification par jeton activée même pour le loopback afin que les clients WS locaux doivent sauthentifier.
- En mode jeton, la configuration interactive propose :
- **Générer/stocker un jeton en clair** (par défaut)
- **Utiliser SecretRef** (option)
- En mode mot de passe, la configuration interactive prend aussi en charge le stockage en clair ou SecretRef.
- Chemin SecretRef pour jeton en mode non interactif : `--gateway-token-ref-env <ENV_VAR>`.
- Nécessite une variable d'environnement non vide dans l'environnement du processus d'onboarding.
- **Utiliser SecretRef** (optionnel)
- En mode mot de passe, la configuration interactive prend également en charge le stockage en clair ou SecretRef.
- Chemin SecretRef non interactif pour le jeton : `--gateway-token-ref-env <ENV_VAR>`.
- Nécessite une variable denvironnement non vide dans lenvironnement du processus donboarding.
- Ne peut pas être combiné avec `--gateway-token`.
- Désactivez l'authentification uniquement si vous faites entièrement confiance à chaque processus local.
- Les liaisons non-loopback exigent toujours une authentification.
- Désactivez lauthentification uniquement si vous faites entièrement confiance à tous les processus locaux.
- Les binds non loopback exigent toujours une authentification.
</Step>
<Step title="Canaux">
- [WhatsApp](/fr/channels/whatsapp) : connexion QR facultative
- [Telegram](/fr/channels/telegram) : jeton de bot
- [Discord](/fr/channels/discord) : jeton de bot
- [Google Chat](/fr/channels/googlechat) : JSON de compte de service + audience webhook
- [Google Chat](/fr/channels/googlechat) : JSON de compte de service + audience du Webhook
- [Mattermost](/fr/channels/mattermost) : jeton de bot + URL de base
- [Signal](/fr/channels/signal) : installation facultative de `signal-cli` + configuration du compte
- [BlueBubbles](/fr/channels/bluebubbles) : recommandé pour iMessage ; URL du serveur + mot de passe + webhook
- [iMessage](/fr/channels/imessage) : chemin CLI hérité `imsg` + accès à la base de données
- Sécurité des messages privés : l'appairage est utilisé par défaut. Le premier message privé envoie un code ; approuvez-le via
`openclaw pairing approve <channel> <code>` ou utilisez des listes d'autorisation.
- [BlueBubbles](/fr/channels/bluebubbles) : recommandé pour iMessage ; URL du serveur + mot de passe + Webhook
- [iMessage](/fr/channels/imessage) : chemin CLI `imsg` hérité + accès à la base de données
- Sécurité des messages privés : le mode par défaut est lappairage. Le premier message privé envoie un code ; approuvez-le via
`openclaw pairing approve <channel> <code>` ou utilisez des listes dautorisation.
</Step>
<Step title="Installation du daemon">
- macOS : LaunchAgent
- Nécessite une session utilisateur connectée ; pour un environnement headless, utilisez un LaunchDaemon personnalisé (non fourni).
- Nécessite une session utilisateur connectée ; pour un mode headless, utilisez un LaunchDaemon personnalisé (non fourni).
- Linux et Windows via WSL2 : unité utilisateur systemd
- L'assistant tente `loginctl enable-linger <user>` afin que la passerelle reste active après la déconnexion.
- Peut demander sudo (écrit dans `/var/lib/systemd/linger`) ; il essaie d'abord sans sudo.
- Lassistant tente `loginctl enable-linger <user>` afin que le Gateway reste actif après la déconnexion.
- Peut demander sudo (écrit dans `/var/lib/systemd/linger`) ; il essaie dabord sans sudo.
- Windows natif : tâche planifiée en priorité
- Si la création de la tâche est refusée, OpenClaw bascule vers un élément de connexion par utilisateur dans le dossier Startup et démarre immédiatement la passerelle.
- Les tâches planifiées restent préférées car elles fournissent un meilleur état du superviseur.
- Sélection de l'environnement d'exécution : Node (recommandé ; requis pour WhatsApp et Telegram). Bun n'est pas recommandé.
- Si la création de la tâche est refusée, OpenClaw revient à un élément de connexion par utilisateur dans le dossier Startup et démarre immédiatement le Gateway.
- Les tâches planifiées restent préférées car elles offrent un meilleur statut de supervision.
- Sélection de lenvironnement dexécution : Node (recommandé ; requis pour WhatsApp et Telegram). Bun nest pas recommandé.
</Step>
<Step title="Vérification d'état">
- Démarre la passerelle (si nécessaire) et exécute `openclaw health`.
- `openclaw status --deep` ajoute la sonde d'état en direct de la passerelle à la sortie de statut, y compris les sondes de canaux lorsqu'elles sont prises en charge.
<Step title="Vérification de santé">
- Démarre le Gateway (si nécessaire) et exécute `openclaw health`.
- `openclaw status --deep` ajoute la sonde de santé du Gateway en direct à la sortie détat, y compris les sondes de canal lorsquelles sont prises en charge.
</Step>
<Step title="Skills">
- Lit les Skills disponibles et vérifie les prérequis.
@ -101,58 +101,57 @@ Il n'installe ni ne modifie quoi que ce soit sur l'hôte distant.
- Installe les dépendances facultatives (certaines utilisent Homebrew sur macOS).
</Step>
<Step title="Fin">
- Résumé et étapes suivantes, y compris les options d'application iOS, Android et macOS.
- Résumé et étapes suivantes, y compris les options dapplication iOS, Android et macOS.
</Step>
</Steps>
<Note>
Si aucune interface graphique n'est détectée, l'assistant affiche les instructions de transfert de port SSH pour l'interface de contrôle au lieu d'ouvrir un navigateur.
Si les ressources de l'interface de contrôle sont absentes, l'assistant tente de les construire ; la solution de secours est `pnpm ui:build` (installe automatiquement les dépendances de l'interface).
Si aucune interface graphique nest détectée, lassistant affiche des instructions de redirection de port SSH pour lUI de contrôle au lieu douvrir un navigateur.
Si les ressources de lUI de contrôle sont absentes, lassistant tente de les construire ; la solution de repli est `pnpm ui:build` (installe automatiquement les dépendances UI).
</Note>
## Détails du mode distant
Le mode distant configure cette machine pour se connecter à une passerelle située ailleurs.
Le mode distant configure cette machine pour quelle se connecte à un Gateway situé ailleurs.
<Info>
Le mode distant n'installe ni ne modifie quoi que ce soit sur l'hôte distant.
Le mode distant ninstalle ni ne modifie quoi que ce soit sur lhôte distant.
</Info>
Ce que vous définissez :
Ce que vous configurez :
- URL de la passerelle distante (`ws://...`)
- Jeton si l'authentification de la passerelle distante est requise (recommandé)
- URL du Gateway distant (`ws://...`)
- Jeton si lauthentification du Gateway distant est requise (recommandé)
<Note>
- Si la passerelle est limitée à loopback, utilisez un tunnel SSH ou un tailnet.
- Indices de découverte :
- Si le Gateway nest accessible quen loopback, utilisez un tunnel SSH ou un tailnet.
- Indications de découverte :
- macOS : Bonjour (`dns-sd`)
- Linux : Avahi (`avahi-browse`)
</Note>
## Options d'authentification et de modèle
## Options dauthentification et de modèle
<AccordionGroup>
<Accordion title="Clé API Anthropic">
Utilise `ANTHROPIC_API_KEY` si elle est présente ou demande une clé, puis l'enregistre pour l'utilisation par le daemon.
Utilise `ANTHROPIC_API_KEY` si elle est présente ou demande une clé, puis lenregistre pour lutilisation par le daemon.
</Accordion>
<Accordion title="Abonnement OpenAI Code (réutilisation de Codex CLI)">
Si `~/.codex/auth.json` existe, l'assistant peut le réutiliser.
Les identifiants Codex CLI réutilisés restent gérés par Codex CLI ; à l'expiration, OpenClaw
relit d'abord cette source et, lorsque le fournisseur peut l'actualiser, écrit
l'identifiant actualisé dans le stockage Codex au lieu d'en prendre lui-même
la gestion.
Si `~/.codex/auth.json` existe, lassistant peut le réutiliser.
Les identifiants Codex CLI réutilisés restent gérés par Codex CLI ; à expiration, OpenClaw
relit dabord cette source et, lorsque le fournisseur peut la rafraîchir, écrit
lidentifiant rafraîchi dans le stockage Codex au lieu den prendre lui-même la gestion.
</Accordion>
<Accordion title="Abonnement OpenAI Code (OAuth)">
Flux navigateur ; collez `code#state`.
Définit `agents.defaults.model` sur `openai-codex/gpt-5.4` lorsque le modèle n'est pas défini ou vaut `openai/*`.
Définit `agents.defaults.model` sur `openai-codex/gpt-5.4` lorsque le modèle nest pas défini ou vaut `openai/*`.
</Accordion>
<Accordion title="Clé API OpenAI">
Utilise `OPENAI_API_KEY` si elle est présente ou demande une clé, puis stocke l'identifiant dans les profils d'authentification.
Utilise `OPENAI_API_KEY` si elle est présente ou demande une clé, puis stocke lidentifiant dans les profils dauthentification.
Définit `agents.defaults.model` sur `openai/gpt-5.4` lorsque le modèle n'est pas défini, vaut `openai/*` ou `openai-codex/*`.
Définit `agents.defaults.model` sur `openai/gpt-5.4` lorsque le modèle nest pas défini, vaut `openai/*` ou `openai-codex/*`.
</Accordion>
<Accordion title="Clé API xAI (Grok)">
@ -170,7 +169,7 @@ Ce que vous définissez :
Plus de détails : [Vercel AI Gateway](/fr/providers/vercel-ai-gateway).
</Accordion>
<Accordion title="Cloudflare AI Gateway">
Demande l'ID de compte, l'ID de passerelle et `CLOUDFLARE_AI_GATEWAY_API_KEY`.
Demande lID de compte, lID de Gateway et `CLOUDFLARE_AI_GATEWAY_API_KEY`.
Plus de détails : [Cloudflare AI Gateway](/fr/providers/cloudflare-ai-gateway).
</Accordion>
<Accordion title="MiniMax">
@ -179,8 +178,8 @@ Ce que vous définissez :
Plus de détails : [MiniMax](/fr/providers/minimax).
</Accordion>
<Accordion title="StepFun">
La configuration est écrite automatiquement pour StepFun standard ou Step Plan sur des points de terminaison chinois ou globaux.
Standard inclut actuellement `step-3.5-flash`, et Step Plan inclut aussi `step-3.5-flash-2603`.
La configuration est écrite automatiquement pour StepFun standard ou Step Plan sur des points de terminaison Chine ou globaux.
La version standard inclut actuellement `step-3.5-flash`, et Step Plan inclut également `step-3.5-flash-2603`.
Plus de détails : [StepFun](/fr/providers/stepfun).
</Accordion>
<Accordion title="Synthetic (compatible Anthropic)">
@ -188,8 +187,10 @@ Ce que vous définissez :
Plus de détails : [Synthetic](/fr/providers/synthetic).
</Accordion>
<Accordion title="Ollama (Cloud et modèles ouverts locaux)">
Demande l'URL de base (par défaut `http://127.0.0.1:11434`), puis propose le mode Cloud + local ou local.
Détecte les modèles disponibles et suggère des valeurs par défaut.
Demande dabord `Cloud + Local`, `Cloud only` ou `Local only`.
`Cloud only` utilise `OLLAMA_API_KEY` avec `https://ollama.com`.
Les modes adossés à lhôte demandent lURL de base (par défaut `http://127.0.0.1:11434`), découvrent les modèles disponibles et suggèrent des valeurs par défaut.
`Cloud + Local` vérifie également si cet hôte Ollama est connecté pour laccès cloud.
Plus de détails : [Ollama](/fr/providers/ollama).
</Accordion>
<Accordion title="Moonshot et Kimi Coding">
@ -197,70 +198,69 @@ Ce que vous définissez :
Plus de détails : [Moonshot AI (Kimi + Kimi Coding)](/fr/providers/moonshot).
</Accordion>
<Accordion title="Fournisseur personnalisé">
Fonctionne avec des points de terminaison compatibles OpenAI et compatibles Anthropic.
Fonctionne avec les points de terminaison compatibles OpenAI et compatibles Anthropic.
L'onboarding interactif prend en charge les mêmes choix de stockage de clé API que les autres flux de clé API de fournisseur :
- **Coller la clé API maintenant** (en clair)
- **Utiliser une référence secrète** (référence d'environnement ou référence de fournisseur configurée, avec validation préalable)
Lonboarding interactif prend en charge les mêmes choix de stockage de clé API que les autres flux de clé API de fournisseur :
- **Coller une clé API maintenant** (en clair)
- **Utiliser une référence de secret** (référence env ou référence de fournisseur configuré, avec validation préliminaire)
Indicateurs non interactifs :
- `--auth-choice custom-api-key`
- `--custom-base-url`
- `--custom-model-id`
- `--custom-api-key` (facultatif ; revient à `CUSTOM_API_KEY`)
- `--custom-provider-id` (facultatif)
- `--custom-compatibility <openai|anthropic>` (facultatif ; `openai` par défaut)
- `--custom-api-key` (optionnel ; revient à `CUSTOM_API_KEY`)
- `--custom-provider-id` (optionnel)
- `--custom-compatibility <openai|anthropic>` (optionnel ; `openai` par défaut)
</Accordion>
<Accordion title="Ignorer">
Laisse l'authentification non configurée.
Laisse lauthentification non configurée.
</Accordion>
</AccordionGroup>
Comportement du modèle :
- Choisissez le modèle par défaut parmi les options détectées, ou saisissez manuellement le fournisseur et le modèle.
- Lorsque l'onboarding démarre à partir d'un choix d'authentification de fournisseur, le sélecteur de modèle privilégie
- Lorsque lonboarding démarre à partir dun choix dauthentification de fournisseur, le sélecteur de modèle privilégie
automatiquement ce fournisseur. Pour Volcengine et BytePlus, cette même préférence
correspond aussi à leurs variantes coding-plan (`volcengine-plan/*`,
correspond aussi à leurs variantes de plan de codage (`volcengine-plan/*`,
`byteplus-plan/*`).
- Si ce filtre de fournisseur préféré serait vide, le sélecteur revient
au catalogue complet au lieu de n'afficher aucun modèle.
- L'assistant exécute une vérification du modèle et avertit si le modèle configuré est inconnu ou si l'authentification est manquante.
au catalogue complet au lieu de nafficher aucun modèle.
- Lassistant exécute une vérification du modèle et avertit si le modèle configuré est inconnu ou si lauthentification manque.
Chemins des identifiants et des profils :
- Profils d'authentification (clés API + OAuth) : `~/.openclaw/agents/<agentId>/agent/auth-profiles.json`
- Profils dauthentification (clés API + OAuth) : `~/.openclaw/agents/<agentId>/agent/auth-profiles.json`
- Import OAuth hérité : `~/.openclaw/credentials/oauth.json`
Mode de stockage des identifiants :
- Le comportement par défaut de l'onboarding conserve les clés API sous forme de valeurs en clair dans les profils d'authentification.
- `--secret-input-mode ref` active le mode référence à la place du stockage de clé en clair.
En configuration interactive, vous pouvez choisir l'un des deux :
- référence de variable d'environnement (par exemple `keyRef: { source: "env", provider: "default", id: "OPENAI_API_KEY" }`)
- Le comportement par défaut de lonboarding conserve les clés API comme valeurs en clair dans les profils dauthentification.
- `--secret-input-mode ref` active le mode référence au lieu du stockage en clair des clés.
Dans la configuration interactive, vous pouvez choisir lune des options suivantes :
- référence de variable denvironnement (par exemple `keyRef: { source: "env", provider: "default", id: "OPENAI_API_KEY" }`)
- référence de fournisseur configuré (`file` ou `exec`) avec alias de fournisseur + id
- Le mode référence interactif exécute une validation préalable rapide avant l'enregistrement.
- Références d'environnement : valide le nom de la variable + la valeur non vide dans l'environnement d'onboarding courant.
- Références de fournisseur : valide la configuration du fournisseur et résout l'id demandé.
- Si la validation préalable échoue, l'onboarding affiche l'erreur et vous permet de réessayer.
- En mode non interactif, `--secret-input-mode ref` ne prend en charge que l'environnement.
- Définissez la variable d'environnement du fournisseur dans l'environnement du processus d'onboarding.
- Les indicateurs de clé en ligne (par exemple `--openai-api-key`) exigent que cette variable d'environnement soit définie ; sinon l'onboarding échoue immédiatement.
- Pour les fournisseurs personnalisés, le mode `ref` non interactif stocke `models.providers.<id>.apiKey` sous la forme `{ source: "env", provider: "default", id: "CUSTOM_API_KEY" }`.
- Dans ce cas de fournisseur personnalisé, `--custom-api-key` exige que `CUSTOM_API_KEY` soit défini ; sinon l'onboarding échoue immédiatement.
- Les identifiants d'authentification de la passerelle prennent en charge les choix en clair et SecretRef en configuration interactive :
- Le mode référence interactif exécute une validation préliminaire rapide avant lenregistrement.
- Références env : valide le nom de la variable + une valeur non vide dans lenvironnement actuel donboarding.
- Références fournisseur : valide la configuration du fournisseur et résout lid demandé.
- Si la validation préliminaire échoue, lonboarding affiche lerreur et vous permet de réessayer.
- En mode non interactif, `--secret-input-mode ref` est uniquement adossé aux variables denvironnement.
- Définissez la variable denvironnement du fournisseur dans lenvironnement du processus donboarding.
- Les indicateurs de clé inline (par exemple `--openai-api-key`) exigent que cette variable denvironnement soit définie ; sinon lonboarding échoue immédiatement.
- Pour les fournisseurs personnalisés, le mode `ref` non interactif stocke `models.providers.<id>.apiKey` comme `{ source: "env", provider: "default", id: "CUSTOM_API_KEY" }`.
- Dans ce cas de fournisseur personnalisé, `--custom-api-key` exige que `CUSTOM_API_KEY` soit définie ; sinon lonboarding échoue immédiatement.
- Les identifiants dauthentification du Gateway prennent en charge les choix en clair et SecretRef dans la configuration interactive :
- Mode jeton : **Générer/stocker un jeton en clair** (par défaut) ou **Utiliser SecretRef**.
- Mode mot de passe : en clair ou SecretRef.
- Chemin SecretRef pour jeton en mode non interactif : `--gateway-token-ref-env <ENV_VAR>`.
- Chemin SecretRef non interactif pour le jeton : `--gateway-token-ref-env <ENV_VAR>`.
- Les configurations existantes en clair continuent de fonctionner sans changement.
<Note>
Conseil pour les environnements headless et serveur : terminez OAuth sur une machine disposant d'un navigateur, puis copiez
le `auth-profiles.json` de cet agent (par exemple
Conseil pour les environnements headless et serveur : terminez OAuth sur une machine équipée dun navigateur, puis copiez le `auth-profiles.json` de cet agent (par exemple
`~/.openclaw/agents/<agentId>/agent/auth-profiles.json`, ou le chemin correspondant
`$OPENCLAW_STATE_DIR/...`) vers l'hôte de la passerelle. `credentials/oauth.json`
n'est qu'une source d'import héritée.
`$OPENCLAW_STATE_DIR/...`) vers lhôte Gateway. `credentials/oauth.json`
nest quune source dimportation héritée.
</Note>
## Sorties et éléments internes
@ -268,51 +268,51 @@ n'est qu'une source d'import héritée.
Champs typiques dans `~/.openclaw/openclaw.json` :
- `agents.defaults.workspace`
- `agents.defaults.model` / `models.providers` (si Minimax est choisi)
- `tools.profile` (l'onboarding local utilise par défaut `"coding"` lorsqu'il n'est pas défini ; les valeurs explicites existantes sont conservées)
- `gateway.*` (mode, liaison, authentification, tailscale)
- `session.dmScope` (l'onboarding local définit par défaut cette valeur sur `per-channel-peer` lorsqu'elle n'est pas définie ; les valeurs explicites existantes sont conservées)
- `agents.defaults.model` / `models.providers` (si MiniMax est choisi)
- `tools.profile` (lonboarding local utilise par défaut `"coding"` lorsquil nest pas défini ; les valeurs explicites existantes sont conservées)
- `gateway.*` (mode, bind, auth, tailscale)
- `session.dmScope` (lonboarding local utilise par défaut `per-channel-peer` lorsquil nest pas défini ; les valeurs explicites existantes sont conservées)
- `channels.telegram.botToken`, `channels.discord.token`, `channels.matrix.*`, `channels.signal.*`, `channels.imessage.*`
- Listes d'autorisation de canaux (Slack, Discord, Matrix, Microsoft Teams) lorsque vous activez l'option pendant les invites (les noms sont résolus en ID lorsque c'est possible)
- Listes dautorisation de canaux (Slack, Discord, Matrix, Microsoft Teams) lorsque vous choisissez cette option pendant les invites (les noms sont résolus en ID lorsque cest possible)
- `skills.install.nodeManager`
- L'indicateur `setup --node-manager` accepte `npm`, `pnpm` ou `bun`.
- La configuration manuelle peut toujours définir ultérieurement `skills.install.nodeManager: "yarn"`.
- Lindicateur `setup --node-manager` accepte `npm`, `pnpm` ou `bun`.
- Une configuration manuelle peut toujours définir ensuite `skills.install.nodeManager: "yarn"`.
- `wizard.lastRunAt`
- `wizard.lastRunVersion`
- `wizard.lastRunCommit`
- `wizard.lastRunCommand`
- `wizard.lastRunMode`
`openclaw agents add` écrit `agents.list[]` et des `bindings` facultatifs.
`openclaw agents add` écrit dans `agents.list[]` et dans `bindings` si nécessaire.
Les identifiants WhatsApp sont stockés sous `~/.openclaw/credentials/whatsapp/<accountId>/`.
Les identifiants WhatsApp sont placés sous `~/.openclaw/credentials/whatsapp/<accountId>/`.
Les sessions sont stockées sous `~/.openclaw/agents/<agentId>/sessions/`.
<Note>
Certains canaux sont fournis sous forme de plugins. Lorsqu'ils sont sélectionnés pendant la configuration, l'assistant
demande d'installer le plugin (npm ou chemin local) avant la configuration du canal.
Certains canaux sont fournis sous forme de plugins. Lorsquils sont sélectionnés pendant la configuration, lassistant
demande dinstaller le plugin (npm ou chemin local) avant la configuration du canal.
</Note>
RPC de l'assistant de passerelle :
RPC de lassistant Gateway :
- `wizard.start`
- `wizard.next`
- `wizard.cancel`
- `wizard.status`
Les clients (application macOS et interface de contrôle) peuvent afficher les étapes sans réimplémenter la logique d'onboarding.
Les clients (application macOS et UI de contrôle) peuvent afficher les étapes sans réimplémenter la logique donboarding.
Comportement de la configuration Signal :
Comportement de la configuration de Signal :
- Télécharge la ressource de version appropriée
- La stocke sous `~/.openclaw/tools/signal-cli/<version>/`
- Écrit `channels.signal.cliPath` dans la configuration
- Les builds JVM exigent Java 21
- Les builds natifs sont utilisés lorsqu'ils sont disponibles
- Windows utilise WSL2 et suit le flux Linux signal-cli à l'intérieur de WSL
- Les builds JVM nécessitent Java 21
- Les builds natifs sont utilisés lorsquils sont disponibles
- Windows utilise WSL2 et suit le flux Linux `signal-cli` à lintérieur de WSL
## Documentation associée
- Hub d'onboarding : [Onboarding (CLI)](/fr/start/wizard)
- Hub donboarding : [Onboarding (CLI)](/fr/start/wizard)
- Automatisation et scripts : [Automatisation de la CLI](/fr/start/wizard-cli-automation)
- Référence de commande : [`openclaw onboard`](/cli/onboard)