@agent-native/core 0.155.0 → 0.157.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/corpus/templates/assets/app/components/asset/AssetPreviewDialog.tsx +3 -1
  2. package/corpus/templates/assets/app/i18n-data.ts +21 -1
  3. package/corpus/templates/assets/app/routes/brand-kits.$id.tsx +17 -13
  4. package/corpus/templates/clips/app/components/player/share-dialog.tsx +102 -59
  5. package/corpus/templates/clips/app/routes/r.$recordingId.tsx +15 -1
  6. package/corpus/templates/clips/app/routes/share.$shareId.tsx +16 -2
  7. package/corpus/templates/slides/app/components/editor/AddSlidePopover.tsx +98 -29
  8. package/corpus/templates/slides/app/components/editor/EditorActionCluster.tsx +45 -91
  9. package/corpus/templates/slides/app/components/editor/EditorSidebar.tsx +94 -2
  10. package/corpus/templates/slides/app/components/editor/EditorToolbar.tsx +17 -29
  11. package/corpus/templates/slides/app/components/editor/SlideContextToolbar.tsx +1 -1
  12. package/corpus/templates/slides/app/context/DeckContext.tsx +42 -2
  13. package/corpus/templates/slides/app/global.css +7 -40
  14. package/corpus/templates/slides/app/i18n/en-US.ts +4 -0
  15. package/corpus/templates/slides/app/pages/DeckEditor.tsx +130 -45
  16. package/dist/agent/index.d.ts +1 -1
  17. package/dist/agent/production-agent.d.ts +30 -0
  18. package/dist/agent/production-agent.js +100 -8
  19. package/dist/agent/types.d.ts +9 -0
  20. package/dist/client/AgentPanel.js +12 -9
  21. package/dist/client/AssistantChat.d.ts +15 -1
  22. package/dist/client/AssistantChat.js +110 -43
  23. package/dist/client/MultiTabAssistantChat.js +44 -27
  24. package/dist/client/chat/markdown-renderer.js +4 -2
  25. package/dist/client/chat/message-components.d.ts +2 -2
  26. package/dist/client/chat/message-components.js +69 -35
  27. package/dist/client/chat/run-recovery.d.ts +4 -1
  28. package/dist/client/chat/run-recovery.js +62 -30
  29. package/dist/client/chat/tool-call-display.d.ts +12 -3
  30. package/dist/client/chat/tool-call-display.js +79 -40
  31. package/dist/client/chat/widgets/DataChartRenderer.js +3 -1
  32. package/dist/client/chat/widgets/DataChartWidget.js +8 -2
  33. package/dist/client/chat/widgets/DataInsightsWidget.js +3 -1
  34. package/dist/client/chat/widgets/DataTableWidget.js +23 -9
  35. package/dist/client/chat/widgets/builtin-tool-renderers.js +3 -1
  36. package/dist/client/components/ui/message-scroller.d.ts +1 -1
  37. package/dist/client/components/ui/message-scroller.js +7 -3
  38. package/dist/client/composer/runtime-adapters.js +3 -2
  39. package/dist/client/context-xray/ContextMeter.js +5 -1
  40. package/dist/client/context-xray/ContextXRayPanel.js +5 -5
  41. package/dist/client/error-format.d.ts +4 -0
  42. package/dist/client/error-format.js +93 -5
  43. package/dist/client/i18n.js +83 -17
  44. package/dist/client/observability/ThumbsFeedback.js +10 -8
  45. package/dist/client/sharing/ShareButton.js +160 -54
  46. package/dist/coding-tools/run-code.js +2 -1
  47. package/dist/coding-tools/sandbox/background.d.ts +1 -0
  48. package/dist/coding-tools/sandbox/background.js +8 -1
  49. package/dist/coding-tools/sandbox/executions-store.d.ts +2 -0
  50. package/dist/coding-tools/sandbox/executions-store.js +41 -3
  51. package/dist/collab/routes.d.ts +1 -1
  52. package/dist/index.d.ts +1 -1
  53. package/dist/localization/core-messages/ar-SA.d.ts +3 -0
  54. package/dist/localization/core-messages/ar-SA.js +541 -0
  55. package/dist/localization/core-messages/de-DE.d.ts +3 -0
  56. package/dist/localization/core-messages/de-DE.js +513 -0
  57. package/dist/localization/core-messages/en-US.d.ts +513 -0
  58. package/dist/localization/core-messages/en-US.js +513 -0
  59. package/dist/localization/core-messages/es-ES.d.ts +3 -0
  60. package/dist/localization/core-messages/es-ES.js +520 -0
  61. package/dist/localization/core-messages/fr-FR.d.ts +3 -0
  62. package/dist/localization/core-messages/fr-FR.js +520 -0
  63. package/dist/localization/core-messages/hi-IN.d.ts +3 -0
  64. package/dist/localization/core-messages/hi-IN.js +513 -0
  65. package/dist/localization/core-messages/ja-JP.d.ts +3 -0
  66. package/dist/localization/core-messages/ja-JP.js +506 -0
  67. package/dist/localization/core-messages/ko-KR.d.ts +3 -0
  68. package/dist/localization/core-messages/ko-KR.js +506 -0
  69. package/dist/localization/core-messages/pt-BR.d.ts +3 -0
  70. package/dist/localization/core-messages/pt-BR.js +520 -0
  71. package/dist/localization/core-messages/zh-CN.d.ts +3 -0
  72. package/dist/localization/core-messages/zh-CN.js +506 -0
  73. package/dist/localization/core-messages/zh-TW.d.ts +3 -0
  74. package/dist/localization/core-messages/zh-TW.js +506 -0
  75. package/dist/localization/core-messages.d.ts +524 -0
  76. package/dist/localization/core-messages.js +124 -0
  77. package/dist/localization/default-messages.d.ts +2 -0
  78. package/dist/localization/default-messages.js +2 -0
  79. package/dist/notifications/routes.d.ts +1 -1
  80. package/dist/observability/routes.d.ts +5 -5
  81. package/dist/resources/handlers.d.ts +1 -1
  82. package/dist/secrets/routes.d.ts +9 -9
  83. package/dist/server/agent-chat/plugin-options.d.ts +7 -2
  84. package/dist/server/agent-chat-plugin.d.ts +10 -0
  85. package/dist/server/agent-chat-plugin.js +144 -41
  86. package/dist/server/agent-engine-api-key-route.d.ts +1 -1
  87. package/dist/server/agent-run-context.d.ts +7 -1
  88. package/dist/server/agent-run-context.js +9 -2
  89. package/dist/server/agent-teams-run-queue.d.ts +3 -0
  90. package/dist/server/agent-teams.js +38 -9
  91. package/dist/server/index.d.ts +1 -1
  92. package/dist/server/request-context.d.ts +7 -0
  93. package/dist/server/request-context.js +15 -0
  94. package/docs/content/agent-surfaces.mdx +30 -0
  95. package/package.json +2 -2
