| 1 | { |
| 2 | "ComposerPlaceholder": "Écrivez une tâche ou utilisez /.", |
| 3 | "ComposerDispatchFailedRestored": "Message non envoyé ({error}) ; restauré dans le composer.", |
| 4 | "DispatchFailedQueued": "Échec de l'envoi ({error}) ; {count} suivi(s) en file conservé(s).", |
| 5 | "DispatchFailedInitial": "Le prompt initial n'a pas pu être envoyé : {error}", |
| 6 | "HistorySearchPlaceholder": "Rechercher dans l'historique...", |
| 7 | "HistorySearchTitle": "Recherche dans l'historique", |
| 8 | "HistoryHintMove": "Up/Down déplacer", |
| 9 | "HistoryHintAccept": "Enter accepter", |
| 10 | "HistoryHintRestore": "Esc restaurer", |
| 11 | "HistoryNoMatches": " Aucun résultat", |
| 12 | "StatusPickerTitle": " Barre d'état ", |
| 13 | "StatusPickerInstruction": "Choisissez les éléments à afficher dans le pied de page :", |
| 14 | "StatusPickerActionToggle": "basculer ", |
| 15 | "StatusPickerActionAll": "tout ", |
| 16 | "StatusPickerActionNone": "aucun ", |
| 17 | "StatusPickerActionSave": "enregistrer ", |
| 18 | "StatusPickerActionCancel": "annuler ", |
| 19 | "HotbarSetupTitle": " Configuration Hotbar ", |
| 20 | "HotbarSetupSourceApp": "app", |
| 21 | "HotbarSetupSourceSlash": "slash", |
| 22 | "HotbarSetupSourceMcp": "mcp", |
| 23 | "HotbarSetupSourceSkill": "skill", |
| 24 | "HotbarSetupSourcePlugin": "plugin", |
| 25 | "HotbarSetupStatusDisabled": "désactivé", |
| 26 | "HotbarSetupStatusPrefill": "prérempli", |
| 27 | "HotbarSetupStatusReady": "prêt", |
| 28 | "HotbarSetupDirtyModified": "modifié", |
| 29 | "HotbarSetupDirtyClean": "inchangé", |
| 30 | "HotbarSetupNoAction": "Aucune action", |
| 31 | "HotbarSetupStatusLine": "slot {slot} | {action} | {dirty}", |
| 32 | "HotbarSetupSlotOutOfRange": "Le slot {slot} de la Hotbar est hors de 1-{max}", |
| 33 | "HotbarSetupNoActionSelected": "Aucune action sélectionnée.", |
| 34 | "HotbarSetupCannotAssign": "{action} ne peut pas être assignée : {reason}", |
| 35 | "HotbarSetupNoActions": "Aucune action de Hotbar disponible.", |
| 36 | "HotbarSetupRecommended": "rec", |
| 37 | "HotbarSetupEmptySlot": "vide", |
| 38 | "HotbarSetupHelp": "Tab/Shift+Tab source Up/Down action 1-8 slot Enter assigner Space basculer Delete effacer s enregistrer Esc annuler", |
| 39 | "HotbarActionVoiceToggleName": "Saisie vocale", |
| 40 | "HotbarActionVoiceToggleDescription": "Activer ou couper la capture vocale du micro du terminal.", |
| 41 | "HotbarActionSessionCompactName": "Compacter la session", |
| 42 | "HotbarActionSessionCompactDescription": "Compacter le contexte de la conversation en cours.", |
| 43 | "HotbarActionModePlanName": "Mode Plan", |
| 44 | "HotbarActionModePlanDescription": "Réfléchir à un plan avant d'agir.", |
| 45 | "HotbarActionModeAgentName": "Mode Act", |
| 46 | "HotbarActionModeAgentDescription": "Travailler directement dans la session en cours.", |
| 47 | "HotbarActionModeYoloName": "Full Access (Act)", |
| 48 | "HotbarActionModeYoloDescription": "Compatibilité : Act avec les permissions Full Access (pas un mode à part).", |
| 49 | "HotbarActionReasoningCycleName": "Cycler le raisonnement", |
| 50 | "HotbarActionReasoningCycleDescription": "Cycler l'effort de raisonnement configuré pour le fournisseur actif.", |
| 51 | "HotbarActionReasoningCycleAutoDisabled": "L'effort de raisonnement est contrôlé par le routage automatique du modèle.", |
| 52 | "HotbarActionSidebarToggleName": "Basculer la barre latérale", |
| 53 | "HotbarActionSidebarToggleDescription": "Afficher ou masquer la barre latérale.", |
| 54 | "HotbarActionFileTreeToggleName": "Basculer l'arborescence", |
| 55 | "HotbarActionFileTreeToggleDescription": "Afficher ou masquer l'arborescence des fichiers du workspace.", |
| 56 | "HotbarActionPaletteOpenName": "Palette de commandes", |
| 57 | "HotbarActionPaletteOpenDescription": "Ouvrir la palette de commandes.", |
| 58 | "HotbarActionTrustToggleName": "Basculer la confiance", |
| 59 | "HotbarActionTrustToggleDescription": "Activer ou désactiver le mode de confiance du workspace.", |
| 60 | "ConfigTitle": "Config", |
| 61 | "ConfigModalTitle": " Config ", |
| 62 | "ConfigSearchPlaceholder": "taper pour filtrer", |
| 63 | "ConfigNoSettings": " Aucun paramètre disponible.", |
| 64 | "ConfigNoMatchesPrefix": " Aucun paramètre ne correspond à ", |
| 65 | "ConfigFilteredSettings": " Paramètres filtrés", |
| 66 | "ConfigShowing": " Affichage", |
| 67 | "ConfigFooterDefault": " taper=filtrer, Up/Down=sélection, Enter/e=éditer, Esc/q=fermer ", |
| 68 | "ConfigFooterScrollable": " taper=filtrer, Up/Down=sélection, Enter/e=éditer, PgUp/PgDn=défiler, Esc/q=fermer ", |
| 69 | "ConfigFooterFiltered": " taper=filtrer, Backspace=effacer, Ctrl+U/Esc=vider, Enter=éditer ", |
| 70 | "ConfigSectionProvider": "Fournisseur", |
| 71 | "ConfigSectionModel": "Modèle", |
| 72 | "ConfigSectionPermissions": "Permissions", |
| 73 | "ConfigSectionNetwork": "Réseau", |
| 74 | "ConfigSectionDisplay": "Affichage", |
| 75 | "ConfigSectionComposer": "Composer", |
| 76 | "ConfigSectionSidebar": "Barre latérale", |
| 77 | "ConfigSectionHistory": "Historique", |
| 78 | "ConfigSectionMcp": "MCP", |
| 79 | "ConfigSectionFleet": "Fleet", |
| 80 | "ConfigSectionWorkflow": "Workflow", |
| 81 | "ConfigSectionSession": "Session", |
| 82 | "ConfigSectionLegacy": "Legacy", |
| 83 | "ConfigSectionExperimental": "Expérimental", |
| 84 | "ConfigScopeSession": "SESSION", |
| 85 | "ConfigScopeSaved": "ENREGISTRÉ", |
| 86 | "ConfigEditCancelled": "Modification annulée", |
| 87 | "ConfigEditTitlePrefix": "Modifier ", |
| 88 | "ConfigEditScopeLabel": "Portée : ", |
| 89 | "ConfigEditCurrentLabel": "Actuel : ", |
| 90 | "ConfigEditHintLabel": "Indice : ", |
| 91 | "ConfigEditNewLabel": "Nouveau : ", |
| 92 | "ConfigEditFooter": " Enter=appliquer, Esc=annuler, Ctrl+U=vider, Ctrl+A=tout, ←,/→,=déplacer ", |
| 93 | "ConfigLocalePartialBadge": "partiel", |
| 94 | "ConfigLocalePartialDetail": "Pack de traduction partiel ; les chaînes manquantes s'affichent en anglais.", |
| 95 | "ConfigRowEffective": " (effectif {currency})", |
| 96 | "ConfigDefaultValue": "(par défaut)", |
| 97 | "ConfigDefaultReasoning": "(config/défaut)", |
| 98 | "ConfigUnavailable": "(indisponible)", |
| 99 | "ConfigLabelProvider": "Fournisseur actif", |
| 100 | "ConfigLabelBaseUrlDeepseek": "URL de l'API du fournisseur (route DeepSeek)", |
| 101 | "ConfigLabelProviderUrl": "URL de l'API du fournisseur", |
| 102 | "ConfigLabelModel": "Modèle actif du fournisseur", |
| 103 | "ConfigLabelFastModel": "Modèle rapide (dérivé)", |
| 104 | "ConfigLabelDefaultModel": "Modèle de secours hérité (routes DeepSeek uniquement)", |
| 105 | "ConfigLabelReasoningEffort": "Niveau de raisonnement", |
| 106 | "ConfigLabelApprovalMode": "Permission de cette session", |
| 107 | "ConfigLabelPermissionPosture": "Permission des nouvelles sessions", |
| 108 | "ConfigLabelApprovalPolicy": "Permission des nouvelles sessions (config)", |
| 109 | "ConfigLabelManagedApprovalPolicy": "Permission des nouvelles sessions (gérée)", |
| 110 | "ConfigLabelDefaultMode": "Mode au démarrage", |
| 111 | "ConfigLabelAllowShell": "Accès au shell", |
| 112 | "ConfigLabelManagedAllowShell": "Accès au shell (géré)", |
| 113 | "ConfigLabelStreamTimeout": "Délai du flux", |
| 114 | "ConfigLabelTheme": "Thème", |
| 115 | "ConfigLabelLocale": "Langue", |
| 116 | "ConfigLabelBackground": "Arrière-plan", |
| 117 | "ConfigLabelOceanTreatment": "Traitement océan", |
| 118 | "ConfigLabelWorkSurfacePlacement": "Position de la barre latérale", |
| 119 | "ConfigLabelTopHeight": "Hauteur de la barre supérieure", |
| 120 | "ConfigLabelSideWidth": "Largeur de la barre latérale", |
| 121 | "ConfigLabelCalmMode": "Transcription calme", |
| 122 | "ConfigLabelLowMotion": "Réduire les animations", |
| 123 | "ConfigLabelFancyAnimations": "Animations de l'interface", |
| 124 | "ConfigLabelLaunchScreen": "Écran de lancement", |
| 125 | "ConfigLabelShowThinking": "Raisonnement du modèle dans le chat", |
| 126 | "ConfigLabelThinkingHighlight": "Surlignage du fond du raisonnement", |
| 127 | "ConfigLabelShowToolDetails": "Niveau de détail des outils", |
| 128 | "ConfigLabelInlineDiffs": "Modifications de fichiers en ligne", |
| 129 | "ConfigLabelStatusIndicator": "Indicateur d'état", |
| 130 | "ConfigLabelSynchronizedOutput": "Cadence de sortie", |
| 131 | "ConfigLabelCostCurrency": "Devise des coûts", |
| 132 | "ConfigLabelTranscriptSpacing": "Espacement de la transcription", |
| 133 | "ConfigLabelToolCollapse": "Cartes d'outils", |
| 134 | "ConfigLabelComposerDensity": "Densité du composer", |
| 135 | "ConfigLabelComposerBorder": "Bordure du composer", |
| 136 | "ConfigLabelComposerVimMode": "Mode Vim du composer", |
| 137 | "ConfigLabelBracketedPaste": "Collage encadré", |
| 138 | "ConfigLabelPasteBurstDetection": "Détection de collage", |
| 139 | "ConfigLabelMentionMenuLimit": "Limite du menu de mentions", |
| 140 | "ConfigLabelMentionMenuBehavior": "Comportement du menu de mentions", |
| 141 | "ConfigLabelMentionWalkDepth": "Profondeur des mentions de fichiers", |
| 142 | "ConfigLabelWorkspaceFollowSymlinks": "Suivre les liens symboliques", |
| 143 | "ConfigLabelSidebarWidth": "Largeur de la barre latérale", |
| 144 | "ConfigLabelSidebarFocus": "Focus de la barre latérale", |
| 145 | "ConfigLabelContextPanel": "Panneau de contexte", |
| 146 | "ConfigLabelAutoCompact": "Compaction automatique", |
| 147 | "ConfigLabelAutoCompactThreshold": "Seuil de compaction", |
| 148 | "ConfigLabelMaxHistory": "Historique de saisie", |
| 149 | "ConfigLabelMcpConfigPath": "Chemin de la config MCP", |
| 150 | "ConfigLabelFleetSpawnDepth": "Profondeur de récursion Fleet", |
| 151 | "ConfigLabelGoalCommand": "Commande d'objectif", |
| 152 | "ConfigLabelWorkflow": "Workflow", |
| 153 | "ConfigLabelFeaturePrefix": "Fonctionnalité : {name}", |
| 154 | "ConfigColumnSetting": "Paramètre", |
| 155 | "ConfigColumnValue": "Valeur", |
| 156 | "ConfigColumnScope": "Portée", |
| 157 | "ConfigActionOpenProvider": "Enter ouvre le sélecteur de fournisseur", |
| 158 | "ConfigActionOpenModel": "Enter ouvre le sélecteur de modèle", |
| 159 | "ConfigActionToggle": "Enter/Espace bascule", |
| 160 | "ConfigActionChoose": "Enter ouvre les choix", |
| 161 | "ConfigActionEdit": "Enter modifie", |
| 162 | "ConfigActionReadOnly": "lecture seule", |
| 163 | "ModelPickerAutoNetworkHint": "par tour · fournisseurs exécutables · requête + contexte récent → DeepSeek / deepseek-v4-flash", |
| 164 | "ModelPickerAutoLocalHint": "par tour · heuristique locale · pas de requête au routeur", |
| 165 | "ModelPickerAutoLastRoute": "dernière {provider} · {model}", |
| 166 | "AutoRouteSelectedToast": "Auto : {provider} / {model} via {source} · Ctrl+O : détails de la route", |
| 167 | "HelpTitle": "Aide", |
| 168 | "HelpFilterPlaceholder": "Taper pour filtrer", |
| 169 | "HelpFilterPrefix": "Filtre : ", |
| 170 | "HelpNoMatches": " Aucun résultat.", |
| 171 | "HelpSlashCommands": "Commandes slash", |
| 172 | "HelpKeybindings": "Raccourcis clavier", |
| 173 | "HelpUserCommands": "Commandes utilisateur", |
| 174 | "HelpSkills": "Skills", |
| 175 | "HelpFooterTypeFilter": " taper pour filtrer ", |
| 176 | "HelpFooterMove": " Up/Down déplacer ", |
| 177 | "HelpFooterJump": " PgUp/PgDn sauter ", |
| 178 | "HelpFooterClose": " Esc fermer ", |
| 179 | "CmdAnchorDescription": "Épingler un fait qui survit à la compaction (injecté automatiquement dans le contexte)", |
| 180 | "CmdAttachDescription": "Joindre une image ou une vidéo ; utilisez @path pour les fichiers texte ou dossiers", |
| 181 | "CmdCacheDescription": "Afficher les stats de hit/miss du cache de préfixe sur les N derniers tours", |
| 182 | "CmdEffortDescription": "Définit le niveau de raisonnement du modèle (aussi /thinking)", |
| 183 | "CmdPreviewRequestDescription": "Prévisualiser la prochaine requête sous forme de manifeste expurgé, sans l'envoyer", |
| 184 | "CmdToolsDescription": "Inspecter une projection bornée de la dernière requête d'outils préparée (lecture seule)", |
| 185 | "CmdChangeDescription": "Afficher la dernière entrée du changelog", |
| 186 | "CmdChangeHeader": "Dernier changelog", |
| 187 | "CmdChangeTranslationQueued": "Les notes de version anglaises sont affichées ci-dessous. Une version traduite sera demandée ensuite ; si le fournisseur est indisponible, ce texte anglais fait office de repli.", |
| 188 | "CmdChangeTranslationUnavailable": "Les notes de version anglaises sont affichées ci-dessous. La traduction est indisponible car la session en cours n'a pas de clé API ou est hors ligne.", |
| 189 | "CmdChangePreviousVersion": "Version précédente : {version} — exécutez `/change {version}` pour la voir", |
| 190 | "CmdBalanceDescription": "Vérifier le solde du compte du fournisseur actif", |
| 191 | "CmdClearDescription": "Effacer l'historique de la conversation", |
| 192 | "CmdCompactDescription": "Déclencher la compaction du contexte pour libérer de l'espace", |
| 193 | "CmdPurgeDescription": "Laisser l'agent élaguer chirurgicalement l'historique pour libérer du contexte", |
| 194 | "CmdConfigDescription": "Inspecter et modifier les paramètres (clés brutes en détail avancé)", |
| 195 | "CmdPermissionsDescription": "Lister et supprimer des règles d'autorisation en toute sécurité", |
| 196 | "PermissionsListHeader": "Règles d'autorisation\nSource : permissions.toml de l'utilisateur actif\nChemin : {path}\nÉtat du fichier : {file_state}\nNombre de règles : {count}", |
| 197 | "PermissionsNoRules": "Aucune règle d'autorisation configurée.", |
| 198 | "PermissionsFileMissing": "absent", |
| 199 | "PermissionsFileEmpty": "vide", |
| 200 | "PermissionsFilePresent": "présent", |
| 201 | "PermissionsRuleEntry": "#{index} | {action} | {tool}\n Correspondance effective : {matcher}\n Portée : {scope} — {applicability}", |
| 202 | "PermissionsMatchExactCommand": "commande exacte `{command}`", |
| 203 | "PermissionsMatchCommandPrefix": "préfixe de commande `{command}` (tient compte des arguments)", |
| 204 | "PermissionsMatchExactPath": "chemin normalisé exact `{path}`", |
| 205 | "PermissionsMatchAnyInvocation": "tout appel de cet outil", |
| 206 | "PermissionsScopeGlobal": "globale", |
| 207 | "PermissionsScopeRepo": "dépôt `{workspace}`", |
| 208 | "PermissionsAppliesHere": "active dans cet espace de travail", |
| 209 | "PermissionsInactiveHere": "inactive dans cet espace de travail", |
| 210 | "PermissionsRemovePreview": "Vérifiez la suppression de la règle #{index} :\n{rule}\n\nExécutez `{command}` pour confirmer. Cette commande expire si permissions.toml change.", |
| 211 | "PermissionsRemoved": "Règle d'autorisation #{index} supprimée : {action} {tool}.", |
| 212 | "PermissionsUsage": "Utilisation : /permissions [list|remove <rule-number> [--confirm <token>]]", |
| 213 | "PermissionsRuleNotFound": "La règle d'autorisation #{index} est introuvable ; relancez `/permissions list`.", |
| 214 | "PermissionsOperationFailed": "Échec de l'opération sur la règle d'autorisation : {error}", |
| 215 | "CmdConstitutionDescription": "Gérer la constitution permanente et ses aperçus", |
| 216 | "CmdContextDescription": "Ouvrir l'inspecteur de contexte ou le rapport source-map", |
| 217 | "CmdCostDescription": "Afficher le détail des coûts de la session", |
| 218 | "CmdDiffDescription": "Afficher les modifications de fichiers depuis le début de la session", |
| 219 | "CmdEditDescription": "Réviser et renvoyer le dernier message", |
| 220 | "CmdExitDescription": "Quitter l'application", |
| 221 | "CmdExportDescription": "Copier un export sûr de la conversation, ou l'écrire dans un fichier explicite", |
| 222 | "CmdFeedbackDescription": "Générer une URL de feedback GitHub", |
| 223 | "CmdHfDescription": "Inspecter la configuration et les concepts Hugging Face MCP", |
| 224 | "CmdHelpDescription": "Comprendre les concepts, commandes et raccourcis", |
| 225 | "CmdProfileDescription": "Basculer vers un profil de config nommé", |
| 226 | "CmdHomeDescription": "Afficher le tableau de bord avec stats et actions rapides", |
| 227 | "CmdHooksDescription": "Lister les hooks de cycle de vie configurés (lecture seule)", |
| 228 | "CmdAgentDescription": "Ouvrir une session de sous-agent persistante", |
| 229 | "CmdGoalDescription": "Définir un objectif de session avec budget de tokens optionnel", |
| 230 | "CmdInitDescription": "Générer un AGENTS.md pour le projet", |
| 231 | "CmdLspDescription": "Activer ou désactiver les diagnostics LSP", |
| 232 | "CmdShareDescription": "Exporter la session en cours en URL web partageable", |
| 233 | "CmdJobsDescription": "Inspecter et contrôler les jobs Bash en arrière-plan", |
| 234 | "CmdLinksDescription": "Afficher les liens Codewhale, communauté et fournisseurs", |
| 235 | "CmdLoadDescription": "Charger une session depuis un fichier", |
| 236 | "CmdLogoutDescription": "Effacer la clé API et revenir à la configuration", |
| 237 | "CmdMcpDescription": "Ouvrir ou gérer les serveurs MCP", |
| 238 | "CmdPluginDescription": "Inspecter et gérer les bundles de plugins de confiance ; les outils exécutables hérités restent à part", |
| 239 | "CmdPluginBundleUsage": "Usage : /plugin [list|show <name>|validate [name]|install <spec>|update <name>|uninstall <name>|trust <name> [review-token]|enable <name>|disable <name>|revoke <name>|reload|tools [name]]", |
| 240 | "CmdPluginBundleNoneFound": "Aucun bundle de plugins Codewhale trouvé.", |
| 241 | "CmdPluginBundleListHeader": "Bundles de plugins ({count}) :", |
| 242 | "CmdPluginLegacyListHeader": "Outils de plugins exécutables hérités ({count}) dans {dir} :", |
| 243 | "CmdPluginBundleNotFound": "Bundle de plugins '{name}' introuvable", |
| 244 | "CmdPluginBundleReloaded": "{count} bundles de plugins rechargés pour {workspace}.", |
| 245 | "CmdPluginBundleDetail": "{name}\n========================================\nID : {id}\nVersion : {version}\nSource : {origin} ({scope})\nÉtat : {state}\nConfiance : {trust}\nComposants : {inventory}\nPermissions demandées : {permissions}\nServeurs MCP : {mcp}\nNon pris en charge/inactif : {unsupported}\nHash du contenu : {content_hash}\nHash des capacités : {capability_hash}\nChemin : {path}", |
| 246 | "CmdPluginBundleDiagnosticsHeader": "Diagnostics des plugins ({count}) :", |
| 247 | "CmdPluginBundleMutationSuccess": "Bundle de plugins '{name}' : {action}.", |
| 248 | "CmdPluginActionFailed": "Échec de l'action du plugin : {error}", |
| 249 | "CmdPluginNoneFound": "Aucun outil de plugin exécutable hérité trouvé dans {dir}", |
| 250 | "CmdPluginNotFound": "Plugin '{name}' introuvable", |
| 251 | "CmdPluginListHeader": "Outils de plugins exécutables hérités ({count}) :", |
| 252 | "CmdPluginDetailDescription": "Description : {description}", |
| 253 | "CmdPluginDetailSchema": "Schéma :\n{schema}", |
| 254 | "CmdPluginDetailApproval": "Approbation : {approval}", |
| 255 | "CmdPluginDetailPath": "Chemin : {path}", |
| 256 | "CmdMemoryDescription": "Inspecter ou gérer le fichier de mémoire utilisateur persistante", |
| 257 | "CmdModeDescription": "Changer de posture ou ouvrir le sélecteur de mode", |
| 258 | "CmdModelDescription": "Changer ou afficher le modèle actuel", |
| 259 | "CmdModelsDescription": "Récupérer les IDs de modèles en direct depuis l'API active", |
| 260 | "CmdModelDbDescription": "Parcourir la base de modèles intégrée", |
| 261 | "CmdNetworkDescription": "Gérer les règles réseau d'autorisation et de refus", |
| 262 | "CmdNoteDescription": "Ajouter, lister, modifier ou supprimer des notes du workspace", |
| 263 | "CmdThemeDescription": "Changer de thème ou ouvrir le sélecteur de thème", |
| 264 | "CmdProviderDescription": "Changer le fournisseur et/ou le modèle actif", |
| 265 | "CmdAuthDescription": "Gérer les flux d'authentification des fournisseurs", |
| 266 | "CmdQueueDescription": "Voir ou modifier les messages en file", |
| 267 | "CmdQueueUsage": "Usage : /queue [list|send <n>|edit <n>|drop <n>|clear]", |
| 268 | "CmdQueueDraftHeader": "Modification du message en file :", |
| 269 | "CmdQueueNoMessages": "Aucun message en file", |
| 270 | "CmdQueueListHeader": "Messages en file ({count}) :", |
| 271 | "CmdQueueTip": "Astuce : /queue send <n> pour envoyer maintenant, /queue drop <n> pour retirer", |
| 272 | "CmdQueueAlreadyEditing": "Un message en file est déjà en cours de modification. Envoyez-le ou /queue clear pour l'abandonner.", |
| 273 | "CmdQueueNotFound": "Message en file introuvable", |
| 274 | "CmdQueueEditingStatus": "Modification du message en file {index}", |
| 275 | "CmdQueueEditingMessage": "Modification du message en file {index} (Enter pour remettre en file/envoyer)", |
| 276 | "CmdQueueDropped": "Message en file {index} retiré", |
| 277 | "CmdQueueAlreadyEmpty": "File déjà vide", |
| 278 | "CmdQueueCleared": "File vidée", |
| 279 | "CmdQueueMissingIndex": "Index manquant. Usage : /queue edit <n> ou /queue drop <n>", |
| 280 | "CmdQueueIndexPositive": "L'index doit être un nombre positif", |
| 281 | "CmdQueueIndexMin": "L'index doit être >= 1", |
| 282 | "CmdRelayDescription": "Créer un relais de session (接力) pour un nouveau fil", |
| 283 | "CmdRemoteControlDescription": "Reprendre cette session exacte depuis votre compte web Codewhale", |
| 284 | "CmdRenameDescription": "Renommer la session en cours", |
| 285 | "CmdRestoreDescription": "Restaurer le workspace à un snapshot pré/post-tour antérieur. Sans argument, liste les snapshots récents.", |
| 286 | "CmdRetryDescription": "Réessayer la dernière requête", |
| 287 | "CmdReviewDescription": "Lancer une revue de code structurée sur un fichier, un diff ou une PR", |
| 288 | "CmdRlmDescription": "Ouvrir un contexte RLM persistant pour un fichier ou un texte", |
| 289 | "CmdSaveDescription": "Enregistrer la session dans un fichier", |
| 290 | "CmdForkDescription": "Dupliquer la conversation active dans une session sœur", |
| 291 | "CmdNewDescription": "Démarrer une nouvelle session enregistrée", |
| 292 | "CmdSessionsDescription": "Ouvrir le sélecteur d'historique des sessions", |
| 293 | "CmdSettingsDescription": "Ouvrir l'éditeur de paramètres typés", |
| 294 | "CmdSidebarDescription": "Placer le rail (top/left/right/off) ou choisir son panneau", |
| 295 | "CmdSkillDescription": "Activer une skill, ou installer/mettre à jour/désinstaller/approuver une skill communautaire", |
| 296 | "CmdSkillsDescription": "Lister les skills locales, filtrer par préfixe ou parcourir le registre distant sélectionné", |
| 297 | "CmdStashDescription": "Mettre de côté ou restaurer un brouillon du composer", |
| 298 | "CmdStatusDescription": "Afficher l'état d'exécution de la session", |
| 299 | "CmdStatuslineDescription": "Configurer les éléments affichés dans le pied de page", |
| 300 | "CmdStructcopyDescription": "Copier un objet de session borné en JSON canonique expurgé (humain uniquement, jamais un outil du modèle)", |
| 301 | "CmdStructcopyKindTurn": "tour", |
| 302 | "CmdStructcopyKindTool": "appel d'outil", |
| 303 | "CmdStructcopyKindPlan": "Plan", |
| 304 | "CmdStructcopyKindWorkflow": "Exécution de workflow", |
| 305 | "CmdStructcopyUsageError": "Requête de copie structurelle invalide. Utilisation : {usage}", |
| 306 | "CmdStructcopyUnavailable": "Le {kind} sélectionné est indisponible ; rien n'a été copié", |
| 307 | "CmdStructcopyBusy": "L'état du {kind} est occupé ; réessayez", |
| 308 | "CmdStructcopyPrepareFailed": "Impossible de préparer le {kind} sélectionné : {error}", |
| 309 | "CmdStructcopyClipboardQueued": "La copie structurelle ({kind}, {bytes} octets) a été mise en file d'attente pour le presse-papiers du client terminal via tmux/OSC 52 ; la livraison dépend du terminal et n'est pas confirmée", |
| 310 | "CmdStructcopyClipboardAccepted": "La copie structurelle ({kind}, {bytes} octets) a été remise au presse-papiers ; si aucun presse-papiers natif n'était joignable, une écriture terminal a été mise en file d'attente à la place", |
| 311 | "CmdStructcopyClipboardFailed": "Échec de la copie vers le presse-papiers : {error}. Rien n'a été écrit ; relancez avec `stdout` pour un affichage texte explicite", |
| 312 | "CmdStructcopyReceiptTooLarge": "Les métadonnées du reçu de copie structurelle dépassent la limite de sortie de {bytes} octets ; émission refusée", |
| 313 | "CmdFleetDescription": "Inspecter et configurer les workers Fleet et l'état d'orchestration", |
| 314 | "CmdWorkflowDescription": "Orchestrer le travail en cours comme un workflow", |
| 315 | "CmdHotbarDescription": "Ouvrir la configuration Hotbar", |
| 316 | "CmdSetupDescription": "Ouvrir la configuration axée constitution", |
| 317 | "CmdSubagentsDescription": "Raccourci de compatibilité pour le statut Fleet", |
| 318 | "CmdAdvisorDescription": "Toggle background advisor watcher on/off for this session", |
| 319 | "CmdSystemDescription": "Afficher le prompt système actuel", |
| 320 | "CmdTaskDescription": "Gérer les tâches en arrière-plan", |
| 321 | "CmdTokensDescription": "Afficher l'usage de tokens de la session", |
| 322 | "CmdTranslateDescription": "Activer/désactiver la traduction de la sortie vers la langue du système", |
| 323 | "CmdTranslateOff": "Traduction de la sortie désactivée (sortie originale du modèle affichée)", |
| 324 | "CmdTranslateOn": "Traduction de la sortie activée : les réponses du modèle seront affichées dans la langue de votre système", |
| 325 | "TranslationInProgress": "Traduction de la sortie de l'assistant...", |
| 326 | "TranslationComplete": "Traduction terminée", |
| 327 | "TranslationFailed": "Échec de la traduction", |
| 328 | "CmdTrustDescription": "Gérer la confiance du workspace et la liste blanche par chemin", |
| 329 | "CmdWorkspaceDescription": "Afficher ou changer le workspace actuel", |
| 330 | "CmdUndoDescription": "Supprimer la dernière paire de messages", |
| 331 | "CmdVerboseDescription": "Basculer le raisonnement en direct complet dans la transcription", |
| 332 | "CmdCacheAdvice": "Des taux de hit/miss supérieurs à ~70 % après le troisième tour indiquent un préfixe de cache stable ; \n en dessous, sur les longues sessions, cela suggère une instabilité du préfixe à investiguer (#263).", |
| 333 | "CmdCacheFootnote": "* miss déduit de entrée − hit quand le fournisseur ne le rapporte pas explicitement.\n", |
| 334 | "CmdCacheHeader": "Télémétrie du cache — {count} derniers sur {total} tour(s) (modèle : {model})\n", |
| 335 | "CmdCacheNoData": "Historique du cache : aucun tour enregistré pour l'instant.\n\nLes fournisseurs compatibles rapportent `prompt_cache_hit_tokens` / `prompt_cache_miss_tokens` sur les tours d'API. Exécutez un tour et réessayez /cache.", |
| 336 | "CmdCacheTotals": "Σ entrées : {sum_in} Σ hit : {sum_hit} Σ miss : {sum_miss} taux moyen de hit : {avg}\n", |
| 337 | "CmdCostReport": "Coût de la session :\n ─────────────────────────────\n Total approximatif dépensé : {cost}\n\n Les estimations de coût sont approximatives et utilisent la télémétrie d'usage du fournisseur quand elle est disponible.\n\n Tarifs de l'API du fournisseur :\n ─────────────────────────────\n Les détails de tarification ne sont pas configurés dans cette CLI.", |
| 338 | "CmdTokensCacheBoth": "{hit} hit / {miss} miss", |
| 339 | "CmdTokensCacheHitOnly": "{hit} hit / miss non rapporté", |
| 340 | "CmdTokensCacheMissOnly": "hit non rapporté / {miss} miss", |
| 341 | "CmdTokensContextUnknownWindow": "~{estimated} / fenêtre inconnue", |
| 342 | "CmdTokensContextWithWindow": "~{used} / {window} ({percent}%)", |
| 343 | "FooterAgentSingular": "1 agent", |
| 344 | "FooterAgentsPlural": "{count} agents", |
| 345 | "HeaderAgentsChip": "agents {count}", |
| 346 | "FooterPressCtrlCAgain": "Appuyez à nouveau sur Ctrl+C pour quitter", |
| 347 | "FooterWorking": "en cours", |
| 348 | "FooterBalancePrefix": "solde", |
| 349 | "HelpSectionActions": "Actions", |
| 350 | "HelpSectionClipboard": "Presse-papiers", |
| 351 | "HelpSectionEditing": "Édition de la saisie", |
| 352 | "HelpSectionHelp": "Aide", |
| 353 | "HelpSectionModes": "Modes", |
| 354 | "HelpSectionNavigation": "Navigation", |
| 355 | "HelpSectionSessions": "Sessions", |
| 356 | "CmdTokensNotReported": "non rapporté", |
| 357 | "CmdTokensReport": "Usage de tokens :\n ─────────────────────────────\n Contexte actif : {active}\n Dernière entrée API : {input} (télémétrie du tour ; peut compter le préfixe répété entre les rounds d'outils)\n Dernière sortie API : {output}\n Hit/miss du cache : {cache} (télémétrie/coût uniquement)\n Tokens cumulés : {total} (télémétrie d'usage de la session)\n Coût approx. session : {cost}\n Messages API : {api_messages}\n Messages du chat : {chat_messages}\n Modèle : {model}", |
| 358 | "KbScrollTranscript": "Faire défiler la transcription, naviguer dans l'historique de saisie ou sélectionner des pièces jointes du composer", |
| 359 | "KbNavigateHistory": "Naviguer dans l'historique de saisie", |
| 360 | "KbBrowseHistory": "Parcourir l'historique de la conversation", |
| 361 | "KbScrollTranscriptAlt": "Faire défiler la transcription", |
| 362 | "KbScrollPage": "Faire défiler la transcription page par page", |
| 363 | "KbJumpTopBottom": "Aller en haut / en bas de la transcription", |
| 364 | "KbJumpTopBottomEmpty": "Aller en haut / en bas (quand la saisie est vide)", |
| 365 | "KbJumpToolBlocks": "Sauter entre les blocs de sortie d'outils", |
| 366 | "KbMoveCursor": "Déplacer le curseur dans le composer", |
| 367 | "KbJumpLineStartEnd": "Aller au début / à la fin de la ligne", |
| 368 | "KbDeleteChar": "Supprimer le caractère avant / après le curseur, ou retirer la pièce jointe sélectionnée", |
| 369 | "KbDeleteWord": "Supprimer le mot précédent", |
| 370 | "KbYank": "Coller depuis le kill buffer (composer vide : copie la cellule focalisée)", |
| 371 | "KbToggleFileTree": "Basculer la barre latérale de l'arborescence de fichiers", |
| 372 | "KbSelectText": "Sélectionner du texte ; ajoutez Ctrl/Alt pour sélectionner par mot", |
| 373 | "KbSelectAllDraft": "Sélectionner tout le brouillon", |
| 374 | "KbClearDraft": "Effacer le brouillon actuel", |
| 375 | "KbRestoreClearedDraft": "Restaurer le brouillon effacé", |
| 376 | "KbStashDraft": "Mettre de côté le brouillon actuel (`/stash pop` pour restaurer)", |
| 377 | "KbSearchHistory": "Rechercher dans l'historique des prompts et récupérer les brouillons locaux", |
| 378 | "KbInsertNewline": "Insérer un saut de ligne dans le composer", |
| 379 | "KbSendDraft": "Envoyer si inactif ; mettre en file si occupé ; composer vide envoie le prochain suivi en file", |
| 380 | "KbSteerCurrentTurn": "Orienter le tour en cours (envoie normalement si inactif)", |
| 381 | "KbCloseMenu": "Fermer le menu, annuler la requête, abandonner le brouillon ou vider la saisie", |
| 382 | "KbCancelOrExit": "Annuler la requête, ou quitter si inactif", |
| 383 | "KbShellControls": "Déplacer l'attente du shell en cours vers /jobs", |
| 384 | "KbExitEmpty": "Quitter quand la saisie est vide", |
| 385 | "KbCommandPalette": "Ouvrir la palette de commandes", |
| 386 | "KbSettings": "Ouvrir l'éditeur de paramètres typés", |
| 387 | "KbCancelBackgroundShellJobs": "Annuler tous les jobs shell en arrière-plan (barre latérale Activity)", |
| 388 | "KbFuzzyFilePicker": "Ouvrir le sélecteur de fichiers flou (insère @path avec Enter)", |
| 389 | "KbCompactInspector": "Ouvrir l'inspecteur de contexte de la session compactée", |
| 390 | "KbCompactContext": "Compacter le contexte de la conversation", |
| 391 | "KbLastMessagePager": "Ouvrir le pager du dernier message (quand la saisie est vide)", |
| 392 | "KbSelectedDetails": "Afficher le détail brut de l'outil ou du message sélectionné ; Ctrl+Alt+O ouvre la vue d'ensemble du tour", |
| 393 | "KbToolDetailsPager": "Afficher le détail brut de l'élément sélectionné (Alt+V)", |
| 394 | "KbExternalEditor": "Ouvrir le brouillon du composer dans un éditeur externe", |
| 395 | "KbLiveTranscript": "Ouvrir la transcription en direct (Ctrl+Shift+T ; défilement automatique)", |
| 396 | "KbBacktrackMessage": "Revenir à un message utilisateur précédent (Gauche/Droite pour naviguer, Enter pour rembobiner)", |
| 397 | "KbCompleteCycleModes": "Compléter une /commande ou cycler les modes quand le composer est vide (Plan → Act → Operate)", |
| 398 | "KbCycleThinking": "Cycler l'effort de raisonnement du fournisseur actif (Ctrl+T)", |
| 399 | "KbCyclePermissions": "Cycler la posture de permission : Ask → Auto-Review → Full Access (Shift+Tab)", |
| 400 | "KbJumpPlanAgentYolo": "Déclencher les slots de la hotbar", |
| 401 | "KbAltJumpPlanAgentYolo": "Saut alternatif vers le mode Plan / Act / Operate", |
| 402 | "KbFocusSidebar": "Cibler le panneau du rail Tasks / Agents / Context / Pinned", |
| 403 | "KbSessionPicker": "Ouvrir le sélecteur de sessions", |
| 404 | "KbTerminalPaste": "Coller du texte avec votre terminal local", |
| 405 | "KbPasteAttach": "Coller du texte ou joindre une image depuis un presse-papiers graphique local ou transféré", |
| 406 | "KbCopySelection": "Copier la sélection Codewhale actuelle", |
| 407 | "ClipboardSshPasteHint": "Le collage SSH passe par votre terminal local : Cmd+V sur macOS ou Ctrl+Shift+V sur Linux/Windows.", |
| 408 | "KbContextMenu": "Ouvrir les actions contextuelles : collage, sélection, détails du message, contexte et aide", |
| 409 | "KbAttachPath": "Ajouter un fichier texte ou dossier local au contexte", |
| 410 | "KbHelpOverlay": "Ouvrir cette aide (quand la saisie est vide)", |
| 411 | "KbToggleHelp": "Basculer l'aide", |
| 412 | "KbToggleHelpSlash": "Basculer l'aide", |
| 413 | "HelpUsageLabel": "Usage :", |
| 414 | "HelpAliasesLabel": "Alias :", |
| 415 | "SettingsTitle": "Paramètres :", |
| 416 | "SettingsConfigFile": "Fichier de config :", |
| 417 | "ClearConversation": "Conversation effacée", |
| 418 | "ClearConversationBusy": "Rien n'a été effacé (état Work ou exécution occupée ; patientez, puis réessayez /clear)", |
| 419 | "ModelChanged": "Modèle changé : {old} →, {new}", |
| 420 | "LinksProjectTitle": "Codewhale et communauté :", |
| 421 | "LinksDocumentation": "Documentation :", |
| 422 | "LinksCommunity": "Communauté et contribution :", |
| 423 | "LinksGitHub": "GitHub :", |
| 424 | "LinksManagedApp": "Aperçu de l'app gérée :", |
| 425 | "LinksManagedAppNote": "L'app gérée utilise une connexion séparée et n'est pas liée à la session locale en cours.", |
| 426 | "LinksTitle": "Liens des fournisseurs :", |
| 427 | "LinksDashboard": "Tableau de bord :", |
| 428 | "LinksDocs": "Docs :", |
| 429 | "LinksKimiCodeRouteNote": "Route du plan d'adhésion Kimi Code : `{route}` (console du plan : `{console}` ; utilisez le modèle k3). Codewhale n'importe jamais les identifiants du Kimi CLI.", |
| 430 | "LinksTip": "Astuce : utilisez la variable d'environnement indiquée pour votre fournisseur, ou enregistrez la clé avec `codewhale auth set --provider <id>`.", |
| 431 | "SubagentsFetching": "Récupération du statut Fleet...", |
| 432 | "HelpUnknownCommand": "Commande inconnue : {topic}", |
| 433 | "HomeDashboardTitle": "Codewhale", |
| 434 | "HomeModel": "Modèle :", |
| 435 | "HomeMode": "Mode :", |
| 436 | "HomeWorkspace": "Workspace :", |
| 437 | "HomeHistory": "Historique :", |
| 438 | "HomeTokens": "Tokens :", |
| 439 | "HomeQueued": "En file :", |
| 440 | "HomeSubagents": "Workers Fleet :", |
| 441 | "HomeSkill": "Skill :", |
| 442 | "HomeQuickActions": "Actions rapides", |
| 443 | "HomeQuickLinks": "/links - Liens Codewhale, communauté et fournisseurs", |
| 444 | "HomeQuickSkills": "/skills - Lister les skills disponibles", |
| 445 | "HomeQuickConfig": "/config - Inspecter et modifier les paramètres", |
| 446 | "HomeQuickSettings": "/settings - Afficher les paramètres persistants", |
| 447 | "HomeQuickModel": "/model - Changer ou afficher le modèle", |
| 448 | "HomeQuickSubagents": "/fleet status - Statut Fleet", |
| 449 | "HomeQuickTaskList": "/task list - Afficher la file de tâches en arrière-plan", |
| 450 | "HomeQuickHelp": "/help - Afficher l'aide", |
| 451 | "HomeModeTips": "Conseils de mode", |
| 452 | "HomeAgentModeTip": "Act — travail direct dans la session en cours avec les outils", |
| 453 | "HomeAgentModeReviewTip": " /mode plan pour d'abord rechercher et présenter un plan", |
| 454 | "HomeAgentModeYoloTip": " Shift+Tab cycle la permission : Ask → Auto-Review → Full Access", |
| 455 | "HomeYoloModeTip": "Act + Full Access — les outils s'exécutent sans demande d'approbation", |
| 456 | "HomeYoloModeCaution": " Les opérations destructives peuvent s'exécuter immédiatement ; préférez Ask en cas de doute", |
| 457 | "HomePlanModeTip": "Plan — recherche et conception avant l'implémentation", |
| 458 | "HomePlanModeChecklistTip": " Présentez un plan et l'avancement des tâches, puis passez à Act ou Operate", |
| 459 | "HomeGoalModeTip": "Suivi d'objectif — définissez /goal <objectif> pour poursuivre des objectifs", |
| 460 | "OnboardLanguageTitle": "Choisissez votre langue", |
| 461 | "OnboardLanguageBlurb": "Choisissez la langue de l'interface. Vous pouvez la changer à tout moment avec `/settings set locale <tag>`.", |
| 462 | "OnboardLanguageFooter": "Appuyez sur la touche indiquée à côté d'une langue, ou sur Enter pour garder le réglage actuel", |
| 463 | "OnboardProviderTitle": "Choisissez votre fournisseur de modèles", |
| 464 | "OnboardProviderBlurb": "Choisissez où votre modèle s'exécute. Les fournisseurs hébergés demandent une clé ; les runtimes locaux peuvent continuer sans.", |
| 465 | "OnboardProviderFooter": "Enter ouvre la liste des fournisseurs · Esc revient · Ctrl+C quitte.", |
| 466 | "OnboardApiKeyTitle": "Connectez votre clé API", |
| 467 | "OnboardApiKeyStep1": "Étape 1. Ouvrez la page d'identifiants de votre fournisseur et créez une clé pour", |
| 468 | "OnboardApiKeyLocalHint": "Les runtimes locaux n'ont généralement pas besoin de clé collée — démarrez le serveur, puis appuyez sur Enter.", |
| 469 | "OnboardApiKeyStep2": "Étape 2. Si ce fournisseur exige une clé, collez-la ci-dessous, puis appuyez sur Enter.", |
| 470 | "OnboardApiKeySavedHint": "Les clés sont enregistrées dans {path} pour fonctionner depuis n'importe quel dossier.", |
| 471 | "OnboardApiKeyFormatHint": "Collez la clé complète exactement telle qu'émise (sans espaces ni sauts de ligne).", |
| 472 | "KimiCodePlanApiKeyHint": "Pour les plans d'adhésion Kimi Code, créez la clé liée au plan sur {console}.", |
| 473 | "KimiCodePlanRouteHint": "Cette route utilise {route} avec le modèle k3 ; ce n'est pas la route d'API publique de Moonshot.", |
| 474 | "KimiCodePlanNoImportHint": "Codewhale n'importe pas les identifiants du Kimi CLI ; collez une clé de plan que vous avez créée vous-même.", |
| 475 | "OnboardApiKeyPlaceholder": "(collez la clé ici si nécessaire)", |
| 476 | "OnboardApiKeyLabel": "Clé : ", |
| 477 | "OnboardApiKeyFooter": "Appuyez sur Enter pour continuer, Esc pour revenir.", |
| 478 | "OnboardApiKeyRejectedEnv": "La clé API {provider} issue de {env} a été rejetée. Collez une clé valide pour l'enregistrer dans {path}, ou mettez à jour la variable d'environnement.", |
| 479 | "OnboardTrustTitle": "Connaître ce workspace", |
| 480 | "OnboardTrustQuestion": "Codewhale doit-il travailler avec les instructions et fichiers de ce workspace ?", |
| 481 | "OnboardTrustLocationPrefix": "Workspace ", |
| 482 | "OnboardTrustRiskHint": "Des fichiers non fiables peuvent tenter de détourner l'agent par injection de prompt.", |
| 483 | "OnboardTrustEffectHint": "La confiance est enregistrée pour cette installation de Codewhale et active les outils et hooks du workspace.", |
| 484 | "OnboardTrustFooterPrefix": "Appuyez sur ", |
| 485 | "OnboardTrustFooterMiddle": " pour faire confiance et continuer, ", |
| 486 | "OnboardTrustFooterUntrustedMiddle": " pour continuer sans confiance, ", |
| 487 | "OnboardTrustFooterSuffix": " pour quitter Codewhale", |
| 488 | "OnboardTrustEnterHint": "Appuyez sur 1 ou Y pour faire confiance, 2 ou U pour continuer sans confiance, ou 3, N ou Esc pour quitter Codewhale.", |
| 489 | "OnboardTrustUntrustedNotice": "Poursuite sans confiance du workspace — les outils et hooks restent restreints.", |
| 490 | "OnboardMentalTitle": "Comment fonctionne Codewhale", |
| 491 | "OnboardMentalModesLabel": "Modes", |
| 492 | "OnboardMentalPlanHint": "lire d'abord", |
| 493 | "OnboardMentalActHint": "agir, avec approbation", |
| 494 | "OnboardMentalOperateHint": "diriger une Fleet", |
| 495 | "OnboardMentalPermissionLabel": "Permission", |
| 496 | "OnboardMentalCurrentLabel": "En ce moment", |
| 497 | "OnboardMentalConstitution": "La constitution que vous ratifierez ensuite les gouverne tous.", |
| 498 | "OnboardMentalCycleMode": "cycler le mode", |
| 499 | "OnboardMentalCyclePermission": "cycler les permissions", |
| 500 | "OnboardMentalContinue": "continuer", |
| 501 | "OnboardMentalBack": "retour", |
| 502 | "OnboardAppearanceTitle": "À votre goût", |
| 503 | "OnboardAppearanceBlurb": "Choisissez l'apparence de Codewhale. L'aperçu est en direct, essayez-en plusieurs.", |
| 504 | "OnboardAppearanceFooter": "Entrée garde celui que vous voyez · Échap restaure l'original.", |
| 505 | "OnboardOfflineOption": "Ctrl+O — explorer hors ligne : regardez maintenant, connectez un fournisseur plus tard.", |
| 506 | "OnboardOfflineNotice": "Exploration hors ligne. Rien n'est encore connecté — lancez /provider quand vous voulez vous connecter.", |
| 507 | "OnboardOfflineTipsLine": "Vous êtes hors ligne. Ce que vous tapez attend dans la file jusqu'à ce que /provider vous connecte.", |
| 508 | "OnboardTipsTitle": "Commencez par le setup", |
| 509 | "OnboardTipsLine1": "Utilisez /setup pour vérifier la disponibilité, le fournisseur/modèle, la posture d'exécution et le rapport de vérification.", |
| 510 | "OnboardTipsLine2": "Utilisez /constitution pour revoir ou modifier les directives permanentes ; les valeurs par défaut intégrées sont déjà valides.", |
| 511 | "OnboardTipsLine3": "Utilisez /provider ou /model quand la route demande de l'attention ; une authentification manquante peut être corrigée plus tard.", |
| 512 | "OnboardTipsLine4": "Quand le setup est prêt, écrivez la tâche en langage naturel. /help et Ctrl+K affichent les commandes.", |
| 513 | "OnboardTipsDoctorPrefix": "Depuis votre shell, exécutez ", |
| 514 | "OnboardTipsDoctorSuffix": " pour vérifier les fournisseurs, outils, skills et plugins.", |
| 515 | "OnboardTipsFooterEnter": "Appuyez sur Enter", |
| 516 | "OnboardTipsFooterAction": " pour terminer l'onboarding et ouvrir le setup s'il demande de l'attention", |
| 517 | "SetupWizardTitle": "Setup", |
| 518 | "SetupWizardWhy": "Cet écran enregistre la progression du setup dans setup_state.json ; les changements de config ne sont appliqués que par des actions d'étape explicites.", |
| 519 | "SetupWizardProgress": "Étape", |
| 520 | "SetupActionBack": "retour", |
| 521 | "SetupActionContinue": "continuer", |
| 522 | "SetupActionSkip": "ignorer", |
| 523 | "SetupActionRetry": "réessayer", |
| 524 | "SetupActionScrollBody": "défiler le corps", |
| 525 | "SetupActionGuided": "aperçu/ratifier", |
| 526 | "SetupActionTuneGuided": "ajuster", |
| 527 | "SetupActionModelDraft": "brouillon du modèle", |
| 528 | "SetupActionFreeform": "vos mots", |
| 529 | "SetupActionKeepExisting": "garder l'existant", |
| 530 | "SetupActionProvider": "setup fournisseur", |
| 531 | "SetupActionModel": "routes de modèle", |
| 532 | "SetupActionFleet": "setup Fleet", |
| 533 | "SetupActionHotbar": "setup Hotbar", |
| 534 | "SetupActionRemote": "accès distant", |
| 535 | "SetupActionMode": "sélecteur de mode", |
| 536 | "SetupActionConfig": "vue config", |
| 537 | "SetupActionRuntimePreset": "préréglage", |
| 538 | "SetupActionApplyRuntimePreset": "aperçu/appliquer", |
| 539 | "SetupActionUseBundled": "utiliser l'intégré", |
| 540 | "SetupActionDefer": "reporter", |
| 541 | "SetupActionCancel": "annuler", |
| 542 | "SetupStatusNotStarted": "pas commencé", |
| 543 | "SetupStatusRecommended": "recommandé", |
| 544 | "SetupStatusOptional": "optionnel", |
| 545 | "SetupStatusDeferred": "reporté", |
| 546 | "SetupStatusInProgress": "en cours", |
| 547 | "SetupStatusNeedsAction": "action requise", |
| 548 | "SetupStatusVerified": "vérifié", |
| 549 | "SetupStatusSkipped": "ignoré", |
| 550 | "SetupStatusFailed": "échoué", |
| 551 | "SetupStepLanguageTitle": "Langue", |
| 552 | "SetupStepLanguageWhy": "Choisissez d'abord la langue du setup pour que les écrans suivants et le texte de la constitution soient compréhensibles.", |
| 553 | "SetupStepProviderModelTitle": "Fournisseur et modèle", |
| 554 | "SetupStepProviderModelWhy": "Choisissez le premier interprète de votre code : le fournisseur et le modèle avec lesquels Codewhale travaillera. Les identifiants valides ne sont pas ressaisis ici.", |
| 555 | "SetupStepTrustSandboxTitle": "Posture d'exécution", |
| 556 | "SetupStepTrustSandboxWhy": "Revoyez la confiance, le sandbox, les approbations, le shell et la politique réseau séparément des directives constitutionnelles.", |
| 557 | "SetupStepOperateFleetTitle": "Operate et Fleet", |
| 558 | "SetupStepOperateFleetWhy": "Operate peut utiliser l'équipe intégrée immédiatement. Les rôles sans route personnalisée utilisent le modèle de cette session ; le setup Fleet ne sert qu'à personnaliser.", |
| 559 | "SetupStepToolsMcpTitle": "Outils et MCP", |
| 560 | "SetupStepToolsMcpWhy": "Inspectez la disponibilité optionnelle des outils et de MCP sans bloquer le point de contrôle de la constitution.", |
| 561 | "SetupStepHotbarTitle": "Hotbar", |
| 562 | "SetupStepHotbarWhy": "Configurez les raccourcis courants de routes et commandes une fois le chemin principal du setup sécurisé.", |
| 563 | "SetupStepRemoteRuntimeTitle": "Runtime distant", |
| 564 | "SetupStepRemoteRuntimeWhy": "Gardez le setup distant visible mais optionnel pour les utilisateurs orientés local.", |
| 565 | "SetupStepPersistenceTitle": "Persistance", |
| 566 | "SetupStepPersistenceWhy": "Revoyez où vivent l'état du setup, la config, la constitution, la mémoire et les notes sans lire leur contenu.", |
| 567 | "SetupStepConstitutionTitle": "Votre constitution", |
| 568 | "SetupStepConstitutionWhy": "« Code » a deux sens ici : le logiciel que vous livrez, et la loi permanente qui régit la façon dont Codewhale travaille avec vous. Rédigez la vôtre — courte, durable, amendable. L'option intégrée/par défaut est une conclusion valide.", |
| 569 | "SetupStepVerificationTitle": "Revue", |
| 570 | "SetupStepVerificationWhy": "Résume le statut du setup et montre quelles étapes sont vérifiées, ignorées ou demandent encore une action.", |
| 571 | "SetupCheckpointLayerOrder": "Ordre des couches : Constitution intégrée -> constitution globale utilisateur -> constitution du repo -> instructions AGENTS/projet -> mémoire/handoff -> demande actuelle.", |
| 572 | "SetupCheckpointDoneBundled": "Point de contrôle de la constitution terminé : loi intégrée/par défaut utilisée.", |
| 573 | "SetupCheckpointDoneGuided": "Constitution ratifiée — votre loi permanente est enregistrée. Amendez-la à tout moment avec /constitution.", |
| 574 | "SetupCheckpointDoneKept": "Constitution conservée — votre loi existante reste inchangée. Amendez-la à tout moment avec /constitution.", |
| 575 | "SetupCheckpointDeferred": "Point de contrôle de la constitution reporté : la loi intégrée/par défaut s'applique jusqu'à votre retour à /setup.", |
| 576 | "SetupStepSkipped": "Étape du setup ignorée et enregistrée.", |
| 577 | "SetupStepRetryRecorded": "Étape du setup marquée pour nouvelle tentative.", |
| 578 | "SetupLanguageReviewed": "Langue du setup enregistrée.", |
| 579 | "SetupConstitutionChoiceLabel": "Choix :", |
| 580 | "SetupConstitutionSourceLabel": "Source :", |
| 581 | "SetupConstitutionValidityLabel": "Validité :", |
| 582 | "SetupConstitutionPreviewLabel": "Hash de l'aperçu :", |
| 583 | "SetupConstitutionExistingLabel": "Fichier existant :", |
| 584 | "SetupConstitutionExpertOverrideLabel": "Dérogation experte :", |
| 585 | "SetupConstitutionGuidedHint": "1-6 ajustent le brouillon, G affiche l'aperçu, G à nouveau ratifie. Directives seulement : cela ne change jamais les approbations runtime, le sandbox, le shell, le réseau, la confiance ou les permissions MCP.", |
| 586 | "SetupConstitutionGuidedAnswersHint": "Les réponses guidées n'enregistrent que des préférences globales utilisateur. Le noyau intégré reste actif ; les modules de doctrine restent dans les prompts de mode/futures options.", |
| 587 | "SetupConstitutionPurposeLabel": "Objectif :", |
| 588 | "SetupConstitutionAutonomyLabel": "Initiative :", |
| 589 | "SetupConstitutionEvidenceLabel": "Preuve :", |
| 590 | "SetupConstitutionCommunicationLabel": "Communication :", |
| 591 | "SetupConstitutionPrivacyLabel": "Confidentialité :", |
| 592 | "SetupConstitutionPrinciplesLabel": "Principes :", |
| 593 | "SetupCardRouteLabel": "Route :", |
| 594 | "SetupCardModelLabel": "Modèle :", |
| 595 | "SetupCardAuthLabel": "Auth :", |
| 596 | "SetupCardHealthLabel": "Santé :", |
| 597 | "SetupCardIntentLabel": "Intention de travail :", |
| 598 | "SetupCardApprovalLabel": "Approbations :", |
| 599 | "SetupCardShellLabel": "Shell :", |
| 600 | "SetupCardTrustLabel": "Confiance :", |
| 601 | "SetupCardSandboxLabel": "Sandbox :", |
| 602 | "SetupCardNetworkLabel": "Réseau :", |
| 603 | "SetupOperateRuntimeLabel": "Runtime des workers :", |
| 604 | "SetupOperateRosterLabel": "Roster Fleet :", |
| 605 | "SetupOperateConcurrencyLabel": "Concurrence :", |
| 606 | "SetupOperateReadinessLabel": "Disponibilité Operate :", |
| 607 | "SetupOperateReviewHint": "Enter enregistre ce snapshot du setup.", |
| 608 | "SetupOperateReviewed": "Disponibilité Operate/Fleet enregistrée.", |
| 609 | "SetupOperateNeedsActionSaved": "Operate/Fleet demande encore une action ; enregistré pour le rapport de setup.", |
| 610 | "SetupHotbarBindingsLabel": "Raccourcis Hotbar :", |
| 611 | "SetupHotbarActionsLabel": "Actions assignables :", |
| 612 | "SetupHotbarReviewHint": "Enter enregistre ce snapshot du setup. Appuyez sur H pour personnaliser les slots.", |
| 613 | "SetupHotbarReviewed": "État du setup Hotbar enregistré.", |
| 614 | "SetupToolsMcpServersLabel": "Serveurs MCP :", |
| 615 | "SetupToolsMcpSkillsLabel": "Skills :", |
| 616 | "SetupToolsMcpToolsLabel": "Dossier d'outils :", |
| 617 | "SetupToolsMcpPluginsLabel": "Plugins :", |
| 618 | "SetupToolsMcpReviewHint": "Enter enregistre ce snapshot du setup. Appuyez sur R pour des accès sûrs (sans exécution automatique).", |
| 619 | "SetupToolsMcpReviewed": "Disponibilité Outils/MCP enregistrée.", |
| 620 | "SetupRemoteCloudsLabel": "Cibles cloud :", |
| 621 | "SetupRemoteBridgesLabel": "Bridges de chat :", |
| 622 | "SetupRemoteProvidersLabel": "Fournisseurs :", |
| 623 | "SetupRemoteModeLabel": "Mode distant :", |
| 624 | "SetupRemoteModeLocalOnly": "Cet ordinateur uniquement :", |
| 625 | "SetupRemoteModeRuntimeApi": "API du runtime :", |
| 626 | "SetupRemoteModeMobileLan": "Téléphone sur votre réseau :", |
| 627 | "SetupRemoteModeChatBridge": "Application de chat :", |
| 628 | "SetupRemoteStatusDisabled": "indisponible", |
| 629 | "SetupRemoteStatusReady": "prêt", |
| 630 | "SetupRemoteStatusNeedsAction": "il manque quelque chose", |
| 631 | "SetupRemoteReviewHint": "Enter enregistre cet instantané de setup. Appuyez sur R pour prévisualiser.", |
| 632 | "SetupRemotePreviewTitle": "Amorçage du runtime distant", |
| 633 | "SetupRemoteReviewed": "Amorçage du runtime distant enregistré.", |
| 634 | "SetupPersistenceHomeLabel": "Home :", |
| 635 | "SetupPersistenceConfigLabel": "Config :", |
| 636 | "SetupPersistenceStateLabel": "État du setup :", |
| 637 | "SetupPersistenceConstitutionLabel": "Constitution :", |
| 638 | "SetupPersistenceMemoryLabel": "Mémoire :", |
| 639 | "SetupPersistenceNotesLabel": "Notes :", |
| 640 | "SetupPersistenceReviewHint": "Enter enregistre cet instantané de setup.", |
| 641 | "SetupPersistenceReviewed": "Chemins de persistance enregistrés.", |
| 642 | "SetupProviderModelReadyHint": "Enter enregistre cette route fournisseur/modèle ; appuyez sur P pour le setup du fournisseur ou M pour les routes de modèle.", |
| 643 | "SetupProviderModelNeedsActionHint": "Enter enregistre fournisseur/modèle comme nécessitant une action et continue ; appuyez sur P pour corriger les identifiants ou M pour inspecter les routes.", |
| 644 | "SetupProviderModelReviewed": "Disponibilité fournisseur/modèle enregistrée.", |
| 645 | "SetupProviderModelNeedsActionSaved": "Fournisseur/modèle nécessite encore une action ; enregistré pour le rapport de setup.", |
| 646 | "SetupRuntimePostureBoundary": "La posture du runtime est une config appliquée ; les conseils de la constitution ne la modifient jamais en silence.", |
| 647 | "SetupRuntimePostureReviewHint": "Enter enregistre cet instantané de setup. Appuyez sur M pour le mode de travail ou C pour la config.", |
| 648 | "SetupRuntimePostureReviewed": "Posture du runtime revue ; aucune config modifiée.", |
| 649 | "SetupRuntimePresetSelectedLabel": "Preset sélectionné :", |
| 650 | "SetupRuntimePresetDiffLabel": "Diff de config :", |
| 651 | "SetupRuntimePresetAskFirstTitle": "Demander d'abord", |
| 652 | "SetupRuntimePresetAskFirstDescription": "Plan par défaut, shell masqué, sandbox en lecture seule.", |
| 653 | "SetupRuntimePresetNormalAgentTitle": "Agent normal", |
| 654 | "SetupRuntimePresetNormalAgentDescription": "Agent par défaut, demandes d'approbation, shell visible.", |
| 655 | "SetupRuntimePresetHighTrustTitle": "Local haute confiance", |
| 656 | "SetupRuntimePresetHighTrustDescription": "Full Access par défaut pour le travail local de confiance ; aucune mutation cachée de la constitution.", |
| 657 | "SetupRuntimePresetPreviewTitle": "Aperçu du preset de posture du runtime", |
| 658 | "SetupRuntimePresetSafetyFloor": "Plancher de sécurité : les échecs auth/OAuth, les résultats bloqués par la politique, les actions de type publication et les gates de revue peuvent encore arrêter l'exécution.", |
| 659 | "SetupRuntimePresetApplyHint": "Appuyez sur A pour prévisualiser ce diff exact ; appuyez à nouveau sur A après l'aperçu pour l'appliquer.", |
| 660 | "SetupRuntimePresetApplied": "Preset de runtime appliqué.", |
| 661 | "SetupRuntimeProjectOverrideLabel": "Override du projet :", |
| 662 | "SetupRuntimeProjectOverrideNone": "aucun approval_policy ou sandbox_mode détecté", |
| 663 | "SetupReportFirstRunLabel": "Premier lancement :", |
| 664 | "SetupReportUpdateLabel": "Checkpoint de mise à jour :", |
| 665 | "SetupReportOperateLabel": "Operate/Fleet :", |
| 666 | "SetupReportSourceLabel": "Source :", |
| 667 | "SetupReportAutonomyLabel": "Autonomie de la constitution :", |
| 668 | "SetupReportRuntimePostureLabel": "Posture du runtime :", |
| 669 | "SetupReportPersisted": "setup_state.json persisté", |
| 670 | "SetupReportInherited": "dérivé de la config existante", |
| 671 | "SetupReportReady": "prêt", |
| 672 | "SetupReportRequired": "requis", |
| 673 | "SetupReportOptional": "optionnel", |
| 674 | "SetupReportRowsLabel": "État des étapes :", |
| 675 | "SetupReportNextActionLabel": "Prochaine action :", |
| 676 | "SetupReportNextActionNone": "Aucune action de setup bloquante enregistrée.", |
| 677 | "SetupReportNextActionConstitution": "Terminez le checkpoint de la constitution ou choisissez la version intégrée/défaut.", |
| 678 | "SetupReportNextActionProvider": "Revoyez la disponibilité fournisseur/modèle ou lancez /setup provider ; utilisez /provider setup <name> pour un fournisseur précis.", |
| 679 | "SetupReportNextActionRuntime": "Revoyez la posture du runtime ou utilisez /config.", |
| 680 | "SetupReportNextActionOperate": "Revoyez la disponibilité d'Operate/Fleet avant les exécutions multi-worker durables.", |
| 681 | "SetupReportNextActionRequired": "Revoyez les étapes de setup requises restantes.", |
| 682 | "SetupReportRecorded": "Rapport de setup enregistré.", |
| 683 | "CtxMenuTitle": " Clic droit ", |
| 684 | "CtxMenuCopySelection": "Copier la sélection", |
| 685 | "CtxMenuCopySelectionDesc": "copier le texte sélectionné de la transcription", |
| 686 | "CtxMenuOpenSelection": "Ouvrir la sélection", |
| 687 | "CtxMenuOpenSelectionDesc": "afficher le texte sélectionné dans la visionneuse", |
| 688 | "CtxMenuClearSelection": "Effacer la sélection", |
| 689 | "CtxMenuOpenDetails": "Ouvrir les détails", |
| 690 | "CtxMenuCopyMessage": "Copier le message", |
| 691 | "CtxMenuCopyMessageDesc": "copier la cellule de transcription cliquée", |
| 692 | "CtxMenuOpenInEditor": "Ouvrir dans l'éditeur", |
| 693 | "CtxMenuOpenInEditorDesc": "ouvrir file:line dans $EDITOR", |
| 694 | "CtxMenuShowCell": "Afficher la cellule", |
| 695 | "CtxMenuShowCellDesc": "réafficher cette cellule de transcription", |
| 696 | "CtxMenuHideCell": "Masquer la cellule", |
| 697 | "CtxMenuHideCellDesc": "replier cette cellule de transcription", |
| 698 | "CtxMenuShowHidden": "Afficher les masquées", |
| 699 | "CtxMenuShowHiddenDesc": "réafficher toutes les cellules repliées", |
| 700 | "CtxMenuPaste": "Coller", |
| 701 | "CtxMenuPasteDesc": "insérer le presse-papiers dans le composeur", |
| 702 | "CtxMenuCmdPalette": "Palette de commandes", |
| 703 | "CtxMenuCmdPaletteDesc": "commandes, skills et outils", |
| 704 | "CtxMenuContextInspector": "Inspecteur de contexte", |
| 705 | "CtxMenuContextInspectorDesc": "contexte actif et indices de cache", |
| 706 | "CtxMenuHelp": "Aide", |
| 707 | "CtxMenuHelpDesc": "raccourcis clavier et commandes", |
| 708 | "FanoutCounts": "{done} terminé · {running} en cours · {failed} échoué · {pending} en attente", |
| 709 | "AppModeAgent": "Act", |
| 710 | "AppModeAuto": "Auto", |
| 711 | "AppModeYolo": "Full Access (étiquette de mode obsolète)", |
| 712 | "AppModePlan": "Plan", |
| 713 | "AppModeOperate": "Operate", |
| 714 | "AppModeAgentHint": "Travail direct dans cette session — les éditions et le shell demandent une approbation", |
| 715 | "AppModeAutoHint": "Shell activé avec revue automatique des risques", |
| 716 | "AppModePlanHint": "Recherche en lecture seule d'abord — présentez un plan avant d'agir", |
| 717 | "AppModeYoloHint": "Compatibilité uniquement — Act + Full Access, pas un mode visible", |
| 718 | "AppModeOperateHint": "Faites travailler votre Fleet en parallèle", |
| 719 | "VimModeNormal": "-- NORMAL --", |
| 720 | "VimModeInsert": "-- INSERTION --", |
| 721 | "VimModeVisual": "-- VISUEL --", |
| 722 | "ApprovalRiskReview": "RÉVISION", |
| 723 | "ApprovalRiskElevated": "APPROBATION", |
| 724 | "ApprovalRiskDestructive": "DESTRUCTIF", |
| 725 | "ApprovalCategorySafe": "Sûr", |
| 726 | "ApprovalCategoryFileWrite": "Écriture de fichier", |
| 727 | "ApprovalCategoryShell": "Bash", |
| 728 | "ApprovalCategoryNetwork": "Réseau", |
| 729 | "ApprovalCategoryMcpRead": "Lecture MCP", |
| 730 | "ApprovalCategoryMcpAction": "Action MCP", |
| 731 | "ApprovalCategoryAgent": "Sous-agent", |
| 732 | "ApprovalCategoryUnknown": "Inconnu", |
| 733 | "ApprovalFieldType": "Type : ", |
| 734 | "ApprovalFieldAbout": "Sujet : ", |
| 735 | "ApprovalFieldImpact": "Impact : ", |
| 736 | "ApprovalFieldParams": "Paramètres : ", |
| 737 | "ApprovalOptionApproveOnce": "Autoriser une fois", |
| 738 | "ApprovalOptionApproveAlways": "Autoriser pour cette session (ce type)", |
| 739 | "ApprovalOptionAllowExactRepo": "Toujours autoriser cette règle exacte dans ce dépôt", |
| 740 | "ApprovalSaveAskRuleHint": " s autoriser une fois + toujours redemander la règle exacte", |
| 741 | "ApprovalOptionDeny": "Refuser cet appel", |
| 742 | "ApprovalOptionAbortTurn": "Abandonner le tour", |
| 743 | "ApprovalBlockTitle": "approbation", |
| 744 | "ApprovalControlsHint": " · Pg↑/↓ réviser · {details} détails · Esc abandonner", |
| 745 | "ApprovalTruncationHint": " … tronqué · appuyez sur {details} pour tous les détails", |
| 746 | "ApprovalFullAccessPolicyBlocked": "{tool} bloqué : Full Access ne peut pas contourner cette politique", |
| 747 | "AutoReviewQuestionSkipped": "Auto-Review a ignoré une question de l'utilisateur et a continué de façon autonome", |
| 748 | "ApprovalChooseHint": "Choix : ", |
| 749 | "ApprovalChooseAction": "Enter pour l'option sélectionnée, ou appuyez directement sur y/a/d", |
| 750 | "ApprovalIntentLabel": "Intention : ", |
| 751 | "ApprovalMoreLines": " … (+{count} lignes)", |
| 752 | "ApprovalAutoDeniedSession": "{tool} refusé automatiquement : une demande correspondante a été refusée plus tôt pendant cette exécution de CodeWhale. Redémarrez CodeWhale pour la reconsidérer.", |
| 753 | "ElevationTitleSandboxDenied": " ⚠, Sandbox refusé ", |
| 754 | "ElevationTitleRequired": " Élévation du sandbox requise ", |
| 755 | "ElevationFieldTool": " Outil : ", |
| 756 | "ElevationFieldCmd": " Cmde : ", |
| 757 | "ElevationFieldReason": " Raison : ", |
| 758 | "ElevationImpactHeader": " Impact en cas d'approbation :", |
| 759 | "ElevationImpactNetwork": " - la nouvelle tentative réseau active les téléchargements sortants et les requêtes HTTP", |
| 760 | "ElevationImpactWrite": " - la nouvelle tentative d'écriture étend la portée inscriptible du système de fichiers pour cet appel d'outil", |
| 761 | "ElevationImpactFullAccess": " - Full Access retire entièrement les restrictions du sandbox pour cette nouvelle tentative", |
| 762 | "ElevationPromptProceed": " Choisissez comment procéder :", |
| 763 | "ElevationOptionNetwork": "Autoriser le réseau sortant", |
| 764 | "ElevationOptionWrite": "Autoriser un accès en écriture supplémentaire", |
| 765 | "ElevationOptionFullAccess": "Full Access (système de fichiers + réseau)", |
| 766 | "ElevationOptionAbort": "Abandonner", |
| 767 | "ElevationOptionNetworkDesc": "Réessayer cet appel d'outil avec un accès réseau sortant pour les téléchargements et requêtes HTTP", |
| 768 | "ElevationOptionWriteDesc": "Réessayer cet appel d'outil avec une portée inscriptible supplémentaire du système de fichiers", |
| 769 | "ElevationOptionFullAccessDesc": "Réessayer sans limites de sandbox ; accorde un accès illimité au système de fichiers et au réseau", |
| 770 | "ElevationOptionAbortDesc": "Annuler cette exécution d'outil", |
| 771 | "CtxInspTitle": "Inspecteur de contexte", |
| 772 | "CtxInspSessionContext": "Contexte de la session", |
| 773 | "CtxInspSystemPrompt": "Structure du prompt système", |
| 774 | "CtxInspReferences": "Références", |
| 775 | "CtxInspRecentTools": "Outils récents", |
| 776 | "CtxInspModel": "Modèle", |
| 777 | "CtxInspWorkspace": "Workspace", |
| 778 | "CtxInspSession": "Session", |
| 779 | "CtxInspContext": "Contexte", |
| 780 | "CtxInspTranscript": "Transcription", |
| 781 | "CtxInspWorkspaceStatus": "État du workspace", |
| 782 | "CtxInspNotSampledYet": "pas encore échantillonné", |
| 783 | "CtxInspOk": "ok", |
| 784 | "CtxInspHigh": "élevé", |
| 785 | "CtxInspCritical": "critique", |
| 786 | "CtxInspIncluded": "inclus", |
| 787 | "CtxInspAttached": "joint", |
| 788 | "CtxInspNotIncluded": "non inclus", |
| 789 | "CtxInspOutputCaptured": "sortie capturée", |
| 790 | "CtxInspNoOutputYet": "pas encore de sortie", |
| 791 | "CtxInspNoSystemPrompt": "Aucun prompt système défini.", |
| 792 | "CtxInspNoReferences": "Aucune référence de fichier, répertoire ou média enregistrée pour l'instant.", |
| 793 | "CtxInspNoToolActivity": "Aucune activité d'outil enregistrée pour l'instant.", |
| 794 | "CtxInspVHint": "Ouvrez la carte correspondante et appuyez sur {details} pour tous les détails.", |
| 795 | "CtxInspCells": "cellules", |
| 796 | "CtxInspApiMessages": "messages API", |
| 797 | "CtxInspActive": "actif", |
| 798 | "CtxInspCell": "cellule", |
| 799 | "CtxInspMoreReferences": "référence(s) supplémentaire(s)", |
| 800 | "CtxInspStablePrefix": "Préfixe stable", |
| 801 | "CtxInspVolatileWorkingSet": "Ensemble de travail volatile", |
| 802 | "CtxInspFirstLine": "Première ligne", |
| 803 | "CtxInspTotal": "Total", |
| 804 | "CtxInspTextPromptLayers": "Couches de prompt texte", |
| 805 | "CtxInspSingleTextBlob": "Bloc de texte unique", |
| 806 | "CtxInspBlocks": "bloc(s)", |
| 807 | "CtxInspBlock": "bloc", |
| 808 | "CtxInspTokens": "tokens", |
| 809 | "CtxInspLayers": "couche(s)", |
| 810 | "CtxInspNone": "aucun", |
| 811 | "CtxInspEmpty": "(vide)", |
| 812 | "CtxInspCacheFriendly": "compatible cache", |
| 813 | "CtxInspChangesByTurn": "change par session/tour", |
| 814 | "CtxInspStablePrefixOnly": "préfixe stable uniquement", |
| 815 | "CtxInspCacheTip": "Astuce : les blocs de préfixe stable sont éligibles au cache quand le fournisseur actif prend en charge le cache de préfixe. Les changements de l'ensemble de travail volatile ne cassent le cache que pour la fin.", |
| 816 | "ToolFamilyRead": "lire", |
| 817 | "ToolFamilyPatch": "corriger", |
| 818 | "ToolFamilyRun": "exécuter", |
| 819 | "ToolFamilyFind": "chercher", |
| 820 | "ToolFamilyDelegate": "déléguer", |
| 821 | "ToolFamilyFanout": "fanout", |
| 822 | "ToolFamilyRlm": "rlm", |
| 823 | "ToolFamilyVerify": "vérifier", |
| 824 | "ToolFamilyThink": "réfléchir", |
| 825 | "ToolFamilyGeneric": "outil", |
| 826 | "CmdVoiceDescription": "Basculer l'entrée vocale : enregistrer la parole et transcrire dans le composeur", |
| 827 | "CmdVoiceSendDescription": "Basculer l'envoi vocal automatique : envoyer quand la transcription se termine par \"send it\"", |
| 828 | "CmdVoiceControlDescription": "Basculer le contrôle vocal : dictée assistée par IA tenant compte du texte du composeur", |
| 829 | "VoiceEnabled": "Entrée vocale activée. Parlez pour enregistrer.", |
| 830 | "VoiceDisabled": "Entrée vocale désactivée.", |
| 831 | "VoiceSendEnabled": "Envoi vocal automatique activé.", |
| 832 | "VoiceSendDisabled": "Envoi vocal automatique désactivé.", |
| 833 | "VoiceControlEnabled": "Contrôle vocal activé.", |
| 834 | "VoiceControlDisabled": "Contrôle vocal désactivé.", |
| 835 | "VoiceErrNoAuth": "Voix : aucune clé API configurée pour le fournisseur actif", |
| 836 | "VoiceErrNoRecorder": "Voix : aucun outil d'enregistrement trouvé. Installez sox, arecord ou rec.", |
| 837 | "VoiceErrNetwork": "Voix : échec de la requête de transcription", |
| 838 | "VoiceErrEmptySend": "Voix : rien à envoyer", |
| 839 | "VoiceErrTooShort": "Voix : aucune parole détectée, enregistrement trop court", |
| 840 | "VoiceRecording": "🎙 Enregistrement... parlez maintenant", |
| 841 | "VoiceProcessing": "🎙 Transcription...", |
| 842 | "VoiceTranscribed": "🎙 Transcrit", |
| 843 | "NotificationTurnComplete": "Tour terminé", |
| 844 | "NotificationSubagentComplete": "Sous-agent terminé", |
| 845 | "NotificationSubagentFailed": "Sous-agent en échec", |
| 846 | "NotificationSubagentInterrupted": "Sous-agent interrompu", |
| 847 | "NotificationSubagentCancelled": "Sous-agent annulé", |
| 848 | "NotificationSubagentBudgetExhausted": "Budget du sous-agent épuisé", |
| 849 | "FooterWorkedChip": "a travaillé {duration}", |
| 850 | "FleetDraftTitle": "Profil Fleet — brouillon par {model_label} (g enregistre)", |
| 851 | "FleetDraftHeader": "# .codewhale/agents/{name}\n# Rédigé par {model_label}, validé et borné par Codewhale.\n# Les permissions restent au plancher de la fleet : pas de shell, pas de confiance, approbation requise.\n# Rien n'est enregistré tant que vous n'appuyez pas sur g dans l'assistant.\n\n", |
| 852 | "SetupRemoteOnRampText": "Amorçage du runtime distant\n\n/setup n'affiche que les faits du runtime distant. Il ne génère pas de bundle de déploiement, n'écrit pas d'identifiants, n'appelle pas de CLI cloud et n'exécute pas `remote-setup`.\n\nFaits actuels :\n- Clouds : {clouds_result}\n- Ponts de chat : {bridges_result}\n- Fournisseurs : {providers_result}\n- Mode : {mode_result}\n\nPour générer un bundle de déploiement, exécutez explicitement dans un terminal normal :\n\n```sh\n{command}\n```\n\nLe RUNBOOK généré inclut les étapes hôte pour revue humaine. `--apply` reste non implémenté ; ne le considérez pas comme un déploiement automatique.", |
| 853 | "ApprovalDescSafe": "Demande une opération sûre/en lecture seule.", |
| 854 | "ApprovalDescFileWrite": "Demande la modification d'un fichier. Veuillez confirmer le chemin et le contenu.", |
| 855 | "ApprovalDescShell": "Demande l'exécution d'une commande shell. Vérifiez la commande et le répertoire de travail.", |
| 856 | "ApprovalDescNetwork": "Demande l'accès au réseau ou à un contenu distant. Vérifiez que la cible est fiable.", |
| 857 | "ApprovalDescMcpRead": "Demande la lecture depuis un serveur MCP.", |
| 858 | "ApprovalDescMcpAction": "Demande l'appel d'une action de serveur MCP pouvant avoir des effets de bord.", |
| 859 | "ApprovalDescAgent": "Demande le démarrage ou l'inspection d'un sous-agent ; les sous-agents gardent leur propre contrôle d'accès.", |
| 860 | "ApprovalDescUnknown": "Demande l'exécution d'un outil non classé. Vérifiez attentivement les paramètres.", |
| 861 | "ApprovalImpactSafe": "Opération en lecture seule.", |
| 862 | "ApprovalImpactFileWrite": "Écrit des fichiers dans le workspace ou dans une portée d'écriture approuvée.", |
| 863 | "ApprovalImpactShell": "Exécute une commande Bash dans votre workspace.", |
| 864 | "ApprovalImpactNetwork": "Peut atteindre des services réseau ou du contenu distant.", |
| 865 | "ApprovalImpactMcpRead": "Lit depuis un serveur MCP sans écriture locale évidente.", |
| 866 | "ApprovalImpactMcpAction": "Appelle une action de serveur MCP pouvant avoir des effets de bord.", |
| 867 | "ApprovalImpactAgent": "Démarre ou inspecte un sous-agent ; les sous-agents ont leur propre contrôle d'accès.", |
| 868 | "ApprovalImpactUnknown": "L'outil n'est pas classé. Vérifiez attentivement les paramètres avant d'approuver.", |
| 869 | "ApprovalLabelCommand": "Commande", |
| 870 | "ApprovalLabelDir": "Répertoire", |
| 871 | "ApprovalLabelFile": "Fichier", |
| 872 | "ApprovalLabelPreview": "Aperçu", |
| 873 | "ApprovalLabelProposedContent": "contenu proposé", |
| 874 | "ApprovalLabelReplaceThis": "remplacer ceci", |
| 875 | "ApprovalLabelWithThis": "par ceci", |
| 876 | "ApprovalLabelReplacementContent": "contenu de remplacement", |
| 877 | "ApprovalLabelPath": "Chemin", |
| 878 | "ApprovalLabelTarget": "Cible", |
| 879 | "ApprovalLabelInput": "Entrée", |
| 880 | "ApprovalLabelAction": "Action", |
| 881 | "ApprovalLabelType": "Type", |
| 882 | "ApprovalLabelPrompt": "Prompt", |
| 883 | "ApprovalLabelAbout": "Sujet : ", |
| 884 | "ApprovalLabelImpact": "Impact : ", |
| 885 | "SetupConstitutionFileNotChecked": "pas encore vérifié", |
| 886 | "SetupConstitutionFileMissing": "aucun constitution.json trouvé ; la version intégrée/défaut s'applique", |
| 887 | "SetupConstitutionFileLoadedSelected": "constitution.json valide présent et sélectionné", |
| 888 | "SetupConstitutionFileLoadedInactive": "constitution.json valide présent mais inactif selon le choix enregistré", |
| 889 | "SetupConstitutionFileLoadedUnselected": "constitution.json valide présent ; prévisualisez ou enregistrez via le guidage pour le sélectionner", |
| 890 | "SetupConstitutionFileEmpty": "constitution.json est vide ; utilisez G pour régénérer ou U pour la version intégrée", |
| 891 | "SetupConstitutionFileInvalid": "constitution.json est invalide ; réparez/régénérez ou utilisez la version intégrée", |
| 892 | "SetupConstitutionFileUnreadable": "constitution.json est illisible ; réparez/régénérez ou utilisez la version intégrée", |
| 893 | "SetupConstitutionFilePathError": "CODEWHALE_HOME n'a pas pu être résolu pour constitution.json", |
| 894 | "SetupExpertOverrideNotChecked": "pas encore vérifié", |
| 895 | "SetupExpertOverrideMissing": "aucun prompts/constitution.md trouvé", |
| 896 | "SetupExpertOverrideActive": "actif ; l'override Markdown expert est activé", |
| 897 | "SetupExpertOverrideDisabled": "fichier trouvé mais désactivé ; définissez {env}=1 pour l'activer", |
| 898 | "SetupExpertOverrideEmpty": "le fichier d'override est vide ; la version intégrée/défaut s'applique", |
| 899 | "SetupExpertOverrideUnreadable": "le fichier d'override est illisible ; la version intégrée/défaut s'applique", |
| 900 | "SetupExpertOverridePathError": "CODEWHALE_HOME n'a pas pu être résolu pour prompts/constitution.md", |
| 901 | "SetupAutonomyUnspecified": "non spécifié ou version intégrée/défaut", |
| 902 | "SetupGuidedPurposeCoding": "atelier de code", |
| 903 | "SetupGuidedPurposeResearch": "synthèse de recherche", |
| 904 | "SetupGuidedPurposeOperations": "assistant d'opérations", |
| 905 | "SetupGuidedPurposeMixed": "atelier mixte", |
| 906 | "SetupGuidedPurposeAboutCoding": "Un utilisateur de Codewhale qui veut un atelier de code calme, axé d'abord sur les preuves.", |
| 907 | "SetupGuidedPurposeAboutResearch": "Un utilisateur de Codewhale qui veut une recherche actuelle et citée, avec une synthèse soigneuse.", |
| 908 | "SetupGuidedPurposeAboutOperations": "Un utilisateur de Codewhale qui veut une aide opérationnelle fiable avec des points de retour en arrière clairs.", |
| 909 | "SetupGuidedPurposeAboutMixed": "Un utilisateur de Codewhale qui veut un atelier flexible pour le code, la recherche, la rédaction et les opérations.", |
| 910 | "SetupGuidedStyleCoding": "Gardez les changements de code limités au comportement demandé et aux patterns existants du dépôt.", |
| 911 | "SetupGuidedStyleResearch": "Distinguez les preuves directes de l'inférence et citez les sources pour les faits instables.", |
| 912 | "SetupGuidedStyleOperations": "Préférez des étapes opérationnelles réversibles avec dry-runs, vérifications d'état et notes de rollback.", |
| 913 | "SetupGuidedStyleMixed": "Alternez entre code, recherche, rédaction et opérations sans élargir la posture de sécurité.", |
| 914 | "SetupGuidedEvidenceAssumptions": "énoncer les hypothèses", |
| 915 | "SetupGuidedEvidenceTestsAndReceipts": "tests et reçus", |
| 916 | "SetupGuidedEvidenceReleaseReceipts": "reçus de release", |
| 917 | "SetupGuidedNotes": "Réponses guidées : but={purpose} ; initiative={initiative} ; preuves={evidence} ; communication={communication} ; vie privée={privacy} ; principes={principles}. {notes} Les principes en texte libre sont consultatifs et ne modifient ni les approbations, ni le sandbox, ni le shell, ni le réseau, ni la confiance, ni les permissions MCP.", |
| 918 | "OnboardWelcomeVersion": "Version {version}", |
| 919 | "OnboardWelcomeLead": "« Code » a un double sens ici : le logiciel que vous livrez, et la loi sous laquelle cet agent travaille.", |
| 920 | "OnboardWelcomeSetupBlurb": "Le setup s'adapte à ce qui est déjà configuré ; seuls ces écrans apparaîtront.", |
| 921 | "OnboardWelcomeSteps": "Suivant : {steps}.", |
| 922 | "OnboardWelcomeStepLanguage": "choisir la langue", |
| 923 | "OnboardWelcomeStepAppearance": "choisir l'apparence", |
| 924 | "OnboardWelcomeStepApiKey": "connecter la clé API", |
| 925 | "OnboardWelcomeStepTrust": "faire confiance au workspace", |
| 926 | "OnboardWelcomeStepMentalModels": "découvrir les modes et permissions", |
| 927 | "OnboardWelcomeStepTips": "conseils de setup", |
| 928 | "OnboardWelcomeDefaults": "Les valeurs par défaut intégrées sont valides ; modifiez-les à tout moment avec /constitution.", |
| 929 | "OnboardWelcomeEnter": "Appuyez sur Enter pour continuer.", |
| 930 | "OnboardWelcomeExit": "Ctrl+C quitte à tout moment.", |
| 931 | "SetupToolsMcpHotbarLabel": "Sources du Hotbar :", |
| 932 | "SetupToolsMcpNeedsActionSaved": "Tools/MCP nécessite encore une action ; enregistré pour le rapport de setup (ne bloque pas le premier lancement).", |
| 933 | "SetupToolsMcpPreviewTitle": "Tools / MCP — amorçages sûrs", |
| 934 | "SetupToolsMcpOnRampText": "Tools, MCP, Skills & Plugins — Amorçages sûrs\n\n/setup ne fait que lire l'inventaire local. Il ne démarre jamais de serveurs MCP, n'installe pas de skills, n'exécute pas de plugins ni de commandes non fiables.\n\nInventaire actuel :\n- MCP : {mcp_result}\n- Skills : {skills_result}\n- Répertoire tools : {tools_result}\n- Plugins : {plugins_result}\n- Hotbar (adaptateurs partagés) : {hotbar_result}\n\nChemins (home masqué) :\n- Config MCP : {mcp_path}\n- Skills : {skills_path}\n- Plugins : {plugins_path}\n\nAmorçage sûr (à exécuter vous-même dans un terminal normal ou une commande TUI) :\n- MCP : /mcp · codewhale mcp init · codewhale doctor\n- Skills : /skills · codewhale setup --skills · /skills install <spec>\n- Plugins : /plugin · codewhale setup --plugins\n- Répertoire tools : codewhale setup --tools\n\nLes actions à effets de bord exigent toujours une confirmation explicite. Les commandes de plugins restent distinctes des commandes slash ; la source de plugins du Hotbar reste différée jusqu'à l'arrivée des gates d'approbation.\n\nVoir docs/MCP.md et docs/skills/README.md pour ce qui nécessite encore une configuration externe manuelle.", |
| 935 | "HotbarActionModeOperateName": "Mode Operate", |
| 936 | "HotbarActionModeOperateDescription": "Faites travailler votre Fleet en parallèle.", |
| 937 | "HomeOperateModeTip": "Operate — faites travailler votre Fleet en parallèle", |
| 938 | "HomeOperateModeFleetTip": " Les rôles intégrés utilisent le modèle de cette session ; /fleet setup les personnalise", |
| 939 | "HelpSubtitle": "Concepts, commandes et raccourcis clavier", |
| 940 | "CommandPaletteTitle": "Commande", |
| 941 | "CommandPaletteSubtitle": "Trouvez et exécutez une action", |
| 942 | "ConfigSubtitle": "Réglages d'abord ; clés brutes dans le détail avancé", |
| 943 | "LaunchMenuNewSession": "Nouvelle session", |
| 944 | "LaunchMenuNewWorktree": "Nouveau worktree", |
| 945 | "LaunchMenuResumeSession": "Reprendre la session", |
| 946 | "LaunchMenuChangelog": "Changelog", |
| 947 | "LaunchMenuQuit": "Quitter", |
| 948 | "LaunchMenuUnavailable": "indisponible", |
| 949 | "LaunchMenuSavedCount": "{count} enregistrées", |
| 950 | "LaunchWorktreePrompt": "Nommez la branche/worktree, ou appuyez sur Enter pour un nom automatique.", |
| 951 | "LaunchWorktreeNeedsGit": "Un nouveau worktree nécessite un dépôt Git.", |
| 952 | "LaunchWorktreeNameLabel": "nom du worktree", |
| 953 | "LaunchHintMove": "déplacer", |
| 954 | "LaunchHintOpen": "ouvrir", |
| 955 | "LaunchTipFlags": "Astuce : -w <path> ouvre un workspace ; -r <session-id> reprend directement", |
| 956 | "LaunchSavedSessionSingular": "1 session enregistrée", |
| 957 | "LaunchSavedSessionsPlural": "{count} sessions enregistrées", |
| 958 | "LaunchCreatingWorktree": "Création du worktree…", |
| 959 | "LaunchWorktreeFailed": "Échec du worktree : {error}", |
| 960 | "LaunchNoSavedSessions": "Aucune session enregistrée pour ce workspace.", |
| 961 | "PhaseIdle": "inactif", |
| 962 | "PhaseDraft": "brouillon", |
| 963 | "PhaseWorking": "travail en cours", |
| 964 | "PhaseReasoning": "raisonnement", |
| 965 | "PhaseReading": "lecture", |
| 966 | "PhaseUsingTool": "utilisation d'outil", |
| 967 | "PhaseVerifying": "vérification", |
| 968 | "PhaseWaitingOnYou": "en attente de vous", |
| 969 | "PhaseDone": "terminé", |
| 970 | "PhaseFailed": "échoué", |
| 971 | "PhaseFinishing": "finalisation", |
| 972 | "ChipModeAct": "act", |
| 973 | "ChipModePlan": "plan", |
| 974 | "ChipModeOperate": "operate", |
| 975 | "ChipPermissionReadOnly": "lecture seule", |
| 976 | "ChipPermissionAsk": "ask", |
| 977 | "ChipPermissionAuto": "auto", |
| 978 | "ChipPermissionFullAccess": "Full Access", |
| 979 | "ChipPermissionNever": "jamais", |
| 980 | "FooterHintKeys": "touches", |
| 981 | "FooterHintOutput": "sortie", |
| 982 | "FooterHintContext": "contexte", |
| 983 | "EmptyStateNoGit": "pas de git", |
| 984 | "EmptyStateMcpLabel": "mcp", |
| 985 | "EmptyStateFleetLabel": "Fleet", |
| 986 | "EmptyStateFleetSetupLabel": "Fleet prête", |
| 987 | "EmptyStateHelpHint": "— tout voir", |
| 988 | "SessionsSurfaceTitle": "sessions", |
| 989 | "SessionsPaneTitle": " sessions (1-9) ", |
| 990 | "SessionsHistoryPaneTitle": " historique (PgUp/PgDn) ", |
| 991 | "SessionsActionResume": "reprendre", |
| 992 | "SessionsActionSearch": "rechercher", |
| 993 | "SessionsActionSort": "trier", |
| 994 | "SessionsActionRename": "renommer", |
| 995 | "SessionsActionAllWorkspaces": "tous les workspaces", |
| 996 | "SessionsActionDelete": "supprimer", |
| 997 | "SessionsActionClose": "fermer", |
| 998 | "SessionsScopeSortHeader": "portée et tri · {sort}", |
| 999 | "SessionsEmptyTitle": "Aucune session enregistrée pour l'instant.", |
| 1000 | "SessionsEmptyHint": "Envoyez un message pour en démarrer une ; elle est enregistrée automatiquement.", |
| 1001 | "SessionsShowingAllWorkspaces": "sessions de tous les workspaces affichées", |
| 1002 | "SessionsScopedToWorkspace": "limité à ce workspace", |
| 1003 | "SessionsNewTitlePrompt": "Nouveau titre : ", |
| 1004 | "SessionsDeletePrompt": "Supprimer la session ? (y/n)", |
| 1005 | "SessionsConfirmDelete": "Confirmer la suppression (y/n)", |
| 1006 | "SessionsNewSessionTitle": "Nouvelle session", |
| 1007 | "SessionsOpenedHistory": "Historique ouvert pour {id}", |
| 1008 | "SessionsSortStatus": "Tri : {sort}", |
| 1009 | "SessionsSortRecent": "récent", |
| 1010 | "SessionsSortName": "nom", |
| 1011 | "SessionsSortSize": "taille", |
| 1012 | "SessionsSearchPrompt": "Recherche : tapez pour filtrer, Enter pour appliquer", |
| 1013 | "SessionsDeleteFailed": "Échec de la suppression : {error}", |
| 1014 | "SessionsDeleted": "Session {id} supprimée", |
| 1015 | "SessionsNoSelection": "Aucune session sélectionnée", |
| 1016 | "SessionsTitleLength": "Le titre doit faire 1 à 100 caractères", |
| 1017 | "SessionsOpenFailed": "Impossible d'ouvrir les sessions : {error}", |
| 1018 | "SessionsLoadFailed": "Impossible de charger la session : {error}", |
| 1019 | "SessionsRenameFailed": "Échec du renommage : {error}", |
| 1020 | "SessionsRenamed": "Renommée en \"{title}\"", |
| 1021 | "SessionsNoResults": "Aucune session trouvée.", |
| 1022 | "SessionsDirectoryFailed": "Impossible d'ouvrir le répertoire des sessions.", |
| 1023 | "SessionsPreviewFailed": "Impossible de charger l'aperçu de la session.", |
| 1024 | "SessionsDeleteCancelled": "Suppression annulée", |
| 1025 | "SessionsRenameCancelled": "Renommage annulé", |
| 1026 | "SessionsShowingRange": "Affichage de {start}-{end} / {total}", |
| 1027 | "SessionsMessageCountCompact": "{count} msgs", |
| 1028 | "SessionsForkCompact": "fork", |
| 1029 | "SessionsUnknownMode": "inconnu", |
| 1030 | "SessionsPreviewTitle": "Titre : {title}", |
| 1031 | "SessionsPreviewUpdated": "Mis à jour : {updated}", |
| 1032 | "SessionsPreviewMessagesModel": "Messages : {count} | Modèle : {model}", |
| 1033 | "SessionsPreviewMode": "Mode : {mode}", |
| 1034 | "SessionsToolCall": "appel d'outil : {name} {input}", |
| 1035 | "SessionsToolError": "erreur d'outil : {content}", |
| 1036 | "SessionsToolResult": "résultat d'outil : {content}", |
| 1037 | "SessionsServerTool": "outil serveur : {name} {input}", |
| 1038 | "SessionsImage": "[image]", |
| 1039 | "SessionsTimeJustNow": "à l'instant", |
| 1040 | "SessionsTimeMinutesAgo": "il y a {count} min", |
| 1041 | "SessionsTimeHoursAgo": "il y a {count} h", |
| 1042 | "SessionsTimeDaysAgo": "il y a {count} j", |
| 1043 | "CtxInspRowSystemPrompt": "prompt système", |
| 1044 | "CtxInspRowMessages": "messages", |
| 1045 | "CtxInspRowFree": "libre", |
| 1046 | "CtxInspFreeTokensDetail": "Il reste {free} tokens libres avant que la fenêtre de la route soit pleine. Seuil d'auto-compaction : {threshold} %.", |
| 1047 | "CtxInspDrillTitle": "contexte · {row}", |
| 1048 | "CtxInspSurfaceTitle": "contexte", |
| 1049 | "CtxInspActionSelect": "sélectionner", |
| 1050 | "CtxInspActionDrillDown": "explorer en détail", |
| 1051 | "CtxInspActionClose": "fermer", |
| 1052 | "CtxInspUsedTokens": "~{used}/{max} tokens", |
| 1053 | "CtxInspAutoCompactAt": "auto-compaction à {threshold} %", |
| 1054 | "CtxInspRowTokens": "{tokens} tokens · {percent} %", |
| 1055 | "RouteSurfaceTitle": "route · {view}", |
| 1056 | "RouteBrowseCatalog": "parcourir le catalogue", |
| 1057 | "RouteActionType": "Saisir", |
| 1058 | "RouteActionSearchAnyModel": "chercher un modèle", |
| 1059 | "RoutePanelHeader": "route", |
| 1060 | "RouteProviderLabel": "fournisseur", |
| 1061 | "RouteModelFirstAtomic": "route atomique modèle-d'abord", |
| 1062 | "PickerActionMove": "déplacer", |
| 1063 | "PickerActionSwitch": "changer", |
| 1064 | "PickerActionApply": "appliquer", |
| 1065 | "PickerActionSetStartupDefault": "définir comme valeur par défaut au démarrage", |
| 1066 | "PickerActionCancel": "annuler", |
| 1067 | "PickerActionClear": "effacer", |
| 1068 | "PickerActionClearSearch": "effacer la recherche", |
| 1069 | "PickerActionBrowseAll": "tout parcourir", |
| 1070 | "PickerActionCustom": "personnalisé", |
| 1071 | "PickerActionJump": "aller à", |
| 1072 | "PickerActionEditKey": "modifier la clé", |
| 1073 | "PickerActionModels": "modèles", |
| 1074 | "PickerActionUnavailable": "indisponible", |
| 1075 | "PickerActionSetKey": "définir la clé", |
| 1076 | "PickerActionConfigured": "configuré", |
| 1077 | "RouteNoModels": "Aucun modèle disponible.", |
| 1078 | "RouteNoModelMatch": "Aucun modèle ne correspond à \"{query}\" — Backspace pour effacer.", |
| 1079 | "ProviderNoMatchesTitle": "Aucun fournisseur ne correspond", |
| 1080 | "ProviderNoMatchesHint": "Essayez un autre terme de recherche ou effacez pour parcourir.", |
| 1081 | "ProviderNoConfiguredTitle": "Aucun fournisseur configuré pour l'instant", |
| 1082 | "ProviderNoConfiguredHint": "Parcourez tous les fournisseurs pris en charge ou créez un endpoint personnalisé.", |
| 1083 | "ProviderNoCatalogModels": "Aucun modèle du catalogue disponible.", |
| 1084 | "ProviderExternalActionRevoke": "révoquer l'accès externe", |
| 1085 | "ProviderExternalActionChoices": "choix d'accès externe", |
| 1086 | "ProviderExternalActionReuseGrok": "réutilisation externe de Grok", |
| 1087 | "ProviderExternalHintCodexReview": "Après {login}, appuyez sur Enter pour revoir les choix d'accès désactivé/lecture seule/géré.", |
| 1088 | "ProviderExternalHintXaiReview": "Appuyez sur Enter pour la connexion appareil gérée par Codewhale ; appuyez sur E pour revoir la réutilisation existante du Grok CLI.", |
| 1089 | "ProviderExternalHintXaiApiKey": "Ou utilisez XAI_API_KEY et rouvrez ce sélecteur.", |
| 1090 | "XaiAuthChoiceTitle": " Authentification xAI ", |
| 1091 | "XaiAuthChoiceIntro": "Choisissez une source d’identifiants explicite. Le texte de la clé n’est jamais traité comme un jeton OAuth.", |
| 1092 | "XaiAuthChoiceApiKeyOption": "Clé API xAI — saisissez-la ou collez-la, puis enregistrez-la dans l’emplacement du fournisseur xAI", |
| 1093 | "XaiAuthChoiceDeviceOAuthOption": "OAuth natif de l’appareil — connexion par navigateur/code d’appareil avec stockage géré par Codewhale", |
| 1094 | "ProviderExternalDetailScope": "Externe : accès={access} | fournisseur={provider} | source={source} | version={version} | {state}", |
| 1095 | "ProviderExternalDormant": "dormant", |
| 1096 | "ProviderExternalOwnerPath": "Propriétaire/chemin : {owner} | {path}", |
| 1097 | "ProviderExternalPinnedPathWarning": "Avertissement : le chemin d'identifiants ambiant de {owner} a changé ; le consentement reste épinglé à {path}.", |
| 1098 | "ProviderExternalSemanticsRevoke": "{semantics} | révocation : {revoke}", |
| 1099 | "ProviderExternalRevoke": "révocation : {revoke}", |
| 1100 | "ProviderExternalChoiceTitle": " Accès à des identifiants externes · {provider} ", |
| 1101 | "ProviderExternalActionChoose": "choisir", |
| 1102 | "ProviderExternalChoiceIntro": "Choisissez ce que Codewhale peut faire avec des identifiants appartenant à un autre CLI.", |
| 1103 | "ProviderExternalDisabledLabel": "Désactivé (défaut)", |
| 1104 | "ProviderExternalDisabledDetail": "pas de sondage, lecture, rafraîchissement, réseau ni écriture", |
| 1105 | "ProviderExternalReadOnlyLabel": "Lecture seule", |
| 1106 | "ProviderExternalReadOnlyDetail": "un fichier exact ; confirmation explicite ensuite", |
| 1107 | "ProviderExternalReadOnlySemantics": "lit ce fichier exact ; aucun rafraîchissement, requête d'identité ou de découverte, écriture ou réécriture du fichier externe ; les requêtes normales au fournisseur sélectionné peuvent utiliser son token", |
| 1108 | "ProviderExternalManagedLabel": "Géré (indisponible)", |
| 1109 | "ProviderExternalManagedDetail": "aucun adaptateur de préservation sûre du schéma revu", |
| 1110 | "ProviderExternalConfirmTitle": " Confirmer l'accès exact en lecture seule ", |
| 1111 | "ProviderExternalActionGrant": "accorder l'accès en lecture seule", |
| 1112 | "ProviderExternalOwnerLabel": "CLI propriétaire", |
| 1113 | "ProviderExternalExactPathLabel": "Chemin exact résolu", |
| 1114 | "ProviderExternalSemanticsLabel": "Sémantique", |
| 1115 | "ProviderExternalRejectUnsafe": "Codewhale rejettera les liens symboliques, les points de réanalyse et les fichiers non réguliers.", |
| 1116 | "ProviderExternalRevokeLabel": "Révoquer", |
| 1117 | "ProviderExternalGrantedToast": "Accès en lecture seule à {owner} accordé pour {provider}. Aucun rafraîchissement, requête d'identité/découverte ni écriture de fichier externe ; les requêtes normales au fournisseur peuvent utiliser le token.", |
| 1118 | "ProviderExternalSaveFailedToast": "Le consentement pour les identifiants externes n'a pas été enregistré : {error}", |
| 1119 | "ProviderExternalRevokedToast": "Accès aux identifiants externes révoqué pour {provider}", |
| 1120 | "ProviderExternalRevokeFailedToast": "L'accès aux identifiants externes n'a pas été révoqué : {error}", |
| 1121 | "ThemeSurfaceTitle": "thème · aperçu en direct", |
| 1122 | "ThemeTreatmentOmbreUnavailable": "Traitement Ombre indisponible — l'arrière-plan appartient au Terminal", |
| 1123 | "ThemeTreatmentFlatActive": "Traitement Flat — actif", |
| 1124 | "ThemeTreatmentOmbreActive": "Traitement Ombre — actif", |
| 1125 | "FleetRosterHeaderLabel": "fleet", |
| 1126 | "FleetRosterTabRoster": "roster", |
| 1127 | "FleetRosterTabSetup": "setup", |
| 1128 | "FleetRosterWorkers": "workers", |
| 1129 | "FleetRosterMembersCount": "{count} membres", |
| 1130 | "FleetRosterOperatorFirst": "l'operator mène · le modèle de session dirige ce Fleet", |
| 1131 | "FleetRosterOperatorRow": "operator · leader", |
| 1132 | "FleetReadyNotice": "Fleet est prête · /fleet ouvre les rôles · /fleet setup personnalise les routes", |
| 1133 | "FleetProfileIdentityVerifyFailed": "Impossible de vérifier les identités des profils existants ({error}) ; corrigez le fichier indiqué avant d'enregistrer.", |
| 1134 | "FleetProfileIdConflict": "L'id de profil `{id}` est déjà utilisé par {path} ; rédigez un nouveau brouillon avec un rôle différent ou supprimez d'abord l'ancien fichier.", |
| 1135 | "FleetProfileProviderUnconfigured": "Le profil épingle le fournisseur `{provider}`, qui n'a pas d'identifiants configurés ({env}) ; configurez-le dans /provider avant d'enregistrer.", |
| 1136 | "WorkflowStatusWaiting": "en attente", |
| 1137 | "WorkflowDebrief": "débrief : {done}/{total} réglés · {failed} échoués · {cancelled} annulés · {elapsed}", |
| 1138 | "WorkflowTranscriptDetails": "transcription : JSON complet de l'exécution disponible dans les détails de l'outil ({details})", |
| 1139 | "WorkflowReceiptRole": "rôle {value}", |
| 1140 | "WorkflowReceiptReasoning": "raisonnement {value}", |
| 1141 | "WorkflowReceiptVia": "via {value}", |
| 1142 | "WorkflowReceiptTokens": "jetons {value}", |
| 1143 | "WorkflowReceiptTools": "outils {value}", |
| 1144 | "WorkflowReceiptDuration": "durée {value}", |
| 1145 | "WorkflowReceiptUnknown": "inconnu", |
| 1146 | "WorkflowReceiptProviderReported": "rapporté par le fournisseur", |
| 1147 | "WorkflowReceiptEstimated": "estimé", |
| 1148 | "SidebarTasksLabel": "Tâches", |
| 1149 | "SidebarTodoLabel": "À faire", |
| 1150 | "WorkSurfaceTodoProgress": "{label} {completed}/{total} · {remaining} restantes", |
| 1151 | "SidebarStopControl": "arrêter", |
| 1152 | "SidebarDestructiveArmed": "Action destructive armée — appuyez sur Enter pour confirmer ou effacez le brouillon pour annuler", |
| 1153 | "WorkSurfaceStopConfirmHint": "confirmer l'arrêt · Esc annule", |
| 1154 | "CoordinationWorkTitle": "Travail de coordination", |
| 1155 | "CoordinationSummaryDecisions": "{count} décisions", |
| 1156 | "CoordinationSummaryContentions": "{count} conflits", |
| 1157 | "CoordinationSummaryReconciled": "{count} réconciliations", |
| 1158 | "CoordinationSchema": "Schéma {value}", |
| 1159 | "CoordinationSequence": "séquence {value}", |
| 1160 | "CoordinationPerSectionLimit": "jusqu'à {limit} par section", |
| 1161 | "CoordinationDecisionsHeading": "Décisions", |
| 1162 | "CoordinationNone": "Aucune", |
| 1163 | "CoordinationNoneValue": "aucun", |
| 1164 | "CoordinationStatus": "statut {status}", |
| 1165 | "CoordinationOwner": "propriétaire {owner}", |
| 1166 | "CoordinationVersion": "version {version}", |
| 1167 | "CoordinationWriteClaimsHeading": "Revendications d'écriture", |
| 1168 | "CoordinationIsolated": "isolé", |
| 1169 | "CoordinationSharedWorkspace": "workspace partagé", |
| 1170 | "CoordinationPaths": "chemins {paths}", |
| 1171 | "CoordinationContracts": "contrats {contracts}", |
| 1172 | "CoordinationContentionsHeading": "Conflits", |
| 1173 | "CoordinationClaimant": "revendicateur {claimant}", |
| 1174 | "CoordinationDisposition": "disposition {disposition}", |
| 1175 | "CoordinationNeutralReconciliationHeading": "Réconciliation neutre", |
| 1176 | "CoordinationCandidates": "{count} candidats", |
| 1177 | "CoordinationRetry": "nouvelle tentative {count}/{limit}", |
| 1178 | "CoordinationReviewer": "réviseur {reviewer}", |
| 1179 | "CoordinationVerifier": "vérificateur {verifier}", |
| 1180 | "CoordinationVerification": "vérification {verification}", |
| 1181 | "CoordinationContextProjectionsHeading": "Projections de contexte", |
| 1182 | "CoordinationContextDecisions": "décisions {decisions}", |
| 1183 | "CoordinationBytes": "{count} octets", |
| 1184 | "CoordinationDeduplicated": "{count} dédupliqués", |
| 1185 | "CoordinationOmitted": "{count} omis", |
| 1186 | "CoordinationActiveHotPathsHeading": "Chemins chauds actifs", |
| 1187 | "CoordinationActiveClaims": "{count} revendications actives", |
| 1188 | "CoordinationMetricsNoteHeading": "Note sur les métriques", |
| 1189 | "CoordinationMetricsNoAuthoritativeSource": "la croissance et la route/le coût restent nuls quand le registre de coordination n'a pas de source faisant autorité", |
| 1190 | "CoordinationStatusProposed": "proposé", |
| 1191 | "CoordinationStatusAccepted": "accepté", |
| 1192 | "CoordinationStatusSuperseded": "remplacé", |
| 1193 | "ComposerSlashMenuHint": " enter:exécuter · tab:compléter · ↑↓:sélectionner · esc:continuer à taper ", |
| 1194 | "ApprovalRepoLawBadge": "LOI DU DÉPÔT", |
| 1195 | "ApprovalRepoLawTitle": "Constitution du dépôt", |
| 1196 | "ApprovalRepoLawWarning": "La loi du dépôt exige une confirmation dans les postures soumises à approbation.", |
| 1197 | "ApprovalRepoLawRuleLabel": "Règle ", |
| 1198 | "FilePickerMatchSingular": "@ joindre · 1 correspondance", |
| 1199 | "FilePickerMatchesPlural": "@ joindre · {count} correspondances", |
| 1200 | "FilePickerScanning": "Analyse du workspace…", |
| 1201 | "BehavioralTipPlanning": "Planification ? {key} bascule vers le mode Plan", |
| 1202 | "BehavioralTipBackgroundReceipt": "Les reçus vivent dans le panneau Work — {key} ouvre l'inspecteur", |
| 1203 | "BehavioralTipClearedInput": "Effacé · {chord} restaure", |
| 1204 | "BehavioralTipMcpValidation": "{command} démarre les serveurs et montre pourquoi", |
| 1205 | "BehavioralTipRepeatedCommand": "{command} peut épingler ceci", |
| 1206 | "SettingLockedDuringTurn": "{setting} est verrouillé pendant qu'un tour est en cours — appuyez d'abord sur Esc pour interrompre", |
| 1207 | "SettingSubjectMode": "Le mode", |
| 1208 | "SettingSubjectThinking": "Le raisonnement", |
| 1209 | "SettingSubjectModel": "Le modèle", |
| 1210 | "SettingSubjectModelAndThinking": "Le modèle et le raisonnement", |
| 1211 | "SettingSubjectProvider": "Le fournisseur", |
| 1212 | "SettingSubjectPermissions": "Les permissions", |
| 1213 | "ThinkingControlledByAutoRouting": "Le raisonnement est contrôlé par le routage automatique de modèles ; choisissez d'abord un modèle fixe.", |
| 1214 | "SavedAsStartupDefault": "enregistré comme défaut de démarrage", |
| 1215 | "ModeAlreadyActiveSavedAsDefault": "Déjà en mode {mode} — enregistré comme défaut de démarrage.", |
| 1216 | "StartupDefaultNotSaved": "{setting} n'a pas été enregistré : {error}", |
| 1217 | "StartupDefaultSubjectMode": "le mode de démarrage", |
| 1218 | "StartupDefaultSubjectThinking": "le niveau de raisonnement", |
| 1219 | "StartupDefaultSubjectModel": "le modèle", |
| 1220 | "StartupDefaultSubjectAll": "les défauts de démarrage", |
| 1221 | "CmdCostReportSubtotal": "Coût de la session :\n ─────────────────────────────\n Sous-total tarifé : {cost}\n\n Un ou plusieurs tours payants ne sont pas inclus ; voir la couverture ci-dessous.", |
| 1222 | "CmdCostReportUnknown": "Coût de la session :\n ─────────────────────────────\n Total estimé : inconnu\n\n Aucun tour n'a de prix faisant autorité dans la devise choisie.", |
| 1223 | "CmdCostUnknownValue": "inconnu", |
| 1224 | "CmdCostEstimateOnly": "Ceci est une estimation, pas une facture : elle est calculée localement à partir de l'usage de tokens rapporté par le fournisseur et des tarifs publiés, et peut différer de votre facture.", |
| 1225 | "CmdCostCoverage": "Couvert : {priced} tour(s) payant(s) tarifé(s) sur {turns}.", |
| 1226 | "CmdCostUnpricedTurns": "Exclu : {unpriced} tour(s) payant(s) sans prix faisant autorité ({reasons}) ; leur dépense manque au total ci-dessus.", |
| 1227 | "CmdCostUnpricedClasses": "Classes de tokens non tarifées vues cette session : {classes}. Les tours qui les utilisent échouent fermé plutôt que de sous-déclarer.", |
| 1228 | "CmdCostCoverageUnknownLegacy": "Couverture : inconnue. Cette session a été enregistrée avant l'enregistrement de la couverture tarifaire par tour ; impossible d'établir quelle part du total est comptabilisée.", |
| 1229 | "CmdCostPricingProvenance": "Sources de prix utilisées : {sources}.", |
| 1230 | "CmdCostLivePricingDowngraded": "Les prix en direct du fournisseur n'ont pas pu être vérifiés pour cette route ({defects}) ; les tarifs publiés embarqués ont été utilisés.", |
| 1231 | "CmdCostLivePricingUnavailable": "Les prix en direct du fournisseur n'ont pas pu être vérifiés pour cette route ({defects}), et aucun tarif embarqué utilisable n'était disponible ; cette dépense est inconnue.", |
| 1232 | "CmdCostRoutesHeader": "Routes auditées (caviardées) :", |
| 1233 | "CmdTokensCacheWriteTotal": "Tokens d'écriture en cache (cache-creation) cette session : {write}. Facturés au-dessus du tarif d'entrée lorsque le fournisseur publie une prime d'écriture ; voir /cache pour le détail par tour.", |
| 1234 | "ModelPickerAutoNetworkActiveProviderHint": "par tour · fournisseur actif uniquement · requête + contexte récent → {provider} / {model}", |
| 1235 | "CmdLaneDescription": "Gérer les Lanes actives : interrupt, restart, resume", |
| 1236 | "StepfunBillingRouteTitle": "Route de facturation StepFun", |
| 1237 | "StepfunBillingRouteIntro": "StepFun facture le pay-as-you-go et les abonnements Step Plan sur des endpoints distincts. Choisissez celui auquel appartient votre clé.", |
| 1238 | "StepfunBillingRoutePaygOption": "Pay-as-you-go (tarif au token)", |
| 1239 | "StepfunBillingRoutePlanOption": "Abonnement Step Plan (quota du plan)", |
| 1240 | "StepfunPlanApiKeyHint": "Pour les abonnements StepFun Step Plan, utilisez la clé émise pour votre Step Plan, pas une clé pay-as-you-go.", |
| 1241 | "StepfunPlanRouteHint": "Cette route utilise {route} et est facturée sur le quota de votre Step Plan.", |
| 1242 | "ConfigLabelSessionsRail": "Volet des sessions", |
| 1243 | "ConfigLabelSessionAutoResume": "Reprendre automatiquement la dernière session", |
| 1244 | "SessionsRailTitle": "Sessions", |
| 1245 | "SessionsRailEmpty": "Aucune session dans cet espace de travail pour l'instant", |
| 1246 | "SessionsRailBrowseAll": "Parcourir toutes les sessions", |
| 1247 | "SessionsRailShowingCount": "{shown} sur {total} — tout parcourir", |
| 1248 | "SessionsRailUnavailable": "Sessions indisponibles : {error}", |
| 1249 | "SessionsActionArchive": "archiver", |
| 1250 | "SessionsActionShowArchived": "archivées", |
| 1251 | "SessionsArchived": "Session {id} archivée", |
| 1252 | "SessionsRestored": "Session {id} restaurée", |
| 1253 | "SessionsArchiveFailed": "Échec de l'archivage : {error}", |
| 1254 | "SessionsShowingArchived": "Sessions archivées affichées", |
| 1255 | "SessionsHidingArchived": "Sessions archivées masquées", |
| 1256 | "SessionsArchivedCompact": "archivée", |
| 1257 | "KbReasoningDetail": "Open reasoning detail for the selected or current turn", |
| 1258 | "KbTurnInspector": "Ouvrir l'inspecteur de tour", |
| 1259 | "CmdTurnInspectDescription": "Open the whole-turn inspector", |
| 1260 | "CmdAutomationDescription": "Gérer les automatisations planifiées durables", |
| 1261 | "AutomationUsage": "Utilisation : /automation [list|show <id>|pause <id>|resume <id>|delete <id> [--confirm <token>]|run <id>]", |
| 1262 | "AutomationManagerUnavailable": "Le gestionnaire d’automatisations n’est pas disponible dans cette session.", |
| 1263 | "AutomationListFailed": "Impossible de lister les automatisations : {error}", |
| 1264 | "AutomationActionFailed": "Impossible de {action} l’automatisation {id} : {error}", |
| 1265 | "AutomationEmpty": "Aucune automatisation planifiée. Utilisez l’outil `automation` pour en créer une.", |
| 1266 | "AutomationListHeading": "Automatisations planifiées", |
| 1267 | "AutomationNoun": "Automatisation", |
| 1268 | "AutomationStatusLabel": "état", |
| 1269 | "AutomationStatusActive": "active", |
| 1270 | "AutomationStatusPaused": "en pause", |
| 1271 | "AutomationRunStatusQueued": "en attente", |
| 1272 | "AutomationRunStatusRunning": "en cours", |
| 1273 | "AutomationRunStatusCompleted": "terminée", |
| 1274 | "AutomationRunStatusFailed": "échouée", |
| 1275 | "AutomationRunStatusCanceled": "annulée", |
| 1276 | "AutomationActionInspect": "consulter", |
| 1277 | "AutomationActionPause": "mettre en pause", |
| 1278 | "AutomationActionResume": "reprendre", |
| 1279 | "AutomationActionDelete": "supprimer", |
| 1280 | "AutomationActionRun": "exécuter", |
| 1281 | "AutomationActionPaused": "mise en pause", |
| 1282 | "AutomationActionResumed": "reprise", |
| 1283 | "AutomationNextLabel": "prochaine", |
| 1284 | "AutomationNameLabel": "nom", |
| 1285 | "AutomationPromptLabel": "instruction", |
| 1286 | "AutomationCwdLabel": "répertoire de travail", |
| 1287 | "AutomationModeLabel": "mode", |
| 1288 | "AutomationAllowShellLabel": "autoriser le shell", |
| 1289 | "AutomationTrustModeLabel": "mode de confiance", |
| 1290 | "AutomationAutoApproveLabel": "approbation automatique", |
| 1291 | "AutomationRruleLabel": "règle de répétition", |
| 1292 | "AutomationDeliveryLabel": "distribution", |
| 1293 | "AutomationLastLabel": "dernière", |
| 1294 | "AutomationRecentRunsLabel": "exécutions récentes", |
| 1295 | "AutomationNoRuns": "aucune exécution enregistrée", |
| 1296 | "AutomationRunsUnavailable": "exécutions indisponibles", |
| 1297 | "AutomationTaskLabel": "tâche", |
| 1298 | "AutomationMutationReceipt": "{name} — {action} ({status_label} : {status})", |
| 1299 | "AutomationRunEnqueued": "Exécution de l’automatisation {id} mise en attente : {status} (tâche {task})", |
| 1300 | "AutomationDeletePreview": "La suppression n’est pas encore confirmée. Rien n’a été supprimé.\nAutomatisation : {id} ({name})\nExécutions enregistrées : {run_count}\nPour supprimer la définition et l’historique des exécutions, lancez :\n{command}", |
| 1301 | "AutomationDeleteConfirmationStale": "La confirmation de suppression ne correspond plus à l’automatisation {id} ; rien n’a été supprimé. Vérifiez l’état actuel avec {command}.", |
| 1302 | "AutomationDeleted": "Automatisation {id} ({name}) supprimée. Exécutions enregistrées supprimées : {run_count}." |
| 1303 | } |
| 1304 |