Files
nanobot/webui/src/i18n/locales/fr/common.json
T

1424 lines
64 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"app": {
"brand": "nanobot",
"loading": {
"connecting": "Connexion à nanobot…",
"boot": "Chargement de nanobot…"
},
"error": {
"title": "Impossible de joindre nanobot",
"gatewayHint": "Assurez-vous que la gateway est en cours dexécution (`nanobot gateway`) et que cette page est ouverte sur la même machine."
},
"auth": {
"label": "Mot de passe",
"showPassword": "Afficher le mot de passe",
"hidePassword": "Masquer le mot de passe",
"submit": "Se connecter",
"required": "Saisissez le mot de passe.",
"invalid": "Mot de passe incorrect. Réessayez."
},
"account": {
"section": "Compte",
"logoutHint": "Déconnecter ce navigateur du gateway.",
"logout": "Se déconnecter"
},
"system": {
"section": "Système",
"restartHint": "Redémarrez nanobot pour appliquer les changements dexécution.",
"restart": "Redémarrer nanobot",
"restarting": "Redémarrage...",
"restartEngine": "Redémarrer le moteur",
"restartingEngine": "Redémarrage du moteur..."
},
"restart": {
"completed": "Redémarrage terminé en {{seconds}} s."
},
"documentTitle": {
"base": "nanobot",
"chat": "{{title}} · nanobot"
},
"meta": {
"description": "Interface web nanobot — discutez avec votre espace de travail nanobot."
},
"pairing": {
"title": "Associer un utilisateur du chat",
"description": "Saisissez le code dassociation affiché dans le chat.",
"code": "Code dassociation",
"matched": "Correspondance {{channel}}. Connexion...",
"expiresInline": "Le code expire {{expires}}.",
"queueCount": "{{count}} en attente",
"noMatch": "Aucune demande en attente ne correspond à ce code."
}
},
"temporaryChat": {
"title": "Discussion temporaire",
"retention": "Elle nest enregistrée ni dans lhistorique ni dans la mémoire.",
"expiration": "Recharger, fermer ou perdre la connexion met fin à ces discussions.",
"externalEffects": "Les requêtes sont tout de même envoyées au fournisseur du modèle et les outils peuvent laisser des modifications.",
"clear": "Effacer la discussion temporaire",
"sectionTitle": "Discussions temporaires",
"closeAction": "Fermer la discussion temporaire : {{title}}"
},
"sidebar": {
"navigation": "Navigation de la barre latérale",
"collapse": "Réduire la barre latérale",
"newChat": "Nouveau sujet",
"searchAria": "Rechercher",
"searchPlaceholder": "Rechercher",
"searchResults": "Résultats",
"noSearchResults": "Aucun sujet correspondant.",
"recent": "Sujets récents",
"settings": "Paramètres",
"language": {
"label": "Langue",
"ariaLabel": "Changer de langue"
},
"apps": "Applications",
"automations": "Automatisations",
"skills": {
"title": "Compétences"
}
},
"settings": {
"backToChat": "Retour au chat",
"sidebar": {
"title": "Réglages",
"ariaLabel": "Sections des réglages"
},
"nav": {
"general": "Général",
"byok": "BYOK",
"overview": "Aperçu",
"appearance": "Apparence",
"models": "Modèles",
"providers": "Fournisseurs",
"image": "Images",
"voice": "Voix",
"browser": "Internet",
"channels": "Canaux",
"runtime": "Système",
"advanced": "Sécurité",
"cliApps": "Applications CLI",
"mcp": "MCP",
"apps": "Applications",
"automations": "Automatisations",
"skills": "Compétences"
},
"sections": {
"interface": "Interface utilisateur",
"ai": "AI",
"system": "Système",
"about": "À propos",
"status": "État",
"localPreferences": "Préférences locales",
"presets": "Préréglages",
"imageGeneration": "Génération dimages",
"imageDefaults": "Valeurs par défaut",
"webSearch": "Recherche web",
"webBehavior": "Comportement",
"regional": "Paramètres régionaux",
"webuiSafety": "Sécurité WebUI",
"capabilities": "Capacités",
"cliApps": "Applications CLI",
"mcp": "Services MCP",
"apps": "Applications",
"nativeHost": "Hôte natif",
"hostSafety": "Sécurité de lapp",
"voiceInput": "Saisie vocale"
},
"rows": {
"theme": "Thème",
"language": "Langue",
"provider": "Fournisseur",
"model": "Modèle",
"restart": "Redémarrer nanobot",
"configPath": "Chemin de config",
"activePreset": "Préréglage actif",
"gateway": "Passerelle",
"restartState": "État du redémarrage",
"pendingChanges": "Modifications en attente",
"selectedPreset": "Préréglage sélectionné",
"presetModel": "Modèle du préréglage",
"density": "Densité",
"activityMode": "Détail dactivité",
"fileEditDisplay": "Affichage des modifications de fichiers",
"codeWrap": "Retour à la ligne du code",
"maxResults": "Résultats max.",
"timeout": "Délai dattente",
"jinaReader": "Lecteur Jina",
"imageGeneration": "Génération dimages",
"imageProvider": "Fournisseur dimages",
"imageProviderStatus": "État du fournisseur",
"imageProviderBase": "Base du fournisseur",
"imageModel": "Modèle dimage",
"defaultAspectRatio": "Ratio par défaut",
"defaultImageSize": "Taille par défaut",
"maxImagesPerTurn": "Images max. par tour",
"imageSaveDir": "Dossier denregistrement",
"timezone": "Fuseau horaire",
"workspacePath": "Espace de travail par défaut",
"localServiceAccess": "Services locaux",
"webuiDefaultAccess": "Accès par défaut",
"currentModel": "Configuration actuelle",
"brandLogos": "Logos de marque",
"cliAppsCatalog": "Catalogue",
"cliAppsFilter": "Filtre",
"engine": "Moteur",
"logs": "Journaux",
"diagnostics": "Diagnostic",
"contextWindow": "Fenêtre de contexte",
"transcription": "Transcription",
"transcriptionProvider": "Fournisseur",
"transcriptionProviderStatus": "État du fournisseur",
"transcriptionModel": "Modèle",
"transcriptionLanguage": "Langue",
"voiceLimits": "Limites"
},
"help": {
"theme": "Basculer entre lapparence claire et sombre.",
"language": "Choisissez la langue utilisée par WebUI.",
"provider": "Sélectionnez le fournisseur à utiliser pour les nouvelles requêtes de modèle.",
"model": "Choisissez le modèle utilisé par ce préréglage.",
"configPath": "Le fichier de configuration actuellement utilisé par la passerelle.",
"selectedPreset": "Les préréglages nommés sont en lecture seule ici ; modifiez-les dans config.json.",
"presetModel": "Passez à la valeur par défaut pour modifier le modèle et le fournisseur depuis la WebUI.",
"density": "Enregistré seulement dans ce navigateur.",
"activityMode": "Choisissez le niveau de détail de lactivité de lagent affiché par défaut.",
"fileEditDisplay": "Choisissez si lactivité de modification affiche le nombre de lignes ou les différences.",
"codeWrap": "Garde les longues lignes de code lisibles sur les petits écrans.",
"maxResults": "Résultats renvoyés par chaque appel web_search.",
"timeout": "Nombre de secondes avant lexpiration dune requête de recherche.",
"jinaReader": "Utilise Jina Reader pour web_fetch lorsque disponible.",
"imageGeneration": "Expose generate_image dans les chats lorsquun fournisseur dimage configuré est disponible.",
"imageProvider": "Choisissez le fournisseur inscrit utilisé par generate_image.",
"imageProviderStatus": "La génération dimages réutilise les identifiants des fournisseurs.",
"imageModel": "Nom du modèle envoyé au fournisseur dimages sélectionné.",
"defaultAspectRatio": "Utilisé lorsque linstruction ne choisit pas de ratio.",
"defaultImageSize": "Indication de taille envoyée aux fournisseurs compatibles.",
"maxImagesPerTurn": "Limite supérieure pour une requête generate_image.",
"timezone": "Utilisé pour les horaires et les réponses tenant compte du temps.",
"localServiceAccess": "Autorise les commandes shell avec accès complet à atteindre les services localhost.",
"webuiDefaultAccess": "Utilisé par les chats web sans permission propre au projet.",
"securityManagedControls": "Les récupérations web protègent toujours les services locaux, privés et de métadonnées. La sécurité des canaux principaux reste gérée dans config.json.",
"currentModel": "Utilisée pour les nouvelles réponses.",
"selectedModelProvider": "Défini par le modèle sélectionné.",
"selectedModelValue": "Défini par le modèle sélectionné.",
"brandLogos": "Affiche les logos de fournisseurs tiers et CLI dans les Réglages.",
"cliAppsCatalog": "Installe uniquement les adaptateurs CLI dapplications que nanobot peut exécuter localement ; les applications natives restent inchangées.",
"cliAppsFilter": "Recherchez par application, catégorie ou capacité.",
"logs": "Ouvre le dossier des journaux du moteur natif.",
"diagnostics": "Exporte un petit rapport dexécution pour le support.",
"localServiceAccessNative": "Autorise les commandes shell avec accès complet à atteindre les services sur ce Mac.",
"webuiDefaultAccessNative": "Utilisé par les chats natifs sans permission propre au projet.",
"contextWindow": "Choisissez le budget de contexte par défaut pour cette configuration de modèle.",
"transcription": "Transcrit lentrée du micro avant lenvoi. Les messages vocaux des canaux utilisent les mêmes réglages.",
"transcriptionProvider": "Utilise les identifiants du fournisseur correspondant dans la section Fournisseurs.",
"transcriptionProviderStatus": "Les clés API restent dans les fournisseurs, pas dans les réglages de transcription.",
"transcriptionModel": "Laissez le modèle résolu par défaut, sauf si votre fournisseur exige un identifiant personnalisé.",
"transcriptionLanguage": "Indice ISO-639 facultatif, comme en, zh, ja ou ko."
},
"values": {
"light": "Clair",
"dark": "Sombre",
"notAvailable": "Indisponible",
"enabled": "Activé",
"disabled": "Désactivé",
"restartPending": "Redémarrage en attente",
"ready": "Prêt",
"privateEngine": "Moteur privé",
"unixSocket": "Socket Unix",
"defaultWorkspace": "Espace par défaut",
"comfortable": "Confortable",
"compact": "Compacte",
"auto": "Automatique",
"expanded": "Développé",
"default": "Par défaut",
"summary": "Résumé",
"diff": "Différences",
"collapsedDiff": "Diff replié",
"on": "Activé",
"off": "Désactivé",
"defaultPermission": "Autorisation par défaut",
"fullAccess": "Accès complet",
"configured": "Configuré",
"notConfigured": "Non configuré",
"pending": "En attente",
"restartingEngine": "Redémarrage",
"checking": "Vérification",
"running": "En cours",
"needsSetup": "Configuration requise"
},
"status": {
"loading": "Chargement des réglages...",
"loadError": "Impossible de charger les réglages",
"unsaved": "Modifications non enregistrées.",
"upToDate": "À jour.",
"savedRestart": "Enregistré. Redémarrez nanobot pour appliquer.",
"restartAfterSaving": "Enregistrez les changements, puis redémarrez quand vous êtes prêt.",
"savedRestartApply": "Enregistré. Redémarrez quand vous êtes prêt.",
"imageProviderRestart": "Changements du fournisseur dimage enregistrés. Redémarrez quand vous êtes prêt.",
"hostRestartAfterSaving": "En enregistrant, nanobot redémarrera son moteur.",
"hostRestartPending": "Enregistré. Le moteur redémarrera lorsquil sera prêt.",
"hostApiUnavailable": "Les actions de lhôte ne sont disponibles que dans lapp native.",
"logsOpened": "Dossier des journaux ouvert.",
"logsOpenFailed": "Impossible douvrir le dossier des journaux.",
"diagnosticsExported": "Diagnostic exporté vers {{path}}.",
"diagnosticsExportFailed": "Impossible dexporter le diagnostic."
},
"actions": {
"save": "Enregistrer",
"saving": "Enregistrement",
"saveOrder": "Enregistrer lordre",
"savePreset": "Enregistrer le préréglage",
"delete": "Supprimer",
"deleting": "Suppression...",
"edit": "Modifier",
"cancel": "Annuler",
"dismiss": "Ignorer",
"open": "Ouvrir",
"export": "Exporter",
"opening": "Ouverture...",
"exporting": "Exportation..."
},
"byok": {
"description": "Utilisez vos propres clés de fournisseur. Nanobot lit ces valeurs depuis la configuration actuelle et seuls les fournisseurs configurés peuvent être utilisés dans les préréglages de modèle.",
"configured": "Configuré",
"notConfigured": "Non configuré",
"configuredSection": "Configurés",
"notConfiguredSection": "Non configurés",
"showMore": "Afficher {{count}} de plus",
"showLess": "Afficher moins",
"apiKey": "Clé API",
"apiBase": "URL de base de lAPI",
"apiKeyPlaceholder": "Saisir la clé API",
"apiKeyConfiguredPlaceholder": "Laisser vide pour conserver la clé actuelle",
"configuredKeyHint": "Key configurée",
"apiBasePlaceholder": "Utiliser la valeur par défaut du fournisseur",
"apiKeyRequired": "Une clé API est requise pour configurer ce fournisseur.",
"showApiKey": "Afficher la clé API",
"hideApiKey": "Masquer la clé API",
"noConfiguredProviders": "Aucun fournisseur configuré",
"configureFirst": "Configurez d'abord un fournisseur dans BYOK.",
"openByok": "Ouvrir BYOK",
"tabs": {
"ariaLabel": "Type d'identifiants BYOK",
"llm": "LLM",
"webSearch": "Recherche web"
},
"webSearch": {
"provider": "Fournisseur de recherche",
"providerHelp": "Choisissez le service utilisé par loutil de recherche web.",
"selectProvider": "Choisir un fournisseur",
"credentials": "Identifiants",
"noCredentialRequired": "Aucune clé requise",
"noCredentialHelp": "DuckDuckGo fonctionne sans clé API enregistrée.",
"apiKeyHelp": "Enregistrée dans la config et masquée après l'enregistrement.",
"baseUrl": "URL de base",
"baseUrlHelp": "SearXNG nécessite l'URL de votre propre instance.",
"baseUrlPlaceholder": "https://search.example.com",
"apiKeyRequired": "Ce fournisseur de recherche nécessite une clé API.",
"baseUrlRequired": "SearXNG nécessite une URL de base.",
"missingCredential": "Ajoutez l'identifiant requis avant d'enregistrer.",
"saveHint": "Les changements sappliquent aux nouvelles requêtes de recherche web."
}
},
"overview": {
"model": "Modèle actuel",
"providers": "Fournisseurs",
"configuredCount": "{{count}} configurés",
"totalProviders": "{{count}} disponibles",
"webSearch": "Recherche web",
"imageGeneration": "Génération dimages",
"voiceInput": "Saisie vocale",
"workspace": "Espace de travail"
},
"usage": {
"title": "Activité des tokens",
"shortTitle": "Utilisation des tokens",
"subtitle": "Usage signalé par le fournisseur sur les 12 derniers mois.",
"empty": "Lactivité des tokens apparaîtra après les nouvelles réponses du modèle.",
"totalTokens": "Tokens cumulés",
"peakTokens": "Pic de tokens",
"thirtyDayTokens": "Tokens sur 30 jours",
"currentStreak": "Série actuelle",
"longestStreak": "Plus longue série",
"daysValue": "{{count}} j",
"last30": "30 jours",
"activeDays": "Jours actifs",
"requests": "Requêtes",
"estimated": "estimé",
"includesEstimates": "inclut des estimations",
"cellTitle": "{{date}} : {{tokens}} tokens, {{requests}} requêtes",
"sources": {
"user": "Chat",
"api": "API",
"cron": "Automatisations",
"dream": "Mémoire",
"system": "Système"
}
},
"providers": {
"title": "Fournisseurs de modèles",
"searchPlaceholder": "Rechercher des fournisseurs",
"noMatches": "Aucun fournisseur ne correspond.",
"addOwnProvider": "Ajouter votre propre fournisseur de modèles",
"customProvider": "Fournisseur personnalisé",
"customProviderName": "Nom du fournisseur",
"customProviderNamePlaceholder": "Mon fournisseur de modèles",
"saveProvider": "Enregistrer le fournisseur",
"advancedOptions": "Options avancées",
"saveAdvancedBeforeSignIn": "Enregistrez les options avancées avant de vous connecter.",
"apiType": "Type dAPI",
"proxy": "Proxy réseau",
"thinkingStyle": "Style de raisonnement",
"region": "Région",
"profile": "Profil",
"extraHeaders": "En-têtes supplémentaires",
"extraBody": "Corps supplémentaire",
"extraQuery": "Paramètres de requête supplémentaires",
"capabilityFastMode": "Mode rapide",
"capabilityFastModeHelp": "Utilise le niveau de service prioritaire dOpenAI pour accélérer les réponses. Les crédits sont consommés plus rapidement.",
"capabilityDeepSeekSearch": "Recherche web DeepSeek",
"capabilityDeepSeekSearchHelp": "Permet à DeepSeek V4 Flash de rechercher sur le web via lAPI Responses. Lactivité de recherche apparaît dans le chat.",
"capabilityXSearch": "Recherche sur X",
"capabilityXSearchHelp": "Permet aux modèles Grok compatibles dutiliser X Search hébergé par xAI. Lactivité de recherche apparaît dans le chat.",
"capabilityOpenAISearch": "Recherche web OpenAI",
"capabilityOpenAISearchHelp": "Permet aux modèles compatibles avec lAPI Responses de rechercher sur le web. Lactivité de recherche apparaît dans le chat."
},
"image": {
"selectProvider": "Choisir un fournisseur",
"selectAspect": "Choisir un ratio",
"selectSize": "Choisir une taille",
"selectModel": "Choisir un modèle dimage",
"searchOrTypeModel": "Rechercher ou saisir lID du modèle",
"typeModelId": "Saisissez lID de modèle pris en charge par ce fournisseur.",
"configureProvider": "Configurer le fournisseur",
"missingCredential": "Configurez ce fournisseur avant dactiver la génération dimages."
},
"capabilities": {
"providerSupport": "Prise en charge du fournisseur",
"providerInstallOnSave": "La prise en charge requise sera installée automatiquement lors de lenregistrement de ce fournisseur.",
"searchSupport": "Prise en charge du fournisseur de recherche",
"searchInstallOnSave": "La prise en charge dOlostep sera installée automatiquement lors de lenregistrement.",
"installing": "Installation de la prise en charge..."
},
"models": {
"selectModel": "Choisir un modèle",
"addConfiguration": "Ajouter une configuration",
"newConfiguration": "Nouvelle configuration de modèle",
"newConfigurationHelp": "Enregistre un fournisseur et un modèle comme option en un clic.",
"configurationName": "Nom de la configuration",
"configurationNameHelp": "Renomme cette configuration de modèle enregistrée.",
"configurationNamePlaceholder": "Rédaction rapide",
"callOrder": "Ordre dappel des modèles",
"primary": "Principal",
"fallbackNumber": "Secours {{number}}",
"addToOrder": "Activer le préréglage",
"newPreset": "Nouveau préréglage de modèle",
"newPresetHelp": "Enregistrez un modèle réutilisable et ses paramètres de génération.",
"presets": "Préréglages de modèle",
"editPreset": "Modifier le préréglage",
"presetName": "Nom du préréglage",
"presetNameHelp": "Un nom court utilisé dans les paramètres des modèles.",
"presetNamePlaceholder": "Rédaction rapide",
"advancedOptions": "Options avancées",
"advancedSummary": "Contexte {{context}} · Max. {{max}} tokens",
"maxTokens": "Tokens de sortie max.",
"temperature": "Température",
"reasoningEffort": "Effort de raisonnement",
"convertTitle": "Convertir la configuration de modèles actuelle",
"convertHelp": "Convertissez les modèles principal et de secours existants en préréglages afin de gérer leur ordre ici.",
"converting": "Conversion...",
"convertAction": "Convertir en préréglages",
"dragToReorder": "Faire glisser pour réorganiser",
"moveUp": "Monter",
"moveDown": "Descendre",
"removeFromOrder": "Désactiver le préréglage",
"inCallOrder": "Dans lordre dappel",
"disabled": "Désactivé",
"noPresets": "Aucun préréglage de modèle",
"noPresetsHelp": "Créez un préréglage, puis ajoutez-le à lordre dappel.",
"removeBeforeDelete": "Retirez ce préréglage de lordre dappel avant de le supprimer.",
"providerSetupRequired": "Configuration du fournisseur requise",
"configureProviderBeforeSaving": "Configurez ce fournisseur avant denregistrer le préréglage.",
"deletePresetTitle": "Supprimer le préréglage de modèle ?",
"deletePresetHelp": "Le préréglage « {{name}} » sera supprimé. Les identifiants du fournisseur ne seront pas modifiés.",
"searchModels": "Rechercher ou saisir un ID de modèle",
"useCustomModel": "Utiliser",
"loadingModels": "Chargement des modèles...",
"searchCatalog": "Rechercher dans le catalogue du fournisseur pour choisir un modèle.",
"modelsAvailable": "disponibles",
"noModelResults": "Aucun modèle correspondant.",
"loadFailed": "Liste des modèles indisponible.",
"unsupportedModelList": "Saisissez manuellement un ID de modèle.",
"providerNotConfigured": "Configurez ce fournisseur avant de charger les modèles.",
"autoProviderCustomOnly": "Le mode fournisseur automatique utilise des IDs de modèle personnalisés."
},
"timezone": {
"select": "Choisir un fuseau horaire",
"search": "Rechercher un fuseau horaire",
"empty": "Aucun fuseau horaire correspondant."
},
"cliApps": {
"allCategories": "Toutes les catégories",
"availableCount": "{{count}} applications",
"installedCount": "{{count}} installées",
"summary": "{{installed}} CLIs installées sur {{total}}",
"filterAll": "Tout",
"filterInstalled": "CLIs installées",
"filterNotInstalled": "Non installées",
"searchPlaceholder": "Rechercher des CLIs",
"statusInstalled": "Installée",
"statusAvailable": "Disponible",
"statusMissing": "Dépendance manquante",
"statusUnsupported": "Non compatible",
"statusNotInstalled": "Non installée",
"unsupported": "Non compatible",
"loading": "Chargement des applications CLI...",
"empty": "Aucune application CLI ne correspond à ce filtre.",
"readyTitle": "@{{name}} est prêt",
"readyStatus": "Prêt",
"readyPrompt": "Utilisez @{{name}} pour voir ce que ce CLI peut faire.",
"readyTry": "Essayer @{{name}}",
"readyCopied": "Copié",
"openChat": "Ouvrir le chat",
"requires": "Requiert",
"test": "Tester le CLI",
"update": "Mettre à jour le CLI",
"uninstall": "Désinstaller le CLI",
"install": "Installer le CLI",
"unavailable": "Indisponible",
"noDescription": "Aucune description disponible."
},
"about": {
"version": "Version",
"checking": "Recherche de mises à jour...",
"checkForUpdates": "Rechercher les mises à jour",
"upToDate": "Vous êtes à jour",
"updateAvailable": "Mise à jour disponible v{{version}}"
},
"mcp": {
"allCategories": "Toutes les catégories",
"summary": "{{installed}} préréglages activés sur {{total}}",
"filterAll": "Tout",
"filterInstalled": "Activés",
"filterNotInstalled": "Non activés",
"searchPlaceholder": "Rechercher des préréglages MCP",
"moreOptions": "Plus d'options MCP",
"moreOptionsSubtitle": "Ajoutez un serveur personnalisé ou importez mcp.json.",
"customTitle": "MCP personnalisé",
"customSubtitle": "Ajoutez n'importe quel serveur MCP stdio, HTTP ou SSE.",
"customAction": "Personnalisé",
"importAction": "Importer",
"serverName": "Nom du serveur",
"serverUrl": "URL",
"transport": "Transport",
"command": "Commande",
"args": "Arguments JSON",
"headers": "En-têtes JSON",
"env": "Environnement JSON",
"timeout": "Délai d'outil",
"advancedOptions": "Options avancées",
"hideAdvanced": "Masquer les options avancées",
"saveCustom": "Enregistrer MCP",
"configImport": "Importer mcp.json",
"importConfig": "Importer",
"restartRequired": "Redémarrez nanobot pour connecter les outils MCP mis à jour.",
"toolsFound": "{{count}} outils",
"loading": "Chargement des préréglages MCP...",
"empty": "Aucun préréglage MCP ne correspond à ce filtre.",
"openDocs": "Ouvrir la doc",
"test": "Tester",
"remove": "Supprimer",
"enable": "Activer",
"enabled": "Activé",
"setup": "Connecter",
"configure": "Connecter",
"connectTitle": "Connecter {{name}}",
"connectHint": "Ajoutez la clé depuis les paramètres de votre compte.",
"saveAndEnable": "Enregistrer et activer",
"updateSetup": "Mettre à jour la configuration",
"configured": "configuré",
"keepExisting": "Laissez vide pour conserver la valeur actuelle",
"statusConfigured": "Configuré",
"statusMissingCredentials": "Clé requise",
"statusMissingDependency": "Dépendance requise",
"statusComingSoon": "Bientôt disponible",
"comingSoon": "Bientôt disponible",
"statusNotInstalled": "Non activé",
"toolScope": "Outils",
"allTools": "Tous",
"noTools": "Aucun",
"testForTools": "Exécutez Tester pour inspecter et choisir des outils individuels."
},
"api": {
"title": "Serveur API", "openaiCompatible": "API compatible OpenAI", "description": "Connectez des SDK et agents via un endpoint /v1 local.",
"start": "Démarrer le serveur API", "starting": "Démarrage...", "stop": "Arrêter", "stopping": "Arrêt...",
"access": "Accès", "thisDevice": "Cet appareil", "localNetwork": "Réseau local",
"localHelp": "Seul cet appareil peut se connecter.", "networkHelp": "Dautres appareils peuvent se connecter ; une clé API est requise.",
"port": "Port", "portHelp": "LAPI utilise ce port local.", "apiKey": "Clé API", "apiKeyHelp": "Les clients lenvoient comme jeton Bearer.",
"apiKeyRequired": "Requise avant dexposer lAPI au réseau.", "apiKeyPlaceholder": "Saisissez une clé API",
"autoInstall": "Le support API sera installé automatiquement au démarrage."
},
"observability": {
"title": "Observabilité", "configured": "Les identifiants de traçage sont disponibles pour nanobot.",
"environment": "Définissez LANGFUSE_SECRET_KEY et LANGFUSE_PUBLIC_KEY, puis redémarrez nanobot.", "enable": "Activer le traçage"
},
"legal": {
"thirdPartyBrands": "Les noms, logos et marques de produits appartiennent à leurs propriétaires respectifs. Leur utilisation sert uniquement à l'identification et n'implique aucune approbation."
},
"apps": {
"description": "Ajoutez des outils à nanobot, puis utilisez-les avec @ dans le chat.",
"cliLabel": "Application",
"mcpLabel": "Intégration",
"channelLabel": "Canal",
"featureLabel": "Fonction",
"filterAll": "Prêts",
"filterPlugins": "Extensions",
"filterCli": "Applications",
"filterMcp": "Intégrations",
"enabledSummary": "{{count}} prêts",
"caption": "{{cli}} applications · {{mcp}} intégrations",
"searchPlaceholder": "Rechercher des applications",
"featured": "Outils",
"loading": "Chargement des applications...",
"empty": "Aucun outil ne correspond à votre recherche.",
"emptyApps": "Aucune application disponible.",
"emptyIntegrations": "Aucune intégration disponible.",
"emptyReady": "Aucun outil nest encore prêt.",
"clearSearch": "Effacer la recherche",
"browseApps": "Parcourir les applications",
"browseIntegrations": "Parcourir les intégrations",
"emptyIntegrationsHint": "Ajoutez une intégration personnalisée ci-dessous.",
"restartRequired": "Redémarrez nanobot pour appliquer les applications et fonctions mises à jour."
},
"channels": {
"description": "Connectez nanobot aux applications de discussion. L'installation du support ajoute seulement le paquet d'intégration ; la plupart des canaux nécessitent encore des jetons ou des réglages d'espace de travail.",
"caption": "{{enabled}} activés · {{total}} canaux",
"searchPlaceholder": "Rechercher des canaux",
"backToChannels": "Tous les canaux",
"catalog": "Canaux",
"loading": "Chargement des canaux...",
"empty": "Aucun canal ne correspond à ce filtre.",
"restartRequired": "Redémarrez nanobot pour appliquer le support de canal mis à jour.",
"requires": "Requiert : {{requirements}}",
"setUp": "Configurer",
"setupGuide": "Guide de configuration",
"setupSummary": "L'activation n'active que le support nanobot. Ajoutez les identifiants de la plateforme, puis redémarrez nanobot.",
"configKeys": "Clés de configuration",
"enable": "Activer le canal",
"disable": "Désactiver le canal",
"needsConfig": "Configuration requise",
"connect": "Connecter",
"reconnect": "Reconnecter",
"advanced": "Avancé",
"checkAndEnable": "Vérifier et activer",
"checkConnection": "Vérifier la connexion",
"connectionChecks": "Vérifications de connexion",
"open": "Ouvrir",
"checkedAndEnabled": "Vérifié et activé.",
"checking": "Vérification...",
"checkOnly": "Vérifier uniquement",
"commandCopied": "Commande copiée.",
"commandCopyFailed": "Impossible de copier la commande.",
"configuredInstances": "{{count}} instances configurées",
"connectPreview": "La connexion dans le navigateur est la prochaine étape. Pour l'instant, exécutez la commande ci-dessous.",
"copyCommand": "Copier la commande",
"filterAll": "Tous",
"filterOff": "Désactivés",
"filterOn": "Activés",
"helperCopied": "{{name}} copié.",
"helperCopyFailed": "Impossible de copier {{name}}.",
"hideSecret": "Masquer le secret",
"instanceConfigured": "Configurée",
"instanceNeedsSetup": "Configuration requise",
"runtimeFailed": "Échec du démarrage",
"runtimeStarting": "Démarrage",
"runtimeStopped": "À l'arrêt",
"managedByWebui": "Géré par la WebUI",
"officialGuide": "Guide officiel",
"optional": "Facultatif",
"providerPreset": "Fournisseur",
"requiredSetup": "Configuration requise",
"savedSecret": "Enregistré",
"savedSecretPlaceholder": "Secret enregistré",
"savedSettings": "Paramètres enregistrés.",
"saveSettings": "Enregistrer les paramètres",
"selectChannel": "Afficher les paramètres de {{name}}",
"setupSteps": "Étapes suivantes",
"showSecret": "Afficher le secret",
"toggleChannel": "Canal {{name}}",
"toggleInstance": "Instance {{name}}",
"tryIt": "Essayer",
"validationFailed": "Vérifiez la configuration requise avant l'activation.",
"validation": {
"connected": "Connecté",
"configured": "Configuré manuellement",
"needs_setup": "Configuration requise",
"invalid": "Non valide",
"unsupported": "Configuration manuelle"
}
},
"nanobotFeatures": {
"enabled": "Activé",
"enable": "Activer",
"disable": "Désactiver",
"ready": "Prêt",
"missingDependency": "Support manquant",
"installSupport": "Installer le support",
"installConfirmTitle": "Installer le support pour {{name}} ?",
"installConfirmDescription": "nanobot ajoutera ce dont {{name}} a besoin, puis l'activera. Continuer ?",
"installConfirmAction": "Installer et activer",
"websocketRequired": "Requis pour la WebUI",
"channelDisabled": "Canal désactivé",
"notEnabled": "Non activé"
},
"automations": {
"filters": {
"all": "Toutes",
"active": "Actives",
"paused": "En pause",
"failed": "À traiter",
"system": "Système"
},
"sort": {
"next": "Prochaine exécution",
"last": "Dernière exécution",
"updated": "Mise à jour",
"name": "Nom"
},
"search": "Rechercher tâche, message, discussion liée ou planning",
"queue": "File",
"loading": "Chargement des automatisations...",
"noMatches": "Aucune automatisation ne correspond à cette vue.",
"empty": "Aucune automatisation pour le moment.",
"emptyHint": "Créez les automatisations dans un chat afin de conserver le bon contexte.",
"emptyAction": "Ouvrir un chat",
"clearFilters": "Effacer les filtres",
"oneShot": "Ponctuelle",
"systemTask": "Automatisation gérée par le système",
"localTrigger": "Déclencheur local",
"labels": {
"schedule": "Planning",
"next": "Prochaine",
"origin": "Discussion liée",
"created": "Créée",
"updated": "Modifiée"
},
"runNow": "Exécuter maintenant",
"pause": "Mettre en pause",
"resume": "Reprendre",
"edit": "Modifier",
"delete": "Supprimer",
"protected": "Protégée",
"editTitle": "Modifier lautomatisation",
"save": "Enregistrer",
"commandCopied": "Copié",
"copyCommand": "Copier",
"deleteTitle": "Supprimer lautomatisation",
"deleteDescription": "Cela supprime {{name}} du stockage cron. Les anciens messages de chat restent dans la session.",
"cancel": "Annuler",
"status": {
"system": "Système",
"running": "En cours dexécution",
"paused": "En pause",
"failed": "Échouée",
"completed": "Terminée",
"noSchedule": "Aucun planning",
"active": "En cours"
},
"origin": {
"system": "Système",
"unknown": "Aucune discussion liée"
},
"channels": {
"api": "API",
"cli": "CLI",
"dingtalk": "DingTalk",
"discord": "Discord",
"email": "Email",
"feishu": "Feishu",
"matrix": "Matrix",
"msteams": "Microsoft Teams",
"qq": "QQ",
"slack": "Slack",
"telegram": "Telegram",
"wechat": "WeChat",
"wecom": "WeCom",
"weixin": "WeChat",
"whatsapp": "WhatsApp"
},
"schedule": {
"at": "À {{time}}",
"every": "Toutes les {{duration}}",
"cron": "Cron {{expr}}",
"cronWithTz": "Cron {{expr}} · {{tz}}",
"withTz": "{{summary}} · {{tz}}",
"dailyAt": "Chaque jour à {{time}}",
"weekdaysAt": "Jours ouvrés à {{time}}",
"hourlyAt": "Toutes les heures à :{{minute}}",
"hourlyWindow": "Toutes les heures {{start}}-{{end}} à :{{minute}}",
"local": "Déclencheur local",
"custom": "Planning personnalisé"
},
"next": {
"paused": "En pause",
"pending": "En cours dexécution",
"local": "En attente du déclencheur",
"none": "Aucune prochaine exécution"
},
"message": {
"showMore": "Afficher le message complet",
"showLess": "Afficher moins"
},
"fields": {
"name": "Nom",
"message": "Message",
"command": "Commande",
"scheduleType": "Type de planning",
"every": "Toutes les",
"unit": "Unité",
"cronExpression": "Expression cron",
"timezone": "Fuseau horaire",
"runAt": "Exécuter à"
},
"scheduleTypes": {
"every": "Intervalle",
"cron": "Cron",
"at": "Une fois"
},
"everyUnits": {
"second": "Secondes",
"minute": "Minutes",
"hour": "Heures",
"day": "Jours"
},
"validation": {
"nameRequired": "Le nom est obligatoire.",
"messageRequired": "Le message est obligatoire.",
"intervalRequired": "Lintervalle doit être un nombre positif.",
"cronRequired": "Lexpression cron est obligatoire.",
"timeRequired": "Lheure dexécution est obligatoire.",
"futureRequired": "Lheure dexécution doit être dans le futur."
}
},
"oauth": {
"authentication": "Authentification OAuth",
"signIn": "Se connecter",
"signingIn": "Connexion...",
"signInAgain": "Se reconnecter",
"signOut": "Se déconnecter",
"signedInAs": "Connecté en tant que {{account}}",
"signInHelp": "Connectez-vous depuis cet appareil ; aucune clé API nest enregistrée dans la configuration.",
"remoteSignInHelp": "Sélectionnez Se connecter pour ouvrir xAI sur votre ordinateur, puis collez le code dautorisation affiché après la connexion.",
"codexRemoteSignInHelp": "Connectez-vous dans ce navigateur, puis recollez dans nanobot lURL complète de rappel localhost.",
"signInRequired": "Connexion requise",
"signInBeforeSaving": "Connectez-vous à ce fournisseur avant denregistrer le préréglage.",
"signedIn": "Connecté",
"notSignedIn": "Non connecté",
"proxyLabel": "Proxy réseau",
"proxySaveBeforeSignIn": "Enregistrez les modifications du proxy avant de vous connecter.",
"saveProxy": "Enregistrer le proxy",
"localCodeHelp": "Terminez la connexion dans votre navigateur. nanobot termine généralement automatiquement ; sinon, collez le code dautorisation ci-dessous.",
"remoteCodeHelp": "Sélectionnez Se connecter pour ouvrir xAI sur votre ordinateur. Après la connexion, collez ci-dessous le code dautorisation affiché par xAI.",
"localCallbackHelp": "Terminez la connexion dans votre navigateur. nanobot termine généralement automatiquement ; sinon, copiez lURL complète de rappel localhost depuis la barre dadresse et collez-la ci-dessous.",
"remoteCallbackHelp": "Ouvrez ChatGPT dans ce navigateur et terminez la connexion. Lorsque la page localhost ne se charge pas, copiez lURL complète de la barre dadresse et collez-la ci-dessous.",
"authorizationCode": "Code dautorisation",
"callbackUrl": "URL complète de rappel",
"callbackUrlPlaceholder": "http://localhost:1455/auth/callback?code=…&state=…",
"openChatGPT": "Ouvrir ChatGPT",
"pasteCallbackToContinue": "Collez lURL de rappel pour continuer.",
"waitingForCallback": "En attente du rappel du navigateur…",
"finishSignIn": "Terminer la connexion"
},
"skills": {
"description": "Consultez les compétences dinstruction que cet agent peut charger pendant une conversation.",
"caption": "{{available}} disponibles · {{total}} au total",
"views": "Vues des compétences",
"installedTab": "Installées",
"discoverTab": "Découvrir",
"customGroup": "Personnalisées",
"builtinGroup": "Intégrées",
"otherGroup": "Autres",
"searchInstalled": "Rechercher les compétences installées",
"filterAll": "Toutes",
"filterEnabled": "Activées",
"filterDisabled": "Désactivées",
"noMatching": "Aucune compétence correspondante.",
"statusDisabled": "Désactivée",
"statusEnabled": "Activée",
"statusNeedsSetup": "Configuration requise",
"showLess": "Afficher moins",
"showMore": "Afficher plus",
"enabledControl": "Utiliser cette compétence",
"enabledDescription": "Autorise lagent à charger cette compétence lorsque ses prérequis sont satisfaits.",
"enableSkill": "Activer {{name}}",
"disableSkill": "Désactiver {{name}}",
"updateFailed": "Impossible de mettre à jour cette compétence.",
"deleteTitle": "Supprimer la compétence",
"deleteDescription": "Supprime cette compétence de lespace de travail actuel.",
"deleteAction": "Supprimer",
"deleteFailed": "Impossible de supprimer cette compétence.",
"deleteConfirmTitle": "Supprimer {{name}} ?",
"deleteConfirmDescription": "Cette action supprime les fichiers de la compétence de lespace de travail actuel et ne peut pas être annulée.",
"deleteConfirmAction": "Supprimer la compétence",
"instructionsTitle": "Instructions de la compétence",
"setupRequired": "Configuration requise",
"setupDescription": "Installez la dépendance manquante sur la machine qui exécute nanobot, puis vérifiez à nouveau.",
"copySetupCommand": "Copier la commande de configuration",
"checkAgain": "Vérifier à nouveau",
"marketplaceSearchFailed": "Impossible de rechercher dans les catalogues de compétences.",
"marketplaceInstallFailed": "Impossible dinstaller cette compétence.",
"marketplaceSearchPlaceholder": "Rechercher des compétences",
"marketplaceSearchLabel": "Rechercher des compétences",
"marketplaceSearching": "Recherche en cours",
"marketplaceProviderFilter": "Source des compétences",
"marketplaceProviderAll": "Toutes",
"marketplaceTrendingTitle": "Tendances par catalogue",
"marketplaceTrendingDescription": "Chaque catalogue conserve son propre classement et ses propres statistiques dinstallation.",
"marketplaceViewAll": "Tout afficher",
"marketplaceTrendingUnavailable": "Les compétences populaires sont temporairement indisponibles.",
"marketplaceEmpty": "Aucune compétence trouvée pour « {{query}} ».",
"marketplaceConfirmTitle": "Installer {{name}} ?",
"marketplaceConfirmDescription": "Cette compétence tierce provient de {{provider}} ({{source}}) et peut contenir des instructions ou des scripts exécutables.",
"marketplaceConfirmInstall": "Installer la compétence",
"marketplaceOpen": "Ouvrir {{name}} sur {{provider}}",
"marketplaceOpenProvider": "Ouvrir {{provider}}",
"marketplaceInstalls24h": "{{formattedCount}} installations / 24 h",
"marketplaceInstalls": "{{formattedCount}} installations",
"marketplaceNpxRequired": "Node.js avec npx est requis",
"marketplaceInstalling": "Installation",
"marketplaceInstalled": "Installée",
"marketplaceInstall": "Installer",
"marketplaceNoTrend": "Pas encore de tendance",
"marketplaceTrendLabel": "Tendance des installations sur 8 semaines",
"featured": "Compétences de lagent",
"empty": "Aucune compétence disponible.",
"sourceWorkspace": "Personnalisée",
"sourceBuiltin": "Intégrée",
"statusAvailable": "Disponible",
"statusUnavailable": "Indisponible",
"unavailableReason": "Manquant : {{reason}}",
"openDetails": "Ouvrir les détails de {{name}}",
"loadingDetail": "Chargement des détails...",
"loadFailed": "Impossible de charger les détails.",
"descriptionTitle": "Description",
"source": "Source",
"status": "Statut",
"requirements": "Prérequis",
"noRequirements": "Aucun prérequis explicite.",
"commands": "Commandes",
"environment": "Variables denvironnement",
"missingCommands": "CLI manquant",
"missingEnvironment": "ENV manquant",
"unavailableReasonLabel": "Raison dindisponibilité",
"rawInstructions": "SKILL.md brut",
"rawInstructionsEmpty": "Aucune instruction brute.",
"detailDescription": "Détails de {{name}}."
},
"voice": {
"selectProvider": "Choisir un fournisseur",
"configureProvider": "Configurer le fournisseur",
"languageAuto": "Automatique"
}
},
"chat": {
"fallbackTitle": "Sujet {{id}}",
"forkTitle": "Branche : {{title}}",
"loading": "Chargement…",
"noSessions": "Aucune session pour le moment.",
"showMore": "Afficher {{count}} de plus",
"collapsed": "{{count}} sujets masqués",
"showLess": "Afficher moins",
"actions": "Actions du sujet {{title}}",
"newInProject": "Démarrer un nouveau sujet dans {{project}}",
"activity": {
"running": "Agent en cours",
"complete": "Agent terminé",
"updated": "Nouvelle activité"
},
"pin": "Épingler",
"unpin": "Désépingler",
"rename": "Renommer",
"renameTitle": "Renommer le sujet",
"renameDescription": "Choisissez un nom local dans la barre latérale pour ce sujet.",
"renamePlaceholder": "Nom du sujet",
"renameProjectTitle": "Renommer le projet",
"renameProjectDescription": "Choisissez un nom local dans la barre latérale pour ce projet.",
"renameProjectPlaceholder": "Nom du projet",
"renameSave": "Enregistrer",
"archive": "Archiver",
"unarchive": "Désarchiver",
"showArchived": "Afficher les archives",
"hideArchived": "Masquer les archives",
"select": "Sélectionner",
"cancelSelection": "Annuler la sélection",
"selectedCount": "{{count}} sélectionnés",
"deleteSelected": "Supprimer",
"delete": "Supprimer",
"newChat": "Nouveau sujet",
"groups": {
"pinned": "Épinglés",
"all": "Sujets",
"projects": "Projets",
"today": "Aujourdhui",
"yesterday": "Hier",
"earlier": "Plus anciens",
"archived": "Archivés"
}
},
"deleteConfirm": {
"title": "Supprimer cette discussion ?",
"titleMany": "Supprimer {{count}} discussions et volets ?",
"description": "Cette action est irréversible.",
"descriptionMany": "Cette action est irréversible.",
"cancel": "Annuler",
"confirm": "Supprimer",
"automationsDescription": "Cette discussion contient des automatisations planifiées. La supprimer les supprimera aussi.",
"automationsDescriptionMany": "Les automatisations liées seront également supprimées.",
"moreAutomations": "+ {{count}} autres",
"confirmWithAutomations": "Supprimer",
"schedule": {
"at": "{{time}}",
"every": "Tous les {{duration}}",
"cron": "Cron {{expr}}",
"cronWithTz": "Cron {{expr}} · {{tz}}",
"local": "Déclencheur local",
"unknown": "Planification personnalisée"
},
"next": {
"label": "Prochaine exécution : {{time}}",
"disabled": "En pause",
"local": "En attente du déclencheur",
"none": "Aucune prochaine exécution"
}
},
"connection": {
"idle": "Inactif",
"connecting": "Connexion…",
"open": "Connecté",
"reconnecting": "Reconnexion…",
"closed": "Déconnecté",
"error": "Erreur de connexion"
},
"thread": {
"loadingConversation": "Chargement de la conversation…",
"empty": {
"greetings": {
"workOn": "Sur quoi travaillons-nous ensemble ?",
"start": "Par où commence-t-on ?",
"build": "Que construisons-nous aujourd'hui ?",
"tackle": "Que résout-on ensemble ?"
},
"quickActions": {
"plan": {
"title": "Créer un plan de projet",
"prompt": "Créez un plan de projet concis pour ce que je devrais construire ensuite."
},
"analyze": {
"title": "Analyser ces données",
"prompt": "Aidez-moi à analyser ces données et à faire ressortir les tendances les plus importantes."
},
"brainstorm": {
"title": "Trouver des idées",
"prompt": "Proposez quelques idées pratiques et leurs compromis pour ce problème."
},
"code": {
"title": "Écrire du code",
"prompt": "Aidez-moi à écrire le code pour cette tâche, en commençant par le plus petit changement utile."
},
"summarize": {
"title": "Résumer ce document",
"prompt": "Résumez ce document et listez les points clés à retenir."
},
"more": {
"title": "Plus",
"prompt": "Montrez-moi quelques façons utiles dont vous pouvez maider dans cet espace de travail."
}
},
"imageQuickActions": {
"icon": {
"title": "Créer une icône dapp",
"prompt": "Générez une icône dapplication 1:1 propre pour nanobot : robot sympathique, style vectoriel simple, palette douce bleu et blanc, sans texte."
},
"sticker": {
"title": "Créer un sticker",
"prompt": "Générez une image façon autocollant dun petit assistant robot, avec un fond dapparence transparente, expressive et ludique."
},
"poster": {
"title": "Créer une affiche",
"prompt": "Générez un concept daffiche soigné pour un assistant IA personnel, composition moderne, hiérarchie visuelle forte, adapté à une page de destination."
},
"product": {
"title": "Maquette produit",
"prompt": "Générez une maquette produit propre pour une application web dIA conversationnelle, interface minimale, éclairage premium, cadre dappareil réaliste."
},
"portrait": {
"title": "Portrait stylisé",
"prompt": "Générez un portrait stylisé dun compagnon IA sympathique, lumière douce, détaillé mais accessible, style illustration moderne."
},
"edit": {
"title": "Modifier une image",
"prompt": "Aidez-moi à modifier une image. Demandez-moi dabord de téléverser ou dindiquer limage, puis générez le résultat modifié."
}
}
},
"header": {
"toggleSidebar": "Afficher ou masquer la barre latérale",
"newChat": "Démarrer un nouveau sujet",
"toggleTheme": "Changer le thème depuis len-tête",
"settings": "Ouvrir les paramètres",
"sessionInfo": "Détails de la session"
},
"sessionInfo": {
"title": "Session",
"untitled": "Sujet sans titre",
"automations": "Automatisations",
"count": "{{count}}",
"loading": "Chargement des automatisations...",
"loadFailed": "Impossible de charger les automatisations.",
"empty": "Aucune automatisation dans cette session pour le moment.",
"disabled": "Désactivé",
"schedule": {
"at": "À {{time}}",
"every": "Toutes les {{duration}}",
"cron": "Cron {{expr}}",
"cronWithTz": "Cron {{expr}} · {{tz}}",
"local": "Déclencheur local",
"unknown": "Planification personnalisée"
},
"next": {
"label": "Prochaine {{time}}",
"pending": "Exécution imminente",
"disabled": "En pause",
"local": "En attente du déclencheur",
"none": "Aucune prochaine exécution"
}
},
"composer": {
"placeholderThread": "Saisissez votre message…",
"placeholderHero": "Quavez-vous en tête ?",
"placeholderOpening": "Ouverture dun nouveau sujet…",
"placeholderStreaming": "Le modèle est en train de répondre…",
"inputAria": "Champ de message",
"sendHint": "Entrée pour envoyer · Maj+Entrée pour un retour à la ligne",
"runRuntimeTitle": "Exécution · {{elapsed}}",
"goalStateStrip": "Objectif · {{label}}",
"goalStateFallback": "Objectif",
"goalStateExpandAria": "Afficher lobjectif complet",
"goalStateSheetTitle": "Objectif",
"goalStateCloseAria": "Fermer lobjectif",
"send": "Envoyer le message",
"stop": "Arrêter la réponse",
"quotedContext": "Contexte cité",
"removeQuotedContext": "Supprimer le contexte cité",
"modelNotConfigured": "Modèle non configuré",
"configureModel": "Configurer le modèle",
"queued": {
"label": "Guidage en attente",
"guide": "Guider",
"delete": "Supprimer le guidage",
"edit": "Modifier le guidage",
"drag": "Faire glisser pour réordonner"
},
"attachImage": "Joindre des fichiers",
"imageMode": {
"label": "Génération dimage",
"toggle": "Activer ou désactiver le mode génération dimage",
"placeholder": "Décrire ou modifier une image…",
"aspectAria": "Format de limage",
"aspectLabel": "Format de limage",
"aspect": {
"auto": "Automatique",
"1_1": "Carré 1:1",
"3_4": "Portrait 3:4",
"9_16": "Story 9:16",
"4_3": "Paysage 4:3",
"16_9": "Large 16:9"
}
},
"tools": {
"search": "Rechercher",
"reason": "Raisonner",
"deepResearch": "Recherche approfondie",
"voice": "Entrée vocale"
},
"voice": {
"hint": "Cliquez pour dicter ou maintenez",
"stop": "Arrêter l'enregistrement",
"transcribing": "Transcription...",
"recordingStatus": "Enregistrement {{time}}"
},
"voiceErrors": {
"insecureContext": "Pour des raisons de sécurité, Chrome et dautres navigateurs bloquent laccès au microphone sur les pages HTTP distantes. Ouvrez cette WebUI en HTTPS pour utiliser la saisie vocale.",
"unsupported": "La saisie vocale n'est pas prise en charge par ce navigateur.",
"permission": "Autorisez le microphone dans la barre d'adresse, puis réessayez.",
"notConfigured": "Configurez d'abord un fournisseur de transcription.",
"tooLong": "L'enregistrement est trop long.",
"tooShort": "Maintenez un peu plus longtemps pour enregistrer la voix.",
"noInput": "Aucune entrée microphone détectée.",
"noDevice": "Aucun microphone trouvé. Connectez-en un, puis réessayez.",
"failed": "Impossible de transcrire l'audio."
},
"slash": {
"ariaLabel": "Commandes slash",
"label": "commandes",
"navigateHint": "↑↓ Naviguer",
"selectHint": "Entrée/Tab Insérer",
"closeHint": "Échap Fermer",
"commands": {
"new": {
"title": "Nouvelle discussion",
"description": "Réinitialiser cette discussion et démarrer une nouvelle conversation."
},
"stop": {
"title": "Arrêter la tâche en cours",
"description": "Annuler le tour actif de lagent pour cette discussion."
},
"restart": {
"title": "Redémarrer nanobot",
"description": "Redémarrer le processus du bot sur place."
},
"status": {
"title": "Afficher l’état",
"description": "Afficher l’état du temps dexécution, du fournisseur et des canaux."
},
"model": {
"title": "Modèle",
"description": "Afficher ou changer le préréglage de modèle actif."
},
"history": {
"title": "Afficher lhistorique",
"description": "Afficher les N derniers messages persistés de la conversation."
},
"dream": {
"title": "Lancer Dream",
"description": "Déclencher manuellement la consolidation de la mémoire."
},
"dream_log": {
"title": "Afficher le journal Dream",
"description": "Afficher ce que la dernière consolidation Dream a changé."
},
"dream_restore": {
"title": "Restaurer la mémoire",
"description": "Revenir à un instantané Dream précédent."
},
"dream_prompt": {
"title": "Mémoire Dream",
"description": "Indiquez à Dream comment organiser la mémoire de cet espace de travail."
},
"goal": {
"title": "Objectif long terme",
"description": "Demandez à lagent de traiter ceci comme un objectif multi‑étapes durable."
},
"trigger": {
"title": "Créer un déclencheur local",
"description": "Crée un déclencheur CLI lié à cette session de chat."
},
"help": {
"title": "Afficher laide",
"description": "Lister les commandes slash disponibles."
},
"pairing": {
"title": "Appairage",
"description": "Gérer les demandes dappairage."
}
},
"badges": {
"current": "Actuel",
"recent": "Récent"
},
"details": {
"goalActive": "Lobjectif est en cours",
"goalReady": "Démarrer un objectif durable",
"history": "Afficher les messages récents",
"stopRunning": "En cours"
}
},
"encoding": "Traitement…",
"remove": "Retirer la pièce jointe",
"normalizedSizeHint": "{{orig}} → {{current}} (automatique)",
"textTooLarge": "Le texte du message est trop volumineux (maximum {{max}})",
"imageRejected": {
"unsupported_type": "Type de fichier non pris en charge",
"empty_file": "Impossible de joindre des fichiers vides",
"too_many_attachments": "Maximum {{max}} pièces jointes par message",
"too_many_images": "Maximum {{max}} images par message",
"magic_mismatch": "Ce fichier n'est pas une image",
"decode_failed": "Impossible de décoder cette image",
"too_large": "Fichier trop volumineux — essayez-en un plus petit",
"total_too_large": "Les pièces jointes sont trop volumineuses ensemble — supprimez-en ou utilisez des fichiers plus petits",
"transport_too_large": "Cette pièce jointe dépasserait la limite de transport de la passerelle",
"io": "Impossible de lire ce fichier"
},
"mentions": {
"ariaLabel": "Applications",
"label": "Applications",
"cliGroup": "Applications CLI",
"mcpGroup": "Services MCP",
"sessionGroup": "Conversations Nanobot",
"cliBadge": "CLI",
"mcpBadge": "MCP",
"cliDescription": "Utiliser @{{name}} comme application CLI locale",
"mcpDescription": "Utiliser @{{name}} comme serveur MCP",
"cliTitle": "Application CLI : {{name}}",
"mcpTitle": "Serveur MCP : {{name}}",
"sessionBadge": "Conversation Nanobot",
"sessionDescription": "Référencer @{{name}} comme discussion précédente"
},
"workspace": {
"accessAria": "Mode daccès à lespace de travail",
"projectAria": "Choisir un projet",
"projectPlaceholder": "Sélectionner un projet",
"default": "Autorisation par défaut",
"defaultShort": "Par défaut",
"full": "Accès complet",
"fullShort": "Complet"
}
},
"scrollToBottom": "Faire défiler vers le bas",
"loadEarlier": "Charger les messages précédents",
"forkedFromHistory": "Bifurqué depuis l'historique",
"promptNavigator": {
"open": "Ouvrir le navigateur dinstructions",
"title": "Instructions",
"search": "Rechercher des instructions",
"noResults": "Aucune instruction correspondante.",
"jumpTo": "Aller à linstruction : {{label}}",
"railAria": "Navigation dans les instructions utilisateur"
}
},
"message": {
"streaming": "en cours de génération",
"delivery": {
"sending": "Envoi…",
"failed": "Non envoyé"
},
"assistantTyping": "Lassistant est en train d’écrire",
"toolSingle": "Utilisation dun outil",
"toolMany": "{{count}} outils utilisés",
"toolSummary": "{{count}} outil",
"toolSummaryMany": "{{count}} outils",
"reasoningTools": "Raisonnement · {{count}} outils",
"reasoningToolsSingular": "Raisonnement · 1 outil",
"reasoning": "Raisonnement",
"reasoningStreaming": "En réflexion…",
"reasoningSummary": "Raisonnement",
"agentActivitySummary": "{{reasoning}} étapes · {{tools}} appels doutils",
"agentActivityToolsOnly": "{{tools}} appels doutils",
"agentActivityLiveSummary": "En cours… · {{reasoning}} étapes · {{tools}} appels doutils",
"agentActivityLiveToolsOnly": "En cours… · {{tools}} appels doutils",
"imageAttachment": "Pièce jointe image",
"videoAttachment": "Pièce jointe vidéo",
"fileAttachment": "Pièce jointe",
"attachmentUnavailable": "Pièce jointe indisponible",
"dataTable": "Tableau de données",
"fileEditPreparing": "Préparation de la modification du fichier…",
"openLink": "Ouvrir le lien : {{label}}",
"openAttachment": "Ouvrir {{name}}",
"skill": "Compétence : {{name}}",
"askAboutSelection": "Poser une question à ce sujet",
"forkFromHere": "Bifurquer",
"copyReply": "Copier",
"copiedReply": "Copié",
"turnLatencyTitle": "Temps de réponse (de bout en bout)",
"fileEditViewDiff": "Voir les différences",
"fileEditViewLargeDiff": "Voir les grandes différences",
"fileEditDiffLineCount": "{{count}} lignes",
"fileEditUnchangedLinesHidden": "{{count}} lignes inchangées masquées",
"fileEditShowMoreLines": "Afficher {{count}} lignes de plus",
"fileEditShowFewerLines": "Afficher moins de lignes",
"fileEditOpenFile": "Ouvrir le fichier",
"fileEditDiffTruncated": "Différences tronquées. Ouvrez le fichier pour voir la modification complète.",
"activityThinkingFor": "Réflexion pendant {{duration}}",
"activityThought": "Réflexion terminée",
"activityThoughtFor": "Réflexion terminée en {{duration}}",
"activityWorkingFor": "Travail en cours depuis {{duration}}",
"activityWorked": "Travail terminé",
"activityWorkedFor": "Travail terminé en {{duration}}",
"cliActivityRunningOne": "Utilisation de {{name}}",
"cliActivityRanOne": "{{name}} utilisé",
"cliActivityFailedOne": "Échec de {{name}}",
"cliActivityRunningMany": "Utilisation de {{count}} applications CLI",
"cliActivityRanMany": "{{count}} applications CLI utilisées",
"cliActivityFailedMany": "Échec de {{count}} applications CLI",
"cliRunRunning": "Utilisation",
"cliRunRan": "Utilisé",
"cliRunFailed": "Échec",
"automationSourceFallback": "Automatisation",
"automationTriggered": "Déclenché automatiquement"
},
"lightbox": {
"title": "Aperçu de limage",
"open": "Voir limage",
"prev": "Image précédente",
"next": "Image suivante",
"close": "Fermer laperçu"
},
"filePreview": {
"aria": "Aperçu du fichier",
"breadcrumb": "Chemin du fichier",
"close": "Fermer laperçu du fichier",
"loading": "Chargement de laperçu...",
"failed": "Impossible de prévisualiser ce fichier.",
"routeMissing": "Laperçu du fichier nécessite le dernier gateway. Redémarrez nanobot gateway puis réessayez.",
"resize": "Redimensionner laperçu du fichier",
"truncated": "Laperçu est tronqué car le fichier est volumineux."
},
"code": {
"fallbackLanguage": "code",
"copyAria": "Copier le code",
"copy": "Copier",
"copied": "Copié"
},
"workbench": {
"aria": "Espace de conversations",
"panes": "Volets",
"panesInTab": "Volets dans {{title}}",
"dropPane": "Déplacer {{pane}} dans {{tab}}",
"moveToTab": "Déplacer vers un onglet",
"layout": "Disposition des volets",
"addPane": "Ajouter un volet",
"promotePane": "Définir {{title}} comme volet principal",
"paneActions": "Actions du volet {{title}}",
"detachPane": "Déplacer {{title}} vers son propre sujet",
"composerAria": "Message à {{title}}",
"layouts": {
"columns": "Colonnes",
"rows": "Lignes",
"grid": "Grille",
"main-stack": "Principal et pile",
"monocle": "Monocle"
}
},
"common": {
"dismiss": "Fermer",
"close": "Fermer",
"current": "Actuel",
"cancel": "Annuler"
},
"errors": {
"messageTooBig": {
"title": "Message trop volumineux",
"body": "Le serveur a rejeté votre dernier message car il dépasse la taille autorisée. Retirez des images ou choisissez des fichiers plus légers, puis renvoyez-le."
},
"workspaceScopeRejected": {
"title": "Lespace de travail na pas changé",
"body": "La passerelle a refusé ce projet ou ce mode daccès. Choisissez un projet existant ou un autre mode daccès, puis réessayez."
},
"turnRejected": {
"title": "Le message na pas été envoyé",
"body": "La passerelle a refusé ce message. Vérifiez le texte ou les pièces jointes, puis réessayez."
}
},
"workspace": {
"dialog": {
"defaultProject": "Espace de travail par défaut",
"manual": "Coller un chemin",
"manualPlaceholder": "/Users/name/project",
"usePath": "Utiliser le chemin",
"absolutePathRequired": "Saisissez un chemin absolu de dossier sur cette machine."
}
}
}