@@ -0,0 +1,520 @@
1
+ const messages = {
2
+ "approval.alwaysAllow": "Toujours autoriser",
3
+ "approval.alwaysAllowHint": "Approuver et toujours autoriser cette commande exacte",
4
+ "approval.approve": "Approuver",
5
+ "approval.approved": "Approuvé. Nouvelle exécution de {{tool}}...",
6
+ "approval.denied": "Refusé. {{tool}} n’a pas été exécuté.",
7
+ "approval.deny": "Refuser",
8
+ "approval.question": "Approuver l’exécution de {{tool}} ?",
9
+ "auth.expiredDescription": "Votre session a peut-être expiré. Déconnectez-vous, puis reconnectez-vous pour rétablir la connexion.",
10
+ "auth.expiredTitle": "Session expirée",
11
+ "auth.logIn": "Se connecter",
12
+ "auth.logOut": "Se déconnecter",
13
+ "auth.refreshChat": "Actualiser le chat",
14
+ "auth.refreshDescription": "Vous êtes connecté, mais la connexion de ce chat doit être rétablie.",
15
+ "auth.refreshTitle": "La session du chat doit être actualisée",
16
+ "auth.requiredDescription": "Vous devez vous connecter pour utiliser l’agent.",
17
+ "auth.requiredTitle": "Authentification requise",
18
+ "commands.act": "Revenir au mode Action",
19
+ "commands.available": "Commandes disponibles",
20
+ "commands.clear": "Démarrer un nouveau chat (conserve le chat actuel dans l’historique)",
21
+ "commands.closeHelp": "Fermer l’aide",
22
+ "commands.help": "Afficher cette liste de commandes",
23
+ "commands.history": "Parcourir tous les chats",
24
+ "commands.mention": "Mentionner des fichiers, des agents ou des ressources",
25
+ "commands.new": "Identique à /clear",
26
+ "commands.plan": "Passer à la planification en lecture seule",
27
+ "common.agent": "Agent",
28
+ "common.cancel": "Annuler",
29
+ "common.collapse": "Réduire",
30
+ "common.connect": "Connecter",
31
+ "common.continue": "Continuer",
32
+ "common.copied": "Copié",
33
+ "common.copy": "Copier",
34
+ "common.details": "Détails",
35
+ "common.dismiss": "Ignorer",
36
+ "common.dismissError": "Ignorer l’erreur",
37
+ "common.expand": "Développer",
38
+ "common.loading": "Chargement...",
39
+ "common.no": "Non",
40
+ "common.retry": "Réessayer",
41
+ "common.save": "Enregistrer",
42
+ "common.saveFailed": "Échec de l’enregistrement",
43
+ "common.saveFailedStatus": "Échec de l’enregistrement ({{status}})",
44
+ "common.saving": "Enregistrement...",
45
+ "common.settings": "Paramètres",
46
+ "common.waiting": "En attente...",
47
+ "common.yes": "Oui",
48
+ "composer.attachmentError": "La pièce jointe n’a pas pu être traitée.",
49
+ "composer.dropToAttach": "Déposez pour joindre",
50
+ "composer.droppedFileError": "Impossible d’ajouter le fichier déposé. Essayez un autre format.",
51
+ "composer.openDesktop": "Ouvrez l’application de bureau pour utiliser ce chat.",
52
+ "composer.removeAttachment": "Supprimer {{name}}",
53
+ "composer.scrollToBottom": "Faire défiler jusqu’en bas",
54
+ "composer.stopResponse": "Arrêter la réponse",
55
+ "composer.subAgentReadOnly": "Envoyez des messages au chat de l’orchestrateur ; ce sous-agent s’exécute automatiquement",
56
+ "empty.loadingChat": "Chargement du chat...",
57
+ "empty.prompt": "Comment puis-je vous aider ?",
58
+ "error.afterDuration": "{{headline}} après {{duration}}",
59
+ "error.failed": "L’agent a rencontré une erreur",
60
+ "error.stopped": "L’agent s’est arrêté avant d’avoir terminé",
61
+ "header.switchToCli": "Passer à la CLI",
62
+ "history.active": "Actif",
63
+ "history.empty": "Aucun chat pour le moment",
64
+ "history.loadOlder": "Charger les chats précédents",
65
+ "history.noMatches": "Aucun chat correspondant",
66
+ "history.open": "Ouvrir",
67
+ "history.pinned": "Épinglé",
68
+ "history.search": "Rechercher des chats...",
69
+ "history.searching": "Recherche...",
70
+ "history.untitledChat": "Chat",
71
+ "history.yesterday": "Hier",
72
+ "limit.account": "votre compte",
73
+ "limit.descriptionAll": "L’agent a utilisé toutes les étapes disponibles. Continuez dans une nouvelle interaction ou augmentez d’abord la limite de {{scope}}.",
74
+ "limit.descriptionWithCount": "L’agent a utilisé {{formattedCount}} étapes. Continuez dans une nouvelle interaction ou augmentez d’abord la limite de {{scope}}.",
75
+ "limit.keepGoing": "Continuer",
76
+ "limit.maxSteps": "Nombre maximal d’étapes",
77
+ "limit.namedOrganization": "l’organisation {{organization}}",
78
+ "limit.organization": "l’organisation",
79
+ "limit.ownerOnly": "Seuls les propriétaires et les administrateurs de l’organisation peuvent modifier cette limite.",
80
+ "limit.reached": "Limite d’étapes atteinte",
81
+ "limit.saveAndContinue": "Enregistrer et continuer",
82
+ "message.actions": "Actions du message",
83
+ "message.copyMessage": "Copier le message",
84
+ "message.copyRequestId": "Copier l’ID de requête",
85
+ "message.requestIdUnavailable": "ID de requête indisponible",
86
+ "message.edit": "Modifier le message",
87
+ "message.forkChat": "Dupliquer le chat",
88
+ "message.missingFinal": "L’agent s’est arrêté sans envoyer de message final. Demandez-lui de continuer ou réessayez.",
89
+ "message.messages": "Liste des messages",
90
+ "message.nextBranch": "Branche suivante",
91
+ "message.noRestoreRun": "Ce message ne possède aucune exécution à restaurer.",
92
+ "message.previousBranch": "Branche précédente",
93
+ "message.regenerate": "Régénérer la réponse",
94
+ "message.restoreFailed": "Échec de la restauration ({{status}}).",
95
+ "message.restoreQuestion": "Restaurer jusqu’ici ?",
96
+ "message.restoreRequestFailed": "Échec de la demande de restauration.",
97
+ "message.restoring": "Restauration...",
98
+ "message.revertHere": "Revenir jusqu’ici",
99
+ "message.sentAt": "Envoyé à {{time}}",
100
+ "plan.act": "Agir",
101
+ "plan.implement": "Implémenter",
102
+ "plan.mode": "Mode Plan",
103
+ "plan.ready": "Plan prêt",
104
+ "plan.switchToAct": "Passer au mode Action",
105
+ "queue.count": "{{count}} en attente",
106
+ "queue.followUp": "Envoyer un message de suivi...",
107
+ "queue.followUpWithCount": "{{count}} en attente — envoyer un message de suivi...",
108
+ "queue.remove": "Retirer de la file d’attente",
109
+ "queue.sendNow": "Envoyer maintenant",
110
+ "queue.sendNowHint": "Envoyer maintenant (arrête la réponse actuelle)",
111
+ "recovery.connectingBuilder": "Connexion à Builder.io",
112
+ "recovery.copyDebug": "Copier les informations de débogage",
113
+ "recovery.copyFailed": "Échec de la copie",
114
+ "recovery.credentialRejected": "Les identifiants actuels de Builder.io ou du fournisseur de modèles ont été refusés. Reconnectez Builder.io, puis réessayez d’envoyer ce message.",
115
+ "recovery.diagnoseRetry": "Diagnostiquer et réessayer",
116
+ "recovery.forkDescription": "Dupliquez cette conversation dans un fil de discussion distinct.",
117
+ "recovery.forkFailed": "Impossible de dupliquer ce chat. Essayez de démarrer un nouveau chat.",
118
+ "recovery.forking": "Duplication...",
119
+ "recovery.newChatHint": "Si la nouvelle tentative produit la même erreur, démarrez une nouvelle session de chat et reprenez à partir des modifications déjà effectuées.",
120
+ "recovery.backgroundTimeout": "L’exécution précédente de l’agent en arrière-plan a atteint sa limite de temps avant de se terminer. Le travail partiel a été conservé ; continuez ou réessayez à partir d’ici.",
121
+ "recovery.noProgress": "L’exécution précédente de l’agent ne montrait plus de progression pendant la récupération et a été arrêtée avant de pouvoir continuer en boucle.",
122
+ "recovery.statusCheckFailed": "Impossible de joindre le serveur pour vérifier si l’agent travaille toujours. Renvoyez votre message pour réessayer.",
123
+ "recovery.streamEnded": "Le flux précédent de l’agent s’est terminé pendant la récupération. Continuez ou réessayez pour vous reconnecter à l’exécution.",
124
+ "recovery.reconnectBuilder": "Reconnecter Builder.io",
125
+ "selection.attached": "{{formattedCount}} caractères de la sélection joints",
126
+ "selection.clear": "Effacer le contexte de la sélection",
127
+ "setup.addOwnKeys": "Ajouter vos propres clés",
128
+ "setup.builderCredits": "Builder.io inclut des crédits gratuits, mais vous pouvez aussi utiliser votre propre clé API.",
129
+ "setup.builderOrOwnKeys": "Utilisez Builder.io (crédits gratuits) ou ajoutez les clés de votre propre fournisseur.",
130
+ "setup.connectAi": "Connecter l’IA",
131
+ "setup.connectBuilder": "Connecter Builder.io",
132
+ "setup.connectPlaceholder": "Connectez l’IA pour commencer à discuter...",
133
+ "setup.connectToChat": "Connecter l’IA au chat",
134
+ "setup.connectToStart": "Connectez l’IA pour commencer à discuter",
135
+ "setup.connected": "Connecté",
136
+ "setup.connectedOrganization": "Connecté — {{organization}}",
137
+ "setup.connectedTo": "Connecté à {{organization}}",
138
+ "setup.freeCredits": "Crédits gratuits pour les LLM, l’hébergement et bien plus encore — aucune clé API requise",
139
+ "setup.keyProvider": "Fournisseur de clés API",
140
+ "setup.keySaveFailed": "Impossible d’enregistrer la clé.",
141
+ "setup.storedSecurely": "Stocké de façon sécurisée pour cette application uniquement.",
142
+ "status.resuming": "Reprise",
143
+ "status.stillWorking": "Toujours en cours",
144
+ "status.thinking": "Réflexion",
145
+ "status.working": "Travail en cours",
146
+ "shell.chat": "Chat",
147
+ "shell.loadingTerminal": "Chargement du terminal...",
148
+ "shell.toggleAgent": "Afficher ou masquer l’agent",
149
+ "status.contactingModel": "Connexion au modèle",
150
+ "status.starting": "Démarrage de {{activity}}...",
151
+ "status.preparing": "Préparation de {{activity}}...",
152
+ "status.writing": "Écriture de {{activity}}...",
153
+ "status.stillGenerating": "Génération de {{activity}} toujours en cours",
154
+ "tabs.allChats": "Tous les chats",
155
+ "tabs.closeTab": "Fermer l’onglet",
156
+ "tabs.main": "Principal",
157
+ "tabs.newChat": "Nouveau chat",
158
+ "tabs.subAgent": "Sous-agent...",
159
+ "tool.askedAgent": "{{agent}} a été consulté",
160
+ "tool.askingAgent": "Consultation de {{agent}}...",
161
+ "tool.elapsed": "Temps écoulé : {{duration}}",
162
+ "tool.askingAgentFailed": "Erreur lors de la consultation de {{agent}}",
163
+ "tool.input": "Entrée",
164
+ "tool.inputWithLabel": "Entrée - {{label}}",
165
+ "tool.interrupted": "Interrompu avant la confirmation de la fin de l’opération ; celle-ci a peut-être abouti ou non. Vérifiez avant de réessayer.",
166
+ "tool.longRunning": "Toujours en cours. Les mises à jour importantes peuvent prendre une ou deux minutes.",
167
+ "tool.ranTools": "{{count}} outils exécutés",
168
+ "tool.rawOutput": "Sortie brute de l’appel à l’outil {{tool}}",
169
+ "tool.repeated": "Répété {{count}} fois",
170
+ "tool.result": "Résultat",
171
+ "tool.subAgentTask": "Tâche du sous-agent",
172
+ "tool.thought": "Réflexion",
173
+ "tool.thoughtFor": "Réflexion pendant {{duration}}",
174
+ "tool.viewOutput": "Afficher la sortie de {{tool}}",
175
+ "tool.worked": "A travaillé",
176
+ "tool.workedFor": "A travaillé pendant {{duration}}",
177
+ "widget.chart": "Graphique",
178
+ "widget.dataChart": "Graphique de données",
179
+ "widget.dataInsights": "Informations sur les données",
180
+ "widget.dataTable": "Tableau de données",
181
+ "widget.downloadCsv": "Télécharger le CSV",
182
+ "widget.loadingToolResult": "Chargement du résultat de l’outil",
183
+ "widget.noRows": "Aucune ligne",
184
+ "widget.points": "{{formattedCount}} points",
185
+ "widget.rows": "{{formattedCount}} lignes",
186
+ "widget.sampled": "échantillonné",
187
+ "commands.clearShort": "Démarrer une nouvelle discussion",
188
+ "commands.newShort": "Démarrer une nouvelle discussion",
189
+ "composer.actDescription": "Utiliser les outils et apporter les modifications approuvées",
190
+ "composer.activeAppContext": "Contexte d'application actif",
191
+ "composer.actMode": "Mode agir",
192
+ "composer.add": "Ajouter...",
193
+ "composer.addOwnKeys": "Clés personnalisées",
194
+ "composer.assets.closePicker": "Fermer le sélecteur d'images",
195
+ "composer.assets.contextTitle": "Image : {{title}}",
196
+ "composer.assets.generatedImage": "Image générée",
197
+ "composer.assets.generateImage": "Générer une image",
198
+ "composer.assets.invalidUrl": "L'URL du sélecteur d'images configurée n'est pas valide.",
199
+ "composer.assets.loadingPicker": "Chargement du sélecteur Assets",
200
+ "composer.assets.openPicker": "Ouvrir le sélecteur d'images Assets",
201
+ "composer.assets.openSecurely": "Ouvrez Assets dans un nouvel onglet pour vous connecter et choisir une image en toute sécurité.",
202
+ "composer.assets.pickerTitle": "Sélecteur d'images Assets",
203
+ "composer.auto": "Auto",
204
+ "composer.builderModelCredits": "Crédits gratuits pour Claude, OpenAI et Gemini",
205
+ "composer.chatGptSubscription": "Abonnement à ChatGPT",
206
+ "composer.closePreview": "Fermer l'aperçu",
207
+ "composer.configureProviderKeys": "Configurer Anthropic, OpenAI ou un autre fournisseur",
208
+ "composer.connectAbove": "Connectez un fournisseur d’IA ci-dessus pour continuer...",
209
+ "composer.connectBuilder": "Connecter Builder.io",
210
+ "composer.connectingBuilder": "Connexion à Builder.io…",
211
+ "composer.costHigher": "Coût plus élevé",
212
+ "composer.costLower": "Coût inférieur",
213
+ "composer.costMedium": "Coût moyen",
214
+ "composer.createAutomation": "Créer une automatisation",
215
+ "composer.createAutomationPrefix": "Créer une automatisation : ",
216
+ "composer.createExtension": "Créer une extension",
217
+ "composer.createExtensionPrefix": "Créer une extension : ",
218
+ "composer.createSkill": "Créer une compétence",
219
+ "composer.createSkillPrefix": "Créer une compétence : ",
220
+ "composer.currentDraft": "Brouillon actuel",
221
+ "composer.defaultModel": "Modèle par défaut",
222
+ "composer.describeAutomation": "Décrivez ce que vous souhaitez automatiser...",
223
+ "composer.describeExtension": "Décrivez l'extension interactive que vous souhaitez créer...",
224
+ "composer.describeSchedule": "Décrivez ce qui devrait arriver et quand...",
225
+ "composer.describeSkill": "Décrivez la compétence que vous souhaitez créer...",
226
+ "composer.documentTooLarge": "« {{name}} » fait {{size}} MB. {{label}} sont limités à {{maxSize}} MB afin de respecter la taille maximale des messages. Réduisez la taille du fichier ou divisez-le en plusieurs parties.",
227
+ "composer.file": "fichier",
228
+ "composer.imageModel": "Modèle d'image",
229
+ "composer.imagePreview": "Aperçu de l'image",
230
+ "composer.loadingModels": "Chargement des modèles",
231
+ "composer.loadingModelsProgress": "Chargement des modèles…",
232
+ "composer.menu.createAutomation": "Créer une automatisation",
233
+ "composer.menu.createAutomationDescription": "Configurer une règle du type « si X, faire Y »",
234
+ "composer.menu.createExtension": "Créer une extension",
235
+ "composer.menu.createExtensionDescription": "Créer une extension de mini-application",
236
+ "composer.menu.createSkill": "Créer une compétence",
237
+ "composer.menu.createSkillDescription": "Apprenez à l'agent une nouvelle capacité",
238
+ "composer.menu.generateImage": "Générer une image",
239
+ "composer.menu.generateImageDescription": "Ouvrir le sélecteur d'images Assets",
240
+ "composer.menu.integrations": "Intégrations",
241
+ "composer.menu.integrationsDescription": "Connecter les outils et services à l'agent",
242
+ "composer.menu.scheduleTask": "Planifier une tâche",
243
+ "composer.menu.scheduleTaskDescription": "Exécuter quelque chose selon un calendrier",
244
+ "composer.menu.uploadFile": "Télécharger le fichier",
245
+ "composer.menu.uploadFileDescription": "Images, PDFs, texte/code, JSON, CSV",
246
+ "composer.messageAgent": "Écrire à l’agent...",
247
+ "composer.model": "Modèle",
248
+ "composer.needsApiKey": "nécessite une clé API",
249
+ "composer.pageTitle": "Titre de la page",
250
+ "composer.pastedImageError": "Impossible de joindre l'image collée. Essayez un format différent.",
251
+ "composer.pastedTextError": "Impossible de joindre le texte collé.",
252
+ "composer.plan": "Plan",
253
+ "composer.planDescription": "Recherche et approbation en lecture seule en premier",
254
+ "composer.planDesktopRequired": "Ouvrez Agent Native Desktop pour utiliser le mode Plan.",
255
+ "composer.previewAttachment": "Aperçu {{name}}",
256
+ "composer.reasoning": "Raisonnement",
257
+ "composer.reasoningEffort.auto": "Auto",
258
+ "composer.reasoningEffort.high": "Élevé",
259
+ "composer.reasoningEffort.low": "Faible",
260
+ "composer.reasoningEffort.max": "Max.",
261
+ "composer.reasoningEffort.medium": "Moyen",
262
+ "composer.reasoningEffort.minimal": "Minimal",
263
+ "composer.reasoningEffort.none": "Aucun",
264
+ "composer.reasoningEffort.xhigh": "Très élevé",
265
+ "composer.reasoningExtraHighShort": "Très haut",
266
+ "composer.reasoningMediumShort": "Moy.",
267
+ "composer.reasoningMinimalShort": "Min.",
268
+ "composer.removeContext": "Supprimer le contexte {{name}}",
269
+ "composer.removeReference": "Supprimer la référence {{name}}",
270
+ "composer.route": "Acheminement",
271
+ "composer.scheduleTask": "Planifier une tâche",
272
+ "composer.scheduleTaskPrefix": "Créer une tâche récurrente : ",
273
+ "composer.selectedReferences": "Références sélectionnées",
274
+ "composer.sendMessage": "Envoyer un message",
275
+ "composer.skill.added": 'Compétence "{{name}}" ajoutée',
276
+ "composer.skill.back": "Retour",
277
+ "composer.skill.content": "Contenu",
278
+ "composer.skill.createDescription": "Décrivez une compétence et laissez l'agent la rédiger",
279
+ "composer.skill.createNew": "Créer une nouvelle compétence",
280
+ "composer.skill.name": "Nom de la compétence",
281
+ "composer.skill.review": "Vérifiez le contenu de {{name}} avant de l'enregistrer.",
282
+ "composer.skill.savedAt": "Enregistré dans",
283
+ "composer.skill.saveFailed": "Échec de l'enregistrement du fichier de compétences",
284
+ "composer.skill.selectedFile": "le fichier sélectionné",
285
+ "composer.skill.uploadDescription": "Importer un fichier SKILL.md existant",
286
+ "composer.skill.uploadFailedStatus": "Échec du téléchargement ({{status}})",
287
+ "composer.skill.uploadFile": "Télécharger le fichier de compétences",
288
+ "composer.upload": "Télécharger",
289
+ "composer.uploadFailed": "Impossible de télécharger le fichier sélectionné.",
290
+ "composer.useAttachedContext": "Utilisez le contexte ci-joint.",
291
+ "mentions.commands": "Commandes",
292
+ "mentions.learnMore": "En savoir plus",
293
+ "mentions.noResults": "Aucun résultat trouvé",
294
+ "mentions.noSkills": "Aucune compétence disponible",
295
+ "mentions.sections.agents": "Agents",
296
+ "mentions.sections.connectedAgents": "Agents connectés",
297
+ "mentions.sections.files": "Fichiers",
298
+ "mentions.sections.other": "Autre",
299
+ "mentions.skills": "Compétences",
300
+ "mentions.typeToSearch": "Tapez pour rechercher...",
301
+ "pastedText.characters": "{{formattedCount}} caractères",
302
+ "pastedText.characters_many": "{{formattedCount}} caractères",
303
+ "pastedText.characters_one": "{{formattedCount}} caractère",
304
+ "pastedText.characters_other": "{{formattedCount}} caractères",
305
+ "pastedText.lines": "{{formattedCount}} lignes",
306
+ "pastedText.lines_many": "{{formattedCount}} lignes",
307
+ "pastedText.lines_one": "{{formattedCount}} ligne",
308
+ "pastedText.lines_other": "{{formattedCount}} lignes",
309
+ "pastedText.preview": "Aperçu du texte collé",
310
+ "pastedText.remove": "Supprimer le texte collé",
311
+ "pastedText.title": "Texte collé",
312
+ "voice.dictation.cancel": "Annuler (Esc)",
313
+ "voice.dictation.cancelRecording": "Annuler l'enregistrement",
314
+ "voice.dictation.start": "Dicter ({{shortcut}})",
315
+ "voice.dictation.stopRecording": "Arrêter l'enregistrement",
316
+ "voice.dictation.transcribing": "Transcription en cours…",
317
+ "voiceMode.connectBuilder": "Connecter Builder.io",
318
+ "voiceMode.end": "Terminer le mode vocal",
319
+ "voiceMode.entryButtonLabel": "Utiliser un micro",
320
+ "voiceMode.errors.channelDisconnected": "Le canal de commande vocale en temps réel s'est déconnecté.",
321
+ "voiceMode.errors.connectionFailed": "La connexion vocale en temps réel a échoué.",
322
+ "voiceMode.errors.connectionTimedOut": "La connexion vocale en temps réel a expiré.",
323
+ "voiceMode.errors.offerFailed": "Le navigateur n'a pas créé d'offre audio.",
324
+ "voiceMode.errors.responseFailed": "OpenAI n'a pas pu terminer la réponse vocale.",
325
+ "voiceMode.errors.sessionFailed": "La session vocale en temps réel a rencontré une erreur.",
326
+ "voiceMode.errors.unsupported": "Ce navigateur ne prend pas en charge les conversations vocales en temps réel.",
327
+ "voiceMode.hideChat": "Masquer la discussion",
328
+ "voiceMode.keepDictating": "Dicter",
329
+ "voiceMode.promptDescription": "Le mode vocal continue d’écouter pendant que l’agent navigue et effectue des actions.",
330
+ "voiceMode.promptTitle": "Utilisez votre voix",
331
+ "voiceMode.rememberPreference": "Mémoriser ma préférence",
332
+ "voiceMode.settings.autoLanguage": "Auto",
333
+ "voiceMode.settings.defaultMicrophone": "Valeur par défaut du système",
334
+ "voiceMode.settings.intelligence": "Intelligence",
335
+ "voiceMode.settings.intelligenceLevels.balanced": "Équilibré",
336
+ "voiceMode.settings.intelligenceLevels.deep": "Profond",
337
+ "voiceMode.settings.intelligenceLevels.instant": "Instantané",
338
+ "voiceMode.settings.language": "Langue",
339
+ "voiceMode.settings.languages.de": "Allemand",
340
+ "voiceMode.settings.languages.en": "Anglais",
341
+ "voiceMode.settings.languages.es": "Espagnol",
342
+ "voiceMode.settings.languages.fr": "Français",
343
+ "voiceMode.settings.languages.it": "Italien",
344
+ "voiceMode.settings.languages.ja": "Japonais",
345
+ "voiceMode.settings.languages.ko": "Coréen",
346
+ "voiceMode.settings.languages.pt": "Portugais",
347
+ "voiceMode.settings.languages.zh": "Chinois",
348
+ "voiceMode.settings.microphone": "Microphone",
349
+ "voiceMode.settings.microphoneNumber": "Micro {{number}}",
350
+ "voiceMode.settings.microphoneSwitchFailed": "Impossible de changer de microphone. Votre microphone actuel est toujours actif.",
351
+ "voiceMode.settings.voiceChangePending": "Votre nouvelle voix s'appliquera la prochaine fois que vous démarrerez le mode vocal.",
352
+ "voiceMode.settings.voiceDescriptions.alloy": "Équilibré et neutre",
353
+ "voiceMode.settings.voiceDescriptions.ash": "Doux et confiant",
354
+ "voiceMode.settings.voiceDescriptions.ballad": "Chaleureux et expressif",
355
+ "voiceMode.settings.voiceDescriptions.cedar": "Clair et fondé",
356
+ "voiceMode.settings.voiceDescriptions.coral": "Convivial et lumineux",
357
+ "voiceMode.settings.voiceDescriptions.echo": "Clair et direct",
358
+ "voiceMode.settings.voiceDescriptions.marin": "Chaleureux et naturel",
359
+ "voiceMode.settings.voiceDescriptions.sage": "Calme et réfléchi",
360
+ "voiceMode.settings.voiceDescriptions.shimmer": "Léger et optimiste",
361
+ "voiceMode.settings.voiceDescriptions.verse": "Expressif et polyvalent",
362
+ "voiceMode.settings.voiceStyle": "Style de voix",
363
+ "voiceMode.setupDescription": "Connectez Builder.io pour utiliser la voix gérée avec des crédits gratuits, ou ajoutez vos propres clés.",
364
+ "voiceMode.setupTitle": "Configurer le mode vocal",
365
+ "voiceMode.showChat": "Afficher le chat",
366
+ "voiceMode.start": "Voix en temps réel",
367
+ "voiceMode.startWithOpenAiKey": "Démarrer avec une clé OpenAI",
368
+ "voiceMode.status.connecting": "Connexion en cours",
369
+ "voiceMode.status.ending": "Fin du mode vocal",
370
+ "voiceMode.status.error": "Le mode vocal nécessite votre attention",
371
+ "voiceMode.status.listening": "À l’écoute",
372
+ "voiceMode.status.speaking": "Parle",
373
+ "voiceMode.status.working": "Travaille",
374
+ "voiceMode.useOpenAiKey": "Ajoutez vos propres clés",
375
+ "voiceMode.voiceSettings": "Paramètres vocaux",
376
+ "duration.hourShort": "h",
377
+ "duration.minuteShort": "m",
378
+ "duration.secondShort": "s",
379
+ "limit.descriptionWithCount_one": "L’agent a utilisé {{formattedCount}} étape. Continuez dans une nouvelle interaction ou augmentez d’abord la limite de {{scope}}.",
380
+ "limit.descriptionWithCount_many": "L’agent a utilisé {{formattedCount}} étapes. Continuez dans une nouvelle interaction ou augmentez d’abord la limite de {{scope}}.",
381
+ "limit.descriptionWithCount_other": "L’agent a utilisé {{formattedCount}} étapes. Continuez dans une nouvelle interaction ou augmentez d’abord la limite de {{scope}}.",
382
+ "selection.attached_one": "{{formattedCount}} caractère de sélection joint",
383
+ "selection.attached_many": "{{formattedCount}} caractères de la sélection joints",
384
+ "selection.attached_other": "{{formattedCount}} caractères de la sélection joints",
385
+ "tool.ranTools_one": "{{count}} outil exécuté",
386
+ "tool.ranTools_many": "{{count}} outils exécutés",
387
+ "tool.ranTools_other": "{{count}} outils exécutés",
388
+ "widget.points_one": "{{formattedCount}} point",
389
+ "widget.points_many": "{{formattedCount}} points",
390
+ "widget.points_other": "{{formattedCount}} points",
391
+ "widget.rows_one": "{{formattedCount}} ligne",
392
+ "widget.rows_many": "{{formattedCount}} lignes",
393
+ "widget.rows_other": "{{formattedCount}} lignes",
394
+ "errorMessages.agentConnection": "La connexion de l'agent a été interrompue. Vérifiez votre connexion et réessayez.",
395
+ "errorMessages.builderAuthentication": "Builder a rejeté les identifiants connectés. Reconnectez Builder.io dans les paramètres, puis réessayez.",
396
+ "errorMessages.builderModelUnauthorized": "Le fournisseur de ce modèle a rejeté la demande. Choisissez un autre modèle, puis réessayez.",
397
+ "errorMessages.errorPrefix": "Erreur : {{message}}",
398
+ "errorMessages.gatewayNoDetails": "La passerelle du modèle n’a fourni aucun détail sur l’erreur et la discussion n’a pas pu reprendre. Patientez un instant et réessayez. Si le problème persiste, démarrez une nouvelle discussion.",
399
+ "errorMessages.inactivityTimeout": "La connexion à l’agent a expiré avant la fin. Vous pouvez poursuivre à partir du travail partiel ou réessayer.",
400
+ "errorMessages.invalidToolSchema": "Le schéma d’un outil n’était pas valide. Le modèle a donc rejeté la demande avant son démarrage. Vous pouvez ignorer cet outil et réessayer.",
401
+ "errorMessages.noProviderConnected": "Aucun fournisseur de LLM n’est connecté. Ouvrez « Gérer l’agent » → « LLM » pour cette application, puis connectez Builder.io ou ajoutez une clé de fournisseur.",
402
+ "errorMessages.openBuilderSpaceSettings": "Ouvrir les paramètres de l’espace Builder",
403
+ "errorMessages.providerAuthentication": "Le fournisseur du modèle a rejeté la clé API enregistrée. Mettez-la à jour dans Paramètres → Intégrations → Clés API, puis réessayez.",
404
+ "errorMessages.providerConfiguration": "Ce modèle ne peut pas utiliser d’outils avec les paramètres actuels. Changez de modèle dans les paramètres, puis réessayez.",
405
+ "errorMessages.providerHtml": "Le fournisseur a renvoyé une page d'erreur HTML.",
406
+ "errorMessages.providerNetwork": "Le fournisseur du modèle est injoignable. Vérifiez votre connexion et réessayez.",
407
+ "errorMessages.providerRateLimit": "Le fournisseur du modèle limite temporairement cette discussion. Patientez un instant, puis réessayez.",
408
+ "errorMessages.startNewChat": "Démarrer une nouvelle discussion",
409
+ "errorMessages.upgradeAtBuilder": "Mettre à niveau sur Builder.io",
410
+ "feedback.inaccurate": "Inexact",
411
+ "feedback.notHelpful": "Peu utile",
412
+ "feedback.thumbsDown": "Pouce vers le bas",
413
+ "feedback.thumbsUp": "Pouce vers le haut",
414
+ "feedback.tooSlow": "Trop lent",
415
+ "feedback.wrongTool": "Mauvais outil",
416
+ "contextMeter.ariaLabel": "Contexte {{percent}} %, {{totalTokens}}{{breakdown}}. Ouvrir l’analyse du contexte.",
417
+ "contextMeter.breakdown": " au total : {{systemTokens}} système + {{conversationTokens}} conversation",
418
+ "contextMeter.summary": "Contexte {{percent}}% · {{totalTokens}}",
419
+ "contextMeter.summaryBreakdown": " ({{systemTokens}} système + {{conversationTokens}} conversation)",
420
+ "contextXray.advisory": "Indicatif",
421
+ "contextXray.conversation": "{{count}} conversation",
422
+ "contextXray.currentStatus": "État actuel",
423
+ "contextXray.estimated": "estimé",
424
+ "contextXray.estimatedPrefix": " estimé",
425
+ "contextXray.estimatedSuffix": " · estimé",
426
+ "contextXray.evict": "Retirer",
427
+ "contextXray.evicted": "{{count}} retirés",
428
+ "contextXray.evictSegment": "Retirer le segment",
429
+ "contextXray.framework": "Framework",
430
+ "contextXray.free": "{{count}} libres",
431
+ "contextXray.governance.inherited": "Hérité",
432
+ "contextXray.governance.required": "Requis",
433
+ "contextXray.governance.user": "Votre contexte",
434
+ "contextXray.groups.conversation": "Conversation",
435
+ "contextXray.groups.evicted": "Retirés",
436
+ "contextXray.groups.filesRead": "Fichiers lus",
437
+ "contextXray.groups.pinned": "Épinglés",
438
+ "contextXray.groups.taskInstructions": "Tâche et instructions",
439
+ "contextXray.groups.thinking": "Réflexion",
440
+ "contextXray.groups.toolResults": "Résultats des outils",
441
+ "contextXray.inspect": "Inspecter {{name}}",
442
+ "contextXray.list": "Liste",
443
+ "contextXray.loading": "Chargement du contexte...",
444
+ "contextXray.map": "Carte",
445
+ "contextXray.messageIndex": "index des messages",
446
+ "contextXray.noActiveSegments": "Aucun segment actif",
447
+ "contextXray.panelTitle": "Analyse du contexte",
448
+ "contextXray.partIndex": "index des parties",
449
+ "contextXray.pin": "Épingler",
450
+ "contextXray.pinned": "{{count}} épinglés",
451
+ "contextXray.pinSegment": "Épingler le segment",
452
+ "contextXray.protectedDescription": "Ce segment fait partie du tour actif et ne peut pas encore être retiré.",
453
+ "contextXray.protectedDuringTurn": "Protégé pendant le tour actif",
454
+ "contextXray.recordEvictionIntent": "Enregistrer l’intention de retrait",
455
+ "contextXray.restore": "Restaurer",
456
+ "contextXray.restoreSegment": "Restaurer le segment",
457
+ "contextXray.segment": "Segment",
458
+ "contextXray.showList": "Afficher la liste contextuelle",
459
+ "contextXray.showMap": "Afficher la carte contextuelle",
460
+ "contextXray.status.active": "Actif",
461
+ "contextXray.status.evicted": "Retiré",
462
+ "contextXray.status.pinned": "Épinglé",
463
+ "contextXray.status.protected": "Protégé",
464
+ "contextXray.status.summarized": "Résumé",
465
+ "contextXray.system": "{{count}} système",
466
+ "contextXray.systemOrdered": "Système · ordonné, non retirable",
467
+ "contextXray.tokens": "jetons",
468
+ "contextXray.tokensShare": "jetons · {{share}} %",
469
+ "contextXray.unpin": "Désépingler",
470
+ "contextXray.unpinSegment": "Désépingler le segment",
471
+ "share.add": "Ajouter",
472
+ "share.addPeopleEmail": "Ajouter des personnes par email",
473
+ "share.addPeopleOrganization": "Ajouter des personnes de votre organisation",
474
+ "share.admin": "Administrateur",
475
+ "share.adminDescription": "Peut modifier et gérer l'accès",
476
+ "share.commenter": "Commentateur",
477
+ "share.commenterDescription": "Peut consulter et ajouter des commentaires",
478
+ "share.advanced": "Avancé",
479
+ "share.advancedAccess": "Accès avancé",
480
+ "share.advancedDescription": "Contrôlez la façon dont l’accès à l’organisation apparaît dans la recherche.",
481
+ "share.copied": "Copié",
482
+ "share.copy": "Copier",
483
+ "share.editor": "Éditeur",
484
+ "share.editorDescription": "Peut modifier",
485
+ "share.generalAccess": "Accès général",
486
+ "share.hideInSearch": "Masquer dans la recherche",
487
+ "share.linkCanStillOpen": "Les personnes disposant du lien peuvent toujours l'ouvrir.",
488
+ "share.loading": "Chargement...",
489
+ "share.loadMore": "Afficher plus",
490
+ "share.loadPeopleFailed": "Impossible de charger des personnes.",
491
+ "share.noAccess": "Personne n'y a encore accès.",
492
+ "share.noMatches": "Aucun résultat.",
493
+ "share.noPeopleFound": "Aucune personne trouvée.",
494
+ "share.notifyPeople": "Notifier les personnes",
495
+ "share.message": "Message",
496
+ "share.addMessage": "Ajouter un message",
497
+ "share.hideMessage": "Masquer le message",
498
+ "share.messagePlaceholder": "Ajouter une courte note (facultatif)",
499
+ "share.organization": "Organisation",
500
+ "share.organizationDescription": "Tous les membres de votre organisation peuvent consulter",
501
+ "share.owner": "Propriétaire",
502
+ "share.peopleWithAccess": "Personnes ayant accès",
503
+ "share.private": "Privé",
504
+ "share.privateDescription": "Seules les personnes disposant d’un accès peuvent consulter",
505
+ "share.public": "Public",
506
+ "share.publicDescription": "Toute personne disposant du lien peut consulter",
507
+ "share.remove": "Retirer",
508
+ "share.role": "Rôle",
509
+ "share.searching": "Recherche en cours...",
510
+ "share.share": "Partager",
511
+ "share.shareLink": "Partager le lien",
512
+ "share.shareOptions": "Options de partage",
513
+ "share.titleWithResource": 'Partager "{{title}}"',
514
+ "share.titleWithType": "Partager {{type}}",
515
+ "share.triggerWithVisibility": "Partager ({{visibility}})",
516
+ "share.unknownPerson": "Personne inconnue",
517
+ "share.viewer": "Lecteur",
518
+ "share.viewerDescription": "Peut consulter",
519
+ };
520
+ export default messages;
@@ -0,0 +1,3 @@
1
+ import type { AgentChatTranslation } from "../core-messages.js";
2
+ declare const messages: AgentChatTranslation;
3
+ export default messages;