@openchambery/web 1.18.2-beta.2 → 1.18.2-beta.21

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 (148) hide show
  1. package/dist/assets/{AgentAvatar-B2kZjgaf.js → AgentAvatar-B4fj9PIe.js} +1 -1
  2. package/dist/assets/{AssistantView-DvoyOGkx.js → AssistantView-C00aiEHK.js} +1 -1
  3. package/dist/assets/{ChatContainer-D6yfuigV.js → ChatContainer-BDFeDKu-.js} +39 -39
  4. package/dist/assets/{DiagramView-MGGo9iME.js → DiagramView-CUfSFI3e.js} +1 -1
  5. package/dist/assets/{FadeInOnReveal-aeWlaqVB.js → FadeInOnReveal-CKKU6fKI.js} +1 -1
  6. package/dist/assets/{Icon-AXqa-fYB.js → Icon-DiIuWOuC.js} +1 -1
  7. package/dist/assets/{MarkdownRendererImpl-jVOkZkyX.js → MarkdownRendererImpl-Cen6E9Lj.js} +2 -2
  8. package/dist/assets/{MobileDetailNavigation-Q2IzHqGA.js → MobileDetailNavigation-DILi0tN7.js} +1 -1
  9. package/dist/assets/{MobileShareBridge-apXM34Lb.js → MobileShareBridge-PZMRiieI.js} +1 -1
  10. package/dist/assets/MobileSurface-BLYcR0tO.js +2 -0
  11. package/dist/assets/{MultiRunWindow-B-l_O-bd.js → MultiRunWindow-D_2mWZyv.js} +1 -1
  12. package/dist/assets/{OnboardingScreen-CUsgwt4y.js → OnboardingScreen-CYeRZznl.js} +1 -1
  13. package/dist/assets/{OverlayScrollbar-D6NySAxi.js → OverlayScrollbar-BgMLtMIq.js} +1 -1
  14. package/dist/assets/SettingsView-CbDBfQp1.js +25 -0
  15. package/dist/assets/{SettingsWindow-DfVgTQ4I.js → SettingsWindow-Br7XLcSd.js} +1 -1
  16. package/dist/assets/{TerminalView-DNyjfkvT.js → TerminalView-CM5jRKlj.js} +1 -1
  17. package/dist/assets/{ToolOutputDialog-DLG1iThm.js → ToolOutputDialog-D3U6aTZ4.js} +1 -1
  18. package/dist/assets/appThemeRegistry-CDxBJNNB.js +2 -0
  19. package/dist/assets/assistant-guide-hero-BeUHQcxE.jpg +0 -0
  20. package/dist/assets/{button-CDvMVaiO.js → button-DaAoVF4X.js} +1 -1
  21. package/dist/assets/{clipboard-BW7nk_Cx.js → clipboard-BnElHSnO.js} +1 -1
  22. package/dist/assets/{collapsible-C2aamDvD.js → collapsible-BmuQu0dq.js} +1 -1
  23. package/dist/assets/{context-menu-BaxmodD8.js → context-menu-DBOMervd.js} +1 -1
  24. package/dist/assets/{desktopHosts-CBoBpJ1Z.js → desktopHosts-ZK_vkdzL.js} +1 -1
  25. package/dist/assets/{desktopRelayRestore-l2R9muux.js → desktopRelayRestore-CewM6-g5.js} +1 -1
  26. package/dist/assets/{diagram-CEon0BQs.js → diagram-DAE4CZy2.js} +1 -1
  27. package/dist/assets/{dialog-DjYfj1Sn.js → dialog-COrLBm9O.js} +1 -1
  28. package/dist/assets/{es-5Lhudh0n.js → es-DIVYdoxi.js} +1 -1
  29. package/dist/assets/{fileQueries-CE_DaZWQ.js → fileQueries-CmWYnRVz.js} +1 -1
  30. package/dist/assets/{fr-Q_UhFmKT.js → fr-CNTlVypq.js} +2 -2
  31. package/dist/assets/{gitApi-BYxg_qGJ.js → gitApi-BQT3QXD2.js} +1 -1
  32. package/dist/assets/gitApiHttp-BxGAFLTf.js +2 -0
  33. package/dist/assets/{input-k9DGGyZ6.js → input-XiL2-2gG.js} +1 -1
  34. package/dist/assets/insertionBoundaries-9a0RuIDc.js +1 -0
  35. package/dist/assets/{ja-CzMPz7bT.js → ja-C_eW5ZM8.js} +1 -1
  36. package/dist/assets/{ko-B-EslUsR.js → ko-CE3cOv7v.js} +1 -1
  37. package/dist/assets/{main-LDphyc-v.js → main-BGfX81Y9.js} +20 -20
  38. package/dist/assets/{main-CO6z5yRB.js → main-CEqSDnE2.js} +2 -2
  39. package/dist/assets/{markdown-worker-DkeWiER6.js → markdown-worker-BDyY0vt6.js} +1 -1
  40. package/dist/assets/{markdownTheme-DNT93i5L.js → markdownTheme-D-aLQZaM.js} +1 -1
  41. package/dist/assets/{miniChat-BZQwTZpx.js → miniChat-CKucSAhg.js} +2 -2
  42. package/dist/assets/mobile-C4bTWKry.js +2 -0
  43. package/dist/assets/{multirun-ZlwlkIy5.js → multirun-DeNtSkgb.js} +1 -1
  44. package/dist/assets/{persistence-DPNMIbF5.js → persistence-D1lIuyqO.js} +1 -1
  45. package/dist/assets/{pl-Dnea6Ppc.js → pl-BZKZOE99.js} +1 -1
  46. package/dist/assets/projectMeta-BunN9pH5.js +3 -0
  47. package/dist/assets/{pt-BR-Ca6QTem7.js → pt-BR-DHDgp8S3.js} +1 -1
  48. package/dist/assets/{radio-CJuhbQ5a.js → radio-Bziafaje.js} +1 -1
  49. package/dist/assets/renderElectronMiniChatApp-D8-FDgWE.js +2 -0
  50. package/dist/assets/renderMobileApp-CdU0aJ-e.js +23 -0
  51. package/dist/assets/{runtimeConfig-BtWi74Pm.js → runtimeConfig-BXCt7ZsQ.js} +1 -1
  52. package/dist/assets/runtimeEndpointReset-CK1GhIsm.js +145 -0
  53. package/dist/assets/{sortable-tabs-strip-D8JHUI0z.js → sortable-tabs-strip-pWlBorwQ.js} +1 -1
  54. package/dist/assets/src-8kQFmtjw.css +2 -0
  55. package/dist/assets/{store-wa1ersRf.js → store-CUWqzRt7.js} +2 -2
  56. package/dist/assets/{terminalApi-tB3qLcfa.js → terminalApi-DpiAJlil.js} +1 -1
  57. package/dist/assets/{tooltip-DMNR5rN0.js → tooltip-BLugzWq-.js} +1 -1
  58. package/dist/assets/{uk-xGc9Pzge.js → uk-CfQK6cz1.js} +1 -1
  59. package/dist/assets/{url-7MqoLs9X.js → url-DMs_PgIC.js} +1 -1
  60. package/dist/assets/useAppFontEffects-IEUQDvE8.js +7 -0
  61. package/dist/assets/useDesktopWindowControlsLayout-MlqJX89k.js +1 -0
  62. package/dist/assets/{useEffectiveDirectory-aUC3zzl_.js → useEffectiveDirectory-GbhkdO6m.js} +1 -1
  63. package/dist/assets/{useFontPreferences-CIurCeNv.js → useFontPreferences-92Qg-98H.js} +1 -1
  64. package/dist/assets/useMobileNavigationStore-DQHF_ETu.js +476 -0
  65. package/dist/assets/useSessionAutoCleanup-BuU_S_Sh.js +1 -0
  66. package/dist/assets/{useWorkerHighlightedLines-CiYQjBe6.js → useWorkerHighlightedLines-Ca6OgNHF.js} +1 -1
  67. package/dist/assets/{utils-Co19EJEL.js → utils-BxJEIWv5.js} +1 -1
  68. package/dist/assets/{zh-CN-sL4ktGB3.js → zh-CN-DvY2fKWp.js} +1 -1
  69. package/dist/assets/{zh-TW-Cfxps4gq.js → zh-TW-eWe0lm3-.js} +1 -1
  70. package/dist/index.html +8 -8
  71. package/dist/mini-chat.html +8 -8
  72. package/dist/mobile.html +8 -8
  73. package/package.json +1 -1
  74. package/server/index.d.ts +6 -0
  75. package/server/index.js +13 -0
  76. package/server/lib/config-sync/DOCUMENTATION.md +70 -0
  77. package/server/lib/config-sync/config-sync.test.js +197 -0
  78. package/server/lib/config-sync/constants.js +39 -0
  79. package/server/lib/config-sync/contract.js +130 -0
  80. package/server/lib/config-sync/credential-auth.js +39 -0
  81. package/server/lib/config-sync/engine.js +108 -0
  82. package/server/lib/config-sync/index.js +67 -0
  83. package/server/lib/config-sync/local-backup.js +171 -0
  84. package/server/lib/config-sync/plan.js +318 -0
  85. package/server/lib/config-sync/receiver.js +330 -0
  86. package/server/lib/config-sync/routes.js +141 -0
  87. package/server/lib/config-sync/routes.test.js +154 -0
  88. package/server/lib/config-sync/scripts.js +264 -0
  89. package/server/lib/config-sync/selections.js +112 -0
  90. package/server/lib/config-sync/tar.js +35 -0
  91. package/server/lib/config-sync/target-id.js +24 -0
  92. package/server/lib/event-stream/DOCUMENTATION.md +2 -2
  93. package/server/lib/event-stream/diff-summary.js +39 -11
  94. package/server/lib/event-stream/diff-summary.test.js +73 -6
  95. package/server/lib/event-stream/protocol.test.js +70 -7
  96. package/server/lib/notifications/DOCUMENTATION.md +2 -2
  97. package/server/lib/notifications/runtime.js +68 -27
  98. package/server/lib/notifications/runtime.test.js +176 -0
  99. package/server/lib/opencode/DOCUMENTATION.md +4 -1
  100. package/server/lib/opencode/bootstrap-runtime.js +2 -0
  101. package/server/lib/opencode/core-routes.js +1 -0
  102. package/server/lib/opencode/feature-routes-runtime.test.js +10 -1
  103. package/server/lib/opencode/openchamber-routes.js +7 -0
  104. package/server/lib/opencode/settings-runtime.js +82 -51
  105. package/server/lib/opencode/settings-runtime.test.js +42 -0
  106. package/server/lib/relay/DOCUMENTATION.md +1 -1
  107. package/server/lib/session-index/DOCUMENTATION.md +12 -6
  108. package/server/lib/session-index/routes.js +34 -0
  109. package/server/lib/session-index/routes.test.js +76 -0
  110. package/server/lib/session-index/service.js +53 -4
  111. package/server/lib/session-index/service.test.js +72 -2
  112. package/server/lib/session-title/DOCUMENTATION.md +19 -14
  113. package/server/lib/session-title/runtime.js +8 -8
  114. package/server/lib/session-title/runtime.test.js +231 -0
  115. package/server/lib/session-turn-pages/DOCUMENTATION.md +26 -6
  116. package/server/lib/session-turn-pages/changes.service.js +156 -0
  117. package/server/lib/session-turn-pages/changes.service.test.js +188 -0
  118. package/server/lib/session-turn-pages/reconcile.routes.test.js +52 -0
  119. package/server/lib/session-turn-pages/reconcile.service.js +3 -1
  120. package/server/lib/session-turn-pages/reconcile.service.test.js +44 -0
  121. package/server/lib/session-turn-pages/routes.js +273 -12
  122. package/server/lib/session-turn-pages/routes.test.js +387 -0
  123. package/server/lib/session-turn-pages/service.js +31 -7
  124. package/server/lib/session-turn-pages/service.test.js +40 -0
  125. package/server/lib/small-model/DOCUMENTATION.md +93 -38
  126. package/server/lib/small-model/catalog.js +10 -2
  127. package/server/lib/small-model/catalog.test.js +3 -1
  128. package/server/lib/small-model/index.js +52 -28
  129. package/server/lib/small-model/opencode-session.js +339 -0
  130. package/server/lib/small-model/opencode-session.test.js +177 -0
  131. package/server/lib/small-model/resolve.js +116 -5
  132. package/server/lib/small-model/resolve.test.js +76 -10
  133. package/server/lib/small-model/summary-settings.test.js +60 -3
  134. package/dist/assets/MobileSurface-htGkf7Ua.js +0 -2
  135. package/dist/assets/SettingsView-DxMpVLlt.js +0 -25
  136. package/dist/assets/appThemeRegistry-CgfOR_0L.js +0 -2
  137. package/dist/assets/gitApiHttp-D8j1qRH4.js +0 -2
  138. package/dist/assets/insertionBoundaries-DzXMTleb.js +0 -1
  139. package/dist/assets/mobile-BktO3_4R.js +0 -2
  140. package/dist/assets/projectMeta-v-LP2mzz.js +0 -3
  141. package/dist/assets/renderElectronMiniChatApp-Db8uO-6q.js +0 -2
  142. package/dist/assets/renderMobileApp-BCV81Ryl.js +0 -23
  143. package/dist/assets/runtimeEndpointReset-Dg3DMy9v.js +0 -145
  144. package/dist/assets/src-oHrYIqHF.css +0 -2
  145. package/dist/assets/useAppFontEffects-CM0VKsdo.js +0 -7
  146. package/dist/assets/useDesktopWindowControlsLayout-Cq-r4Hcb.js +0 -1
  147. package/dist/assets/useMobileNavigationStore-DnzT4jO2.js +0 -475
  148. package/dist/assets/useSessionAutoCleanup-DxZeceKO.js +0 -1
@@ -4,7 +4,7 @@ Usa este espacio para definir reglas absolutas sobre cómo la IA debe comportars
4
4
 
5
5
  Usa $ARGUMENTS para la entrada del usuario.
6
6
  Usa !\`shell command\` para insertar la salida del shell.
7
- Usa @filename para añadir el contenido del archivo.`,"settings.commands.page.templateHint.userInput":`entrada del usuario`,"settings.commands.page.templateHint.shellOutput":`salida del shell`,"settings.commands.page.templateHint.fileContents":`contenido del archivo`,"settings.commands.agentSelector.title":`Seleccionar agente`,"settings.commands.agentSelector.notSelected":`No seleccionado`,"settings.commands.agentSelector.selectAgentPlaceholder":`Seleccionar agente...`,"settings.gitIdentities.page.section.title":`Identidades`,"settings.gitIdentities.page.empty.title":`No hay identidades configuradas`,"settings.gitIdentities.page.empty.description":`Crea una para gestionar la configuración del autor de Git por proyecto`,"settings.gitIdentities.page.discoveredCredentials.title":`Encontrados en ~/.git-credentials`,"settings.gitIdentities.page.badge.default":`predeterminado`,"settings.gitIdentities.page.actions.setAsDefault":`Establecer como predeterminado`,"settings.gitIdentities.page.actions.unsetDefault":`Quitar predeterminado`,"settings.gitIdentities.page.actions.import":`Importar`,"settings.gitIdentities.page.toast.updateDefaultFailed":`No se pudo actualizar la identidad predeterminada`,"settings.gitIdentities.page.toast.defaultUpdated":`Identidad predeterminada actualizada`,"settings.gitIdentities.page.toast.defaultUnset":`Identidad predeterminada quitada`,"settings.gitIdentities.page.toast.profileDeleted":`Perfil "{name}" eliminado`,"settings.gitIdentities.page.toast.deleteProfileFailed":`No se pudo eliminar el perfil`,"settings.gitIdentities.page.deleteDialog.title":`Eliminar perfil`,"settings.gitIdentities.page.deleteDialog.description":`¿Estás seguro de que quieres eliminar "{name}"?`,"settings.gitIdentities.editor.title.importCredential":`Importar credencial`,"settings.gitIdentities.editor.title.newIdentity":`Nueva identidad`,"settings.gitIdentities.editor.title.globalIdentity":`Identidad global`,"settings.gitIdentities.editor.title.editIdentity":`Editar identidad`,"settings.gitIdentities.editor.description.globalReadOnly":`Identidad Git global (solo lectura)`,"settings.gitIdentities.editor.description.newProfile":`Crear una nueva identidad Git`,"settings.gitIdentities.editor.description.editProfile":`Editar la configuración de la identidad`,"settings.gitIdentities.editor.section.commitSigning":`Firma de commits`,"settings.gitIdentities.editor.field.profileName":`Nombre de la identidad`,"settings.gitIdentities.editor.field.profileNamePlaceholder":`Identidad de trabajo, personal, etc.`,"settings.gitIdentities.editor.field.color":`Color`,"settings.gitIdentities.editor.field.icon":`Icono`,"settings.gitIdentities.editor.field.userName":`Nombre de usuario`,"settings.gitIdentities.editor.field.userNameTooltip":`El nombre que aparecerá en los mensajes de commit de Git.`,"settings.gitIdentities.editor.field.userNamePlaceholder":`John Doe`,"settings.gitIdentities.editor.field.emailAddress":`Dirección de correo electrónico`,"settings.gitIdentities.editor.field.emailAddressTooltip":`Debe coincidir con tu correo en GitHub/GitLab para atribuir correctamente.`,"settings.gitIdentities.editor.field.emailAddressPlaceholder":`john@example.com`,"settings.gitIdentities.editor.field.authMethod":`Método de autenticación`,"settings.gitIdentities.editor.field.authToken":`Token`,"settings.gitIdentities.editor.field.sshKeyPath":`Ruta de la clave SSH`,"settings.gitIdentities.editor.field.sshKeyPathTooltip":`Ruta opcional a la clave privada. Ejemplo: ~/.ssh/id_ed25519`,"settings.gitIdentities.editor.field.sshKeyPathPlaceholder":`~/.ssh/id_ed25519`,"settings.gitIdentities.editor.field.signCommits":`Firmar commits con esta identidad`,"settings.gitIdentities.editor.field.signingKey":`Clave de firma`,"settings.gitIdentities.editor.field.signingKeyPlaceholder":`~/.ssh/id_ed25519.pub`,"settings.gitIdentities.editor.field.host":`Servidor`,"settings.gitIdentities.editor.field.hostTooltip":`El token se leerá de ~/.git-credentials para este servidor.`,"settings.gitIdentities.editor.field.hostPlaceholder":`github.com`,"settings.gitIdentities.editor.actions.close":`Cerrar`,"settings.gitIdentities.editor.actions.create":`Crear`,"settings.gitIdentities.editor.actions.save":`Guardar`,"settings.gitIdentities.editor.toast.userNameEmailRequired":`Se requieren nombre de usuario y dirección de correo electrónico`,"settings.gitIdentities.editor.toast.hostRequiredForToken":`Se requiere un servidor para autenticación basada en token`,"settings.gitIdentities.editor.toast.signingKeyRequired":`Se requiere una clave de firma cuando la firma de commits está activada`,"settings.gitIdentities.editor.toast.profileCreated":`Identidad creada`,"settings.gitIdentities.editor.toast.profileUpdated":`Identidad actualizada`,"settings.gitIdentities.editor.toast.createProfileFailed":`No se pudo crear la identidad`,"settings.gitIdentities.editor.toast.updateProfileFailed":`No se pudo actualizar la identidad`,"settings.gitIdentities.editor.toast.saveUnexpectedError":`Ocurrió un error al guardar`,"settings.gitIdentities.editor.toast.profileDeleted":`Identidad eliminada`,"settings.gitIdentities.editor.toast.deleteProfileFailed":`No se pudo eliminar la identidad`,"settings.gitIdentities.editor.toast.deleteUnexpectedError":`Ocurrió un error al eliminar`,"settings.skills.sidebar.title":`Habilidades`,"settings.skills.sidebar.total":`Total {count}`,"settings.skills.sidebar.section.project":`Habilidades del proyecto`,"settings.skills.sidebar.section.user":`Habilidades del usuario`,"settings.skills.sidebar.empty.title":`No hay habilidades configuradas`,"settings.skills.sidebar.empty.description":`Usa el botón + arriba para crear una`,"settings.skills.sidebar.badge.claude":`claude`,"settings.skills.sidebar.badge.agents":`agentes`,"settings.skills.sidebar.badge.opencode":`opencode`,"settings.skills.sidebar.toast.skillDeleted":`Habilidad "{name}" eliminada con éxito`,"settings.skills.sidebar.toast.deleteSkillFailed":`No se pudo eliminar la habilidad`,"settings.skills.sidebar.toast.duplicateLoadFailed":`No se pudo cargar la información de la habilidad para duplicarla`,"settings.skills.sidebar.toast.renameLoadFailed":`No se pudo cargar la información de la habilidad`,"settings.skills.sidebar.toast.removeOldAfterRenameFailed":`No se pudo eliminar la habilidad antigua después del cambio de nombre`,"settings.skills.sidebar.toast.renameFailed":`No se pudo cambiar el nombre de la habilidad`,"settings.skills.sidebar.deleteDialog.title":`Eliminar habilidad`,"settings.skills.sidebar.deleteDialog.description":`¿Estás seguro de que quieres eliminar la habilidad "{name}"?`,"settings.skills.sidebar.renameDialog.title":`Cambiar nombre habilidad`,"settings.skills.sidebar.renameDialog.description":`Introduce un nuevo nombre para la habilidad "{name}"`,"settings.skills.sidebar.renameDialog.placeholder":`Nuevo nombre de habilidad...`,"settings.skills.page.title.newSkill":`Nueva habilidad`,"settings.skills.page.subtitle.newSkill":`Configurar una nueva habilidad`,"settings.skills.page.subtitle.skillLocation":`{location} habilidad`,"settings.skills.page.section.basicInformation":`Información básica`,"settings.skills.page.section.instructions":`Instrucciones`,"settings.skills.page.section.supportingFiles":`Archivos de apoyo`,"settings.skills.page.field.skillNameLocation":`Nombre de la habilidad y ubicación`,"settings.skills.page.field.skillNameHint":`Minúsculas, números y guiones`,"settings.skills.page.field.skillNamePlaceholder":`nombre-de-habilidad`,"settings.skills.page.field.descriptionHint":`El agente usa esta descripción para decidir cuándo cargar la habilidad`,"settings.skills.page.field.descriptionPlaceholder":`Breve descripción de lo que hace esta habilidad...`,"settings.skills.page.field.instructionsPlaceholder":`Instrucciones paso a paso, guías o contenido de referencia...`,"settings.skills.page.badge.claudeCompatible":`Compatible con Claude`,"settings.skills.page.badge.pending":`pendiente`,"settings.skills.page.actions.addFile":`Añadir archivo`,"settings.skills.page.actions.createSkill":`Crear habilidad`,"settings.skills.page.actions.createFile":`Crear archivo`,"settings.skills.page.supportingFiles.empty":`No hay archivos de apoyo. Usa "Añadir archivo" para incluir materiales de referencia.`,"settings.skills.page.loading.details":`Cargando detalles de la habilidad...`,"settings.skills.page.loading.fileContent":`Cargando contenido del archivo...`,"settings.skills.page.empty.title":`Selecciona una habilidad del panel lateral`,"settings.skills.page.empty.description":`o crea una nueva`,"settings.skills.page.deleteFileDialog.title":`Eliminar archivo de apoyo`,"settings.skills.page.deleteFileDialog.description":`¿Estás seguro de que quieres eliminar "{path}"?`,"settings.skills.page.fileDialog.titleEdit":`Editar archivo de apoyo`,"settings.skills.page.fileDialog.titleAdd":`Añadir archivo de apoyo`,"settings.skills.page.fileDialog.descriptionEdit":`Modificar el contenido del archivo`,"settings.skills.page.fileDialog.descriptionAdd":`Crea un archivo nuevo en el directorio de la habilidad`,"settings.skills.page.fileDialog.field.filePath":`Ruta del archivo`,"settings.skills.page.fileDialog.field.filePathPlaceholder":`example.md o docs/reference.txt`,"settings.skills.page.fileDialog.field.filePathHint":`Ruta relativa dentro del directorio de la habilidad. Se crearán automáticamente las subcarpetas.`,"settings.skills.page.fileDialog.field.content":`Contenido`,"settings.skills.page.fileDialog.field.contentPlaceholder":`Contenido del archivo...`,"settings.skills.page.toast.skillNameRequired":`Se requiere el nombre de la habilidad`,"settings.skills.page.toast.invalidSkillName":`El nombre de la habilidad debe ser 1-64 caracteres alfanuméricos en minúscula con guiones, no puede comenzar ni terminar con guion`,"settings.skills.page.toast.descriptionRequired":`Se requiere una descripción`,"settings.skills.page.toast.skillExists":`Ya existe una habilidad con este nombre`,"settings.skills.page.toast.skillCreated":`Habilidad creada`,"settings.skills.page.toast.skillUpdated":`Habilidad actualizada`,"settings.skills.page.toast.createSkillFailed":`No se pudo crear la habilidad`,"settings.skills.page.toast.updateSkillFailed":`No se pudo actualizar la habilidad`,"settings.skills.page.toast.saveUnexpectedError":`Ocurrió un error al guardar`,"settings.skills.page.toast.loadFileContentFailed":`No se pudo cargar el contenido del archivo`,"settings.skills.page.toast.fileNameRequired":`Se requiere el nombre del archivo`,"settings.skills.page.toast.fileExists":`Ya existe un archivo con este nombre`,"settings.skills.page.toast.noSkillSelected":`No se seleccionó ninguna habilidad`,"settings.skills.page.toast.fileAdded":`Archivo "{path}" añadido`,"settings.skills.page.toast.fileCreated":`Archivo "{path}" creado`,"settings.skills.page.toast.fileUpdated":`Archivo "{path}" actualizado`,"settings.skills.page.toast.fileRemoved":`Archivo "{path}" eliminado`,"settings.skills.page.toast.fileDeleted":`Archivo "{path}" borrado`,"settings.skills.page.toast.createFileFailed":`No se pudo crear el archivo`,"settings.skills.page.toast.updateFileFailed":`No se pudo actualizar el archivo`,"settings.skills.page.toast.deleteFileFailed":`No se pudo eliminar el archivo`,"settings.skills.location.option.userOpencode.label":`Usuario / OpenCode`,"settings.skills.location.option.userOpencode.description":`Ubicación global de la configuración de OpenCode`,"settings.skills.location.option.projectOpencode.label":`Proyecto / OpenCode`,"settings.skills.location.option.projectOpencode.description":`Ubicación del .opencode del proyecto actual`,"settings.skills.location.option.userClaude.label":`Usuario / Claude`,"settings.skills.location.option.userClaude.description":`Ubicación global de skills de Claude`,"settings.skills.location.option.projectClaude.label":`Proyecto / Claude`,"settings.skills.location.option.projectClaude.description":`Ubicación .claude del proyecto actual`,"settings.skills.location.option.userAgents.label":`Usuario / Agentes`,"settings.skills.location.option.userAgents.description":`Ubicación global de compatibilidad con .agents`,"settings.skills.location.option.projectAgents.label":`Proyecto / Agentes`,"settings.skills.location.option.projectAgents.description":`Ubicación de compatibilidad con .agents del proyecto actual`,"settings.skills.catalog.shared.field.repository":`Repositorio`,"settings.skills.catalog.shared.field.repositoryPlaceholder":`owner/repo o git@github.com:owner/repo.git`,"settings.skills.catalog.shared.field.optionalSubpath":`Subruta opcional`,"settings.skills.catalog.shared.field.subpathPlaceholder":`ej. skills`,"settings.skills.catalog.shared.field.targetLocation":`Ubicación de destino`,"settings.skills.catalog.shared.field.project":`Proyecto`,"settings.skills.catalog.shared.field.noProjects":`No hay proyectos disponibles`,"settings.skills.catalog.shared.field.chooseProjectPlaceholder":`Elige un proyecto`,"settings.skills.catalog.shared.field.searchSkillsPlaceholder":`Buscar habilidades…`,"settings.skills.catalog.shared.toast.repositoryRequired":`Se requiere la fuente del repositorio`,"settings.skills.catalog.shared.toast.privateRepoNotSupportedVsCode":`Los repositorios privados no son compatibles en VS Code aún`,"settings.skills.catalog.shared.toast.foundSkills":`Se encontraron {count} habilidad(es)`,"settings.skills.catalog.shared.noDescription":`No se proporcionó una descripción`,"settings.skills.catalog.shared.actions.scan":`Escanear`,"settings.skills.catalog.shared.actions.scanning":`Escanear...`,"settings.skills.catalog.shared.actions.install":`Instalar`,"settings.skills.catalog.shared.actions.installing":`Instalando...`,"settings.skills.catalog.shared.auth.title":`Autenticación requerida`,"settings.skills.catalog.shared.auth.description":`Selecciona una identidad de Git (clave SSH)`,"settings.skills.catalog.shared.auth.chooseIdentity":`Elige la identidad`,"settings.skills.catalog.shared.auth.footerHint":`Configura las identidades en Configuración - Identidades de Git.`,"settings.skills.catalog.shared.auth.footerHintArrow":`Configura las identidades en Configuración → Identidades de Git.`,"settings.skills.catalog.conflicts.title":`Ya existen habilidades`,"settings.skills.catalog.conflicts.description":`Algunas de las habilidades seleccionadas ya están instaladas en este alcance. Elige si quieres omitirlas o sobrescribirlas.`,"settings.skills.catalog.conflicts.count":`{count} conflicto(s)`,"settings.skills.catalog.conflicts.installedIn":`Instalado en {scope} / {source}`,"settings.skills.catalog.conflicts.scope.user":`usuario`,"settings.skills.catalog.conflicts.scope.project":`proyecto`,"settings.skills.catalog.conflicts.source.opencode":`opencode`,"settings.skills.catalog.conflicts.source.agents":`agents`,"settings.skills.catalog.conflicts.decision.skip":`Omitir`,"settings.skills.catalog.conflicts.decision.overwrite":`Sobrescribir`,"settings.skills.catalog.conflicts.actions.skipAll":`Omitir todo`,"settings.skills.catalog.conflicts.actions.overwriteAll":`Sobrescribir todo`,"settings.skills.catalog.conflicts.actions.continue":`Continuar`,"settings.skills.catalog.installSkill.title":`Instalar habilidad`,"settings.skills.catalog.installSkill.descriptionPrefix":`Instalar`,"settings.skills.catalog.installSkill.descriptionSuffix":`en uno de los cuatro ubicaciones de destino.`,"settings.skills.catalog.installSkill.field.destination":`Destino`,"settings.skills.catalog.installSkill.field.project":`Proyecto`,"settings.skills.catalog.installSkill.field.noProjects":`No hay proyectos disponibles`,"settings.skills.catalog.installSkill.field.chooseProjectPlaceholder":`Seleccionar proyecto`,"settings.skills.catalog.installSkill.actions.install":`Instalar`,"settings.skills.catalog.installSkill.actions.installing":`Instalando...`,"settings.skills.catalog.installSkill.toast.installed":`Habilidad instalada correctamente`,"settings.skills.catalog.installSkill.toast.authRequired":`Autenticación requerida`,"settings.skills.catalog.installSkill.toast.installFailed":`No se pudo instalar la habilidad`,"settings.skills.catalog.add.title":`Añadir catálogo de habilidades`,"settings.skills.catalog.add.descriptionPrefix":`Añade un repositorio Git como nuevo origen de catálogo. OpenChamber escaneará para encontrar carpetas que contengan`,"settings.skills.catalog.add.descriptionSuffix":`.`,"settings.skills.catalog.add.field.catalogName":`Nombre del catálogo`,"settings.skills.catalog.add.field.catalogNamePlaceholder":`p. ej. Habilidades del equipo`,"settings.skills.catalog.add.field.repository":`Repositorio`,"settings.skills.catalog.add.field.optionalSubpath":`Subruta opcional`,"settings.skills.catalog.add.field.repositoryHint":`Los repositorios públicos funcionan en cualquier lugar. Los privados requieren una identidad SSH (solo en Desktop/Web).`,"settings.skills.catalog.add.scanResult":`Resultado del escaneo: {count} habilidad(es) encontrada(s)`,"settings.skills.catalog.add.duplicateMessage":`Este catálogo ya está añadido.`,"settings.skills.catalog.add.actions.addCatalog":`Añadir catálogo`,"settings.skills.catalog.add.toast.repositoryRequired":`Se requiere el origen del repositorio`,"settings.skills.catalog.add.toast.authenticationRequiredScan":`Autenticación requerida. Selecciona una identidad Git y escanea de nuevo.`,"settings.skills.catalog.add.toast.scanFailed":`No se pudo escanear el repositorio`,"settings.skills.catalog.add.toast.noSkillsFound":`No se encontraron habilidades en este repositorio`,"settings.skills.catalog.add.toast.catalogNameRequired":`Se requiere el nombre del catálogo`,"settings.skills.catalog.add.toast.scanBeforeAdd":`Escanea el repositorio antes de añadir este catálogo`,"settings.skills.catalog.add.toast.catalogAlreadyExists":`Este catálogo ya existe`,"settings.skills.catalog.add.toast.catalogAdded":`Catálogo añadido`,"settings.skills.catalog.add.toast.saveFailed":`No se pudo guardar el catálogo`,"settings.skills.catalog.installFromRepo.title":`Instalar desde repositorio Git`,"settings.skills.catalog.installFromRepo.descriptionPrefix":`Escanea un repositorio para encontrar carpetas que contengan`,"settings.skills.catalog.installFromRepo.descriptionSuffix":`, luego instala las habilidades seleccionadas.`,"settings.skills.catalog.installFromRepo.repositoryHintPrefix":`Para el formato abreviado de GitHub, puedes añadir una subruta como`,"settings.skills.catalog.installFromRepo.authDescription":`Selecciona una identidad Git (clave SSH) que pueda acceder a este repositorio.`,"settings.skills.catalog.installFromRepo.empty.noScanResultsTitle":`No hay resultados de escaneo aún`,"settings.skills.catalog.installFromRepo.empty.noScanResultsDescription":`Escanea un repositorio para descubrir habilidades`,"settings.skills.catalog.installFromRepo.actions.selectAll":`Seleccionar todo`,"settings.skills.catalog.installFromRepo.actions.selectNone":`Seleccionar ninguno`,"settings.skills.catalog.installFromRepo.actions.installSelected":`Instalar selección`,"settings.skills.catalog.installFromRepo.badge.installed":`instalado ({scope}/{source})`,"settings.skills.catalog.installFromRepo.selectedCount":`Seleccionado: {selected} / {total}`,"settings.skills.catalog.installFromRepo.toast.authenticationRequiredScan":`Autenticación requerida. Selecciona una identidad Git y prueba a escanear de nuevo.`,"settings.skills.catalog.installFromRepo.toast.authenticationRequiredInstall":`Autenticación requerida. Selecciona una identidad Git y prueba a instalar de nuevo.`,"settings.skills.catalog.installFromRepo.toast.scanFailed":`No se pudo escanear el repositorio`,"settings.skills.catalog.installFromRepo.toast.selectAtLeastOne":`Selecciona al menos una habilidad para instalar`,"settings.skills.catalog.installFromRepo.toast.installedCount":`{count} habilidad(es) instalada(s)`,"settings.skills.catalog.installFromRepo.toast.installCompleted":`Instalación completada`,"settings.skills.catalog.installFromRepo.toast.installFailed":`No se pudieron instalar las habilidades`,"settings.skills.catalog.page.mode.manual":`Manual`,"settings.skills.catalog.page.mode.external":`Externo`,"settings.skills.catalog.page.title":`Catálogo de habilidades`,"settings.skills.catalog.page.section.sourceRepository":`Repositorio de origen`,"settings.skills.catalog.page.field.selectSourcePlaceholder":`Seleccionar origen`,"settings.skills.catalog.page.actions.refreshTitle":`Actualizar`,"settings.skills.catalog.page.actions.removeCatalogTitle":`Eliminar catálogo`,"settings.skills.catalog.page.actions.addCatalog":`Añadir catálogo`,"settings.skills.catalog.page.actions.removeCatalog":`Eliminar catálogo`,"settings.skills.catalog.page.actions.loadMoreSkills":`Cargar más habilidades`,"settings.skills.catalog.page.loading.catalog":`Cargando...`,"settings.skills.catalog.page.loading.skills":`Cargando habilidades...`,"settings.skills.catalog.page.loading.more":`Cargando...`,"settings.skills.catalog.page.foundCount":`{count} habilidad(es) encontrada(s)`,"settings.skills.catalog.page.error.catalogTitle":`Error del catálogo`,"settings.skills.catalog.page.empty.noSkillsTitle":`No se encontraron habilidades`,"settings.skills.catalog.page.empty.noSkillsDescription":`Prueba con una búsqueda diferente o refresca el catálogo`,"settings.skills.catalog.page.badge.installed":`instalado ({scope})`,"settings.skills.catalog.page.badge.notInstallable":`no instalable`,"settings.skills.catalog.page.badge.unknown":`desconocido`,"settings.skills.catalog.page.byOwnerPrefix":`por`,"settings.skills.catalog.page.removeDialog.title":`Eliminar catálogo`,"settings.skills.catalog.page.removeDialog.description":`¿Estás seguro de que quieres eliminar este catálogo?`,"settings.openchamber.passkeys.title":`Claves de paso`,"settings.openchamber.passkeys.field.currentDevice":`Dispositivo actual`,"settings.openchamber.passkeys.actions.add":`Añadir clave de paso`,"settings.openchamber.passkeys.actions.cancelSetup":`Cancelar configuración de clave de paso`,"settings.openchamber.passkeys.actions.signOutEverywhere":`Cerrar sesión en todos los lugares`,"settings.openchamber.passkeys.actions.signingOut":`Cerrando sesión…`,"settings.openchamber.passkeys.actions.removing":`Eliminando…`,"settings.openchamber.passkeys.state.uiPasswordRequired":`Las claves de paso solo están disponibles cuando el bloqueo con contraseña de la interfaz está habilitado.`,"settings.openchamber.passkeys.state.loading":`Cargando claves de paso…`,"settings.openchamber.passkeys.state.noneSaved":`No se han guardado claves de paso para este host aún.`,"settings.openchamber.passkeys.item.lastUsed":`Último uso {time}`,"settings.openchamber.passkeys.item.added":`Añadido {time}`,"settings.openchamber.passkeys.time.neverUsed":`Nunca usado`,"settings.openchamber.passkeys.toast.loadFailed":`No se pudieron cargar las claves de paso.`,"settings.openchamber.passkeys.toast.enableUiPasswordFirst":`Habilita la contraseña de bloqueo de la interfaz de usuario antes de añadir claves de paso.`,"settings.openchamber.passkeys.toast.added":`Clave de paso añadida`,"settings.openchamber.passkeys.toast.setupCanceled":`Configuración de clave de paso cancelada`,"settings.openchamber.passkeys.toast.addFailed":`No se pudo agregar la clave de paso.`,"settings.openchamber.passkeys.toast.removed":`Clave de paso eliminada`,"settings.openchamber.passkeys.toast.removeFailed":`No se pudo eliminar la clave de paso.`,"settings.openchamber.passkeys.toast.clearAuthFailed":`No se pudo limpiar la autenticación guardada.`,"settings.openchamber.sessionRetention.title":`Retención de sesiones`,"settings.openchamber.sessionRetention.tooltip":`Archivar o eliminar automáticamente sesiones inactivas según la última actividad. Mantiene las 5 sesiones más recientes.`,"settings.openchamber.sessionRetention.field.enableAutoCleanupAria":`Habilitar limpieza automática`,"settings.openchamber.sessionRetention.field.enableAutoCleanup":`Habilitar limpieza automática`,"settings.openchamber.sessionRetention.field.retentionPeriod":`Periodo de retención`,"settings.openchamber.sessionRetention.field.retentionPeriodAria":`Período de retención en días`,"settings.openchamber.sessionRetention.field.days":`días`,"settings.openchamber.sessionRetention.field.whenSessionsExpire":`Cuando las sesiones expiren`,"settings.openchamber.sessionRetention.actions.resetRetentionAria":`Restablecer período de retención`,"settings.openchamber.sessionRetention.actions.runCleanupNow":`Ejecutar limpieza ahora`,"settings.openchamber.sessionRetention.actions.cleaningUp":`Limpieza en curso...`,"settings.openchamber.sessionRetention.action.archive":`Archivar`,"settings.openchamber.sessionRetention.action.delete":`Eliminar`,"settings.openchamber.sessionRetention.manualCleanup.title":`Limpieza manual`,"settings.openchamber.sessionRetention.manualCleanup.eligibleArchiveNow":`Elegible para archivar ahora: {count}`,"settings.openchamber.sessionRetention.manualCleanup.eligibleDeleteNow":`Elegible para eliminar ahora: {count}`,"settings.openchamber.sessionRetention.toast.noneEligibleArchive":`No hay sesiones elegibles para archivar`,"settings.openchamber.sessionRetention.toast.noneEligibleDelete":`No hay sesiones elegibles para eliminar`,"settings.openchamber.sessionRetention.toast.archivedCount":`Archivadas {count} sesión(es)`,"settings.openchamber.sessionRetention.toast.deletedCount":`Eliminadas {count} sesión(es)`,"settings.openchamber.sessionRetention.toast.failedArchiveCount":`No se pudo archivar {count} sesión(es)`,"settings.openchamber.sessionRetention.toast.failedDeleteCount":`No se pudo eliminar {count} sesión(es)`,"settings.openchamber.archivedSessions.title":`Sesiones archivadas`,"settings.openchamber.archivedSessions.description":`Explora las sesiones archivadas por proyecto, restáuralas o ábrelas en vista previa.`,"settings.openchamber.archivedSessions.summarySingle":`{count} sesión archivada`,"settings.openchamber.archivedSessions.summaryPlural":`{count} sesiones archivadas`,"settings.openchamber.archivedSessions.actions.manage":`Administrar sesiones archivadas`,"settings.openchamber.archivedSessions.actions.view":`Ver archivadas`,"settings.openchamber.archivedSessions.actions.preview":`Vista previa`,"settings.openchamber.archivedSessions.actions.restore":`Restaurar`,"settings.openchamber.archivedSessions.otherProjects":`Otros`,"settings.openchamber.archivedSessions.dialog.title":`Sesiones archivadas`,"settings.openchamber.archivedSessions.dialog.description":`Selecciona un proyecto para ver sus sesiones archivadas.`,"settings.openchamber.archivedSessions.dialog.loading":`Cargando sesiones archivadas…`,"settings.openchamber.archivedSessions.dialog.empty":`Aún no hay sesiones archivadas.`,"settings.openchamber.archivedSessions.dialog.emptyProject":`No hay sesiones archivadas en este proyecto.`,"settings.openchamber.archivedSessions.dialog.backToProjects":`Volver a proyectos`,"settings.openchamber.archivedSessions.dialog.sessionCountSingle":`{count} sesión`,"settings.openchamber.archivedSessions.dialog.sessionCountPlural":`{count} sesiones`,"settings.openchamber.archivedSessions.toast.loadFailed":`No se pudieron cargar las sesiones archivadas.`,"settings.openchamber.archivedSessions.toast.restored":`Sesión restaurada`,"settings.openchamber.archivedSessions.toast.restoreFailed":`No se pudo restaurar la sesión`,"settings.openchamber.desktopNetwork.title":`Acceso de red de escritorio`,"settings.openchamber.desktopNetwork.field.windowControlsPosition":`Posición de los controles de ventana`,"settings.openchamber.desktopNetwork.field.windowControlsPositionDescription":`Elige dónde aparecen los botones de minimizar, maximizar y cerrar. Automático sigue el sistema operativo.`,"settings.openchamber.desktopNetwork.field.windowControlsPositionAria":`Posición de los controles de ventana`,"settings.openchamber.desktopNetwork.option.windowControlsAuto":`Automático`,"settings.openchamber.desktopNetwork.option.windowControlsLeft":`Izquierda`,"settings.openchamber.desktopNetwork.option.windowControlsRight":`Derecha`,"settings.openchamber.desktopNetwork.field.launchAtLoginAria":`Iniciar OpenChamber al iniciar sesión`,"settings.openchamber.desktopNetwork.field.launchAtLogin":`Iniciar OpenChamber al iniciar sesión`,"settings.openchamber.desktopNetwork.field.launchAtLoginDescription":`Inicia la app en segundo plano sin abrir una ventana. Usa el icono de estado del escritorio para abrirla.`,"settings.openchamber.desktopNetwork.field.minimizeToTrayAria":`Minimizar y cerrar OpenChamber a la bandeja del sistema`,"settings.openchamber.desktopNetwork.field.minimizeToTray":`Minimizar y cerrar a la bandeja del sistema`,"settings.openchamber.desktopNetwork.field.minimizeToTrayDescription":`Mantiene OpenChamber en ejecución en la bandeja del sistema de Windows cuando la ventana principal se minimiza o se cierra.`,"settings.openchamber.desktopNetwork.field.keepAwakeAria":`Mantener el ordenador activo mientras OpenChamber está en ejecución`,"settings.openchamber.desktopNetwork.field.keepAwake":`Mantener el ordenador activo mientras OpenChamber está en ejecución`,"settings.openchamber.desktopNetwork.field.keepAwakeDescription":`Para que los teléfonos puedan seguir abriendo esta app. La pantalla aún puede apagarse.`,"settings.openchamber.desktopNetwork.field.allowLanAccessAria":`Permitir acceso LAN al lado de escritorio`,"settings.openchamber.desktopNetwork.field.allowLanAccess":`Permitir que otros dispositivos en tu red local abran esta aplicación`,"settings.openchamber.desktopNetwork.field.allowLanAccessDescription":`Reinicia la aplicación para que los teléfonos, tablets y otros ordenadores en tu Wi-Fi puedan abrirla.`,"settings.openchamber.desktopNetwork.field.warning":`Advertencia: mientras esté habilitado, la aplicación es accesible por cualquiera en la misma red local.`,"settings.openchamber.desktopNetwork.field.passwordRequiredWarning":`El acceso LAN requiere una contraseña de UI de escritorio. Hasta que se configure, la app de escritorio se inicia solo localmente.`,"settings.openchamber.desktopPassword.field.password":`Contraseña de UI de escritorio`,"settings.openchamber.desktopPassword.field.passwordPlaceholder":`No se requiere contraseña`,"settings.openchamber.desktopPassword.field.passwordDescription":`OpenChamber la pide después del reinicio y luego cuando vence la sesión: tras 12 horas, o 7 días con Confiar en este dispositivo. Déjalo vacío para desactivar el inicio de sesión.`,"settings.openchamber.desktopNetwork.hint.openAfterRestart":`Después del reinicio, abre desde otro dispositivo: `,"settings.openchamber.desktopNetwork.hint.openNow":`Abrir desde otro dispositivo: `,"settings.openchamber.desktopNetwork.actions.saveAndRestart":`Guardar y reiniciar`,"settings.openchamber.desktopNetwork.error.loadFailed":`No se pudo cargar la configuración de escritorio`,"settings.openchamber.desktopNetwork.error.saveFailed":`No se pudo guardar la configuración de escritorio`,"settings.openchamber.desktopNetwork.error.savedRestartFailed":`Guardado, pero no se pudo reiniciar la aplicación`,"settings.openchamber.desktopNetwork.error.launchAtLoginUnsupported":`El inicio al iniciar sesión no es compatible con este sistema`,"settings.openchamber.desktopNetwork.error.launchAtLoginSaveFailed":`No se pudo actualizar la opción de inicio al iniciar sesión`,"settings.openchamber.desktopNetwork.error.minimizeToTrayUnsupported":`El modo en segundo plano de la bandeja del sistema no es compatible con este sistema`,"settings.openchamber.desktopNetwork.error.minimizeToTraySaveFailed":`No se pudo actualizar la opción de bandeja del sistema`,"settings.openchamber.desktopNetwork.error.keepAwakeUnsupported":`Evitar la suspensión no es compatible con este sistema`,"settings.openchamber.desktopNetwork.error.keepAwakeSaveFailed":`No se pudo actualizar la opción de mantener activo`,"settings.openchamber.opencodeCli.title":`CLI de OpenCode`,"settings.openchamber.opencodeCli.tooltipPrefix":`Ruta absoluta opcional al`,"settings.openchamber.opencodeCli.tooltipSuffix":`ejecutable.`,"settings.openchamber.opencodeCli.field.binaryPath":`Ruta del ejecutable de OpenCode`,"settings.openchamber.opencodeCli.field.binaryPathPlaceholder":`/Users/you/.bun/bin/opencode`,"settings.openchamber.opencodeCli.field.showUpdateNotifications":`Mostrar notificaciones de actualización de OpenCode`,"settings.openchamber.opencodeCli.field.showUpdateNotificationsAria":`Mostrar notificaciones de actualización de OpenCode`,"settings.openchamber.opencodeCli.actions.browseAria":`Buscar ruta del ejecutable de OpenCode`,"settings.openchamber.opencodeCli.actions.browse":`Buscar`,"settings.openchamber.opencodeCli.actions.saveAndReload":`Guardar + Recargar`,"settings.openchamber.opencodeCli.actions.restartingOpenCode":`Reiniciando OpenCode…`,"settings.openchamber.opencodeCli.dialog.selectBinaryTitle":`Seleccionar ejecutable de opencode`,"settings.openchamber.opencodeCli.tipPrefix":`Consejo: también puedes usar`,"settings.openchamber.opencodeCli.tipMiddle":`variable de entorno, pero esta configuración persiste en`,"settings.mcp.sidebar.title":`Servidores MCP`,"settings.mcp.sidebar.total":`Total {count}`,"settings.mcp.sidebar.actions.refreshStatusAria":`Actualizar estado MCP`,"settings.mcp.sidebar.actions.refreshStatusTitle":`Actualizar estado MCP`,"settings.mcp.sidebar.actions.addServerTitle":`Añadir servidor MCP`,"settings.mcp.sidebar.actions.deleting":`Eliminando…`,"settings.mcp.sidebar.empty.title":`No hay servidores MCP configurados`,"settings.mcp.sidebar.empty.description":`Usa el botón + arriba para añadir uno`,"settings.mcp.sidebar.group.projectServers":`Servidores del proyecto`,"settings.mcp.sidebar.group.userServers":`Servidores del usuario`,"settings.mcp.sidebar.serverType.localTitle":`Servidor local`,"settings.mcp.sidebar.serverType.remoteTitle":`Servidor remoto`,"settings.mcp.sidebar.deleteDialog.title":`Eliminar servidor MCP`,"settings.mcp.sidebar.deleteDialog.descriptionPrefix":`¿Seguro que quieres eliminar "{name}"? Esto lo eliminará de`,"settings.mcp.sidebar.toast.deleteFailed":`No se pudo eliminar el servidor MCP`,"settings.mcp.sidebar.toast.serverDeleted":`Servidor MCP "{name}" eliminado`,"settings.mcp.sidebar.toast.refreshListIfStale":`Actualiza la lista de MCP si la interfaz parece desactualizada.`,"settings.plugins.sidebar.title":`Plugins`,"settings.plugins.sidebar.total":`Total: {count}`,"settings.plugins.sidebar.actions.addTitle":`Añadir plugin`,"settings.plugins.sidebar.actions.deleting":`Eliminando…`,"settings.plugins.sidebar.empty.title":`No hay plugins configurados`,"settings.plugins.sidebar.empty.description":`Usa el botón + de arriba para añadir uno`,"settings.plugins.sidebar.group.userEntries":`Configuración de usuario`,"settings.plugins.sidebar.group.userFiles":`Archivo de plugin de usuario`,"settings.plugins.sidebar.group.projectEntries":`Configuración del proyecto`,"settings.plugins.sidebar.group.projectFiles":`Archivo de plugin del proyecto`,"settings.plugins.sidebar.kind.npm":`paquete npm`,"settings.plugins.sidebar.kind.path":`Ruta local`,"settings.plugins.sidebar.kind.file":`Archivo de plugin`,"settings.plugins.sidebar.deleteDialog.title":`Eliminar plugin`,"settings.plugins.sidebar.deleteDialog.description":`¿Seguro que quieres eliminar "{name}"?`,"settings.plugins.sidebar.toast.deleted":`Plugin "{name}" eliminado`,"settings.plugins.sidebar.toast.deleteFailed":`No se pudo eliminar el plugin`,"settings.plugins.page.empty.select":`Selecciona un plugin para verlo o editarlo`,"settings.plugins.page.empty.add":`O haz clic en + para añadir un plugin nuevo`,"settings.plugins.page.header.entry":`Plugin instalado`,"settings.plugins.page.header.file":`Archivo de plugin`,"settings.plugins.page.field.spec":`Especificación`,"settings.plugins.page.field.spec.placeholder":`paquete-npm@versión o /ruta/absoluta`,"settings.plugins.page.field.options":`Opciones (JSON)`,"settings.plugins.page.field.options.invalidJson":`JSON no válido`,"settings.plugins.page.field.fileName":`Nombre de archivo`,"settings.plugins.page.field.content":`Contenido`,"settings.plugins.page.field.scope":`Ámbito`,"settings.plugins.scope.user":`Usuario`,"settings.plugins.scope.project":`Proyecto`,"settings.plugins.page.action.save":`Guardar`,"settings.plugins.page.action.discard":`Descartar`,"settings.plugins.dialog.add.title":`Añadir plugin`,"settings.plugins.dialog.add.tab.npm":`Desde npm`,"settings.plugins.dialog.add.tab.path":`Desde ruta local`,"settings.plugins.dialog.add.tab.file":`Archivo nuevo`,"settings.plugins.dialog.add.action.submit":`Añadir`,"settings.plugins.dialog.add.action.cancel":`Cancelar`,"settings.plugins.toast.created":`Plugin añadido`,"settings.plugins.toast.updated":`Plugin actualizado`,"settings.plugins.toast.reloadFailed":`Falló la recarga de opencode; se requiere reiniciar`,"settings.plugins.validation.fileName":`El nombre de archivo debe estar en minúsculas y terminar en .js / .ts / .mjs / .cjs`,"settings.plugins.validation.specRequired":`La especificación es obligatoria`,"settings.plugins.registry.badge.update.label":`↑ {version}`,"settings.plugins.registry.badge.update.tooltip":`Actualización disponible: {current} → {latest}`,"settings.plugins.registry.badge.malformed.tooltip":`La especificación no es válida`,"settings.plugins.registry.badge.missingPackage.tooltip":`No se encontró el paquete {name} en npm`,"settings.plugins.registry.badge.missingVersion.tooltip":`La versión {version} de {name} no está publicada`,"settings.plugins.registry.badge.pathMissing.tooltip":`Archivo no encontrado: {path}`,"settings.plugins.registry.badge.pathUnreadable.tooltip":`No se puede leer el archivo: {path}`,"settings.plugins.registry.badge.network.tooltip":`No se pudo conectar con el registro de npm`,"settings.plugins.registry.banner.updateAvailable.title":`Actualización disponible`,"settings.plugins.registry.banner.updateAvailable.description":`{current} → {latest}`,"settings.plugins.registry.banner.updateAvailable.action":`Actualizar a {latest}`,"settings.plugins.registry.banner.invalid.title":`Plugin no válido`,"settings.plugins.registry.banner.invalid.malformed":`La sintaxis de la especificación no es válida`,"settings.plugins.registry.banner.invalid.missingPackage":`Paquete no encontrado en npm`,"settings.plugins.registry.banner.invalid.missingVersion":`Versión no publicada`,"settings.plugins.registry.banner.invalid.pathMissing":`El archivo no existe`,"settings.plugins.registry.banner.invalid.pathUnreadable":`No se puede leer el archivo`,"settings.plugins.sidebar.actions.updateToLatest":`Actualizar a la última versión`,"settings.plugins.sidebar.actions.refresh":`Buscar actualizaciones`,"settings.plugins.sidebar.group.updatesAvailable_one":`{count} actualización disponible`,"settings.plugins.sidebar.group.updatesAvailable_other":`{count} actualizaciones disponibles`,"settings.plugins.toast.updatedToLatest":`Plugin actualizado a {version}`,"settings.plugins.toast.refreshing":`Buscando actualizaciones en npm…`,"settings.plugins.toast.refreshFailed":`No se pudo consultar el registro de npm`,"settings.openchamber.keyboardShortcuts.title":`Atajos de teclado`,"settings.openchamber.keyboardShortcuts.actions.resetAll":`Restablecer todo`,"settings.openchamber.keyboardShortcuts.actions.overwrite":`Sobrescribir`,"settings.openchamber.keyboardShortcuts.tooltip":`Captura una nueva combinación de teclas, guárdala y los enlaces se actualizarán inmediatamente.`,"settings.openchamber.keyboardShortcuts.overwritePrompt":`Esta combinación ya está usada por otro atajo. ¿Sobrescribir y limpiar esa otra asignación?`,"settings.openchamber.keyboardShortcuts.field.pressKeys":`Pulsa las teclas...`,"settings.openchamber.keyboardShortcuts.error.captureFirst":`Captura un atajo primero.`,"settings.openchamber.keyboardShortcuts.warning.riskyBrowserShortcut":`Este atajo puede entrar en conflicto con los predeterminados del navegador. Todavía se guarda.`,"settings.openchamber.keyboardShortcuts.action.open_go_to_line.label":`Ir a línea (editor de archivos)`,"settings.openchamber.keyboardShortcuts.action.open_command_palette.label":`Abrir paleta de comandos`,"settings.openchamber.keyboardShortcuts.action.focus_input.label":`Enfocar entrada`,"settings.openchamber.keyboardShortcuts.action.open_settings.label":`Abrir configuración`,"settings.openchamber.keyboardShortcuts.action.toggle_terminal.label":`Mostrar u ocultar terminal`,"settings.openchamber.keyboardShortcuts.action.toggle_bottom_panel.label":`Mostrar u ocultar el panel inferior`,"settings.openchamber.keyboardShortcuts.action.toggle_terminal_expanded.label":`Expandir o contraer terminal`,"settings.openchamber.keyboardShortcuts.action.new_terminal_tab.label":`Nueva pestaña de terminal`,"settings.openchamber.keyboardShortcuts.action.open_new_terminal.label":`Abrir terminal nuevo`,"settings.openchamber.keyboardShortcuts.action.previous_terminal_tab.label":`Pestaña de terminal anterior`,"settings.openchamber.keyboardShortcuts.action.next_terminal_tab.label":`Pestaña de terminal siguiente`,"settings.openchamber.keyboardShortcuts.action.toggle_sidebar.label":`Mostrar u ocultar barra lateral`,"settings.openchamber.keyboardShortcuts.action.toggle_right_sidebar.label":`Mostrar u ocultar panel de revisión`,"settings.openchamber.keyboardShortcuts.action.open_right_sidebar_git.label":`Abrir pestaña de Git en barra lateral derecha`,"settings.openchamber.keyboardShortcuts.action.open_right_sidebar_files.label":`Abrir pestaña de Archivos en barra lateral derecha`,"settings.openchamber.keyboardShortcuts.action.cycle_right_sidebar_tab.label":`Cambiar pestaña de la barra lateral derecha`,"settings.openchamber.keyboardShortcuts.action.close_context_panel_tab.label":`Cerrar pestaña del panel de contexto`,"settings.openchamber.keyboardShortcuts.action.previous_session.label":`Sesión anterior`,"settings.openchamber.keyboardShortcuts.action.next_session.label":`Sesión siguiente`,"settings.openchamber.keyboardShortcuts.action.new_chat.label":`Nueva sesión`,"settings.openchamber.keyboardShortcuts.action.new_chat_worktree.label":`Nuevo borrador de worktree`,"settings.openchamber.keyboardShortcuts.action.new_mini_chat.label":`Nueva ventana Mini Chat`,"settings.openchamber.keyboardShortcuts.action.open_help.label":`Abrir atajos de teclado`,"settings.openchamber.keyboardShortcuts.action.toggle_context_plan.label":`Alternar panel de plan de contexto`,"settings.openchamber.keyboardShortcuts.action.toggle_services_menu.label":`Mostrar u ocultar menú de servicios`,"settings.openchamber.keyboardShortcuts.action.open_usage.label":`Ver uso`,"settings.openchamber.keyboardShortcuts.action.cycle_services_tab.label":`Cambiar pestaña de servicios`,"settings.openchamber.keyboardShortcuts.action.cycle_theme.label":`Cambiar tema`,"settings.openchamber.keyboardShortcuts.action.zoom_in.label":`Acercar`,"settings.openchamber.keyboardShortcuts.action.zoom_out.label":`Alejar`,"settings.openchamber.keyboardShortcuts.action.zoom_reset.label":`Restablecer zoom`,"settings.openchamber.keyboardShortcuts.action.cycle_agent.label":`Cambiar agente`,"settings.openchamber.keyboardShortcuts.action.cycle_favorite_model_forward.label":`Siguiente modelo favorito`,"settings.openchamber.keyboardShortcuts.action.cycle_favorite_model_backward.label":`Modelo favorito anterior`,"settings.openchamber.keyboardShortcuts.action.open_model_selector.label":`Abrir selector de modelo`,"settings.openchamber.keyboardShortcuts.action.expand_input.label":`Expandir entrada`,"settings.openchamber.keyboardShortcuts.action.clear_all_messages.label":`Borrar todos los mensajes`,"settings.openchamber.keyboardShortcuts.action.open_timeline_dialog.label":`Abrir línea de tiempo de conversación`,"settings.openchamber.keyboardShortcuts.action.toggle_prompt_navigator.label":`Mostrar u ocultar navegador de prompts`,"settings.projects.sidebar.total":`Total {count}`,"settings.projects.sidebar.actions.addProject":`Añadir proyecto`,"settings.projects.page.empty.noProjects":`No hay proyectos disponibles.`,"settings.projects.page.title.default":`Configuración del proyecto`,"settings.projects.page.section.worktree":`Worktree`,"settings.projects.page.field.projectName":`Nombre del proyecto`,"settings.projects.page.field.projectNamePlaceholder":`Nombre del proyecto`,"settings.projects.page.field.defaultModel":`Modelo predeterminado para chats nuevos`,"settings.projects.page.field.defaultModelDescription":`Se usa al iniciar un chat nuevo en este proyecto. Si no se define, se usan los valores globales.`,"settings.projects.page.field.accentColor":`Color de énfasis`,"settings.projects.page.field.projectIcon":`Icono del proyecto`,"settings.projects.page.field.projectIconBackgroundAria":`Color de fondo del icono del proyecto`,"settings.projects.page.field.clearIconBackgroundAria":`Limpiar color de fondo del icono`,"settings.projects.page.field.clearBackground":`Limpiar fondo`,"settings.projects.page.field.none":`Ninguno`,"settings.projects.page.field.preview":`Vista previa`,"settings.projects.page.actions.uploadIcon":`Subir icono`,"settings.projects.page.actions.uploading":`Subiendo...`,"settings.projects.page.actions.discoverFavicon":`Buscar favicon`,"settings.projects.page.actions.discovering":`Descubriendo...`,"settings.projects.page.actions.removeProjectIcon":`Eliminar icono del proyecto`,"settings.projects.page.actions.removing":`Eliminando...`,"settings.projects.page.actions.undoRemove":`Deshacer eliminación`,"settings.projects.page.toast.uploadIconFailed":`No se pudo subir el icono del proyecto`,"settings.projects.page.toast.iconUpdated":`Icono del proyecto actualizado`,"settings.projects.page.toast.removeIconFailed":`No se pudo eliminar el icono del proyecto`,"settings.projects.page.toast.iconRemoved":`Icono del proyecto eliminado`,"settings.projects.page.toast.discoverIconFailed":`No se pudo descubrir el icono del proyecto`,"settings.projects.page.toast.customIconAlreadySet":`Icono personalizado ya establecido para este proyecto`,"settings.projects.page.toast.iconDiscovered":`Icono del proyecto descubierto`,"settings.projects.page.toast.saveFailed":`Error al guardar la configuración del proyecto`,"settings.usage.sidebar.title":`Uso`,"settings.usage.sidebar.total":`Total {count}`,"settings.usage.sidebar.actions.toggleAutoRefreshAria":`Alternar refresco automático`,"settings.usage.sidebar.field.autoRefresh":`Actualización automática`,"settings.usage.sidebar.field.refreshInterval":`Intervalo de actualización`,"settings.usage.sidebar.actions.refreshAria":`Actualizar uso`,"settings.usage.sidebar.actions.refreshTitle":`Actualizar uso`,"settings.usage.sidebar.tooltip.autoRefresh":`Actualizar automáticamente los datos de uso en el intervalo establecido`,"settings.usage.sidebar.field.intervalPlaceholder":`Intervalo`,"settings.usage.sidebar.field.display":`Visualización`,"settings.usage.sidebar.field.displayModePlaceholder":`Modo de visualización`,"settings.usage.sidebar.field.displayModeUsage":`Uso`,"settings.usage.sidebar.field.displayModeRemaining":`Cuota restante`,"settings.usage.sidebar.field.showPredictions":`Mostrar predicciones`,"settings.usage.sidebar.status.notSet":`No establecido`,"settings.usage.page.empty.selectProvider":`Selecciona un proveedor para ver detalles de uso.`,"settings.usage.page.header.providerUsage":`Uso de {provider}`,"settings.usage.page.header.refreshing":`Actualizando uso...`,"settings.usage.page.header.lastUpdated":`Última actualización: {time}`,"settings.usage.page.options.showInHeaderAria":`Mostrar en menú de encabezado`,"settings.usage.page.options.showInHeader":`Mostrar en el menú del encabezado`,"settings.usage.page.options.showInHeaderTooltip":`Cuando esté habilitado, el uso de este proveedor será visible en el menú de acceso rápido del encabezado de la aplicación.`,"settings.usage.page.state.noData":`No hay datos de uso disponibles aún.`,"settings.usage.page.state.refreshFailedTitle":`No se pudo actualizar los datos de uso`,"settings.usage.page.state.providerNotConfiguredTitle":`Proveedor no configurado`,"settings.usage.page.state.providerNotConfiguredDescription":`Añade credenciales en la pestaña de Proveedores para habilitar el seguimiento de uso.`,"settings.usage.page.section.modelQuotas":`Cuotas de modelo`,"settings.usage.page.section.otherModels":`Otros modelos`,"settings.usage.page.state.noQuotaWindowsTitle":`No se reportaron ventanas de cuota`,"settings.usage.page.state.noQuotaWindowsDescription":`Este proveedor actualmente no reporta límites de tasa ni cuotas de uso.`,"settings.usage.pace.status.onTrack":`A buen ritmo`,"settings.usage.pace.status.slightlyFast":`Ligeramente rápido`,"settings.usage.pace.status.tooFast":`Demasiado rápido`,"settings.usage.pace.status.usedUp":`Agotado`,"settings.usage.pace.predictionTooltip":`Uso predicho al final de la ventana basado en la velocidad actual: {prediction}`,"settings.usage.pace.wait":`Esperar {duration}`,"settings.usage.pace.prediction":`Pred.: {prediction}`,"settings.usage.pace.rate":`Velocidad: {rate}`,"settings.usage.pace.waitSeparator":` · Esperar `,"settings.usage.pace.predictionLabel":`Pred.: `,"settings.remoteInstances.page.title":`Instancia remota`,"settings.remoteInstances.page.description":`Conéctate a otra máquina por SSH y abre OpenChamber allí.`,"settings.remoteInstances.page.empty.selectInstance":`Selecciona una instancia para ver y editar sus configuraciones.`,"settings.remoteInstances.page.empty.noExtraForwards":`No hay redirecciones adicionales de puerto configuradas.`,"settings.remoteInstances.page.section.actions":`Acciones`,"settings.remoteInstances.page.section.actionsDescription":`Conecta, reconecta, revisa registros o elimina esta conexión.`,"settings.remoteInstances.page.section.remoteServer":`OpenChamber en la máquina remota`,"settings.remoteInstances.page.section.remoteServerDescription":`Elige cómo debe ejecutarse OpenChamber después de conectar por SSH.`,"settings.remoteInstances.page.section.mainTunnel":`Acceso local`,"settings.remoteInstances.page.section.mainTunnelDescription":`Elige la dirección local que se usará para abrir este servidor remoto de OpenChamber.`,"settings.remoteInstances.page.section.authentication":`Autenticación`,"settings.remoteInstances.page.section.authenticationDescription":`Credenciales opcionales para SSH y la interfaz de usuario de OpenChamber remoto.`,"settings.remoteInstances.page.section.portForwards":`Redirecciones de puerto`,"settings.remoteInstances.page.section.portForwardsDescription":`Puertos adicionales opcionales que estarán disponibles a través de esta conexión SSH.`,"settings.remoteInstances.page.field.sshCommand":`Comando SSH`,"settings.remoteInstances.page.field.sshCommandPlaceholder":`ssh user@host o ssh user@host:22`,"settings.remoteInstances.page.field.nickname":`Apodo`,"settings.remoteInstances.page.field.nicknamePlaceholder":`Portátil de trabajo`,"settings.remoteInstances.page.field.connectionTimeoutSeconds":`Tiempo de espera de conexión (segundos)`,"settings.remoteInstances.page.field.installMethod":`Método de instalación`,"settings.remoteInstances.page.field.installMethodHint":`Cómo debe colocarse OpenChamber en la máquina remota cuando esta app lo inicia por ti.`,"settings.remoteInstances.page.field.selectInstallMethodPlaceholder":`Seleccionar método de instalación`,"settings.remoteInstances.page.field.installMethodDownloadRelease":`Descargar versión`,"settings.remoteInstances.page.field.installMethodUploadBundle":`Subir paquete`,"settings.remoteInstances.page.field.selectBindHostPlaceholder":`Seleccionar host de enlace`,"settings.remoteInstances.page.field.sshPasswordOptional":`Contraseña SSH (opcional)`,"settings.remoteInstances.page.field.sshPasswordPlaceholder":`Introducir contraseña SSH`,"settings.remoteInstances.page.field.uiPasswordOptional":`Contraseña de interfaz de usuario (opcional)`,"settings.remoteInstances.page.field.uiPasswordPlaceholder":`Introducir contraseña de interfaz de usuario`,"settings.remoteInstances.page.field.forwardTypeHint":`Elige qué tipo de acceso a puertos debe ofrecer esta conexión SSH.`,"settings.remoteInstances.page.field.typePlaceholder":`Tipo`,"settings.remoteInstances.page.forwardType.local":`Local (-L)`,"settings.remoteInstances.page.forwardType.remote":`Remota (-R)`,"settings.remoteInstances.page.forwardType.dynamic":`Dinámica (-D)`,"settings.remoteInstances.page.forwardTypeDescription.local":`Abre un puerto local que se conecta a un servicio en la máquina remota.`,"settings.remoteInstances.page.forwardTypeDescription.remote":`Abre un puerto en la máquina remota que vuelve a conectarse a tu ordenador.`,"settings.remoteInstances.page.forwardTypeDescription.dynamic":`Abre un proxy SOCKS local a través de la conexión SSH.`,"settings.remoteInstances.page.actions.create":`Crear`,"settings.remoteInstances.page.actions.cancel":`Cancelar`,"settings.remoteInstances.page.actions.connecting":`Conectando...`,"settings.remoteInstances.page.actions.reconnecting":`Reconectando...`,"settings.remoteInstances.page.actions.reconnectNow":`Reconectar ahora`,"settings.remoteInstances.page.actions.logs":`Registros SSH`,"settings.remoteInstances.page.actions.pickRandomPort":`Elegir puerto aleatorio`,"settings.remoteInstances.page.actions.enableForwardAria":`Habilitar redirección`,"settings.remoteInstances.page.actions.openLocal":`Abrir local`,"settings.remoteInstances.page.actions.addForward":`Añadir redirección`,"settings.remoteInstances.page.import.sectionTitle":`Hosts SSH guardados`,"settings.remoteInstances.page.import.loading":`Cargando hosts SSH...`,"settings.remoteInstances.page.import.noneFound":`No se encontraron hosts SSH.`,"settings.remoteInstances.page.import.noneAvailable":`No hay hosts SSH disponibles para importar.`,"settings.remoteInstances.page.import.patternSuffix":`(patrón)`,"settings.remoteInstances.page.status.currentLocalUrl":`URL local actual:`,"settings.remoteInstances.page.status.reconnectStale":`La reconexión parece estar atascada. Puedes intentarlo ahora.`,"settings.remoteInstances.page.logsDialog.title":`Registros SSH`,"settings.remoteInstances.page.logsDialog.loading":`Cargando registros...`,"settings.remoteInstances.page.logsDialog.empty":`No hay registros SSH aún.`,"settings.remoteInstances.page.patternDialog.title":`Crear desde patrón comodín`,"settings.remoteInstances.page.patternDialog.destinationPlaceholder":`user@host`,"settings.remoteInstances.page.phase.resolvingConfiguration":`Resolviendo configuración`,"settings.remoteInstances.page.phase.checkingAuth":`Verificando autenticación`,"settings.remoteInstances.page.phase.establishingSsh":`Estableciendo conexión SSH`,"settings.remoteInstances.page.phase.probingRemote":`Comprobando la máquina remota`,"settings.remoteInstances.page.phase.installingOpenChamber":`Instalando OpenChamber`,"settings.remoteInstances.page.phase.updatingOpenChamber":`Actualizando OpenChamber`,"settings.remoteInstances.page.phase.detectingServer":`Detectando servidor`,"settings.remoteInstances.page.phase.startingServer":`Iniciando servidor`,"settings.remoteInstances.page.phase.forwardingPorts":`Redirigiendo puertos`,"settings.remoteInstances.page.phase.reconnecting":`Reconectando`,"settings.remoteInstances.page.confirm.storeSshPasswordPlaintext":`¿Guardar contraseña SSH en texto plano en disco?`,"settings.remoteInstances.page.confirm.storeUiPasswordPlaintext":`¿Guardar contraseña de interfaz de usuario en texto plano en disco?`,"settings.remoteInstances.page.confirm.removeInstance":`¿Eliminar esta instancia remota?`,"settings.remoteInstances.page.sync.title":`Sincronizar la configuración del agente con este remoto`,"settings.remoteInstances.page.sync.description":`Replica tu configuración local de OpenCode (~/.config/opencode), las habilidades del agente (~/.agents) y las credenciales del proveedor (auth.json) en este remoto para que ambos lados coincidan y los inicios de sesión funcionen. Las carpetas enlazadas simbólicamente se copian como archivos reales.`,"settings.remoteInstances.page.sync.step.scanLocal":`Analizando la configuración local`,"settings.remoteInstances.page.sync.step.compareRemote":`Comparando con el remoto`,"settings.remoteInstances.page.sync.step.confirm":`Revisar cambios`,"settings.remoteInstances.page.sync.section.files":`Archivos`,"settings.remoteInstances.page.sync.section.directories":`Directorios`,"settings.remoteInstances.page.sync.section.authFile":`Credenciales del proveedor (auth.json)`,"settings.remoteInstances.page.sync.section.agentsRoot":`Habilidades del agente (~/.agents)`,"settings.remoteInstances.page.sync.section.agentsRootCount":`{count} archivos`,"settings.remoteInstances.page.sync.status.overwrite":`Se sobrescribirá`,"settings.remoteInstances.page.sync.status.add":`Se añadirá`,"settings.remoteInstances.page.sync.note.deletes":`Se eliminarán {count} contraparte(s) remota(s) para que ambos lados coincidan.`,"settings.remoteInstances.page.sync.note.backup":`Los archivos remotos reemplazados se respaldan en ~/.config/opencode/.openchamber.sync-backup; la raíz de agents en ~/.openchamber.sync-backup-agents; auth.json en ~/.openchamber.sync-backup-auth en el remoto.`,"settings.remoteInstances.page.sync.note.excluded":`No se sincroniza: datos de sesión, cachés, node_modules, archivos de bloqueo.`,"settings.remoteInstances.page.sync.state.empty":`Nada que sincronizar: no se encontró configuración compatible en este equipo.`,"settings.remoteInstances.page.sync.state.error":`Error al inspeccionar el remoto: {message}`,"settings.remoteInstances.page.sync.state.unavailable":`La sincronización de configuración no está disponible en esta ventana. Vuelve a abrir esta página desde la aplicación de escritorio de OpenChamber (reinicia la app de desarrollo si está en ejecución) e inténtalo de nuevo.`,"settings.remoteInstances.page.sync.applying":`Sincronizando...`,"settings.remoteInstances.page.sync.actions.syncNow":`Sincronizar ahora`,"settings.remoteInstances.page.sync.actions.cancel":`Ahora no`,"settings.remoteInstances.page.sync.toast.success":`Configuración del agente sincronizada con el remoto`,"settings.remoteInstances.page.sync.toast.failed":`Error al sincronizar la configuración de OpenCode`,"settings.remoteInstances.page.toast.sshCommandRequired":`Se requiere el comando SSH`,"settings.remoteInstances.page.toast.saveFailed":`No se pudo guardar la instancia`,"settings.remoteInstances.page.toast.instanceSaved":`Instancia guardada`,"settings.remoteInstances.page.toast.instanceCreated":`Instancia creada`,"settings.remoteInstances.page.toast.destinationRequired":`Se requiere destino`,"settings.remoteInstances.page.toast.noLogsToCopy":`No hay registros para copiar`,"settings.remoteInstances.page.toast.logsCopied":`Registros copiados`,"settings.remoteInstances.page.toast.logsCleared":`Registros eliminados`,"settings.remoteInstances.page.toast.clearLogsFailed":`No se pudieron eliminar los registros`,"settings.remoteInstances.page.toast.instanceUrlUnavailable":`La URL de la instancia no está disponible`,"settings.remoteInstances.page.toast.connectFailed":`No se pudo conectar con la instancia`,"settings.remoteInstances.page.toast.cancelConnectionFailed":`No se pudo cancelar la conexión`,"settings.remoteInstances.page.toast.disconnectFailed":`No se pudo desconectar la instancia`,"settings.remoteInstances.page.toast.retryFailed":`No se pudo reintentar la conexión`,"settings.remoteInstances.page.toast.instanceRemoved":`Instancia eliminada`,"settings.remoteInstances.page.toast.removeInstanceFailed":`No se pudo eliminar la instancia`,"settings.openchamber.worktrees.state.selectProject":`Selecciona un proyecto para gestionar worktrees.`,"settings.openchamber.worktrees.state.gitOnly":`La configuración de worktree solo está disponible para repositorios Git.`,"settings.openchamber.worktrees.setup.title":`Comandos de configuración`,"settings.openchamber.worktrees.setup.tooltipPrefix":`Ejecútalo automáticamente dentro del directorio del nuevo worktree cuando se crea un worktree. Usa`,"settings.openchamber.worktrees.setup.tooltipSuffix":`para la raíz del proyecto.`,"settings.openchamber.worktrees.setup.loading":`Cargando...`,"settings.openchamber.worktrees.setup.commandPlaceholder":`ej.: bun install`,"settings.openchamber.worktrees.setup.removeCommandAria":`Eliminar comando`,"settings.openchamber.worktrees.setup.addCommand":`Añadir comando`,"settings.openchamber.worktrees.setup.waitForCommands":`Esperar a que terminen los comandos de configuración antes de crear o enviar una sesión`,"settings.openchamber.worktrees.setup.waitForCommandsAria":`Esperar los comandos de configuración de Worktree antes de crear o enviar una sesión`,"settings.openchamber.worktrees.setup.toast.saveFailed":`Error al guardar los comandos de configuración del worktree`,"settings.openchamber.worktrees.list.title":`Worktrees existentes`,"settings.openchamber.worktrees.list.tooltip":`Los worktrees existen fuera del repositorio (gestionados por OpenCode). Eliminar un worktree también elimina las sesiones vinculadas.`,"settings.openchamber.worktrees.list.loading":`Cargando worktrees...`,"settings.openchamber.worktrees.list.empty":`No se encontraron worktrees para este proyecto`,"settings.openchamber.worktrees.list.detachedHead":`HEAD desvinculado`,"settings.openchamber.worktrees.list.deleteWorktreeAria":`Eliminar worktree {name}`,"settings.agents.modelSelector.title":`Seleccionar modelo`,"settings.agents.modelSelector.searchPlaceholder":`Buscar modelos`,"settings.agents.modelSelector.selectPlaceholder":`Seleccionar modelo...`,"settings.agents.modelSelector.notSelected":`No seleccionado`,"settings.agents.modelSelector.noModelOptional":`Sin modelo (opcional)`,"settings.agents.modelSelector.section.favorites":`Favoritos`,"settings.agents.modelSelector.section.recents":`Recientes`,"settings.agents.modelSelector.section.recent":`Reciente`,"settings.agents.modelSelector.badge.current":`Actual`,"settings.agents.modelSelector.actions.favorite":`Favorito`,"settings.agents.modelSelector.actions.unfavorite":`No favorito`,"settings.agents.modelSelector.actions.addToFavorites":`Añadir a favoritos`,"settings.agents.modelSelector.actions.removeFromFavorites":`Eliminar de favoritos`,"settings.agents.modelSelector.state.noModelsFound":`No se encontraron modelos`,"settings.agents.modelSelector.keyboardHints":`↑↓ navegar • Enter seleccionar • Esc cerrar`,"settings.providers.sidebar.title":`Proveedores`,"settings.providers.sidebar.total":`Total {count}`,"settings.providers.sidebar.actions.connectProviderAria":`Conectar proveedor`,"settings.providers.sidebar.actions.connectProviderTitle":`Conectar proveedor`,"settings.providers.sidebar.empty.title":`No se encontraron proveedores`,"settings.providers.sidebar.empty.description":`Revisa tu configuración de OpenCode`,"settings.providers.sidebar.section.userProviders":`Proveedores de usuario`,"settings.providers.sidebar.section.projectProviders":`Proveedores del proyecto`,"settings.providers.page.state.loading":`Cargando...`,"settings.providers.page.state.unableToLoadProviderList":`No se pudo cargar la lista de proveedores`,"settings.providers.page.empty.noProvidersDetected":`No se detectaron proveedores`,"settings.providers.page.empty.checkOpenCodeConfiguration":`Revisa tu configuración de OpenCode`,"settings.providers.page.empty.selectProviderFromSidebar":`Selecciona un proveedor desde el panel lateral`,"settings.providers.page.empty.reviewDetailsAndConfigureAuth":`Revisa los detalles y configura la autenticación`,"settings.providers.page.connect.title":`Conectar proveedor`,"settings.providers.page.connect.selectProviderTitle":`Seleccionar proveedor`,"settings.providers.page.connect.providerField":`Proveedor`,"settings.providers.page.connect.selectProviderPlaceholder":`Seleccionar proveedor`,"settings.providers.page.connect.searchProvidersPlaceholder":`Buscar...`,"settings.providers.page.connect.noProvidersFound":`No se encontraron proveedores`,"settings.providers.page.connect.allProvidersConnected":`Todos los proveedores están conectados.`,"settings.providers.page.auth.title":`Autenticación`,"settings.providers.page.auth.loadingMethods":`Cargando métodos de autenticación...`,"settings.providers.page.auth.apiKeyLabel":`Clave API`,"settings.providers.page.auth.apiKeyTooltip":`Las claves se envían directamente a OpenCode y nunca se almacenan en OpenChamber.`,"settings.providers.page.auth.apiKeyPlaceholder":`sk-...`,"settings.providers.page.auth.oauthMethodFallback":`Método OAuth {index}`,"settings.providers.page.auth.pasteAuthorizationCodePlaceholder":`Pegar código de autorización`,"settings.providers.page.auth.connected":`Conectado`,"settings.providers.page.auth.useReconnectHint":`· Usar Reconnect para actualizar credenciales`,"settings.providers.page.connectionDetails.title":`Detalles de conexión`,"settings.providers.page.connectionDetails.configuredIn":`Configurado en:`,"settings.providers.page.connectionDetails.noActiveSource":`No hay fuente de configuración activa`,"settings.providers.page.connectionDetails.source.authCredentials":`credenciales de autenticación`,"settings.providers.page.connectionDetails.source.userConfig":`configuración del usuario`,"settings.providers.page.connectionDetails.source.projectConfig":`configuración del proyecto`,"settings.providers.page.connectionDetails.source.customConfig":`configuración personalizada`,"settings.providers.page.models.title":`Modelos disponibles`,"settings.providers.page.models.filterPlaceholder":`Filtrar modelos...`,"settings.providers.page.models.noModelsMatchFilter":`No hay modelos que coincidan con este filtro.`,"settings.providers.page.models.capability.toolCalling":`Uso de herramientas`,"settings.providers.page.models.capability.reasoning":`Razonamiento`,"settings.providers.page.models.capability.imageInput":`Entrada de imagen`,"settings.providers.page.models.tokenBadge.context":`ctx`,"settings.providers.page.models.tokenBadge.output":`out`,"settings.providers.page.models.actions.hideModelFromSelectors":`Ocultar modelo en selectores`,"settings.providers.page.models.actions.showModelInSelectors":`Mostrar modelo en selectores`,"settings.providers.page.models.actions.hideModel":`Ocultar modelo`,"settings.providers.page.models.actions.showModel":`Mostrar modelo`,"settings.providers.page.actions.saving":`Guardando...`,"settings.providers.page.actions.saveKey":`Guardar clave`,"settings.providers.page.actions.connect":`Conectar`,"settings.providers.page.actions.copyCode":`Copiar código`,"settings.providers.page.actions.open":`Abrir`,"settings.providers.page.actions.copy":`Copiar`,"settings.providers.page.actions.complete":`Completar`,"settings.providers.page.actions.hide":`Ocultar`,"settings.providers.page.actions.reconnect":`Reconectar`,"settings.providers.page.actions.disconnecting":`Desconectando...`,"settings.providers.page.actions.disconnect":`Desconectar`,"settings.providers.page.actions.hideAll":`Ocultar todo`,"settings.providers.page.actions.showAll":`Mostrar todo`,"settings.providers.page.toast.authMethodsLoadFailed":`No se pudo cargar los métodos de autenticación del proveedor`,"settings.providers.page.toast.providerSourcesLoadFailed":`No se pudo cargar las fuentes del proveedor`,"settings.providers.page.toast.apiKeyRequired":`Se requiere una clave API`,"settings.providers.page.toast.apiKeySaveFailed":`No se pudo guardar la clave API`,"settings.providers.page.toast.apiKeySaved":`Clave API guardada`,"settings.providers.page.toast.oauthStartFailed":`No se pudo iniciar el flujo OAuth`,"settings.providers.page.toast.oauthDetailsMissing":`No se devolvieron detalles de OAuth`,"settings.providers.page.toast.completeOAuthInBrowser":`Completa el flujo OAuth en tu navegador`,"settings.providers.page.toast.oauthCompleteFailed":`No se pudo completar el flujo OAuth`,"settings.providers.page.toast.oauthCompleted":`Conexión OAuth completada`,"settings.providers.page.toast.oauthLinkCopied":`Enlace de OAuth copiado`,"settings.providers.page.toast.oauthLinkCopyFailed":`No se pudo copiar el enlace de OAuth`,"settings.providers.page.toast.deviceCodeCopied":`Código de dispositivo copiado`,"settings.providers.page.toast.deviceCodeCopyFailed":`No se pudo copiar el código de dispositivo`,"settings.providers.page.toast.providerDisconnected":`Proveedor desconectado`,"settings.providers.page.toast.providerDisconnectFailed":`No se pudo desconectar el proveedor`,"settings.mcp.page.empty.selectServer":`Selecciona un servidor MCP desde el panel lateral`,"settings.mcp.page.empty.addNewOne":`o añade uno nuevo`,"settings.mcp.page.header.newServer":`Nuevo servidor MCP`,"settings.mcp.page.header.configureNewServer":`Configurar un nuevo servidor MCP`,"settings.mcp.page.header.transport":`{type} transporte`,"settings.mcp.page.transport.local":`Local · stdio`,"settings.mcp.page.transport.remote":`Remoto · SSE`,"settings.mcp.page.status.label.connected":`Conectado`,"settings.mcp.page.status.label.failed":`Fallido`,"settings.mcp.page.status.label.needsAuth":`Necesita autenticación`,"settings.mcp.page.status.label.needsRegistration":`Necesita registro`,"settings.mcp.page.status.description.connected":`Conectado y listo para que OpenCode descubra herramientas y recursos.`,"settings.mcp.page.status.description.failedDefault":`OpenCode no pudo alcanzar este servidor MCP.`,"settings.mcp.page.status.description.needsAuth":`Este servidor MCP remoto requiere autorización antes de poder conectarse.`,"settings.mcp.page.status.description.needsClientRegistrationDefault":`Este servidor MCP remoto requiere registro del cliente antes de completar la autorización.`,"settings.mcp.page.status.description.disabled":`Este servidor MCP está desactivado en la configuración.`,"settings.mcp.page.status.description.default":`Actualiza o prueba la conexión para cargar el estado de ejecución en tiempo real.`,"settings.mcp.page.status.runtimeStatus":`Estado de ejecución`,"settings.mcp.page.status.projectScopedTo":`Alcance del proyecto: {directory}`,"settings.mcp.page.status.userScoped":`Configuración de alcance del usuario`,"settings.mcp.page.status.activeProject":`el proyecto activo`,"settings.mcp.page.actions.connect":`Conectar`,"settings.mcp.page.actions.disconnect":`Desconectar`,"settings.mcp.page.actions.authorize":`Autorizar`,"settings.mcp.page.actions.reauthorize":`Reautorizar`,"settings.mcp.page.actions.clearAuth":`Limpiar autenticación`,"settings.mcp.page.actions.test":`Probar`,"settings.mcp.page.actions.testConnection":`Probar conexión`,"settings.mcp.page.actions.working":`Trabajando...`,"settings.mcp.page.actions.starting":`Iniciando...`,"settings.mcp.page.actions.clearing":`Limpiando...`,"settings.mcp.page.actions.testing":`Probando...`,"settings.mcp.page.actions.completing":`Completando...`,"settings.mcp.page.actions.completeAuthorization":`Completar autorización`,"settings.mcp.page.actions.openInBrowser":`Abrir en el navegador`,"settings.mcp.page.actions.copyLink":`Copiar enlace`,"settings.mcp.page.actions.deleting":`Eliminando…`,"settings.mcp.page.auth.authorizationUrl":`URL de autorización`,"settings.mcp.page.auth.manualFallbackTitle":`Autenticación manual alternativa`,"settings.mcp.page.auth.manualFallbackDescription":`Si el navegador vuelve a una máquina diferente o muestra una URL de callback con un código, pega esa URL completa o el código sin formato aquí.`,"settings.mcp.page.auth.callbackInputPlaceholder":`Pega la URL de callback o el código de autorización`,"settings.mcp.page.auth.waitingForOpenCode":`Esperando a que OpenCode observe el flujo de autorización completado por el navegador...`,"settings.mcp.page.server.title":`Servidor`,"settings.mcp.page.server.name":`Nombre del servidor`,"settings.mcp.page.server.namePlaceholder":`my-mcp-server`,"settings.mcp.page.server.importJson":`Importar desde un fragmento JSON`,"settings.mcp.page.server.importJsonTitle":`Importa una configuración completa del servidor MCP desde un fragmento JSON`,"settings.mcp.page.server.enable":`Habilitar servidor`,"settings.mcp.page.server.enableAria":`Habilitar servidor`,"settings.mcp.page.server.transportMode":`Modo de transporte`,"settings.mcp.page.connection.command":`Comando`,"settings.mcp.page.connection.serverUrl":`URL del servidor`,"settings.mcp.page.connection.serverUrlPlaceholder":`https://mcp.example.com/mcp`,"settings.mcp.page.connection.pasteCommand":`Pegar comando`,"settings.mcp.page.connection.pasteCommandTitle":`Pega un comando local desde el portapapeles y divídelo automáticamente`,"settings.mcp.page.connection.previewArgs":`Vista previa ({count} argumentos)`,"settings.mcp.page.advanced.title":`Opciones remotas avanzadas`,"settings.mcp.page.advanced.configure":`Configurar opciones avanzadas`,"settings.mcp.page.advanced.autoDetect":`Detectar automáticamente`,"settings.mcp.page.advanced.custom":`Personalizado`,"settings.mcp.page.advanced.headers":`encabezados`,"settings.mcp.page.advanced.timeoutMs":`Tiempo de espera (ms)`,"settings.mcp.page.advanced.timeoutHint":`Dejar en blanco para usar el tiempo de espera predeterminado de OpenCode para MCP.`,"settings.mcp.page.advanced.requestHeaders":`Encabezados de solicitud`,"settings.mcp.page.advanced.headerNamePlaceholder":`Header-Name`,"settings.mcp.page.advanced.pasteHeaders":`Pegar encabezados`,"settings.mcp.page.advanced.pasteHeadersTitle":`Pega líneas KEY=VALUE de encabezados desde el portapapeles`,"settings.mcp.page.advanced.oauthAutoDetection":`Habilitar detección automática de OAuth`,"settings.mcp.page.advanced.oauthAutoDetectionAria":`Habilitar detección automática de OAuth`,"settings.mcp.page.advanced.oauthClientIdPlaceholder":`OAuth client ID`,"settings.mcp.page.advanced.oauthClientSecretPlaceholder":`OAuth client secret`,"settings.mcp.page.advanced.oauthScopesPlaceholder":`Scopes (separados por espacios)`,"settings.mcp.page.advanced.oauthRedirectUriPlaceholder":`Redirect URI`,"settings.mcp.page.advanced.oauthHint":`Dejar estos campos en blanco para que OpenCode infiera automáticamente la configuración de OAuth del servidor MCP.`,"settings.mcp.page.advanced.oauthCallbackHint":`La autorización basada en el navegador utiliza esta URL de callback cuando el Redirect URI está en blanco:`,"settings.mcp.page.env.title":`Variables de entorno`,"settings.mcp.page.env.key":`Clave`,"settings.mcp.page.env.value":`Valor`,"settings.mcp.page.env.valuePlaceholder":`valor`,"settings.mcp.page.env.hide":`Ocultar`,"settings.mcp.page.env.show":`Mostrar`,"settings.mcp.page.env.addVariable":`Añadir variable`,"settings.mcp.page.env.addEnvironmentVariable":`Añadir variable de entorno`,"settings.mcp.page.env.keyPlaceholder":`API_KEY`,"settings.mcp.page.env.pasteEnv":`Pegar .env`,"settings.mcp.page.env.pasteEnvTitle":`Pega líneas KEY=VALUE desde el portapapeles`,"settings.mcp.page.env.plainTextWarning":`⚠ Los valores se almacenan como texto plano en opencode.json`,"settings.mcp.page.env.removeVariableAria":`Eliminar variable`,"settings.mcp.page.importDialog.title":`Importar fragmento JSON`,"settings.mcp.page.importDialog.description":`Pega un fragmento completo de JSON MCP desde documentos u otro archivo de configuración. Los valores leídos llenarán este formulario para revisión antes de guardar.`,"settings.mcp.page.importDialog.pasteFromClipboard":`Pegar JSON desde el portapapeles`,"settings.mcp.page.deleteDialog.title":`Eliminar "{name}"?`,"settings.mcp.page.deleteDialog.descriptionPrefix":`Esto elimina el servidor de`,"settings.mcp.page.deleteDialog.descriptionSuffix":`OpenCode necesitará recargar.`,"settings.mcp.page.toast.clipboardReadFailed":`No se puede leer el portapapeles`,"settings.mcp.page.toast.configImported":`Configuración MCP importada`,"settings.mcp.page.toast.nameRequired":`Se requiere un nombre`,"settings.mcp.page.toast.serverNameExists":`Ya existe un servidor con este nombre`,"settings.mcp.page.toast.localCommandRequired":`El comando no puede estar vacío para un servidor local`,"settings.mcp.page.toast.remoteUrlRequired":`La URL no puede estar vacía para un servidor remoto`,"settings.mcp.page.toast.serverCreatedReloadFailed":`Servidor MCP creado, pero OpenCode no pudo recargar.`,"settings.mcp.page.toast.savedReloadFailed":`Guardado, pero OpenCode no pudo recargar.`,"settings.mcp.page.toast.retryRefreshHint":`Vuelve a actualizar o vuelve a abrir Configuración antes de autorizar este servidor.`,"settings.mcp.page.toast.serverCreatedReloading":`Servidor MCP creado. OpenCode recargando…`,"settings.mcp.page.toast.savedReloading":`Guardado. OpenCode recargando…`,"settings.mcp.page.toast.saveFailed":`No se pudo guardar`,"settings.mcp.page.toast.unexpectedError":`Ocurrió un error`,"settings.mcp.page.toast.serverDeletedReloadFailed":`"{name}" eliminado, pero OpenCode no pudo recargar`,"settings.mcp.page.toast.refreshListIfStale":`Actualiza la lista de MCP si la interfaz parece desactualizada.`,"settings.mcp.page.toast.serverDeleted":`"{name}" eliminado`,"settings.mcp.page.toast.deleteFailed":`No se pudo eliminar`,"settings.mcp.page.toast.disconnected":`Desconectado`,"settings.mcp.page.toast.connected":`Conectado`,"settings.mcp.page.toast.connectionNeedsAuthorization":`La conexión requiere autorización`,"settings.mcp.page.toast.connectionNeedsClientRegistration":`La conexión requiere registro del cliente`,"settings.mcp.page.toast.connectionFailed":`Error de conexión`,"settings.mcp.page.toast.connectionAttemptFinished":`Intento de conexión finalizado. Refresca el estado para más detalles.`,"settings.mcp.page.toast.createServerBeforeLiveActions":`Crea el servidor antes de ejecutar acciones en vivo`,"settings.mcp.page.toast.saveBeforeLiveActions":`Guarda los cambios antes de ejecutar acciones en tiempo real`,"settings.mcp.page.toast.refreshStatusFailed":`No se pudo actualizar el estado de MCP`,"settings.mcp.page.toast.oauthRedirectUrlBuildFailed":`No se pudo construir la URL de redirección de OAuth de MCP`,"settings.mcp.page.toast.oauthBrowserCallbackSaveFailed":`No se pudo guardar la URL de callback del navegador para la autorización de MCP`,"settings.mcp.page.toast.openCodeReloadFailedAfterCallbackSave":`No se pudo recargar OpenCode después de guardar la URL de callback del navegador`,"settings.mcp.page.toast.completeAuthorizationInBrowserWithPaste":`Completa el flujo de autorización de MCP en tu navegador, luego pega el código o URL de callback devuelto aquí`,"settings.mcp.page.toast.completeAuthorizationInBrowser":`Completa el flujo de autorización de MCP en tu navegador`,"settings.mcp.page.toast.openAuthorizationUrlFailed":`No se pudo abrir la URL de autorización automáticamente`,"settings.mcp.page.toast.authorizationStartFailed":`No se pudo iniciar la autorización`,"settings.mcp.page.toast.authSessionExpired":`La sesión de autorización expiró o fue eliminada durante el reinicio. Haz clic en Autorizar nuevamente.`,"settings.mcp.page.toast.savedAuthorizationRemoved":`La autorización guardada de MCP fue eliminada`,"settings.mcp.page.toast.clearAuthorizationFailed":`No se pudo limpiar la autorización`,"settings.mcp.page.toast.authorizationUrlCopied":`URL de autorización copiada`,"settings.mcp.page.toast.authorizationUrlCopyFailed":`No se pudo copiar la URL de autorización`,"settings.mcp.page.toast.pasteCallbackOrCodeFirst":`Pega primero la URL de callback o el código de autorización`,"settings.mcp.page.toast.missingServerDetails":`Detalles del servidor MCP faltantes. Selecciona el servidor nuevamente o pega la URL completa de callback.`,"settings.mcp.page.toast.authorizationCompleted":`Autorización de MCP completada`,"settings.mcp.page.toast.authorizationCompletedFor":`Autorización de MCP completada para {name}`,"settings.mcp.page.toast.authorizationCompleteFailed":`No se pudo completar la autorización de MCP`,"settings.mcp.page.toast.enableServerBeforeTest":`Habilita este servidor antes de probar la conexión`,"settings.mcp.page.toast.connectionTestSucceeded":`Prueba de conexión correcta`,"settings.mcp.page.toast.connectionTestFailed":`No se pudo probar la conexión`,"settings.mcp.page.toast.connectionTestFinished":`Prueba de conexión finalizada. Actualiza el estado para ver detalles.`,"settings.mcp.page.toast.authorizationFailed":`No se pudo autorizar`,"settings.mcp.page.toast.authorizationStillInProgress":`La autorización aún está en progreso en tu navegador. Pega la URL de callback o el código si es necesario.`,"settings.mcp.page.toast.noKeyValuePairsFound":`No se encontraron pares KEY=VALUE en el portapapeles`,"settings.mcp.page.toast.importedVariablesCount":`Variables importadas: {count}`,"settings.mcp.page.toast.pastedArgumentsCount":`Argumentos pegados: {count}`,"settings.shared.projectSelector.fallbackProject":`Proyecto`,"settings.shared.projectSelector.switchProjectAria":`Cambiar proyecto`,"settings.shared.projectSelector.switchProjectTitle":`Cambiar proyecto`,"settings.openchamber.defaults.title":`Configuración por defecto`,"settings.openchamber.defaults.summaryPrefix":`Las nuevas sesiones comenzarán con:`,"settings.openchamber.defaults.summaryOpenCodeDefault":`Agente OpenCode por defecto`,"settings.openchamber.defaults.field.defaultModel":`Modelo por defecto`,"settings.openchamber.defaults.field.defaultThinking":`Pensamiento por defecto`,"settings.openchamber.defaults.field.thinkingPlaceholder":`Pensando`,"settings.openchamber.defaults.field.defaultAgent":`Agente por defecto`,"settings.openchamber.defaults.field.showDeletionDialogAria":`Mostrar diálogo de eliminación`,"settings.openchamber.defaults.smallModel.title":`Modelo pequeño`,"settings.openchamber.defaults.smallModel.description":`Un modelo económico para tareas utilitarias rápidas, como recapitulaciones y resúmenes breves.`,"settings.openchamber.defaults.smallModel.useDefault":`Usar el modelo pequeño predeterminado`,"settings.openchamber.defaults.smallModel.useDefaultAria":`Usar el modelo pequeño predeterminado`,"settings.openchamber.defaults.smallModel.overrideModel":`Modelo de anulación`,"settings.openchamber.defaults.summary.title":`Resúmenes de IA`,"settings.openchamber.defaults.summary.description":`Configura la generación de mensajes de commit y las actualizaciones automáticas de títulos de sesión.`,"settings.openchamber.defaults.summary.modelSourceAria":`Fuente del modelo de resúmenes`,"settings.openchamber.defaults.summary.modelSourceTitle":`Fuente del modelo`,"settings.openchamber.defaults.summary.provider":`Proveedor de OpenCode`,"settings.openchamber.defaults.summary.providerDescription":`Usa un proveedor de OpenCode autenticado y muestra los modelos que el servicio de resúmenes puede llamar.`,"settings.openchamber.defaults.summary.custom":`API personalizada compatible con OpenAI`,"settings.openchamber.defaults.summary.customDescription":`Llama directamente a tu Base URL con el ID del modelo y el token de API indicados abajo.`,"settings.openchamber.defaults.summary.providerUnavailable":`Conecta un proveedor compatible para seleccionar un modelo.`,"settings.openchamber.defaults.summary.providerModel":`Modelo del proveedor`,"settings.openchamber.defaults.summary.baseUrl":`Base URL`,"settings.openchamber.defaults.summary.baseUrlPlaceholder":`https://api.example.com/v1`,"settings.openchamber.defaults.summary.modelId":`ID del modelo`,"settings.openchamber.defaults.summary.modelIdPlaceholder":`gpt-4.1-mini`,"settings.openchamber.defaults.summary.apiToken":`Token de API`,"settings.openchamber.defaults.summary.apiTokenStored":`Token guardado. Introduce un valor para reemplazarlo.`,"settings.openchamber.defaults.summary.apiTokenPlaceholder":`Introduce el token de API`,"settings.openchamber.defaults.summary.clearToken":`Borrar token`,"settings.openchamber.defaults.summary.promptTitle":`Prompts de funciones`,"settings.openchamber.defaults.summary.promptDescription":`Estas instrucciones afectan los mensajes de commit generados y los títulos de sesión automáticos.`,"settings.openchamber.defaults.summary.commitPrompt":`Prompt de commit`,"settings.openchamber.defaults.summary.commitPromptDescription":`Controla la generación del mensaje de commit a partir de los archivos preparados seleccionados.`,"settings.openchamber.defaults.summary.commitPromptPlaceholder":`Déjalo vacío para usar el prompt de commit integrado.`,"settings.openchamber.defaults.summary.sessionTitlePrompt":`Prompt de título de sesión`,"settings.openchamber.defaults.summary.sessionTitlePromptDescription":`Controla los títulos generados cuando una sesión nueva queda inactiva por primera vez y tras períodos posteriores de unos 15 segundos.`,"settings.openchamber.defaults.summary.sessionTitlePromptPlaceholder":`Déjalo vacío para usar el prompt de título integrado.`,"settings.openchamber.defaults.summary.save":`Guardar ajustes de resumen`,"settings.openchamber.defaults.field.showDeletionDialog":`Mostrar diálogo de eliminación`,"settings.openchamber.defaults.field.openFilesPreviewAria":`Abrir archivos previsualizables en modo vista previa`,"settings.openchamber.defaults.field.openFilesPreview":`Abrir archivos previsualizables en modo vista previa`,"settings.openchamber.defaults.option.default":`Predeterminado`,"settings.openchamber.defaults.option.defaultLowercase":`default`,"settings.openchamber.git.title":`Preferencias de Git`,"settings.openchamber.git.changesViewTitle":`Vista de cambios`,"settings.openchamber.git.changesViewAria":`Modo de vista de cambios de Git`,"settings.openchamber.git.option.flatList":`Lista plana`,"settings.openchamber.git.option.treeView":`Vista en árbol`,"settings.openchamber.git.optionAria":`Modo de vista de cambios de Git: {option}`,"settings.openchamber.git.enableGitmojiAria":`Habilitar selector de Gitmoji`,"settings.openchamber.git.enableGitmoji":`Habilitar selector de Gitmoji`,"settings.openchamber.git.showGitignoredAria":`Mostrar archivos gitignored`,"settings.openchamber.git.showGitignored":`Mostrar archivos ignorados por Git`,"settings.github.page.tooltip.connectAccount":`Conecta una cuenta de GitHub para flujos de trabajo de PR e issue dentro de la aplicación.`,"settings.github.page.avatarAlt.withLogin":`Avatar de {login}`,"settings.github.page.avatarAlt.fallback":`Avatar de GitHub`,"settings.github.page.label.unknownUser":`desconocido`,"settings.github.page.label.scopes":`Alcances: {value}`,"settings.github.page.label.otherAccounts":`Cuentas adicionales`,"settings.github.page.accountSource.oauth":`OAuth`,"settings.github.page.accountSource.cli":`CLI`,"settings.github.page.actions.disconnect":`Desconectar`,"settings.github.page.actions.connect":`Conectar GitHub`,"settings.github.page.actions.switchTo":`Cambiar a`,"settings.github.page.actions.addAccount":`Añadir cuenta`,"settings.github.page.actions.openGithub":`Abrir GitHub`,"settings.github.page.status.notConnected":`No conectado`,"settings.github.page.status.active":`Activo`,"settings.github.page.flow.title":`Autorizar OpenChamber`,"settings.github.page.flow.description":`En GitHub, ingresa el siguiente código para autorizar este dispositivo:`,"settings.github.page.flow.waiting":`Esperando aprobación… (actualización automática)`,"settings.github.page.toast.startConnectFailed":`No se pudo iniciar la conexión de GitHub`,"settings.github.page.toast.connected":`Conexión con GitHub establecida`,"settings.github.page.toast.authorizationFailed":`No se pudo autorizar en GitHub`,"settings.github.page.toast.disconnected":`Desconectado de GitHub`,"settings.github.page.toast.disconnectFailed":`No se pudo desconectar de GitHub`,"settings.github.page.toast.accountSwitched":`Cuenta de GitHub cambiada`,"settings.github.page.toast.accountSwitchFailed":`No se pudo cambiar de cuenta de GitHub`,"settings.github.page.oauth.title":`Token OAuth de GitHub`,"settings.github.page.ghCli.title":`Token CLI de GitHub`,"settings.github.page.ghCli.activeDescription":`Autenticado a través de gh CLI`,"settings.github.page.ghCli.fallbackDescription":`Disponible como respaldo si se elimina la autenticación de OpenChamber`,"settings.github.page.ghCli.disabledDescription":`Instalado pero no usado como respaldo`,"settings.github.page.ghCli.actions.disable":`Desactivar`,"settings.github.page.ghCli.actions.enable":`Activar`,"settings.github.page.toast.ghCliEnabled":`Respaldo de gh CLI activado`,"settings.github.page.toast.ghCliDisabled":`Respaldo de gh CLI desactivado`,"settings.github.page.toast.ghCliUpdateFailed":`No se pudo actualizar la configuración de gh CLI`,"settings.notifications.page.delivery.title":`Entrega de notificaciones`,"settings.notifications.page.delivery.enableAria":`Habilitar notificaciones`,"settings.notifications.page.delivery.enableLabel":`Habilitar notificaciones`,"settings.notifications.page.delivery.focusedAria":`Notificar mientras la aplicación esté en foco`,"settings.notifications.page.delivery.focusedLabel":`Notificar mientras la aplicación está en foco`,"settings.notifications.page.delivery.testAction":`Enviar notificación de prueba`,"settings.notifications.page.delivery.browserPermissionHint":`Tu navegador puede solicitar permiso la primera vez.`,"settings.notifications.page.delivery.permissionDenied":`Permiso para notificaciones denegado. Actívalo en la configuración de tu navegador.`,"settings.notifications.page.delivery.permissionGrantedButDisabled":`Permiso concedido, pero las notificaciones están desactivadas.`,"settings.notifications.page.delivery.vscodeHint":`Cuando esté activado, las notificaciones se entregan a través de notificaciones nativas de VS Code.`,"settings.notifications.page.events.title":`Eventos de notificaciones`,"settings.notifications.page.events.completionAria":`Completado del agente`,"settings.notifications.page.events.completionLabel":`Finalización del agente`,"settings.notifications.page.events.subtaskAria":`Completado del subagente`,"settings.notifications.page.events.subtaskLabel":`Finalización del subagente`,"settings.notifications.page.events.errorAria":`Errores del agente`,"settings.notifications.page.events.errorLabel":`Errores del agente`,"settings.notifications.page.events.questionAria":`Preguntas del agente`,"settings.notifications.page.events.questionLabel":`Preguntas del agente`,"settings.notifications.page.template.title":`Plantillas de notificaciones`,"settings.notifications.page.template.variablesLabel":`Variables:`,"settings.notifications.page.template.event.completion":`completion`,"settings.notifications.page.template.event.subtask":`Finalización del subagente`,"settings.notifications.page.template.event.error":`error`,"settings.notifications.page.template.event.question":`question`,"settings.notifications.page.template.field.title":`Título`,"settings.notifications.page.template.field.message":`Mensaje`,"settings.notifications.page.template.defaults.completion.title":`{agent_name} está listo`,"settings.notifications.page.template.defaults.completion.message":`{model_name} completó la tarea`,"settings.notifications.page.template.defaults.error.title":`Error de herramienta`,"settings.notifications.page.template.defaults.error.message":`{last_message}`,"settings.notifications.page.template.defaults.question.title":`Entrada necesaria`,"settings.notifications.page.template.defaults.question.message":`{last_message}`,"settings.notifications.page.template.defaults.subtask.title":`{agent_name} está listo`,"settings.notifications.page.template.defaults.subtask.message":`{model_name} completó la tarea`,"settings.notifications.page.summary.title":`Resumen de IA`,"settings.notifications.page.summary.toggleAria":`Resumir el último mensaje`,"settings.notifications.page.summary.toggleLabel":`Resumir último mensaje`,"settings.notifications.page.summary.requiresTemplateVariable":`Requiere`,"settings.notifications.page.summary.modelLabel":`Modelo de resumen`,"settings.notifications.page.summary.modelTooltip":`Usado para resúmenes de notificaciones y voz.`,"settings.notifications.page.summary.notSelected":`No seleccionado`,"settings.notifications.page.summary.thresholdLabel":`Umbral`,"settings.notifications.page.summary.thresholdHint":`Mensajes más largos que este serán resumidos`,"settings.notifications.page.summary.resetThresholdAria":`Restablecer umbral`,"settings.notifications.page.summary.lengthLabel":`Longitud`,"settings.notifications.page.summary.lengthHint":`Longitud objetivo del resumen en caracteres`,"settings.notifications.page.summary.resetLengthAria":`Restablecer longitud del resumen`,"settings.notifications.page.summary.maxLengthLabel":`Longitud máxima`,"settings.notifications.page.summary.maxLengthHint":`Acortar {last_message} a esta longitud`,"settings.notifications.page.summary.resetMaxLengthAria":`Restablecer longitud máxima del mensaje`,"settings.notifications.page.push.title":`Notificaciones en segundo plan`,"settings.notifications.page.push.enableAria":`Habilitar notificaciones de fondo`,"settings.notifications.page.push.enableLabel":`Habilitar notificaciones en segundo plan`,"settings.notifications.page.push.unsupportedHint":`Las notificaciones en segundo plan no son compatibles. Chrome/Edge de escritorio y Android admiten push. iOS requiere una PWA instalada.`,"settings.notifications.page.push.supportedHint":`Recibe alertas a través del servicio en segundo plan de su sistema operativo`,"settings.notifications.page.push.loadingAria":`Cargando`,"settings.notifications.page.toast.permissionDenied.title":`Permiso para notificaciones denegado`,"settings.notifications.page.toast.permissionDenied.description":`Por favor, habilita las notificaciones en la configuración de tu navegador.`,"settings.notifications.page.toast.permissionDenied.enableInBrowser":`Habilita las notificaciones en la configuración de tu navegador.`,"settings.notifications.page.toast.requestPermissionFailed":`No se pudo solicitar permiso para notificaciones`,"settings.notifications.page.toast.notificationsApiUnavailable":`API de notificaciones no disponible`,"settings.notifications.page.toast.testNotificationSent":`Notificación de prueba enviada con éxito`,"settings.notifications.page.toast.testNotificationFailed":`No se pudo enviar la notificación de prueba`,"settings.notifications.page.toast.pushUnsupported":`Las notificaciones en segundo plan no son compatibles`,"settings.notifications.page.toast.pushApiUnavailable":`API de push no disponible`,"settings.notifications.page.toast.pushKeyLoadFailed":`No se pudo cargar la clave de push`,"settings.notifications.page.toast.enableBackgroundFailed":`No se pudo habilitar notificaciones de fondo`,"settings.notifications.page.toast.backgroundEnabled":`Notificaciones de fondo habilitadas`,"settings.notifications.page.toast.backgroundDisabled":`Notificaciones de fondo deshabilitadas`,"settings.notifications.page.testNotification.title":`Notificación de prueba`,"settings.notifications.page.testNotification.body":`Esta es una notificación de prueba de OpenChamber.`,"settings.voice.page.section.speechRecognition":`Reconocimiento de voz`,"settings.voice.page.field.enableVoiceInput":`Habilitar entrada de voz`,"settings.voice.page.field.enableVoiceInputAria":`Habilitar entrada de voz (dictado)`,"settings.voice.page.section.playbackAndSummary":`Reproducción`,"settings.voice.page.field.provider":`Proveedor`,"settings.voice.page.provider.browser":`Navegador`,"settings.voice.page.provider.custom":`Personalizado`,"settings.voice.page.provider.say":`Decir`,"settings.voice.page.provider.server":`Servidor`,"settings.voice.page.provider.local":`Local`,"settings.voice.page.tooltip.sttLocal":`Transcripción local en el servidor de OpenChamber. Los modelos se descargan automáticamente; no se necesita clave de API.`,"settings.voice.page.tooltip.localTts":`Síntesis local en el servidor de OpenChamber (Kokoro, inglés). El modelo se descarga automáticamente; no se necesita clave de API.`,"settings.voice.page.stt.model.parakeetV2":`Parakeet v2 (inglés)`,"settings.voice.page.stt.model.parakeetV3":`Parakeet v3 (25 idiomas europeos)`,"settings.voice.page.stt.model.whisperBase":`Whisper base (multilingüe)`,"settings.voice.page.stt.model.whisperTiny":`Whisper tiny (multilingüe)`,"settings.voice.page.stt.badge.bestForEnglish":`Mejor para inglés`,"settings.voice.page.stt.badge.bestForMultilingual":`Mejor multilingüe`,"settings.voice.page.stt.meta.accuracy":`Precisión`,"settings.voice.page.stt.meta.speed":`Velocidad`,"settings.voice.page.stt.modelInstalled":`Modelo instalado`,"settings.voice.page.stt.modelDownloading":`Descargando modelo...`,"settings.voice.page.stt.modelDownloadingProgress":`Descargando modelo... {percent}%`,"settings.voice.page.stt.modelNotInstalled":`Modelo no descargado`,"settings.voice.page.stt.modelDownload":`Descargar`,"settings.voice.page.stt.modelDelete":`Eliminar modelo`,"settings.voice.page.stt.modelRetry":`Reintentar`,"settings.voice.page.provider.wasm":`Local`,"settings.voice.page.stt.wasmModel":`Modelo Whisper`,"settings.voice.page.stt.wasmLoaded":`Modelo cargado`,"settings.voice.page.stt.wasmDownloading":`Descargando modelo...`,"settings.voice.page.stt.wasmLoading":`Cargando modelo...`,"settings.voice.page.stt.wasmNotLoaded":`El modelo se descargará en el primer uso de voz`,"settings.voice.page.stt.wasmDownload":`Descargar`,"settings.voice.page.stt.wasmRetry":`Reintentar`,"settings.voice.page.tooltip.browser":`Gratuito, offline, soporte limitado en móvil.`,"settings.voice.page.tooltip.openai":`Calidad alta, compatible con móviles, requiere clave de API.`,"settings.voice.page.tooltip.custom":`Servidor compatible con OpenAI (por ejemplo Kokoro).`,"settings.voice.page.tooltip.say":`Nativo de macOS. Rápido, gratis, offline.`,"settings.voice.page.tooltip.sttBrowser":`API de voz web (Chrome/Edge). Gratis, sin configuración.`,"settings.voice.page.tooltip.sttServer":`Servidor compatible con Whisper de OpenAI. Mayor precisión, cualquier idioma.`,"settings.voice.page.field.apiKey":`Clave de API`,"settings.voice.page.field.apiKeyHintUsingConfig":`Usando la clave de la configuración`,"settings.voice.page.field.apiKeyHintRequired":`OpenAI TTS requiere una clave de API`,"settings.voice.page.field.apiKeyHintProvide":`Proporciona tu clave de OpenAI`,"settings.voice.page.field.serverUrl":`URL del servidor`,"settings.voice.page.field.serverUrlHint":`URL base del servidor compatible con TTS de OpenAI`,"settings.voice.page.field.model":`Modelo`,"settings.voice.page.field.voice":`Voz`,"settings.voice.page.field.voiceIdentifierHint":`Identificador de voz compatible con el servidor`,"settings.voice.page.field.configuredAbove":`Configurado anteriormente`,"settings.voice.page.actions.preview":`Vista previa`,"settings.voice.page.field.selectVoicePlaceholder":`Seleccionar voz`,"settings.voice.page.field.auto":`Automático`,"settings.voice.page.field.speechRate":`Velocidad de habla`,"settings.voice.page.field.speechPitch":`Tono de habla`,"settings.voice.page.field.speechVolume":`Volumen de habla`,"settings.voice.page.field.language":`Idioma`,"settings.voice.page.field.selectLanguagePlaceholder":`Seleccionar idioma`,"settings.voice.page.field.sttBrowserSupportError":`MediaRecorder o AudioContext no están disponibles en este navegador. El STT del servidor puede que no funcione.`,"settings.voice.page.field.sttServerUrlHint":`URL base del servidor compatible con Whisper`,"settings.voice.page.field.sttLanguageHint":`Código BCP-47 (por ejemplo en, fr). Dejar en blanco para detección automática.`,"settings.voice.page.field.silenceThreshold":`Umbral de silencio`,"settings.voice.page.field.silenceHold":`Retención de silencio`,"settings.voice.page.field.transcribeOnStopAria":`Transcribir al detener la grabación`,"settings.voice.page.field.transcribeOnStop":`Transcribir al detener`,"settings.voice.page.field.millisecondsUnit":`ms`,"settings.voice.page.field.messageReadAloudButtonAria":`Botón de lectura en voz alta del mensaje`,"settings.voice.page.field.messageReadAloudButton":`Botón de lectura en voz alta del mensaje`,"settings.voice.page.field.summarizeBeforePlaybackAria":`Resumir antes de la reproducción`,"settings.voice.page.field.summarizeBeforePlayback":`Resumir antes de la reproducción`,"settings.voice.page.field.summarizeVoiceModeResponsesAria":`Resumir respuestas en modo de voz`,"settings.voice.page.field.summarizeVoiceModeResponses":`Resumir respuestas en modo de voz`,"settings.voice.page.field.summarizationThreshold":`Umbral de resumen`,"settings.voice.page.field.summaryMaxLength":`Longitud máxima del resumen`,"settings.voice.page.hint.shiftClickPrefix":`Presionar`,"settings.voice.page.hint.shiftClickSuffix":`en el botón del micrófono para alternar el modo continuo`,"settings.voice.page.preview.browserVoiceFallback":`voz del navegador`,"settings.voice.page.preview.voiceLine":`¡Hola! Soy {voiceName}. Así suena mi voz.`,"settings.voice.page.preview.customServerLine":`¡Hola! Esta es una previsualización del servidor TTS personalizado.`,"settings.voice.page.field.ttsInputMode":`Modo de entrada TTS`,"settings.voice.page.field.ttsInputModeSanitized":`Texto limpio`,"settings.voice.page.field.ttsInputModeRaw":`Markdown sin procesar`,"settings.voice.page.field.ttsInputModeSummarized":`resumido`,"settings.openchamber.visual.section.colorMode":`Tema`,"settings.openchamber.visual.field.themeMode":`Cambiar tema`,"settings.openchamber.visual.field.display":`Visualización`,"settings.openchamber.visual.section.localization":`Localización`,"settings.openchamber.visual.section.spacingAndLayout":`Espaciado y diseño`,"settings.openchamber.visual.section.navigation":`Navegación`,"settings.openchamber.visual.section.chatRenderMode":`Modo de renderizado de chat`,"settings.openchamber.visual.section.chatRenderModeAria":`Modo de renderizado de chat`,"settings.openchamber.visual.section.messageStreamTransport":`Transporte del flujo de mensajes`,"settings.openchamber.visual.section.activityDefault":`Modo predeterminado de actividad`,"settings.openchamber.visual.section.activityDefaultAria":`Modo predeterminado de actividad`,"settings.openchamber.visual.section.showToolsOpenedByDefault":`Mostrar herramientas abiertas por defecto:`,"settings.openchamber.visual.section.sessionAssistance":`Asistencia de sesión`,"settings.openchamber.visual.section.reasoning":`Razonamiento`,"settings.openchamber.visual.section.messageAppearance":`Apariencia de los mensajes`,"settings.openchamber.visual.section.toolsAndFiles":`Herramientas y archivos`,"settings.openchamber.visual.section.composer":`Compositor`,"settings.openchamber.visual.section.userMessageRendering":`Renderizado de mensajes del usuario`,"settings.openchamber.visual.section.userMessageRenderingAria":`Modo de Renderizado de mensajes del usuario`,"settings.openchamber.visual.section.mermaidRendering":`Renderizado de Mermaid`,"settings.openchamber.visual.section.mermaidRenderingAria":`Modo de Renderizado de Mermaid`,"settings.openchamber.visual.section.diffLayout":`Diseño de comparación`,"settings.openchamber.visual.section.diffLayoutAria":`Diseño de comparación`,"settings.openchamber.visual.section.privacy":`Privacidad`,"settings.openchamber.visual.field.lightTheme":`Tema claro`,"settings.openchamber.visual.field.darkTheme":`Tema oscuro`,"settings.openchamber.visual.field.selectLightThemeAria":`Seleccionar tema claro`,"settings.openchamber.visual.field.selectDarkThemeAria":`Seleccionar tema oscuro`,"settings.openchamber.visual.field.selectThemePlaceholder":`Seleccionar tema`,"settings.openchamber.visual.field.timeFormat":`Formato de hora`,"settings.openchamber.visual.field.weekStartsOn":`La semana empieza el`,"settings.openchamber.visual.field.selectTimeFormatAria":`Seleccionar formato de hora`,"settings.openchamber.visual.field.selectWeekStartAria":`Seleccionar inicio de la semana`,"settings.openchamber.visual.actions.reloadThemes":`Recargar temas`,"settings.openchamber.visual.field.macVibrancy":`Transparencia de la ventana`,"settings.openchamber.visual.field.macVibrancyHint":`Usa el desenfoque nativo de macOS (vibrancy) detrás de la barra lateral. Desactívalo para superficies totalmente sólidas y opacas.`,"settings.openchamber.visual.field.dockBadge":`Insignia en el Dock`,"settings.openchamber.visual.field.dockBadgeHint":`Muestra en el icono del Dock de macOS el número de chats con actividad sin ver.`,"settings.openchamber.visual.actions.saveAndRestart":`Guardar y reiniciar`,"settings.openchamber.visual.actions.restarting":`Reiniciando…`,"settings.openchamber.visual.actions.reloadingThemes":`Recargando temas...`,"settings.openchamber.visual.field.themeImportInfoAria":`Información de importación de temas`,"settings.openchamber.visual.field.themeImportInfoTooltip":`Importar temas personalizados desde ~/.config/openchamber/themes/`,"settings.openchamber.visual.field.installAppName":`Nombre de la aplicación para instalar`,"settings.openchamber.visual.field.sidebarBrand":`Marca de la barra lateral`,"settings.openchamber.visual.field.sidebarBrandHint":`Introduce el texto completo del logotipo de la barra lateral. La última palabra separada por espacios usa el color de acento. Déjalo vacío para ocultar el logo.`,"settings.openchamber.visual.field.sidebarBrandAria":`Marca de la barra lateral`,"settings.openchamber.visual.field.installAppNameHint":`Lo usa la instalación de la PWA.`,"settings.openchamber.visual.field.pwaInstallAppNameAria":`Nombre de la aplicación para instalar PWA`,"settings.openchamber.visual.actions.resetInstallAppNameAria":`Restablecer nombre de la aplicación para instalar`,"settings.openchamber.visual.field.installOrientation":`Orientación de instalación`,"settings.openchamber.visual.field.installOrientationHint":`Usado por la aplicación web instalada. Vuelve a instalar la PWA después de cambiar esto.`,"settings.openchamber.visual.field.pwaInstallOrientationAria":`Orientación de instalación de PWA`,"settings.openchamber.visual.field.selectOrientationPlaceholder":`Seleccionar orientación`,"settings.openchamber.visual.actions.resetInstallOrientationAria":`Restablecer orientación de instalación`,"settings.openchamber.visual.field.mobileKeyboardMode":`Comportamiento del teclado móvil`,"settings.openchamber.visual.field.mobileKeyboardModeHint":`El comportamiento predeterminado del navegador es el más seguro. Redimensionar el contenido pide a los navegadores compatibles reducir la app cuando se abre el teclado.`,"settings.openchamber.visual.field.mobileKeyboardModeAria":`Comportamiento del teclado móvil`,"settings.openchamber.visual.field.selectMobileKeyboardModePlaceholder":`Seleccionar comportamiento del teclado`,"settings.openchamber.visual.actions.resetMobileKeyboardModeAria":`Restablecer comportamiento del teclado móvil`,"settings.openchamber.visual.field.interfaceFontSize":`Tamaño de fuente de la interfaz`,"settings.openchamber.visual.field.interfaceFont":`Fuente de la interfaz`,"settings.openchamber.visual.field.selectInterfaceFontAria":`Seleccionar fuente de interfaz`,"settings.openchamber.visual.actions.resetInterfaceFontAria":`Restablecer fuente de interfaz`,"settings.openchamber.visual.field.fontSizePercentageAria":`Porcentaje de tamaño de fuente`,"settings.openchamber.visual.actions.resetFontSizeAria":`Restablecer tamaño de fuente`,"settings.openchamber.visual.field.terminalFontSize":`Tamaño de fuente del terminal`,"settings.openchamber.visual.field.editorFontSize":`Tamaño de fuente del editor`,"settings.openchamber.visual.field.codeFont":`Fuente de código`,"settings.openchamber.visual.field.codeFontSize":`Tamaño de fuente de código`,"settings.openchamber.visual.field.codeFontSizePercentageAria":`Porcentaje de tamaño de fuente de código`,"settings.openchamber.visual.field.selectCodeFontAria":`Seleccionar fuente de código`,"settings.openchamber.visual.actions.resetCodeFontAria":`Restablecer fuente de código`,"settings.openchamber.visual.actions.resetCodeFontSizeAria":`Restablecer tamaño de fuente de código`,"settings.openchamber.visual.actions.resetTerminalFontSizeAria":`Restablecer tamaño de fuente del terminal`,"settings.openchamber.visual.actions.resetEditorFontSizeAria":`Restablecer tamaño de fuente del editor`,"settings.openchamber.visual.field.spacingDensity":`Densidad de espaciado`,"settings.openchamber.visual.actions.resetSpacingAria":`Restablecer espaciado`,"settings.openchamber.visual.field.inputBarOffset":`Desplazamiento de la barra de entrada`,"settings.openchamber.visual.field.inputBarOffsetTooltip":`Elevar la barra de entrada para evitar obstáculos en la pantalla del sistema operativo, como barras de inicio.`,"settings.openchamber.visual.actions.resetInputBarOffsetAria":`Restablecer desplazamiento de la barra de entrada`,"settings.openchamber.visual.field.terminalQuickKeysAria":`Teclas rápidas del terminal`,"settings.openchamber.visual.field.terminalQuickKeys":`Teclas rápidas del terminal`,"settings.openchamber.visual.field.terminalQuickKeysTooltip":`Mostrar Esc, Ctrl y flechas en la vista del terminal`,"settings.openchamber.visual.field.fileEditorKeymap":`Mapa de teclas del editor de archivos`,"settings.openchamber.visual.option.fileEditorKeymap.default":`Predeterminado`,"settings.openchamber.visual.option.fileEditorKeymap.vim":`Vim`,"settings.openchamber.visual.field.activityDefaultModeAria":`Modo predeterminado de actividad: {option}`,"settings.openchamber.visual.field.showExpandedBashToolsAria":`Mostrar herramientas de Bash expandidas`,"settings.openchamber.visual.field.bash":`Bash`,"settings.openchamber.visual.field.userMessageRenderingAria":`Renderizado de mensajes del usuario: {option}`,"settings.openchamber.visual.field.mermaidRenderingAria":`Renderizado de Mermaid: {option}`,"settings.openchamber.visual.field.diffLayoutAria":`Diseño de comparación: {option}`,"settings.openchamber.visual.field.sessionRecap":`Generar resumen de sesión`,"settings.openchamber.visual.field.sessionRecapAria":`Generar un resumen cuando el agente termina`,"settings.openchamber.visual.field.sessionTitleRefresh":`Actualizar el título de la sesión según la conversación reciente`,"settings.openchamber.visual.field.sessionTitleRefreshAria":`Cada 5 minutos tras la inactividad, actualizar el título según el tema más reciente`,"settings.openchamber.visual.field.sessionGoal":`Habilitar objetivos de sesión`,"settings.openchamber.visual.field.sessionGoalAria":`Mantener la sesión trabajando automáticamente hacia un objetivo`,"settings.openchamber.visual.goal.sectionTitle":`Objetivo`,"settings.openchamber.visual.goal.budgetLabel":`Presupuesto de tokens predeterminado`,"settings.openchamber.visual.goal.budgetAria":`Aplicar un presupuesto de tokens predeterminado a los nuevos objetivos`,"settings.openchamber.visual.goal.description":`Activa el botón de diana en el compositor y el próximo mensaje se convierte en un objetivo: el agente sigue trabajando hacia él automáticamente, auditado por el modelo pequeño, incluso mientras no estás.`,"settings.openchamber.visual.field.showReasoningTracesAria":`Mostrar rastros de razonamiento`,"settings.openchamber.visual.field.showReasoningTraces":`Mostrar trazas de razonamiento`,"settings.openchamber.visual.field.collapsibleThinkingBlocksAria":`Habilitar bloques de razonamiento colapsables`,"settings.openchamber.visual.field.collapsibleThinkingBlocks":`Habilitar Bloques de Razonamiento Colapsables`,"settings.openchamber.visual.field.collapsibleUserMessagesAria":`Contraer mensajes largos del usuario`,"settings.openchamber.visual.field.collapsibleUserMessages":`Contraer mensajes largos del usuario`,"settings.openchamber.visual.field.stickyUserHeaderAria":`Encabezado del usuario fijo`,"settings.openchamber.visual.field.stickyUserHeader":`Encabezado de usuario fijo`,"settings.openchamber.visual.field.promptNavigatorEnabledAria":`Navegador de prompts`,"settings.openchamber.visual.field.promptNavigatorEnabled":`Navegador de prompts`,"settings.openchamber.visual.field.expandedEditorToolbarAria":`Mostrar siempre la barra de herramientas del editor`,"settings.openchamber.visual.field.expandedEditorToolbar":`Mostrar siempre la barra de herramientas del editor (anclada bajo las pestañas)`,"settings.openchamber.visual.field.wideChatLayoutAria":`Diseño de chat ancho`,"settings.openchamber.visual.field.wideChatLayout":`Diseño de chat ancho`,"settings.openchamber.visual.field.showSplitAssistantMessageActionsAria":`Acciones en línea del asistente`,"settings.openchamber.visual.field.showSplitAssistantMessageActions":`Acciones en línea del asistente`,"settings.openchamber.visual.field.showSplitAssistantMessageActionsTooltip":`Muestra Copiar respuesta, Guardar como imagen y Leer en voz alta en bloques de texto del asistente que aparecen antes de llamadas a herramientas posteriores dentro de la misma respuesta.`,"settings.openchamber.visual.field.showAssistantTpsAria":`Mostrar la tasa de generación TPS`,"settings.openchamber.visual.field.showAssistantTps":`Mostrar tasa de generación TPS`,"settings.openchamber.visual.field.showAssistantTpsTooltip":`Muestra la velocidad de generación (tokens por segundo) en mensajes del asistente completados y en el panel de contexto. El tiempo de las herramientas no se incluye.`,"settings.openchamber.visual.field.allowPromptingSubagentSessionsAria":`Permitir enviar solicitudes a sesiones de subagentes`,"settings.openchamber.visual.field.allowPromptingSubagentSessions":`Permitir solicitudes en sesiones de subagentes`,"settings.openchamber.visual.field.showToolFileIconsAria":`Mostrar iconos de archivos de herramientas`,"settings.openchamber.visual.field.codeBlockLineWrapAria":`Ajustar líneas de bloques de código`,"settings.openchamber.visual.field.codeBlockLineWrap":`Ajustar líneas de bloques de código`,"settings.openchamber.visual.field.showToolFileIcons":`Mostrar iconos de archivos de herramientas`,"settings.openchamber.visual.field.showSubagentTaskDetailsAria":`Mostrar detalles del trabajo del subagente`,"settings.openchamber.visual.field.showSubagentTaskDetails":`Mostrar detalles del trabajo del subagente`,"settings.openchamber.visual.field.showSubagentTaskDetailsHint":`Si está desactivado, las tareas del subagente se mantienen compactas. Haz clic en la fila para abrir la sesión del subagente.`,"settings.openchamber.visual.field.showTurnChangedFilesAria":`Mostrar archivos cambiados en turnos completados`,"settings.openchamber.visual.field.showTurnChangedFiles":`Mostrar archivos cambiados en turnos completados`,"settings.openchamber.visual.field.showDotfilesAria":`Mostrar archivos ocultos`,"settings.openchamber.visual.field.showDotfiles":`Mostrar archivos ocultos`,"settings.openchamber.visual.field.queueMessagesByDefaultAria":`Poner mensaje en cola por defecto`,"settings.openchamber.visual.field.queueMessagesByDefault":`Poner mensajes en cola por defecto`,"settings.openchamber.visual.field.queueMessagesByDefaultTooltip":`Cuando esté habilitado, Enter coloca mensajes en cola. Usa {modifier}+Enter para enviar.`,"settings.openchamber.visual.field.persistDraftMessagesAria":`Mantener borradores de mensajes`,"settings.openchamber.visual.field.persistDraftMessages":`Conservar borradores de mensajes`,"settings.openchamber.visual.field.enableSpellcheckInTextInputsAria":`Habilitar ortografía en campos de texto`,"settings.openchamber.visual.field.enableSpellcheckInTextInputs":`Habilitar ortografía en campos de texto`,"settings.openchamber.visual.field.sendAnonymousUsageReportsAria":`Enviar informes anónimos de uso`,"settings.openchamber.visual.field.sendAnonymousUsageReports":`Enviar informes anónimos de uso`,"settings.openchamber.visual.field.sendAnonymousUsageReportsHint":`Nos ayuda a entender qué versiones de la aplicación se usan activamente para priorizar mejoras. Solo se recopilan la versión de la aplicación, la plataforma y el entorno de ejecución ; no se recopilan datos personales ni código.`,"settings.openchamber.visual.transcriptCache.label":`Borrar la caché local de sesiones`,"settings.openchamber.visual.transcriptCache.description":`Elimina de este entorno el contenido de conversaciones almacenado en caché. El historial del servidor seguirá disponible.`,"settings.openchamber.visual.transcriptCache.action":`Borrar caché`,"settings.openchamber.visual.transcriptCache.dialog.title":`¿Borrar la caché local de sesiones?`,"settings.openchamber.visual.transcriptCache.dialog.description":`Se eliminará el contenido de conversaciones almacenado en caché en este dispositivo. El historial del servidor seguirá disponible.`,"settings.openchamber.visual.transcriptCache.dialog.clearing":`Borrando…`,"settings.openchamber.visual.transcriptCache.toast.cleared":`Caché local de sesiones borrada`,"settings.openchamber.visual.transcriptCache.toast.failed":`No se pudo borrar la caché local de sesiones`,"settings.openchamber.visual.option.themeMode.system":`Sistema`,"settings.openchamber.visual.option.themeMode.light":`Claro`,"settings.openchamber.visual.option.themeMode.dark":`Oscuro`,"settings.openchamber.visual.option.diffLayout.dynamic.label":`Dinámico`,"settings.openchamber.visual.option.diffLayout.dynamic.description":`Nuevo en línea, modificado lado a lado.`,"settings.openchamber.visual.option.diffLayout.inline.label":`Siempre en línea`,"settings.openchamber.visual.option.diffLayout.inline.description":`Muestra una vista unificada.`,"settings.openchamber.visual.option.diffLayout.sideBySide.label":`Siempre lado a lado`,"settings.openchamber.visual.option.diffLayout.sideBySide.description":`Compara archivos originales y modificados.`,"settings.openchamber.visual.option.mermaidRendering.svg.label":`SVG`,"settings.openchamber.visual.option.mermaidRendering.svg.description":`Renderiza diagramas como gráficos escalables.`,"settings.openchamber.visual.option.mermaidRendering.ascii.label":`ASCII`,"settings.openchamber.visual.option.mermaidRendering.ascii.description":`Renderiza diagramas como bloques de texto.`,"settings.openchamber.visual.option.pwaOrientation.system.label":`Seguir el sistema`,"settings.openchamber.visual.option.pwaOrientation.system.description":`Respetar la configuración de rotación del dispositivo.`,"settings.openchamber.visual.option.pwaOrientation.portrait.label":`Bloqueo vertical`,"settings.openchamber.visual.option.pwaOrientation.portrait.description":`Instalar la aplicación bloqueada en vertical.`,"settings.openchamber.visual.option.pwaOrientation.landscape.label":`Bloqueo horizontal`,"settings.openchamber.visual.option.pwaOrientation.landscape.description":`Instalar la aplicación bloqueada en horizontal.`,"settings.openchamber.visual.option.mobileKeyboardMode.native.label":`Seguir el navegador`,"settings.openchamber.visual.option.mobileKeyboardMode.native.description":`Usar el comportamiento predeterminado del navegador para el paneo y los cambios del viewport al abrir el teclado.`,"settings.openchamber.visual.option.mobileKeyboardMode.resizeContent.label":`Redimensionar contenido`,"settings.openchamber.visual.option.mobileKeyboardMode.resizeContent.description":`Pedir a los navegadores compatibles que reduzcan el diseño de la app en lugar de depender solo del paneo.`,"settings.openchamber.visual.option.userMessageRendering.markdown.label":`Markdown`,"settings.openchamber.visual.option.userMessageRendering.markdown.description":`Renderiza el texto del usuario con formato markdown.`,"settings.openchamber.visual.option.userMessageRendering.plain.label":`Texto plano`,"settings.openchamber.visual.option.userMessageRendering.plain.description":`Renderiza el texto del usuario con espacios en blanco y enlaces preservados.`,"chat.message.userText.collapseAria":`Contraer mensaje del usuario`,"settings.openchamber.visual.option.chatRenderMode.sorted.label":`Ordenado`,"settings.openchamber.visual.option.chatRenderMode.sorted.description":`Organiza el trabajo intermedio en Activity; transmite solo la conclusión final.`,"settings.openchamber.visual.option.chatRenderMode.live.label":`En vivo`,"settings.openchamber.visual.option.chatRenderMode.live.description":`Transmitir el texto del asistente y las herramientas conforme llegan.`,"settings.openchamber.visual.option.messageTransport.auto.label":`Automático`,"settings.openchamber.visual.option.messageTransport.auto.description":`Preferir WebSocket y caer en SSE si es necesario.`,"settings.openchamber.visual.option.messageTransport.ws.label":`WebSocket`,"settings.openchamber.visual.option.messageTransport.ws.description":`Usar WebSocket para transmisión de mensajes.`,"settings.openchamber.visual.option.messageTransport.sse.label":`SSE`,"settings.openchamber.visual.option.messageTransport.sse.description":`Usar server-sent events para transmitir mensajes.`,"settings.openchamber.visual.option.activityRenderMode.collapsed.label":`Colapsado`,"settings.openchamber.visual.option.activityRenderMode.collapsed.description":`Mantener la Actividad colapsada por defecto.`,"settings.openchamber.visual.option.activityRenderMode.summary.label":`Expandido`,"settings.openchamber.visual.option.activityRenderMode.summary.description":`Expandir la Actividad por defecto.`,"settings.openchamber.visual.option.timeFormat.auto.label":`Auto`,"settings.openchamber.visual.option.timeFormat.auto.description":`Usa la preferencia de la configuración regional del sistema.`,"settings.openchamber.visual.option.timeFormat.24h.label":`24 horas`,"settings.openchamber.visual.option.timeFormat.24h.description":`Mostrar la hora como 14:15.`,"settings.openchamber.visual.option.timeFormat.12h.label":`12 horas`,"settings.openchamber.visual.option.timeFormat.12h.description":`Mostrar la hora como 02:15 PM.`,"settings.openchamber.visual.option.weekStart.auto.label":`Auto`,"settings.openchamber.visual.option.weekStart.auto.description":`Usa el inicio de semana de la configuración regional.`,"settings.openchamber.visual.option.weekStart.monday.label":`Lunes`,"settings.openchamber.visual.option.weekStart.sunday.label":`Domingo`,"settings.magicPrompts.page.loading.aria":`Cargando`,"settings.magicPrompts.page.loading.text":`Cargando prompts mágicos...`,"settings.magicPrompts.page.block.visiblePrompt":`Prompt visible`,"settings.magicPrompts.page.block.instructions":`Instrucciones`,"settings.magicPrompts.page.group.gitCommitGenerate.title":`Generación de commit`,"settings.magicPrompts.page.group.gitCommitGenerate.description":`Prompts usados para la generación de mensajes de commit: mensaje visible del usuario + instrucciones ocultas.`,"settings.magicPrompts.page.group.gitPrGenerate.title":`Generación de PR`,"settings.magicPrompts.page.group.gitPrGenerate.description":`Prompts usados para la generación del título/cuerpo de un PR: mensaje visible del usuario + instrucciones ocultas.`,"settings.magicPrompts.page.group.githubPrReview.title":`Revisión de PR`,"settings.magicPrompts.page.group.githubPrReview.description":`Prompts usados para el flujo de revisión de PR: mensaje visible del usuario + carga de instrucciones ocultas.`,"settings.magicPrompts.page.group.githubIssueReview.title":`Revisión de issue`,"settings.magicPrompts.page.group.githubIssueReview.description":`Prompts usados para el flujo de revisión de issue: mensaje visible del usuario + carga de instrucciones ocultas.`,"settings.magicPrompts.page.group.githubPrFailedChecksReview.title":`Revisión de PR con checks fallidos`,"settings.magicPrompts.page.group.githubPrFailedChecksReview.description":`Prompts usados para el análisis de checks fallidos en un PR.`,"settings.magicPrompts.page.group.githubPrCommentsReview.title":`Revisión de comentarios de PR`,"settings.magicPrompts.page.group.githubPrCommentsReview.description":`Prompts usados para el análisis de comentarios de un PR.`,"settings.magicPrompts.page.group.githubSinglePrCommentReview.title":`Revisión de comentario único de PR`,"settings.magicPrompts.page.group.githubSinglePrCommentReview.description":`Prompts usados para el análisis de un comentario único de un PR.`,"settings.magicPrompts.page.group.gitConflictResolve.title":`Resolución de conflictos de merge/rebase`,"settings.magicPrompts.page.group.gitConflictResolve.description":`Prompts usados al resolver conflictos de merge/rebase con IA.`,"settings.magicPrompts.page.group.gitCherrypickConflictResolve.title":`Resolución de conflictos de cherry-pick`,"settings.magicPrompts.page.group.gitCherrypickConflictResolve.description":`Prompts usados al resolver conflictos de cherry-pick en el flujo de integración.`,"settings.magicPrompts.page.group.planImprove.title":`Mejora de plan`,"settings.magicPrompts.page.group.planImprove.description":`Prompt oculto usado al enviar un plan guardado a un flujo de mejora.`,"settings.magicPrompts.page.group.planTodo.title":`Planificación de tareas`,"settings.magicPrompts.page.group.planTodo.description":`Prompt oculto usado al enviar una tarea a una nueva sesión de planificación.`,"settings.magicPrompts.page.group.planImplement.title":`Implementación de plan`,"settings.magicPrompts.page.group.planImplement.description":`Prompt oculto usado al enviar un plan guardado a un flujo de implementación.`,"settings.magicPrompts.page.group.sessionSummary.title":`Resumen de sesión`,"settings.magicPrompts.page.group.sessionSummary.description":`Prompts usados por el comando /summary: mensaje visible del usuario + instrucciones ocultas. No destructivo: no compacta el historial de la sesión.`,"settings.magicPrompts.page.group.sessionWorkspaceReview.title":`Revisión del espacio de trabajo`,"settings.magicPrompts.page.group.sessionExplore.title":`Recorrido del código`,"settings.magicPrompts.page.group.sessionExplore.description":`Prompts usados por el comando /explore: mensaje visible del usuario + instrucciones ocultas. Investiga el repositorio y ofrece una orientación estructurada — la visión general, los módulos principales, cómo se conectan y por dónde empezar — en lugar de un listado archivo por archivo.`,"settings.magicPrompts.page.group.sessionWorkspaceReview.description":`Prompts usados por el comando /workspace-review: mensaje visible del usuario + instrucciones ocultas. Revisa el diff del espacio de trabajo: si logra su intención y si es correcto y adecuado, clasificando los hallazgos por severidad.`,"settings.magicPrompts.page.group.sessionFeaturePlan.title":`Planificación de funciones`,"settings.magicPrompts.page.group.sessionFeaturePlan.description":`Prompts usados por el comando /plan-feature: mensaje visible del usuario + instrucciones ocultas. Ejecuta un diálogo guiado que investiga el código y hace preguntas aclaratorias en lotes pequeños antes de producir un plan de implementación.`,"settings.magicPrompts.page.group.sessionCatchUp.title":`Ponerse al día`,"settings.magicPrompts.page.group.sessionCatchUp.description":`Prompts usados por el comando /catch-up: mensaje visible del usuario + instrucciones ocultas. Construye contexto según la rama — los commits de la rama, su PR y el trabajo sin confirmar juntos — para entender qué estabas haciendo, y luego da un resumen fácil de digerir y un siguiente paso centrado en el producto.`,"settings.magicPrompts.page.group.sessionDebug.title":`Depuración`,"settings.magicPrompts.page.group.sessionDebug.description":`Prompts usados por el comando /debug: mensaje visible del usuario + instrucciones ocultas. Ejecuta una investigación guiada de la causa raíz: captura el síntoma, formula hipótesis, las verifica contra el código y confirma la causa antes de proponer una solución.`,"settings.magicPrompts.page.group.sessionWeigh.title":`Comparar enfoques`,"settings.magicPrompts.page.group.sessionWeigh.description":`Prompts usados por el comando /weigh: mensaje visible del usuario + instrucciones ocultas. Investiga el código y luego presenta 2-3 enfoques distintos con sus ventajas y desventajas y una recomendación, sin escribir un plan ni código.`,"settings.magicPrompts.page.group.sessionFusion.title":`Fusion`,"settings.magicPrompts.page.group.sessionFusion.description":`Prompts usados para combinar salidas de multi-run en una respuesta final: mensaje visible del usuario + instrucciones ocultas antes de los resultados fuente.`,"settings.magicPrompts.page.actions.resetting":`Restableciendo...`,"settings.magicPrompts.page.actions.resetAllOverrides":`Restablecer todas las sobrescrituras`,"settings.magicPrompts.page.actions.resetToDefault":`Restablecer valores predeterminados`,"settings.magicPrompts.page.actions.save":`Guardar`,"settings.magicPrompts.page.placeholdersLabel":`Marcadores de posición:`,"settings.magicPrompts.page.validation.visiblePromptRequired":`El prompt visible no puede estar vacío.`,"settings.magicPrompts.page.status.unsavedChanges":`Cambios no guardados`,"settings.magicPrompts.page.status.usingSavedOverride":`Usando sobrescritura guardada`,"settings.magicPrompts.page.status.usingBuiltinDefault":`Usando valor predeterminado integrado`,"settings.magicPrompts.page.toast.loadFailed":`No se pudieron cargar los prompts mágicos`,"settings.magicPrompts.page.toast.visiblePromptRequired":`El prompt visible no puede estar vacío`,"settings.magicPrompts.page.toast.saved":`Prompt mágico guardado`,"settings.magicPrompts.page.toast.saveFailed":`No se pudo guardar el prompt mágico`,"settings.magicPrompts.page.toast.resetSuccess":`Prompt restablecido al valor predeterminado`,"settings.magicPrompts.page.toast.resetFailed":`No se pudo restablecer el prompt`,"settings.magicPrompts.page.toast.resetAllSuccess":`Se restablecieron todos los prompts sobrescritos`,"settings.magicPrompts.page.toast.resetAllFailed":`No se pudieron restablecer todos los prompts`,"settings.page.promptTemplates.title":`Plantillas de prompt`,"settings.promptTemplates.sidebar.title":`Plantillas de prompt`,"settings.promptTemplates.sidebar.total":`Total: {count}`,"settings.promptTemplates.sidebar.empty.title":`Sin plantillas de prompt`,"settings.promptTemplates.sidebar.empty.description":`Crea una plantilla de prompt para comenzar.`,"settings.promptTemplates.sidebar.toast.deleted":`Plantilla "{name}" eliminada`,"settings.promptTemplates.sidebar.toast.deleteFailed":`Error al eliminar la plantilla`,"settings.promptTemplates.sidebar.toast.nameRequired":`El nombre de la plantilla es obligatorio`,"settings.promptTemplates.sidebar.toast.renamed":`Plantilla renombrada`,"settings.promptTemplates.sidebar.toast.renameFailed":`Error al renombrar la plantilla`,"settings.promptTemplates.sidebar.dialog.deleteTitle":`¿Eliminar plantilla?`,"settings.promptTemplates.sidebar.dialog.deleteDescription":`Se eliminará permanentemente "{name}". Esta acción no se puede deshacer.`,"settings.promptTemplates.sidebar.renameDialog.title":`Renombrar plantilla`,"settings.promptTemplates.sidebar.renameDialog.description":`Introduce un nuevo nombre para "{name}".`,"settings.promptTemplates.sidebar.renameDialog.placeholder":`Nombre de la plantilla`,"settings.promptTemplates.sidebar.badge.default":`predeterminada`,"settings.promptTemplates.page.empty.title":`Selecciona una plantilla`,"settings.promptTemplates.page.empty.description":`Elige una plantilla de la barra lateral para editarla.`,"settings.promptTemplates.page.title.new":`Nueva plantilla`,"settings.promptTemplates.page.subtitle.edit":`Editar plantilla`,"settings.promptTemplates.page.subtitle.new":`Crear una nueva plantilla de prompt`,"settings.promptTemplates.page.section.identity":`Identidad`,"settings.promptTemplates.page.field.name":`Nombre`,"settings.promptTemplates.page.field.namePlaceholder":`Nombre de la plantilla`,"settings.promptTemplates.page.section.template":`Plantilla`,"settings.promptTemplates.page.field.templatePlaceholder":`Introduce el texto de la plantilla de prompt...`,"settings.promptTemplates.page.templateHint":`Este texto se antepondrá al prompt del usuario cuando se seleccione en un grupo multi-run.`,"settings.promptTemplates.page.toast.nameRequired":`El nombre de la plantilla es obligatorio`,"settings.promptTemplates.page.toast.updated":`Plantilla actualizada`,"settings.promptTemplates.page.toast.updateFailed":`Error al actualizar la plantilla`,"settings.promptTemplates.page.toast.created":`Plantilla creada`,"settings.promptTemplates.page.toast.createFailed":`Error al crear la plantilla`,"settings.promptTemplates.page.toast.saveUnexpectedError":`Ocurrió un error inesperado al guardar`,"settings.openchamber.visual.section.followUpBehavior":`Follow-up behavior`,"settings.openchamber.visual.section.followUpBehaviorAria":`Follow-up behavior`,"settings.openchamber.visual.field.followUpBehaviorAria":`Follow-up behavior: {option}`,"settings.openchamber.visual.field.followUpBehaviorDescription":`Choose what happens when you press Enter on a follow-up message while the agent is still responding.`,"settings.openchamber.visual.option.followUpBehavior.steer.label":`Steer`,"settings.openchamber.visual.option.followUpBehavior.queue.label":`Queue`,"settings.page.assistants.title":`Asistentes`,"assistants.title":`Asistentes`,"assistants.subtitle":`Tus ayudantes permanentes`,"assistants.listAria":`Lista de asistentes`,"assistants.menu.edit":`Editar`,"assistants.selectorAria":`Cambiar de asistente. Actual: {name}`,"assistants.state.unsupportedTitle":`Los asistentes no son compatibles`,"assistants.state.unsupportedDescription":`Esta instancia de OpenChamber no ofrece la función de asistentes.`,"assistants.state.instanceDisabledDescription":`Activa los asistentes en Ajustes para usar esta función.`,"assistants.onboarding.title":`Crea tu primer asistente`,"assistants.onboarding.description":`Configura un ayudante permanente y mantén aquí una conversación continua.`,"assistants.onboarding.action":`Crear asistente`,"assistants.actions.retry":`Reintentar`,"assistants.actions.backToChat":`Volver al chat`,"assistants.mode.continuous":`Continuo`,"assistants.mode.stateless":`Sin estado`,"assistants.state.unavailable":`Los asistentes no están disponibles en esta instancia.`,"assistants.state.staleSnapshot":`Se muestra la última instantánea disponible. La actualización falló.`,"assistants.state.sending":`Enviando`,"assistants.state.reconciling":`Confirmando la entrega…`,"assistants.state.sendFailed":`La entrega falló. Puedes reintentar de forma segura.`,"assistants.state.instanceDisabled":`Los asistentes están desactivados en esta instancia.`,"assistants.state.assistantDisabled":`Este asistente está desactivado.`,"assistants.state.invalidConfiguration":`El modelo configurado para este asistente no está disponible.`,"assistants.state.messagesFailed":`No se pudo cargar la conversación.`,"assistants.conversation.continuousHint":`Una conversación continua`,"assistants.conversation.statelessHint":`Cada turno se ejecuta en una sesión nueva sin contexto previo`,"assistants.conversation.newSessionDivider":`Nueva conversación`,"assistants.conversation.emptyTitle":`Inicia una conversación con {name}`,"assistants.conversation.emptyDescription":`Envía un mensaje para iniciar esta conversación continua.`,"assistants.composer.attachment":`Imagen adjunta`,"assistants.composer.removeAttachment":`Quitar archivo adjunto`,"assistants.composer.addImage":`Añadir imagen`,"assistants.composer.send":`Enviar mensaje`,"assistants.composer.placeholder":`Escribe a tu asistente…`,"assistants.composer.disabledPlaceholder":`Asistente no disponible`,"assistants.composer.selectionConflict":`La selección cambió en otro lugar. Se cargaron los ajustes más recientes.`,"assistants.composer.selectionSaveFailed":`No se pudo guardar la selección de modelo y agente.`,"assistants.composer.commandUnavailable":`Los comandos disponibles son /new y /compact.`,"assistants.settings.description":`Configura asistentes para ayudarte con el trabajo. `,"assistants.settings.descriptionLearnMore":`Ver más`,"assistants.settings.instanceEnabled":`Activar`,"assistants.settings.listTitle":`Asistentes`,"assistants.settings.create":`Nuevo asistente`,"assistants.settings.delete":`Eliminar`,"assistants.settings.deleteConfirm":`¿Eliminar {name}? Su historial de conversación se archivará.`,"assistants.settings.name":`Nombre`,"assistants.settings.enabled":`Asistente activado`,"assistants.settings.defaultShare":`Asistente predeterminado para compartir desde este cliente`,"assistants.settings.defaultPrompt":`Prompt predeterminado`,"assistants.settings.defaultPromptPlaceholder":`Define el rol y la forma de trabajo del asistente…`,"assistants.settings.runtime":`Ejecución`,"assistants.settings.model":`Proveedor y modelo`,"assistants.settings.agent":`Agente de OpenCode`,"assistants.settings.mode":`Modo de conversación`,"assistants.settings.workspace":`Espacio de trabajo`,"assistants.settings.workspacePlaceholder":`Espacio de trabajo gestionado`,"assistants.settings.workspaceCurrentPath":`Ruta actual`,"assistants.settings.workspaceChangeHint":`Cambiar el espacio de trabajo inicia una nueva sesión del asistente.`,"assistants.settings.save":`Guardar asistente`,"assistants.settings.empty":`Crea tu primer asistente.`,"assistants.settings.validation.required":`El nombre y el modelo son obligatorios.`,"assistants.settings.toast.saved":`Asistente guardado.`,"assistants.settings.toast.saveFailed":`No se pudo guardar el asistente.`,"assistants.settings.toast.deleted":`Asistente eliminado.`,"assistants.settings.toast.deleteFailed":`No se pudo eliminar el asistente.`,"assistants.settings.toast.toggleFailed":`No se pudo cambiar la disponibilidad de los asistentes.`,"assistants.shareWelcome.title":`Comparte contenido con tu asistente`,"assistants.shareWelcome.description":`Desde cualquier app, toca Compartir y elige un asistente de OpenChamber. Los enlaces, textos e imágenes llegan a su Inbox Topic.`,"assistants.shareWelcome.examplesAria":`Ejemplos de contenido que puedes compartir`,"assistants.shareWelcome.example.chat.title":`Hoja para compartir de iOS`,"assistants.shareWelcome.example.chat.description":`Abre Compartir y elige tu asistente.`,"assistants.shareWelcome.example.article.title":`Compartir directamente en Android`,"assistants.shareWelcome.example.article.description":`Tu asistente aparece entre los contactos rápidos.`,"assistants.shareWelcome.example.note.title":`Elige un asistente`,"assistants.shareWelcome.example.note.description":`El contenido compartido llega a su Inbox Topic.`,"assistants.shareWelcome.action":`Entendido`,"mobile.settings.switchInstance":`Cambiar de instancia`,"common.loading":`Cargando...`,"sessions.startupSync.title":`Sincronizando sesiones`,"sessions.startupSync.progress":`Se cargaron {completed} de {total} proyectos`,"common.unavailable":`No disponible`,"common.language.english":`Inglés`,"common.language.french":`Francés`,"common.language.simplifiedChinese":`Chino (simplificado)`,"common.language.traditionalChinese":`Chino (tradicional)`,"common.language.ukrainian":`Ucraniano`,"common.language.spanish":`Español`,"common.language.brazilianPortuguese":`Portugués brasileño`,"common.language.korean":`Coreano`,"common.language.polish":`Polaco`,"common.language.japanese":`Japonés`,"common.revealPath.finder":`Mostrar en Finder`,"common.revealPath.fileExplorer":`Abrir en File Explorer`,"common.revealPath.fileManager":`Abrir en gestor de archivos`,"pwa.installPrompt.description":`Instala OpenChamber para acceder más rápido`,"pwa.installPrompt.action":`Instalar`,"pwa.installPrompt.dismiss":`Descartar`,"pwa.installPrompt.started":`Instalación iniciada`,"pwa.installPrompt.installed":`OpenChamber se instaló`,"shareOpinion.actions.shareOpinion":`Compartir opinión`,"shareOpinion.actions.bookCall":`Reservar llamada`,"shareOpinion.actions.shortSurvey":`Encuesta breve`,"shareOpinion.dialog.title":`Comparte tu opinión`,"shareOpinion.toast.title":`Ayuda a dar forma a OpenChamber`,"shareOpinion.toast.description":`Cuenta qué es útil, confuso o falta para ayudar a definir lo que viene después.`,"sessions.sidebar.footer.actions.shareOpinion":`Compartir opinión`,"layout.mainTab.chat":`Chat`,"layout.mainTab.plan":`Plan`,"layout.mainTab.diff":`Diff`,"layout.mainTab.diagram":`Diagrama`,"layout.mainTab.files":`Archivos`,"layout.mainTab.terminal":`Terminal`,"layout.mainTab.context":`Contexto`,"mobile.nav.aria":`Navegación móvil`,"mobile.nav.secondaryPageAria":`Página de detalle`,"mobile.connect.welcome.title":`Conéctate a OpenChamber`,"mobile.connect.welcome.description":`Agrega una URL de servidor o escanea un código QR de emparejamiento para empezar a usar la app móvil.`,"mobile.connect.url.label":`URL del servidor`,"mobile.connect.url.placeholder":`http://192.168.1.74:2606`,"mobile.connect.link.divider":`O usa un enlace de emparejamiento`,"mobile.connect.address.divider":`O introduce la dirección del servidor`,"mobile.connect.link.label":`Enlace de emparejamiento`,"mobile.connect.link.placeholder":`Pega el enlace openchamber://connect`,"mobile.connect.link.invalid":`Ese enlace de emparejamiento no es válido o ha caducado.`,"mobile.connect.token.label":`Token de cliente`,"mobile.connect.token.placeholder":`Pega el token de acceso`,"mobile.connect.token.hint":`Solo es necesario si tu servidor requiere un token en lugar de una contraseña.`,"mobile.connect.password.label":`Contraseña`,"mobile.connect.password.placeholder":`Contraseña de OpenChamber`,"mobile.connect.connectButton":`Conectar`,"mobile.connect.unlockButton":`Desbloquear y conectar`,"mobile.connect.cancelPassword":`Usar otro servidor`,"mobile.connect.connecting":`Conectando...`,"mobile.connect.scanQr":`Escanear código QR`,"mobile.connect.welcome.scanHint":`En tu ordenador, abre «Añadir un dispositivo» para mostrar un código QR y escanéalo aquí.`,"mobile.connect.advanced":`Avanzado`,"mobile.connect.manual.toggle":`Conexión manual`,"mobile.connect.scan.permissionDenied":`El acceso a la cámara está desactivado. Actívalo en Ajustes para escanear un código QR.`,"mobile.connect.scan.failed":`No se pudo escanear ese código QR. Inténtalo de nuevo o introduce la URL manualmente.`,"mobile.connect.scan.invalid":`Ese código QR no es un código de conexión de OpenChamber.`,"mobile.connect.scan.unsupported":`El escaneo de QR solo está disponible en la app móvil instalada.`,"mobile.connect.saved.title":`Conexiones guardadas`,"mobile.connect.saved.empty":`Aún no hay conexiones guardadas.`,"mobile.connect.relay.badge":`a través de OpenChamber Relay`,"mobile.connect.error.urlRequired":`Introduce una URL de servidor.`,"mobile.connect.splash.connectingTo":`Conectando al dispositivo:`,"mobile.connect.error.invalidUrl":`Esa URL de servidor no es válida.`,"mobile.connect.error.unreachable":`No se pudo conectar con ese servidor de OpenChamber.`,"mobile.connect.error.authRequired":`Este servidor requiere una contraseña o un token de cliente.`,"mobile.connect.error.passwordFailed":`No se pudo desbloquear ese servidor. Revisa la contraseña.`,"mobile.instances.addTitle":`Agregar instancia`,"mobile.instances.addManual":`Añadir por dirección`,"mobile.instances.editTitle":`Editar instancia`,"mobile.instances.edit":`Editar`,"mobile.instances.delete":`Eliminar`,"mobile.instances.deleteAria":`Eliminar {label}`,"mobile.instances.confirmDeleteAria":`Confirmar la eliminación de {label}`,"mobile.instances.cancelDeleteAria":`Conservar {label}`,"mobile.instances.cancelEdit":`Cancelar`,"mobile.instances.label.label":`Nombre`,"mobile.instances.label.placeholder":`Nombre para mostrar (opcional)`,"mobile.instances.saveNew":`Guardar instancia`,"mobile.instances.status.connectedDirect":`Conectado · Red local`,"mobile.instances.status.connectedRelay":`Conectado · Relay`,"mobile.instances.status.connectedSshRelay":`Conectado · SSH por relay`,"mobile.instances.sshBadge":`SSH`,"mobile.instances.sshViaDesktop":`Enrutado por el escritorio a {host} · el escritorio debe estar conectado`,"mobile.connect.error.sshNotConnected":`Esa instancia SSH no está conectada ahora.`,"mobile.connect.ssh.fallbackDesktop":`Instancia SSH no disponible: se conectó al escritorio.`,"mobile.instances.saveEdit":`Guardar cambios`,"mobile.nav.changes":`Cambios`,"mobile.nav.settings":`Ajustes`,"mobile.tabs.projects":`Proyectos`,"mobile.tabs.assistant":`Agente`,"mobile.tabs.scheduled":`Tareas`,"mobile.tabs.settings":`Ajustes`,"mobile.surface.closeAria":`Cerrar`,"mobile.header.openMenuAria":`Abrir menú`,"mobile.header.openMetadataAria":`Abrir metadatos de la sesión`,"mobile.header.metadata.context":`Contexto`,"mobile.header.metadata.branch":`Rama`,"mobile.header.metadata.usage":`Uso`,"mobile.menu.titleAria":`Herramientas del espacio de trabajo`,"mobile.menu.newSession":`Nuevo chat`,"mobile.chat.syncingMessages":`Sincronizando mensajes...`,"mobile.menu.files":`Archivos`,"mobile.menu.changes":`Cambios`,"mobile.menu.mcp":`MCP`,"mobile.menu.instances":`Instancias`,"mobile.menu.update":`Actualizar`,"mobile.menu.settings":`Ajustes`,"mobile.sessions.newChatCta":`Nuevo Chat en {project}`,"mobile.sessions.dateGroup.today":`Hoy`,"mobile.sessions.dateGroup.yesterday":`Ayer`,"mobile.sessions.dateGroup.thisWeek":`Antes esta semana`,"mobile.sessions.dateGroup.older":`Más antiguos`,"mobile.sessions.section.worktrees":`Worktrees`,"mobile.sessions.mainWorkspace":`Espacio de trabajo principal`,"mobile.sessions.section.pinned":`Fijados`,"mobile.sessions.searchAria":`Buscar sesiones`,"mobile.sessions.section.otherProjects":`Cambiar de proyecto`,"mobile.sessions.section.projects":`Proyectos`,"mobile.sessions.empty.noProjectsTitle":`Sin proyectos`,"mobile.sessions.empty.noProjectsDescription":`Agrega un proyecto para empezar a chatear con tu código.`,"mobile.sessions.empty.noSessionsTitle":`Sin sesiones`,"mobile.sessions.empty.noSessionsDescription":`Inicia tu primer chat para verlo aquí.`,"mobile.sessions.empty.searchTitle":`Sin resultados`,"mobile.sessions.empty.searchDescription":`Prueba con otro término de búsqueda.`,"mobile.sessions.showArchived":`Mostrar archivadas ({count})`,"mobile.sessions.hideArchived":`Ocultar archivadas`,"mobile.sessions.activeWorktreeAria":`Worktree activo`,"mobile.sessions.activeProjectAria":`Proyecto activo`,"mobile.sessions.startNewChat":`Nuevo chat`,"mobile.sessions.newChat":`Nuevo chat`,"mobile.sessions.editOrder":`Reordenar proyectos`,"mobile.sessions.doneEditing":`Listo`,"mobile.sessions.editOrderHint":`Arrastra el asa o usa las flechas para reordenar los proyectos. Toca la marca para finalizar.`,"mobile.sessions.dragHandleAria":`Arrastra {label} para reordenar`,"mobile.sessions.moveUpAria":`Mover {label} arriba`,"mobile.sessions.moveDownAria":`Mover {label} abajo`,"mobile.sessions.removeProjectAria":`Eliminar {label}`,"mobile.sessions.cancelRemoveProjectAria":`Cancelar eliminación de {label}`,"mobile.sessions.confirmRemoveProject":`Cerrar`,"mobile.sessions.confirmRemoveProjectAria":`Confirmar eliminación de {label}`,"mobile.projects.closeConfirmMessage":`¿Cerrar “{title}”? Saldrá de tu lista de proyectos. Las sesiones se quedan en el disco.`,"mobile.sessions.toast.projectRemoved":`Se eliminó {label}`,"mobile.sessions.archiveSessionAria":`Archivar {title}`,"mobile.sessions.cancelArchiveAria":`Cancelar archivar {title}`,"mobile.sessions.stopSessionAria":`Detener {title}`,"mobile.sessions.stopGroupAria":`Detener todas las sesiones en ejecución en {label}`,"mobile.sessions.stopSubsessionsAria":`Detener subsessions en ejecución de {title}`,"mobile.sessions.editProjectAria":`Editar {label}`,"mobile.projectEdit.worktreesTitle":`Worktrees`,"mobile.projectEdit.worktreesEmpty":`Este proyecto aún no tiene worktrees.`,"mobile.projectEdit.reorderHint":`Arrastra para reordenar los worktrees.`,"mobile.projectEdit.dragWorktreeAria":`Arrastra {label} para reordenar`,"mobile.projectEdit.deleteWorktreeAria":`Eliminar worktree {label}`,"mobile.projectEdit.deleteWorktreeTitle":`Eliminar worktree`,"mobile.projectEdit.deleteWorktreeConfirmButton":`Eliminar`,"mobile.projectEdit.deleteWorktreeConfirm":`¿Eliminar el worktree «{name}»? No se puede deshacer.`,"mobile.projectEdit.deleteWorktreeDirty":`Este worktree tiene cambios sin confirmar que se perderán.`,"mobile.projectEdit.deleteWorktreeArchiveNote":`Se archivarán {count} sesión(es) adjunta(s).`,"mobile.projectEdit.deleteLocalBranch":`Eliminar también la rama local`,"mobile.projectEdit.deleteRemoteBranch":`Eliminar también la rama remota`,"mobile.sessions.showMore":`Mostrar {count} más`,"mobile.sessions.search.section.sessions":`Sesiones`,"mobile.sessions.search.section.archived":`Archivadas`,"mobile.sessions.search.section.projects":`Proyectos`,"mobile.sessions.clearSearchAria":`Limpiar búsqueda`,"mobile.header.noProject":`Selecciona un proyecto`,"mobile.header.activeSession":`Sesión activa`,"mobile.header.noSession":`No hay sesión activa`,"mobile.sessions.openSheetAria":`Abrir sesiones y proyectos`,"mobile.sessions.closeSheetAria":`Cerrar sesiones y proyectos`,"mobile.sessions.sheet.title":`Conversaciones recientes`,"mobile.sessions.sheet.resizeAria":`Cambiar el tamaño del panel de sesiones`,"mobile.changes.sheet.resizeAria":`Cambiar el tamaño del panel de cambios`,"mobile.sessions.sheet.description":`Cambia proyectos, abre sesiones o inicia un nuevo chat.`,"mobile.sessions.search.placeholder":`Buscar sesiones`,"mobile.sessions.empty":`No se encontraron sesiones.`,"mobile.sessions.unassignedProject":`Otras sesiones`,"mobile.sessions.newSessionAria":`Iniciar un nuevo chat en este proyecto`,"mobile.sessions.untitled":`Sesión sin título`,"mobile.sessions.project.sessionsSingle":`1 sesión`,"mobile.sessions.project.sessionsPlural":`{count} sesiones`,"mobile.files.refreshAria":`Actualizar archivos`,"mobile.files.backToParentAria":`Volver a {name}`,"mobile.files.rootDirectory":`Archivos del proyecto`,"mobile.files.search.placeholder":`Buscar archivos`,"mobile.files.search.empty":`No se encontraron archivos.`,"mobile.files.parentDirectory":`Directorio superior`,"mobile.files.empty.noDirectory":`Selecciona un proyecto para explorar archivos.`,"mobile.files.empty.directory":`Este directorio está vacío.`,"mobile.files.error.listFailed":`No se pudieron cargar los archivos`,"mobile.files.error.readUnavailable":`La vista previa del archivo no está disponible en este entorno.`,"mobile.files.file.truncated":`Vista previa del archivo truncada para móvil.`,"mobile.files.copyPathAria":`Copiar ruta del archivo`,"mobile.files.copyContent":`Copiar contenido`,"mobile.files.copyContentAria":`Copiar contenido del archivo`,"mobile.files.toast.pathCopied":`Ruta copiada`,"mobile.files.toast.contentCopied":`Contenido copiado`,"mobile.files.toast.copyFailed":`No se pudo copiar`,"mobile.changes.placeholder.title":`Cambios`,"mobile.changes.placeholder.description":`Aquí vivirán la revisión del árbol de trabajo, sync y commits.`,"mobile.changes.branchLabel":`Rama: {branch}`,"mobile.changes.noRemote":`No hay remoto disponible`,"mobile.changes.cleanDescription":`No hay archivos modificados en este workspace.`,"mobile.changes.diffDetail.subtitle":`Diff de solo lectura`,"mobile.changes.diffDetail.loadFailed":`No se pudo cargar el diff`,"mobile.changes.diffDetail.missingTitle":`El archivo ya no tiene cambios`,"mobile.changes.diffDetail.missingDescription":`Vuelve a Cambios y actualiza la lista.`,"mobile.changes.diffDetail.imageUnavailable":`Los diffs de imagen aún no están disponibles en Cambios móvil.`,"mobile.settings.placeholder.title":`Ajustes`,"mobile.settings.placeholder.description":`Aquí vivirán los ajustes móviles de conexión y app.`,"layout.rightSidebar.git":`Git`,"layout.rightSidebar.files":`Archivos`,"layout.rightSidebar.context":`Contexto`,"layout.services.instance":`Instancia`,"layout.services.usage":`Uso`,"sessions.sidebar.header.actions.closeSessions":`Cerrar sesiones`,"sessions.sidebar.header.actions.addProject":`Añadir proyecto`,"sessions.sidebar.header.actions.newSession":`Nuevo chat`,"sessions.sidebar.header.actions.newMultiRun":`Nuevo multi-run`,"sessions.sidebar.header.actions.scheduledTasks":`Tareas programadas`,"sessions.scheduledTasks.dialog.title":`Tareas programadas`,"sessions.scheduledTasks.dialog.actions.create":`Crear`,"sessions.scheduledTasks.dialog.actions.moreAria":`Más acciones para {taskName}`,"sessions.scheduledTasks.dialog.actions.delete":`Eliminar`,"sessions.scheduledTasks.dialog.actions.pause":`Pausar`,"sessions.scheduledTasks.dialog.actions.resume":`Reanudar`,"sessions.scheduledTasks.workspace.filters.all":`Todas`,"sessions.scheduledTasks.workspace.filters.active":`Activas`,"sessions.scheduledTasks.workspace.filters.paused":`En pausa`,"sessions.scheduledTasks.workspace.views.aria":`Vistas de tareas programadas`,"sessions.scheduledTasks.workspace.views.tasks":`Tareas`,"sessions.scheduledTasks.workspace.views.history":`Historial`,"sessions.scheduledTasks.history.loading":`Cargando historial de ejecuciones…`,"sessions.scheduledTasks.history.error.title":`No se pudo cargar el historial`,"sessions.scheduledTasks.history.error.description":`OpenChamber no pudo cargar las ejecuciones registradas.`,"sessions.scheduledTasks.history.error.more":`No se pudieron cargar más ejecuciones. El historial cargado sigue disponible.`,"sessions.scheduledTasks.history.retry":`Reintentar`,"sessions.scheduledTasks.history.empty.title":`Aún no hay ejecuciones`,"sessions.scheduledTasks.history.empty.description":`Las ejecuciones programadas y manuales aparecerán aquí.`,"sessions.scheduledTasks.history.trigger.scheduled":`Programada`,"sessions.scheduledTasks.history.trigger.manual":`Manual`,"sessions.scheduledTasks.history.meta.trigger":`Disparo`,"sessions.scheduledTasks.history.meta.started":`Inicio`,"sessions.scheduledTasks.history.meta.ended":`Fin`,"sessions.scheduledTasks.history.meta.duration":`Duración`,"sessions.scheduledTasks.history.ended.unavailable":`—`,"sessions.scheduledTasks.history.duration.pending":`En curso`,"sessions.scheduledTasks.history.duration.lessThanOneSecond":`<1 s`,"sessions.scheduledTasks.history.duration.milliseconds":`{count} ms`,"sessions.scheduledTasks.history.duration.seconds":`{count} s`,"sessions.scheduledTasks.history.duration.minutesSeconds":`{minutes} min {seconds} s`,"sessions.scheduledTasks.history.duration.minutes":`{count} min`,"sessions.scheduledTasks.history.duration.hoursMinutes":`{hours} h {minutes} min`,"sessions.scheduledTasks.history.duration.hours":`{count} h`,"sessions.scheduledTasks.history.openSession":`Abrir sesión`,"sessions.toast.openFailed":`No se puede cargar la conversación {sessionId}`,"sessions.toast.openFailedMissingDirectory":`No se puede cargar la conversación {sessionId}. Falta la ruta del espacio de trabajo.`,"sessions.toast.openFailedMissingSessionId":`No se puede abrir la conversación. Falta el id de sesión.`,"sessions.scheduledTasks.history.loadingMore":`Cargando más…`,"sessions.scheduledTasks.history.loadMore":`Cargar más`,"sessions.scheduledTasks.workspace.search.placeholder":`Buscar tareas…`,"sessions.scheduledTasks.workspace.search.noResults":`Ninguna tarea coincide con la búsqueda.`,"sessions.scheduledTasks.workspace.partialLoadWarning":`No se pudieron cargar las tareas programadas de algunos proyectos. Las tareas cargadas siguen disponibles.`,"sessions.scheduledTasks.workspace.editor.emptyTitle":`Selecciona una tarea`,"sessions.scheduledTasks.workspace.editor.emptyDescription":`Elige una tarea de la lista o crea una nueva.`,"sessions.scheduledTasks.workspace.confirm.discardChanges":`Los cambios sin guardar se descartarán. ¿Continuar?`,"sessions.scheduledTasks.editor.panel.details":`Detalles`,"sessions.scheduledTasks.editor.panel.frequency":`Frecuencia`,"sessions.scheduledTasks.dialog.description":`Tareas del lado del servidor que crean una nueva sesión y envían un prompt configurado.`,"sessions.scheduledTasks.dialog.project.label":`Proyecto`,"sessions.scheduledTasks.dialog.project.placeholder":`Seleccionar proyecto`,"sessions.scheduledTasks.dialog.project.empty":`No hay proyectos`,"sessions.scheduledTasks.dialog.actions.newTask":`Nueva tarea`,"sessions.scheduledTasks.dialog.actions.runNow":`Ejecutar ahora`,"sessions.scheduledTasks.dialog.actions.edit":`Editar`,"sessions.scheduledTasks.dialog.actions.editAria":`Editar {taskName}`,"sessions.scheduledTasks.dialog.actions.deleteAria":`Eliminar {taskName}`,"sessions.scheduledTasks.dialog.loading":`Cargando tareas...`,"sessions.scheduledTasks.dialog.empty.noTasks":`No hay tareas programadas aún.`,"sessions.scheduledTasks.dialog.empty.selectProject":`Selecciona un proyecto para gestionar tareas programadas.`,"sessions.scheduledTasks.dialog.error.chooseProjectFirst":`Elige un proyecto primero`,"sessions.scheduledTasks.dialog.toast.loadFailed":`No se pudo cargar tareas programadas`,"sessions.scheduledTasks.dialog.toast.saved":`Tarea programada guardada`,"sessions.scheduledTasks.dialog.toast.updateFailed":`No se pudo actualizar la tarea`,"sessions.scheduledTasks.dialog.toast.deleted":`Tarea programada eliminada`,"sessions.scheduledTasks.dialog.toast.deleteFailed":`No se pudo eliminar la tarea`,"sessions.scheduledTasks.dialog.toast.started":`Tarea iniciada`,"sessions.scheduledTasks.dialog.toast.runFailed":`No se pudo ejecutar la tarea`,"sessions.scheduledTasks.dialog.confirm.deleteTask":`Eliminar tarea programada "{taskName}"?`,"sessions.scheduledTasks.dialog.schedule.daily":`Cada día {time}`,"sessions.scheduledTasks.dialog.schedule.dailyWithTimezone":`Cada día {time} ({timezone})`,"sessions.scheduledTasks.dialog.schedule.weekly":`Cada semana {days} {time}`,"sessions.scheduledTasks.dialog.schedule.weeklyWithTimezone":`Cada semana {days} {time} ({timezone})`,"sessions.scheduledTasks.dialog.schedule.once":`Una vez {date} {time}`,"sessions.scheduledTasks.dialog.schedule.onceWithTimezone":`Una vez {date} {time} ({timezone})`,"sessions.scheduledTasks.dialog.schedule.cron":`Cron: {cron}`,"sessions.scheduledTasks.dialog.schedule.cronWithTimezone":`Cron: {cron} ({timezone})`,"sessions.scheduledTasks.dialog.schedule.unknownDate":`Fecha desconocida`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.sun":`Dom`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.mon":`Lun`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.tue":`Mar`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.wed":`Mié`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.thu":`Jue`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.fri":`Vie`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.sat":`Sáb`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.unknown":`?`,"sessions.scheduledTasks.dialog.relativeTime.inLessThanOneMinute":`en <1m`,"sessions.scheduledTasks.dialog.relativeTime.justNow":`ahora mismo`,"sessions.scheduledTasks.dialog.relativeTime.inMinutes":`en {count}m`,"sessions.scheduledTasks.dialog.relativeTime.minutesAgo":`hace {count}m`,"sessions.scheduledTasks.dialog.relativeTime.inDuration":`en {duration}`,"sessions.scheduledTasks.dialog.relativeTime.durationAgo":`hace {duration}`,"sessions.scheduledTasks.dialog.status.success":`Éxito`,"sessions.scheduledTasks.dialog.status.error":`Error`,"sessions.scheduledTasks.dialog.status.running":`Ejecutándose`,"sessions.scheduledTasks.dialog.status.idle":`Inactivo`,"sessions.scheduledTasks.dialog.nextRun.label":`Próximo`,"sessions.scheduledTasks.dialog.lastRun.label":`Última ejecución`,"sessions.scheduledTasks.dialog.lastRun.runningNow":`ejecutándose ahora`,"sessions.scheduledTasks.dialog.lastRun.never":`nunca`,"sessions.scheduledTasks.dialog.taskToggle.enableAria":`Habilitar {taskName}`,"sessions.scheduledTasks.dialog.taskToggle.pauseAria":`Pausar {taskName}`,"sessions.scheduledTasks.dialog.taskToggle.enabled":`Habilitado`,"sessions.scheduledTasks.dialog.taskToggle.paused":`Pausado`,"sessions.scheduledTasks.editor.title.edit":`Editar tarea programada`,"sessions.scheduledTasks.editor.title.new":`Nueva tarea programada`,"sessions.scheduledTasks.editor.description":`Configura una tarea del lado del servidor que crea una nueva sesión y envía un prompt.`,"sessions.scheduledTasks.editor.taskName.label":`Nombre de la tarea`,"sessions.scheduledTasks.editor.taskName.placeholder":`Sincronización diaria`,"sessions.scheduledTasks.editor.scheduleType.label":`Tipo de programación`,"sessions.scheduledTasks.editor.scheduleType.daily":`Diario`,"sessions.scheduledTasks.editor.scheduleType.weekly":`Semanal`,"sessions.scheduledTasks.editor.scheduleType.once":`Una vez`,"sessions.scheduledTasks.editor.scheduleType.cron":`Cron`,"sessions.scheduledTasks.editor.date.label":`Fecha`,"sessions.scheduledTasks.editor.date.placeholder":`Seleccionar fecha`,"sessions.scheduledTasks.editor.date.previousMonth":`Mes anterior`,"sessions.scheduledTasks.editor.date.nextMonth":`Próximo mes`,"sessions.scheduledTasks.editor.date.jumpToToday":`Ir a hoy`,"sessions.scheduledTasks.editor.date.today":`Hoy`,"sessions.scheduledTasks.editor.time.label":`Hora`,"sessions.scheduledTasks.editor.time.hourAria":`Horas`,"sessions.scheduledTasks.editor.time.minuteAria":`Minutos`,"sessions.scheduledTasks.editor.time.periodAria":`Período`,"sessions.scheduledTasks.editor.time.period.am":`AM`,"sessions.scheduledTasks.editor.time.period.pm":`PM`,"sessions.scheduledTasks.editor.times.label":`Horas`,"sessions.scheduledTasks.editor.times.add":`Añadir hora`,"sessions.scheduledTasks.editor.times.removeAria":`Eliminar hora`,"sessions.scheduledTasks.editor.timezone.label":`Zona horaria`,"sessions.scheduledTasks.editor.weekdays.label":`Días de la semana`,"sessions.scheduledTasks.editor.model.label":`Modelo`,"sessions.scheduledTasks.editor.thinkingLevel.label":`Nivel de pensamiento`,"sessions.scheduledTasks.editor.thinkingLevel.default":`Predeterminado`,"sessions.scheduledTasks.editor.agent.label":`Agente`,"sessions.scheduledTasks.editor.prompt.label":`Prompt`,"sessions.scheduledTasks.editor.prompt.placeholder":`Resumir tareas abiertas y proponer próximas acciones`,"sessions.scheduledTasks.editor.enabled.aria":`Habilitar tarea`,"sessions.scheduledTasks.editor.enabled.label":`Habilitado`,"sessions.scheduledTasks.editor.goal.label":`Ejecutar como objetivo`,"sessions.scheduledTasks.editor.goal.aria":`Ejecutar esta tarea como un objetivo que el agente persigue hasta completarlo`,"sessions.scheduledTasks.editor.goal.budgetLabel":`Presupuesto de tokens`,"sessions.scheduledTasks.editor.goal.budgetAria":`Limitar el objetivo a un presupuesto de tokens`,"sessions.scheduledTasks.editor.actions.closeAria":`Cerrar`,"sessions.scheduledTasks.editor.actions.cancel":`Cancelar`,"sessions.scheduledTasks.editor.actions.save":`Guardar`,"sessions.scheduledTasks.editor.actions.saving":`Guardando...`,"sessions.scheduledTasks.editor.toast.saveFailed":`No se pudo guardar la tarea`,"sessions.scheduledTasks.editor.validation.taskNameRequired":`Se requiere nombre de tarea`,"sessions.scheduledTasks.editor.validation.promptRequired":`Se requiere prompt`,"sessions.scheduledTasks.editor.validation.modelRequired":`Se requiere modelo`,"sessions.scheduledTasks.editor.validation.dateFormat":`La fecha debe usar YYYY-MM-DD`,"sessions.scheduledTasks.editor.validation.timeFormat":`La hora debe usar HH:mm`,"sessions.scheduledTasks.editor.validation.atLeastOneTime":`Añadir al menos una hora válida`,"sessions.scheduledTasks.editor.validation.atLeastOneWeekday":`Seleccionar al menos un día de la semana`,"sessions.scheduledTasks.editor.validation.timezoneRequired":`Se requiere zona horaria`,"sessions.scheduledTasks.editor.validation.cronRequired":`Se requiere una expresión cron`,"sessions.scheduledTasks.editor.validation.cronInvalid":`Expresión cron no válida`,"sessions.scheduledTasks.editor.cronExpression.label":`Expresión cron`,"sessions.scheduledTasks.editor.cronExpression.placeholder":`*/5 * * * *`,"sessions.scheduledTasks.editor.cronExpression.nextRuns":`Próximas ejecuciones`,"sessions.scheduledTasks.editor.cronExpression.examples":`Ejemplos`,"sessions.scheduledTasks.editor.cronExpression.examples.every5min":`Cada 5 minutos`,"sessions.scheduledTasks.editor.cronExpression.examples.everyHour":`Cada hora`,"sessions.scheduledTasks.editor.cronExpression.examples.monday9am":`Cada lunes a las 9 a. m.`,"sessions.scheduledTasks.editor.cronExpression.examples.9am5pm":`9 a. m. y 5 p. m. todos los días`,"sessions.scheduledTasks.editor.cronExpression.examples.firstOfMonth":`Primero de cada mes`,"multirun.launcher.title":`Nuevo Multi-Run`,"multirun.launcher.actions.closeEsc":`Cerrar (Esc)`,"multirun.launcher.actions.cancel":`Cancelar`,"multirun.launcher.actions.creating":`Creando...`,"multirun.launcher.actions.startWithModelCount":`Iniciar ({count} modelos)`,"multirun.launcher.project.label":`Proyecto`,"multirun.launcher.project.placeholder":`Seleccionar proyecto`,"multirun.launcher.project.empty":`Añade un proyecto primero.`,"multirun.launcher.project.gitRequired":`Sin aislamiento worktree: las ejecuciones usan el mismo directorio.`,"multirun.launcher.groupName.label":`Nombre del grupo`,"multirun.launcher.groupName.info":`Usado para el directorio de worktree y nombres de rama`,"multirun.launcher.groupName.placeholder":`feature-auth, bugfix-login`,"multirun.launcher.baseBranch.label":`Rama base`,"multirun.launcher.baseBranch.info":`Nueva rama creada desde esta base por modelo`,"multirun.launcher.isolateRuns.label":`Aislar ejecuciones`,"multirun.launcher.agent.label":`Agente`,"multirun.launcher.agent.info":`Agente usado para todas las ejecuciones. Por defecto es el agente configurado.`,"multirun.launcher.setupCommands.label":`Comandos de configuración`,"multirun.launcher.setupCommands.loading":`Cargando...`,"multirun.launcher.setupCommands.commandPlaceholder":`bun install`,"multirun.launcher.setupCommands.removeCommandAria":`Eliminar comando`,"multirun.launcher.setupCommands.addCommand":`Añadir comando`,"multirun.launcher.prompt.label":`Prompt`,"multirun.launcher.prompt.placeholder":`Escribe el prompt que se enviará a todos los modelos...`,"multirun.launcher.attachments.attach":`Adjuntar`,"multirun.launcher.attachments.tooltip":`Archivos idénticos enviados a todas las ejecuciones`,"multirun.launcher.models.label":`Modelos`,"multirun.launcher.models.info":`Selecciona 2-{max} modelos. El mismo modelo puede añadirse varias veces.`,"multirun.launcher.toast.fileTooLarge":`El archivo "{fileName}" es demasiado grande (máximo 10MB)`,"multirun.launcher.toast.attachFailed":`No se pudo adjuntar "{fileName}"`,"multirun.launcher.toast.attachedSingle":`Archivo adjuntado ({count})`,"multirun.launcher.toast.attachedPlural":`Archivos adjuntados ({count})`,"multirun.modelMultiSelect.actions.addModel":`Añadir modelo`,"multirun.modelMultiSelect.search.placeholder":`Buscar modelos`,"multirun.modelMultiSelect.search.noResults":`No se encontraron modelos`,"multirun.modelMultiSelect.sections.favorites":`Favoritos`,"multirun.modelMultiSelect.sections.recent":`Recientes`,"multirun.modelMultiSelect.variant.placeholder":`Pensando`,"multirun.modelMultiSelect.variant.default":`Predeterminado`,"multirun.modelMultiSelect.keyboard.hint":`↑↓ navegar • Enter seleccionar • Esc cerrar`,"multirun.modelMultiSelect.validation.minOnly":`Selecciona al menos {min} modelos.`,"multirun.modelMultiSelect.validation.minToMax":`Selecciona entre {min} y {max} modelos.`,"multirun.agentSelector.placeholder":`Selecciona un agente`,"multirun.fusion.title":`Ejecutar fusion`,"multirun.fusion.description":`Combina los resultados seleccionados del multi-run en una respuesta más sólida.`,"multirun.fusion.provider.placeholder":`Proveedor`,"multirun.fusion.model.placeholder":`Modelo`,"multirun.fusion.sources.label":`Fuentes ({count})`,"multirun.fusion.actions.cancel":`Cancelar`,"multirun.fusion.actions.start":`Iniciar fusion`,"multirun.fusion.actions.starting":`Iniciando...`,"multirun.fusion.toast.noOutputs":`No se encontraron respuestas del asistente para fusionar.`,"multirun.fusion.toast.failed":`No se pudo iniciar fusion.`,"multirun.launcher.attachments.label":`Archivos`,"multirun.launcher.actions.startWithRunCount":`Iniciar ({count} ejecuciones)`,"multirun.launcher.groups.addGroup":`Añadir grupo de ejecución`,"multirun.launcher.groups.removeGroup":`Eliminar grupo`,"multirun.launcher.groups.groupLabel":`Grupo de ejecución {index}`,"multirun.launcher.groups.template.label":`Plantilla`,"multirun.launcher.groups.template.placeholder":`Selecciona una plantilla...`,"multirun.launcher.groups.template.custom":`Prompt personalizado`,"multirun.launcher.groups.prompt.label":`Prompt`,"multirun.launcher.groups.prompt.placeholder":`Introduce el prompt para este grupo...`,"sessions.sidebar.header.actions.searchSessions":`Buscar sesiones`,"sessions.sidebar.header.actions.exitSelection":`Salir de selección`,"sessions.sidebar.header.actions.selectSessions":`Seleccionar sesiones`,"sessions.sidebar.header.actions.sortProjects":`Ordenar proyectos`,"sessions.sidebar.header.actions.sessionDisplayMode":`Acciones de expandir/contraer proyectos`,"sessions.sidebar.header.displayMode.label":`Expandir/contraer proyectos`,"sessions.sidebar.header.displayMode.default":`Predeterminado`,"sessions.sidebar.header.displayMode.minimal":`Mínimo`,"sessions.sidebar.header.displayMode.showRecent":`Mostrar recientes`,"sessions.sidebar.header.displayMode.showArchived":`Mostrar sesiones archivadas`,"sessions.sidebar.header.displayMode.collapseAll":`Colapsar todo`,"sessions.sidebar.header.displayMode.expandAll":`Expandir todo`,"sessions.sidebar.header.projectSort.manual":`Manual`,"sessions.sidebar.header.projectSort.aToZ":`A → Z`,"sessions.sidebar.header.projectSort.zToA":`Z → A`,"sessions.sidebar.header.projectSort.dateAdded":`Más recientes`,"sessions.sidebar.header.projectSort.recent":`Recientes`,"sessions.sidebar.header.search.matchCountSingle":`{count} coincidencia`,"sessions.sidebar.header.search.matchCountPlural":`{count} coincidencias`,"sessions.sidebar.header.search.escapeHint":`Esc para limpiar`,"sessions.sidebar.header.search.placeholder":`Buscar sesiones...`,"sessions.sidebar.header.search.clear":`Limpiar búsqueda`,"sessions.sidebar.footer.actions.settings":`Configuración`,"sessions.sidebar.footer.actions.shortcuts":`Atajos`,"sessions.sidebar.footer.actions.aboutOpenChamber":`Acerca de OpenChamber`,"sessions.sidebar.footer.actions.update":`Actualizar`,"sessions.sidebar.empty.noSessions.title":`No hay sesiones aún`,"sessions.sidebar.empty.noSessions.description":`Crea tu primera sesión para comenzar a programar.`,"sessions.sidebar.empty.noMatches.title":`No hay sesiones coincidentes`,"sessions.sidebar.empty.noMatches.description":`Inténtalo con un título, rama, carpeta o ruta diferente.`,"sessions.sidebar.activity.recentTitle":`Reciente`,"sessions.sidebar.projectsTitle":`Proyectos`,"sessions.sidebar.projectsSyncing":`Sincronizando sesiones…`,"sessions.sidebar.project.loadingSessions":`Cargando sesiones…`,"sessions.switcher.openAria":`Abrir selector de sesiones`,"sessions.switcher.empty":`No hay sesiones recientes`,"sessions.switcher.draftTitle":`Nueva sesión`,"sessions.sidebar.updateCheck.errorTitle":`No se pudo comprobar actualizaciones`,"sessions.sidebar.updateCheck.latestVersion":`Estás en la última versión`,"sessions.sidebar.directory.errorAddProjectTitle":`No se pudo añadir el proyecto`,"sessions.sidebar.directory.errorAddProjectDescription":`Selecciona una carpeta válida.`,"sessions.sidebar.directory.errorSelectDirectoryTitle":`No se pudo seleccionar carpeta`,"sessions.sidebar.folder.newFolderName":`Nueva carpeta`,"sessions.sidebar.bulkActions.delete":`Eliminar`,"sessions.sidebar.bulkActions.archive":`Archivar`,"sessions.sidebar.bulkActions.selectedCount":`{count} seleccionados`,"sessions.sidebar.bulkActions.moveToFolder":`Mover a carpeta`,"sessions.sidebar.bulkActions.deletedSingle":`Se eliminó {count} sesión`,"sessions.sidebar.bulkActions.deletedPlural":`Se eliminaron {count} sesiones`,"sessions.sidebar.bulkActions.failedDeleteSingle":`No se pudo eliminar {count} sesión`,"sessions.sidebar.bulkActions.failedDeletePlural":`No se pudo eliminar {count} sesiones`,"sessions.sidebar.bulkActions.archivedSingle":`Se archivó {count} sesión`,"sessions.sidebar.bulkActions.archivedPlural":`Se archivaron {count} sesiones`,"sessions.sidebar.bulkActions.failedArchiveSingle":`No se pudo archivar {count} sesión`,"sessions.sidebar.bulkActions.failedArchivePlural":`No se pudo archivar {count} sesiones`,"sessions.sidebar.bulkActions.archiveUndoFailed":`No se pudieron restaurar {count} sesiones`,"sessions.sidebar.undo":`Deshacer`,"sessions.sidebar.openSettings":`Ajustes`,"sessions.sidebar.folders.none":`No hay carpetas aún`,"sessions.sidebar.folders.newFolderEllipsis":`Nueva carpeta...`,"sessions.sidebar.folders.removeFromFolder":`Quitar de carpeta`,"sessions.sidebar.folders.moveToFolder":`Mover a carpeta`,"sessions.sidebar.project.actions.newWorktree":`Nuevo worktree`,"sessions.sidebar.project.actions.newWorktreeEllipsis":`Nuevo worktree...`,"sessions.sidebar.project.actions.projectMenu":`Menú del proyecto`,"sessions.sidebar.project.actions.syncSessions":`Sincronizar sesiones`,"sessions.sidebar.project.actions.newSession":`Nueva sesión`,"sessions.sidebar.project.actions.closeProject":`Cerrar proyecto`,"sessions.sidebar.project.actions.edit":`Editar`,"sessions.sidebar.project.actions.newDraftSession":`Nueva sesión de borrador`,"sessions.sidebar.session.menu.rename":`Cambiar nombre`,"sessions.sidebar.session.rename.save":`Guardar nombre de sesión`,"sessions.sidebar.session.rename.cancel":`Cancelar cambio de nombre de sesión`,"sessions.sidebar.session.rename.smartTitle":`Generar títulos automáticamente`,"sessions.sidebar.session.menu.unpin":`Desanclar`,"sessions.sidebar.session.menu.pin":`Anclar`,"sessions.sidebar.session.menu.share":`Compartir`,"sessions.sidebar.session.menu.copied":`Copiado`,"sessions.sidebar.session.menu.copyLink":`Copiar enlace`,"sessions.sidebar.session.menu.unshare":`Dejar de compartir`,"sessions.sidebar.session.menu.exportMarkdown":`Exportar Markdown`,"sessions.sidebar.session.menu.refreshTranscript":`Sincronizar mensajes`,"sessions.sidebar.session.menu.refreshTranscriptSuccess":`Mensajes sincronizados`,"sessions.sidebar.session.menu.refreshTranscriptFailed":`No se pudieron sincronizar los mensajes`,"sessions.sidebar.session.menu.runFusion":`Ejecutar fusion`,"sessions.sidebar.session.menu.openInSidePanel":`Abrir en panel lateral`,"sessions.sidebar.session.actions.openInEditor":`Abrir en el editor`,"sessions.sidebar.session.menu.betaBadge":`beta`,"sessions.sidebar.session.menu.label":`Menú de sesión`,"sessions.sidebar.session.untitled":`Sesión sin título`,"sessions.sidebar.session.export.nothingToExport":`No hay nada para exportar`,"sessions.sidebar.session.export.success":`Sesión exportada`,"sessions.sidebar.session.export.failedRevealPath":`No se pudo mostrar la ruta`,"sessions.sidebar.session.export.untitledSubagent":`Subagente sin título`,"sessions.sidebar.session.export.skippedSubtaskSingle":`La sesión se exportó, pero se omitió {count} tarea de subagente que no se pudo cargar.`,"sessions.sidebar.session.export.skippedSubtaskMany":`La sesión se exportó, pero se omitieron {count} tareas de subagente que no se pudieron cargar.`,"sessions.sidebar.session.export.dialog.title":`Exportar Markdown`,"sessions.sidebar.session.export.dialog.descriptionSingle":`Esta sesión tiene {count} tarea de subagente. ¿Incluirla en la exportación?`,"sessions.sidebar.session.export.dialog.descriptionMany":`Esta sesión tiene {count} tareas de subagente. ¿Incluirlas en la exportación?`,"sessions.sidebar.session.export.dialog.includeSubtasks":`Incluir tareas de subagente`,"sessions.sidebar.session.export.dialog.confirm":`Exportar`,"sessions.sidebar.session.status.active":`Sesión activa`,"sessions.sidebar.session.status.unread":`Actualizaciones no leídas`,"sessions.sidebar.session.status.pinned":`Sesión anclada`,"sessions.sidebar.session.actions.pinned":`Fijado`,"sessions.sidebar.session.status.permissionRequired":`Permiso requerido`,"sessions.sidebar.session.status.questionRequired":`Pregunta pendiente`,"sessions.sidebar.session.subsessions.collapse":`Colapsar subsesiones`,"sessions.sidebar.session.subsessions.expand":`Expandir subsesiones`,"sessions.sidebar.dialogs.deleteSession.title":`¿Eliminar sesión?`,"sessions.sidebar.dialogs.archiveSession.title":`¿Archivar sesión?`,"sessions.sidebar.dialogs.deleteSession.withOneSubtask":`"{sessionTitle}" y su {count} subtarea se eliminarán permanentemente.`,"sessions.sidebar.dialogs.deleteSession.withManySubtasks":`"{sessionTitle}" y sus {count} subtareas se eliminarán permanentemente.`,"sessions.sidebar.dialogs.archiveSession.withOneSubtask":`"{sessionTitle}" y su {count} subtarea se archivarán.`,"sessions.sidebar.dialogs.archiveSession.withManySubtasks":`"{sessionTitle}" y sus {count} subtareas se archivarán.`,"sessions.sidebar.dialogs.deleteSession.single":`"{sessionTitle}" se eliminará permanentemente.`,"sessions.sidebar.dialogs.archiveSession.single":`"{sessionTitle}" se archivará.`,"sessions.sidebar.dialogs.neverAsk":`Nunca preguntar`,"sessions.sidebar.dialogs.cancel":`Cancelar`,"sessions.sidebar.dialogs.deleteSession.titleAction":`Eliminar sesión`,"sessions.sidebar.dialogs.deleteSessions.titleAction":`Eliminar sesiones`,"sessions.sidebar.dialogs.deleteSessions.title":`¿Eliminar sesiones?`,"sessions.sidebar.dialogs.archiveSessions.title":`¿Archivar sesiones?`,"sessions.sidebar.dialogs.deleteSessions.singleDescription":`Se eliminará {count} sesión permanentemente.`,"sessions.sidebar.dialogs.deleteSessions.pluralDescription":`{count} sesiones se eliminarán permanentemente.`,"sessions.sidebar.dialogs.archiveSessions.singleDescription":`{count} sesión se archivará.`,"sessions.sidebar.dialogs.archiveSessions.pluralDescription":`{count} sesiones se archivarán.`,"sessions.sidebar.dialogs.deleteFolder.title":`¿Eliminar carpeta?`,"sessions.sidebar.dialogs.deleteFolder.withOneSubfolder":`"{folderName}" se eliminará junto con {count} subcarpeta. Las sesiones dentro no se eliminarán.`,"sessions.sidebar.dialogs.deleteFolder.withManySubfolders":`"{folderName}" se eliminará junto con {count} subcarpetas. Las sesiones dentro no se eliminarán.`,"sessions.sidebar.dialogs.deleteFolder.withContentsNoSubfolders":`"{folderName}" se eliminará. Las sesiones dentro no se eliminarán.`,"sessions.sidebar.dialogs.deleteFolder.single":`"{folderName}" se eliminará permanentemente.`,"sessions.sidebar.dialogs.deleteResult.singleFailedToDelete":`{count} sesión no se pudo eliminar.`,"sessions.sidebar.dialogs.deleteResult.manyFailedToDelete":`{count} sesiones no se pudieron eliminar.`,"sessions.sidebar.dialogs.deleteResult.singleFailedToArchive":`{count} sesión no se pudo archivar.`,"sessions.sidebar.dialogs.deleteResult.manyFailedToArchive":`{count} sesiones no se pudieron archivar.`,"sessions.sidebar.dialogs.deleteResult.removedFromDate":`Se eliminaron todas las sesiones de {dateLabel}.`,"sessions.sidebar.dialogs.deleteResult.tryAgain":`Vuelve a intentarlo en un momento.`,"sessions.sidebar.dialogs.worktreeDelete.descriptionNoLinked":`Esta acción elimina el worktree seleccionado.`,"sessions.sidebar.dialogs.worktreeDelete.descriptionOneLinked":`Esta acción elimina el worktree seleccionado y archiva {count} sesión vinculada.`,"sessions.sidebar.dialogs.worktreeDelete.descriptionManyLinked":`Esta acción elimina el worktree seleccionado y archiva {count} sesiones vinculadas.`,"sessions.sidebar.dialogs.sessionDelete.descriptionOne":`Esta acción elimina permanentemente 1 sesión.`,"sessions.sidebar.dialogs.sessionDelete.descriptionOneWithDate":`Esta acción elimina permanentemente 1 sesión de {dateLabel}.`,"sessions.sidebar.dialogs.sessionDelete.descriptionMany":`Esta acción elimina permanentemente {count} sesiones.`,"sessions.sidebar.dialogs.sessionDelete.descriptionManyWithDate":`Esta acción elimina permanentemente {count} sesiones de {dateLabel}.`,"sessions.sidebar.dialogs.sessionList.more":`+{count} más`,"sessions.sidebar.session.share.successTitle":`Sesión compartida`,"sessions.sidebar.session.share.successDescription":`Puedes copiar el enlace desde el menú.`,"sessions.sidebar.session.share.error":`No se puede compartir la sesión`,"sessions.sidebar.session.share.copyUrlError":`No se pudo copiar la URL`,"sessions.sidebar.session.unshare.success":`Sesión dejó de compartirse`,"sessions.sidebar.session.unshare.error":`No se puede dejar de compartir la sesión`,"sessions.sidebar.session.delete.success":`Sesión eliminada`,"sessions.sidebar.session.delete.error":`No se pudo eliminar la sesión`,"sessions.sidebar.session.archive.success":`Sesión archivada`,"sessions.sidebar.session.archive.error":`No se pudo archivar la sesión`,"sessions.sidebar.session.archive.undoFailed":`No se pudo deshacer el archivado`,"sessions.sidebar.group.pr.checksPassed":`{success}/{total} comprobaciones aprobadas`,"sessions.sidebar.group.pr.failingCount":`{count} con fallos`,"sessions.sidebar.group.pr.pendingCount":`{count} pendientes`,"sessions.sidebar.group.pr.conflictsOrBlocked":`Conflictos o bloqueados`,"sessions.sidebar.group.pr.mergeable":`Se puede hacer merge`,"sessions.sidebar.group.pr.mergeState":`Estado de merge: {state}`,"sessions.sidebar.group.pr.status.merged":`Fusionada`,"sessions.sidebar.group.pr.status.readyToMerge":`Lista para fusionar`,"sessions.sidebar.group.pr.status.open":`PR abierto`,"sessions.sidebar.group.pr.status.mergeConflicts":`Conflictos de merge`,"sessions.sidebar.group.pr.status.mergeBlocked":`Fusión bloqueada`,"sessions.sidebar.group.pr.status.draft":`PR en borrador`,"sessions.sidebar.group.pr.status.closed":`Cerrado`,"sessions.sidebar.group.empty.noArchivedSessions":`No hay sesiones archivadas aún.`,"sessions.sidebar.group.empty.noSessionsInWorkspace":`Aún no hay sesiones en este espacio de trabajo.`,"sessions.sidebar.group.showMore":`Más`,"sessions.sidebar.group.showMoreSingle":`Mostrar {count} más sesión`,"sessions.sidebar.group.showMorePlural":`Mostrar {count} más sesiones`,"sessions.sidebar.group.showFewer":`Menos`,"sessions.sidebar.group.expandAria":`Expandir {label}`,"sessions.sidebar.group.collapseAria":`Colapsar {label}`,"sessions.sidebar.group.actions.deleteArchivedInGroupAria":`Eliminar sesiones archivadas en {label}`,"sessions.sidebar.group.actions.deleteArchivedSessions":`Eliminar sesiones archivadas`,"sessions.sidebar.group.actions.deleteGroupAria":`Eliminar {label}`,"sessions.sidebar.group.actions.deleteWorktree":`Eliminar worktree`,"sessions.sidebar.group.actions.newDraftInGroupAria":`Nueva sesión de borrador en {label}`,"sessions.sidebar.grouping.projectRoot":`raíz del proyecto`,"sessions.sidebar.grouping.projectRootWithBranch":`raíz del proyecto: {branch}`,"sessions.sidebar.grouping.archived":`archivado`,"sessions.sidebar.grouping.archivedDescription":`Sesiones archivadas y no asignadas`,"sessions.sidebar.folderItem.expandAria":`Expandir carpeta {folderName}`,"sessions.sidebar.folderItem.collapseAria":`Colapsar carpeta {folderName}`,"sessions.sidebar.folderItem.namePlaceholder":`Nombre de carpeta`,"sessions.sidebar.folderItem.newSessionAria":`Nueva sesión en {folderName}`,"sessions.sidebar.folderItem.newSubfolderAria":`Nueva subcarpeta en {folderName}`,"sessions.sidebar.folderItem.newSubfolder":`Nueva subcarpeta`,"sessions.sidebar.folderItem.renameAria":`Cambiar nombre carpeta {folderName}`,"sessions.sidebar.folderItem.deleteArchivedInFolderAria":`Eliminar sesiones archivadas en carpeta {folderName}`,"sessions.sidebar.folderItem.deleteFolderAria":`Eliminar carpeta {folderName}`,"sessions.sidebar.folderItem.emptyFolder":`Vaciar carpeta`,"sessions.sidebar.sessionDialogs.ok":`Aceptar`,"sessions.sidebar.sessionDialogs.linkedSessionSingle":`Sesión vinculada`,"sessions.sidebar.sessionDialogs.linkedSessionPlural":`Sesiones vinculadas`,"sessions.sidebar.sessionDialogs.delete.note":`Los directorios de worktree permanecen intactos. Las subsesiones vinculadas a las sesiones seleccionadas también serán eliminadas.`,"sessions.sidebar.sessionDialogs.directory.errorSelectTitle":`No se pudo seleccionar directorio`,"sessions.sidebar.sessionDialogs.directory.errorOpenTitle":`No se pudo abrir directorio`,"sessions.sidebar.sessionDialogs.directory.errorOpenDescription":`Desktop no pudo otorgar acceso a archivos.`,"sessions.sidebar.sessionDialogs.directory.errorAddProjectTitle":`No se pudo añadir proyecto`,"sessions.sidebar.sessionDialogs.directory.errorAddProjectDescription":`Selecciona una ruta de directorio válida.`,"sessions.sidebar.sessionDialogs.worktree.errorRemoveTitle":`No se pudo eliminar worktree`,"sessions.sidebar.sessionDialogs.worktree.removedTitle":`Worktree eliminado`,"sessions.sidebar.sessionDialogs.worktree.removed":`Worktree eliminado.`,"sessions.sidebar.sessionDialogs.worktree.removedWithRemote":`Worktree y rama remota eliminados.`,"sessions.sidebar.sessionDialogs.worktree.attachedArchived":`Worktree adjunto archivado.`,"sessions.sidebar.sessionDialogs.worktree.attachedArchivedPlural":`Worktrees adjuntos archivados.`,"sessions.sidebar.sessionDialogs.worktree.archivedAndRemoteRemoved":`Worktrees archivados y ramas remotas eliminadas.`,"sessions.sidebar.sessionDialogs.worktree.label":`Worktree`,"sessions.sidebar.sessionDialogs.worktree.pathUnavailable":`Ruta de worktree no disponible.`,"sessions.sidebar.sessionDialogs.worktree.uncommittedWarning":`Los cambios sin commit se perderán.`,"sessions.sidebar.sessionDialogs.actions.deleteRemoteBranch":`Eliminar rama remota`,"sessions.sidebar.sessionDialogs.actions.remoteBranchInfoUnavailable":`Información de rama remota no disponible`,"sessions.sidebar.sessionDialogs.actions.deleteLocalBranch":`Eliminar rama local`,"sessions.sidebar.sessionDialogs.actions.deleting":`Eliminando…`,"sessions.sidebar.sessionDialogs.actions.deleteWorktree":`Eliminar worktree`,"gitView.branch.branchToMergeInto":`Rama de destino del merge`,"gitView.branch.branchToRebaseOnto":`rama de destino del rebase`,"gitView.branch.create":`Crear nueva rama...`,"gitView.branch.currentBadge":`Actual`,"gitView.branch.currentBranchFallback":`rama actual`,"gitView.branch.currentBranchTooltip":`Rama actual`,"gitView.branch.detachedHead":`HEAD desvinculado`,"gitView.branch.dialogDescriptionPrefix":`Elige cómo traer otra rama a`,"gitView.branch.empty":`No se encontraron ramas.`,"gitView.branch.localBranches":`Ramas locales`,"gitView.branch.mergeDescription":`Crea un commit de merge y conserva el historial.`,"gitView.branch.mergeRebase":`Merge/Rebase`,"gitView.branch.mergeRebaseTooltip":`Actualiza esta rama desde otra rama.`,"gitView.branch.mergingInProgress":`Merge en curso`,"gitView.branch.namePlaceholder":`Nombre de la rama`,"gitView.branch.newBranchPlaceholder":`Nombre de la nueva rama`,"gitView.branch.noLocalBranches":`No hay ramas locales`,"gitView.branch.noRemoteBranches":`No hay ramas remotas`,"gitView.branch.operation":`Operación`,"gitView.branch.operationCompleted":`Operación completada`,"gitView.branch.operationFailed":`No se pudo completar la operación`,"gitView.branch.pushToPrefix":`Enviar`,"gitView.branch.pushToSuffix":`a:`,"gitView.branch.rebaseDescription":`Reaplica tus commits encima de la rama seleccionada.`,"gitView.branch.rebasingInProgress":`Rebase en progreso`,"gitView.branch.remoteBranches":`Ramas remotas`,"gitView.branch.renameTitle":`Cambiar nombre de rama`,"gitView.branch.renameSave":`Guardar nombre de rama`,"gitView.branch.renameSaving":`Guardando nombre de rama`,"gitView.branch.renameCancel":`Cancelar cambio de nombre de rama`,"gitView.branch.searchPlaceholder":`Buscar ramas...`,"gitView.branch.selectBranch":`Seleccionar rama`,"gitView.branch.summaryMergeInfix":`en`,"gitView.branch.summaryMergePrefix":`Se hará merge de`,"gitView.branch.summaryRebaseInfix":`sobre`,"gitView.branch.summaryRebasePrefix":`Se hará rebase de`,"gitView.branch.updateDescriptionPrefix":`Trae los últimos cambios a`,"gitView.branch.updateTitle":`Actualizar rama`,"gitView.changes.changedFilesAria":`Archivos modificados`,"gitView.changes.clearSelectionAria":`Limpiar selección de archivos`,"gitView.changes.collapseDirectoryAria":`Contraer directorio`,"gitView.changes.expandDirectoryAria":`Expandir directorio`,"gitView.changes.revertAll":`Revertir todo`,"gitView.changes.revertAllDescriptionPlural":`Se descartarán los cambios locales de todos los archivos de la lista.`,"gitView.changes.revertAllDescriptionSingle":`Se descartarán los cambios locales del archivo seleccionado.`,"gitView.changes.revertAllDialogTitle":`¿Revertir todos los cambios?`,"gitView.changes.revertDirectoryAria":`Revertir cambios en {path}`,"gitView.changes.revertDirectory":`Revertir carpeta`,"gitView.changes.revertDirectoryDescriptionPlural":`Se descartarán los cambios locales de {count} archivos en {path}.`,"gitView.changes.revertDirectoryDescriptionSingle":`Se descartarán los cambios locales de {count} archivo en {path}.`,"gitView.changes.revertDirectoryDialogTitle":`¿Revertir cambios de la carpeta?`,"gitView.changes.revertDirectoryTooltip":`Revertir cambios de la carpeta`,"gitView.changes.revertFileAria":`Revertir archivo`,"gitView.changes.revertFileTooltip":`Revertir cambios`,"gitView.changes.reverting":`Revertiendo...`,"gitView.changes.selectAllAria":`Seleccionar todos los archivos`,"gitView.changes.selectFileAria":`Seleccionar archivo`,"gitView.changes.deferredTitle":`{count} archivos modificados`,"gitView.changes.deferredStagedCount":`Preparados: {count}`,"gitView.changes.deferredUnstagedCount":`Sin preparar: {count}`,"gitView.changes.deferredHint":`Los conjuntos de cambios muy grandes no se muestran automáticamente para mantener la aplicación fluida.`,"gitView.changes.deferredLoadAction":`Cargar cambios`,"gitView.changes.stagedTitle":`Preparados`,"gitView.changes.resizeSplitAria":`Ajustar tamaño de cambios preparados y sin preparar`,"gitView.changes.stageAllAria":`Preparar todos los cambios`,"gitView.changes.stageDirectoryAria":`Preparar todos los cambios en {path}`,"gitView.changes.stageFileAria":`Preparar {path}`,"gitView.changes.title":`Cambios`,"gitView.changes.toggleDirectorySelectionAria":`Alternar selección de directorio`,"gitView.changes.unstageAllAria":`Quitar todos los cambios del área preparada`,"gitView.changes.unstageDirectoryAria":`Quitar del área preparada todos los cambios en {path}`,"gitView.changes.unstageFileAria":`Quitar {path} del área preparada`,"gitView.commit.addGitmoji":`Añadir gitmoji`,"gitView.commit.aiHighlights.insertAria":`Insertar`,"gitView.commit.aiHighlights.insertTooltip":`Insertar`,"gitView.commit.aiHighlights.title":`Puntos destacados`,"gitView.commit.commit":`Commit`,"gitView.commit.commitAria":`Commit`,"gitView.commit.committing":`Creando commit...`,"gitView.commit.generate":`Generar`,"gitView.commit.generateAria":`Generar mensaje de commit`,"gitView.commit.messagePlaceholder":`Mensaje de commit`,"gitView.commit.push":`Commit & sync`,"gitView.commit.pushAria":`Commit and sync`,"gitView.commit.pushing":`Sincronizando...`,"gitView.commit.selectFilesHint":`Selecciona archivos en Cambios para habilitar el commit.`,"gitView.commit.stageFilesHint":`Prepara archivos para habilitar el commit.`,"gitView.commit.title":`Commit`,"gitView.common.cancel":`Cancelar`,"gitView.common.close":`Cerrar`,"gitView.common.done":`Hecho`,"gitView.common.processing":`Procesando...`,"gitView.common.reset":`Restablecer`,"gitView.conflict.abortOperation":`Abortar operación`,"gitView.conflict.conflictedFiles":`Archivos en conflicto:`,"gitView.conflict.continueLater":`Continuar más tarde`,"gitView.conflict.detectedDescription":`Se detectaron conflictos que debes resolver.`,"gitView.conflict.detectedTitle":`Conflictos detectados`,"gitView.conflict.errorLoadingDetails":`No se pudo cargar detalles`,"gitView.conflict.headInfo":`Información de HEAD:`,"gitView.conflict.loadFailed":`No se pudo cargar`,"gitView.conflict.loading":`Cargando detalles del conflicto...`,"gitView.conflict.noActiveSession":`Sin sesión activa`,"gitView.conflict.noActiveSessionDescription":`Abre o crea una sesión para resolver los conflictos.`,"gitView.conflict.resolveCurrentSession":`Resolver en sesión actual`,"gitView.conflict.resolveNewSession":`Resolver en nueva sesión`,"gitView.empty.cleanDescription":`No hay cambios pendientes.`,"gitView.empty.cleanTitle":`Worktree limpio`,"gitView.empty.pullBehindPlural":`Pull de {count} commits`,"gitView.empty.pullBehindSingle":`Pull de {count} commit`,"gitView.header.identityTooltip":`Identidad de Git`,"gitView.header.noIdentity":`Sin identidad`,"gitView.header.noProfiles":`No hay perfiles disponibles para aplicar.`,"gitView.header.repositoryViews":`Vistas del repositorio`,"gitView.header.removeRemoteAria":`Eliminar remoto`,"gitView.header.removeRemoteTitle":`Eliminar remoto`,"gitView.header.upstreamSynced":`sincronizado`,"gitView.header.upstreamTooltip":`Comparado con {target}.`,"gitView.header.upstreamTooltipTracking":`Comparado con {target}. Los indicadores principales de sincronización aún reflejan {tracking}.`,"gitView.history.actions.cancelButton":`Cancelar`,"gitView.history.actions.checkoutConfirm":`¿Cambiar a este commit como HEAD separado?`,"gitView.history.actions.cherryPickConfirm":`¿Aplicar cherry-pick de este commit sobre la rama actual?`,"gitView.history.actions.conflictToastDescription":`Conflictos en: {files}. Resuélvelos manualmente y haz commit, o aborta con git cherry-pick/revert --abort.`,"gitView.history.actions.conflictToastTitle":`Conflicto`,"gitView.history.actions.confirmButton":`Confirmar`,"gitView.history.actions.mergeConfirm":`¿Fusionar este commit en la rama actual?`,"gitView.history.actions.rebaseConfirm":`¿Rebasear la rama actual sobre este commit?`,"gitView.history.actions.resetHardConfirm":`Reset hard — HEAD se mueve y todos los cambios sin commit se descartan permanentemente.`,"gitView.history.actions.resetMixedConfirm":`Reset mixed — HEAD se mueve y los cambios quedan sin preparar.`,"gitView.history.actions.resetSoftConfirm":`Reset soft — HEAD se mueve y los cambios preparados se conservan.`,"gitView.history.actions.revertConfirm":`¿Preparar una reversión de este commit?`,"gitView.history.actions.checkout":`Cambiar a commit`,"gitView.history.actions.cherryPick":`Cherry-pick`,"gitView.history.actions.createBranch":`Crear rama aquí`,"gitView.history.actions.createBranchConfirm":`Crear`,"gitView.history.actions.createBranchPlaceholder":`Nombre de rama`,"gitView.history.actions.detachedHead":`Checkout realizado (HEAD separado)`,"gitView.history.actions.merge":`Fusionar en la actual`,"gitView.history.actions.rebase":`Rebasear sobre este`,"gitView.history.actions.reset":`Reset...`,"gitView.history.actions.resetHard":`Hard — descartar todos los cambios`,"gitView.history.actions.resetHardConfirmButton":`Descartar cambios`,"gitView.history.actions.resetMixed":`Mixed — quitar del stage`,"gitView.history.actions.resetSoft":`Soft — conservar staged`,"gitView.history.actions.revert":`Revertir`,"gitView.history.binary":`Binario`,"gitView.history.binaryNoDiff":`Archivo binario — no hay diff disponible`,"gitView.history.commitsPlaceholder":`Buscar commits...`,"gitView.history.copySha":`Copiar SHA`,"gitView.history.diffError":`Error al cargar el diff. Haz clic para reintentar.`,"gitView.history.largeDiffDescription":`El renderizado puede ser lento. Puedes ver el diff igualmente haciendo clic abajo.`,"gitView.history.largeDiffTitle":`Diff grande ({count} líneas cambiadas)`,"gitView.history.loadingDiff":`Cargando diff...`,"gitView.history.loadingFiles":`Cargando archivos...`,"gitView.history.loadMore":`Cargar más`,"gitView.history.loadingMore":`Cargando...`,"gitView.history.logSize100":`100 commits`,"gitView.history.logSize25":`25 commits`,"gitView.history.logSize50":`50 commits`,"gitView.history.noCommits":`No se encontraron commits`,"gitView.history.noFiles":`No hay archivos`,"gitView.history.renamedNoDiff":`Archivo renombrado — diff no soportado`,"gitView.history.renderDiffAnyway":`Renderizar igualmente`,"gitView.history.title":`Historial`,"gitView.graph.title":`Grafo`,"gitView.integrate.checking":`Verificando…`,"gitView.integrate.cherryPickAbortedToast":`Cherry-pick abortado`,"gitView.integrate.cherryPickConflictDescription":`Resuelve los conflictos de cherry-pick para continuar.`,"gitView.integrate.cherryPickConflictToast":`Conflictos de cherry-pick detectados`,"gitView.integrate.cherryPickContinueFailedToast":`No se pudo continuar el cherry-pick`,"gitView.integrate.cherryPickFinishedToast":`Cherry-pick completado`,"gitView.integrate.commitsMovedDescriptionPlural":`Commits movidos`,"gitView.integrate.commitsMovedDescriptionSingle":`Commit movido`,"gitView.integrate.commitsMovedToast":`Commits movidos`,"gitView.integrate.commitsToMove":`Commits por mover`,"gitView.integrate.conflictsInFiles":`Conflictos en archivos`,"gitView.integrate.currentCommit":`Commit actual`,"gitView.integrate.currentSession":`Sesión actual`,"gitView.integrate.failedToMoveToast":`No se pudieron mover los commits`,"gitView.integrate.moreFiles":`Más archivos`,"gitView.integrate.move":`Mover`,"gitView.integrate.moveCommits":`Mover commits`,"gitView.integrate.moving":`Moviendo…`,"gitView.integrate.newSession":`Nueva sesión`,"gitView.integrate.noActiveSession":`Sin sesión activa`,"gitView.integrate.noActiveSessionDescription":`Abre o crea una sesión para resolver los conflictos.`,"gitView.integrate.noCommitsToMove":`No hay commits para mover.`,"gitView.integrate.noCommitsToMoveToast":`No hay commits para mover`,"gitView.integrate.previewUnavailable":`Vista previa no disponible`,"gitView.integrate.showAll":`Mostrar todo`,"gitView.integrate.showLess":`Mostrar menos`,"gitView.integrate.showingFirstCommits":`Mostrando los primeros commits`,"gitView.integrate.target":`Destino`,"gitView.integrate.title":`Reintegrar commits`,"gitView.integrate.toMoveCount":`Commits por mover`,"gitView.operation.abort":`Abortar`,"gitView.operation.continue":`Continuar`,"gitView.operation.inProgressTitle":`{operation} en progreso`,"gitView.operation.merge":`Merge`,"gitView.operation.mergeInProgressWithHead":`Haciendo merge de {head}`,"gitView.operation.mergingMessage":`Haciendo merge: {message}`,"gitView.operation.rebase":`Rebase`,"gitView.operation.rebaseInProgress":`Rebase en progreso`,"gitView.operation.rebasingOnto":`Haciendo rebase de {headName} sobre {onto}`,"gitView.operation.resolveConflictsHint":`Resuelve los conflictos y luego continúa la operación.`,"gitView.operation.resolveWithAi":`Resolver con IA`,"gitView.stash.confirmButton":`Guardar cambios y continuar`,"gitView.stash.description":`Tienes cambios sin commit que podrían sobrescribirse. Guárdalos temporalmente antes de continuar.`,"gitView.stash.mergeWith":`Merge con`,"gitView.stash.rebaseOnto":`Rebase sobre`,"gitView.stash.restoreAfterOperation":`Restaurar después de la operación`,"gitView.stash.restoreAria":`Restaurar stash`,"gitView.stash.stepRestore":`Restaura tus cambios guardados`,"gitView.stash.stepStash":`Guarda tus cambios sin commit`,"gitView.stash.thisWill":`Esto hará:`,"gitView.stash.title":`Cambios sin commit`,"gitView.stashes.actions.apply":`Apply`,"gitView.stashes.actions.drop":`Drop`,"gitView.stashes.actions.pop":`Pop`,"gitView.stashes.actions.stashCurrent":`Stash current changes`,"gitView.stashes.actions.stashCurrentWithCount":`Stash {count} files`,"gitView.stashes.confirm.drop":`Drop {ref}?`,"gitView.stashes.description":`Save, restore, and clean up Git stashes for this repository.`,"gitView.stashes.empty.list":`No stashes yet.`,"gitView.stashes.empty.search":`No matching stashes.`,"gitView.stashes.includeUntrackedHint":`Untracked files are included automatically.`,"gitView.stashes.fileCount":`{count} files`,"gitView.stashes.fileCountLoading":`counting files...`,"gitView.stashes.itemNumber":`#{number}`,"gitView.stashes.latestLabel":`Latest`,"gitView.stashes.messagePlaceholder":`Stash name`,"gitView.stashes.searchPlaceholder":`Search stashes`,"gitView.stashes.title":`Stashes`,"gitView.stashes.toast.applyFailed":`Failed to apply stash`,"gitView.stashes.toast.applySuccess":`Stash applied`,"gitView.stashes.toast.createFailed":`Failed to stash changes`,"gitView.stashes.toast.created":`Changes stashed`,"gitView.stashes.toast.dropFailed":`Failed to drop stash`,"gitView.stashes.toast.dropSuccess":`Stash dropped`,"gitView.stashes.toast.loadFailed":`Failed to load stashes`,"gitView.stashes.toast.noChanges":`No local changes to stash`,"gitView.stashes.toast.popFailed":`Failed to pop stash`,"gitView.stashes.toast.popSuccess":`Stash popped`,"gitView.stashes.untitled":`Untitled stash`,"gitView.sync.fetch":`Fetch`,"gitView.sync.fetchFromRemote":`Fetch de {name}`,"gitView.sync.fetchTooltip":`Fetch del remoto`,"gitView.sync.commitOrStashTooltip":`Haz commit o stash de tus cambios antes de sincronizar`,"gitView.sync.moreActionsAria":`Más acciones de sincronización`,"gitView.sync.noRemoteTooltip":`No hay remotos configurados`,"gitView.sync.pull":`Pull`,"gitView.sync.pullTooltip":`Hacer pull`,"gitView.sync.pullTooltipBehind":`Hacer pull ({count} detrás)`,"gitView.sync.push":`Push`,"gitView.sync.pushTooltip":`Hacer push`,"gitView.sync.pushTooltipAhead":`Hacer push ({count} por delante)`,"gitView.sync.sync":`sync`,"gitView.sync.syncChanges":`Sync Changes`,"gitView.sync.syncChangesTooltip":`Sync Changes ({behind} abajo, {ahead} arriba)`,"gitView.sync.syncChangesWithCounts":`Sync Changes {behind}↓ {ahead}↑`,"gitView.sync.syncCounts":`{behind}↓ {ahead}↑`,"gitView.branch.actionsUnavailable":`Acciones de rama no disponibles en este estado del repositorio`,"gitView.conflict.noDetailsAvailable":`No hay detalles de conflicto disponibles`,"gitView.empty.notGitRepository":`Este directorio no es un repositorio Git`,"gitView.empty.notGitRepositoryDescription":`Inicializa Git en este directorio o abre un repositorio.`,"gitView.empty.selectSessionOrDirectory":`Selecciona una sesión o directorio para ver el estado de Git`,"gitView.empty.worktreeFeaturesUnavailable":`Las características de worktree no están disponibles en este modo de espacio de trabajo.`,"gitView.empty.worktreeSetupDescription":`Finalizando la configuración de worktree y preparando el estado del repositorio.`,"gitView.empty.worktreeSetupInProgress":`Configuración de worktree en progreso`,"worktree.bootstrap.toast.failed":`Error al configurar el worktree`,"worktree.bootstrap.toast.failedDescription":`El worktree se creó, pero la configuración en segundo plano no terminó.`,"worktree.bootstrap.toast.timeoutDescription":`El worktree se creó, pero la configuración en segundo plano agotó el tiempo de espera.`,"gitView.gitmoji.empty":`No se encontraron gitmojis`,"gitView.gitmoji.searchPlaceholder":`Buscar gitmojis...`,"gitView.gitmoji.title":`Insertar gitmoji`,"gitView.history.dialogDescription":`Navega por commits recientes e inspecciona los archivos modificados.`,"gitView.loading.checkingRepository":`Verificando repositorio...`,"gitView.loading.loading":`Cargando...`,"gitView.pr.actions.add":`Añadir`,"gitView.pr.actions.cancelEditing":`Cancelar edición`,"gitView.pr.actions.cancelEditingAria":`Cancelar edición de PR`,"gitView.pr.actions.createPr":`Crear PR`,"gitView.pr.actions.edit":`Editar`,"gitView.pr.actions.editPr":`Editar PR`,"gitView.pr.actions.editPrAria":`Editar PR`,"gitView.pr.actions.hide":`Ocultar`,"gitView.pr.actions.markReady":`Marcar como listo`,"gitView.pr.actions.markReadyAria":`Marcar la PR como lista para revisión`,"gitView.pr.actions.mergePr":`Hacer merge de la PR`,"gitView.pr.actions.mergePrAria":`Hacer merge de la PR`,"gitView.pr.actions.openChecks":`Abrir checks`,"gitView.pr.actions.openChecksAria":`Abrir checks fallidos`,"gitView.pr.actions.openComments":`Abrir comentarios`,"gitView.pr.actions.openCommentsAria":`Abrir comentarios de la PR`,"gitView.pr.actions.openOnGitHub":`Abrir en GitHub`,"gitView.pr.actions.openOnGitHubAria":`Abrir PR en GitHub`,"gitView.pr.actions.openSettings":`Abrir configuración`,"gitView.pr.actions.repo":`Repositorio`,"gitView.pr.actions.resolveFailedChecks":`Resolver checks fallidos`,"gitView.pr.actions.resolveFailedChecksAria":`Enviar checks fallidos al agente`,"gitView.pr.actions.savePr":`Guardar PR`,"gitView.pr.actions.savePrAria":`Guardar cambios de la PR`,"gitView.pr.actions.sendCommentToAgent":`Enviar comentario al agente`,"gitView.pr.actions.sendCommentToAgentAria":`Enviar este comentario al agente`,"gitView.pr.actions.sendToAgent":`Enviar al agente`,"gitView.pr.actions.shareComments":`Compartir comentarios`,"gitView.pr.actions.shareCommentsAria":`Enviar comentarios de la PR al agente`,"gitView.pr.actions.toggleDraftAria":`Alternar estado de borrador`,"gitView.pr.actions.refresh":`Actualizar estado de la PR`,"gitView.pr.actions.refreshAria":`Actualizar estado del pull request`,"gitView.pr.additionalContext.added":`Añadido`,"gitView.pr.additionalContext.hint":`Añade contexto adicional para una revisión más efectiva.`,"gitView.pr.additionalContext.optional":`Opcional`,"gitView.pr.additionalContext.title":`Contexto adicional`,"gitView.pr.checkDetails.empty":`No hay detalles del check disponibles`,"gitView.pr.checkDetails.title":`Detalles del check fallido`,"gitView.pr.checkingStatus":`Comprobando estado de la PR...`,"gitView.pr.checks.label":`checks`,"gitView.pr.checks.completedLabel":`Completado`,"gitView.pr.checks.conclusionLabel":`Conclusión`,"gitView.pr.checks.startedLabel":`Iniciado`,"gitView.pr.checks.statusLabel":`Estado`,"gitView.pr.checks.stepLabel":`Paso`,"gitView.pr.checks.steps":`Pasos`,"gitView.pr.comments.empty":`No se encontraron comentarios`,"gitView.pr.comments.generalContext":`Comentario general`,"gitView.pr.comments.reviewContext":`Comentario de revisión`,"gitView.pr.comments.title":`Comentarios`,"gitView.pr.comments.unknownAuthor":`Autor desconocido`,"gitView.pr.createTitle":`Crear PR`,"gitView.pr.draftMustBeReady":`La PR en borrador debe marcarse como lista antes de hacer merge.`,"gitView.pr.field.baseBranch":`Rama base`,"gitView.pr.field.description":`Descripción`,"gitView.pr.field.draft":`Borrador`,"gitView.pr.field.title":`Título`,"gitView.pr.githubNotConnected":`GitHub no está conectado`,"gitView.pr.loadingDescription":`Cargando descripción...`,"gitView.pr.mergeMethod.merge":`Crear un merge commit`,"gitView.pr.mergeMethod.rebase":`Rebase y merge`,"gitView.pr.mergeMethod.squash":`Squash y merge`,"gitView.pr.noDescription":`Sin descripción`,"gitView.pr.noMergePermission":`No tienes permiso para hacer merge de esta PR.`,"gitView.pr.notMergeable":`No se puede hacer merge`,"gitView.pr.numberLabel":`PR # {number}`,"gitView.pr.placeholder.additionalContext":`Cualquier restricción, nota de lanzamiento o contexto para revisor...`,"gitView.pr.placeholder.description":`Describe el cambio...`,"gitView.pr.placeholder.main":`Resume tu PR`,"gitView.pr.placeholder.selectBaseBranch":`Seleccionar rama base`,"gitView.pr.placeholder.title":`Título de la PR`,"gitView.pr.placeholder.whatChanged":`¿Qué cambió y por qué?`,"gitView.pr.statusUnavailable":`Estado de la PR no disponible`,"gitView.pr.toast.baseBranchRequired":`Selecciona una rama base`,"gitView.pr.toast.baseMustDifferFromHead":`La rama base debe diferir de la rama actual`,"gitView.pr.toast.createPrFailed":`No se pudo crear la PR`,"gitView.pr.toast.generateDescriptionFailed":`No se pudo generar la descripción de la PR`,"gitView.pr.toast.githubApiUnavailable":`La API de GitHub no está disponible`,"gitView.pr.toast.loadCheckDetailsFailed":`No se pudieron cargar los detalles del check`,"gitView.pr.toast.loadChecksFailed":`No se pudieron cargar los checks de la PR`,"gitView.pr.toast.loadCommentsFailed":`No se pudieron cargar los comentarios`,"gitView.pr.toast.loadPrCommentsFailed":`No se pudieron cargar los comentarios de la PR`,"gitView.pr.toast.markReadyFailed":`No se pudo marcar la PR como lista`,"gitView.pr.toast.markedReady":`La PR se marcó como lista para revisión`,"gitView.pr.toast.mergeFailed":`No se pudo hacer merge de la PR`,"gitView.pr.toast.noActiveSession":`No hay sesión de chat activa`,"gitView.pr.toast.noActiveSessionDescription":`Abre o crea una sesión de chat para enviar contexto a un agente.`,"gitView.pr.toast.noFailedChecks":`No se encontraron checks fallidos`,"gitView.pr.toast.noModelSelected":`Selecciona un modelo primero`,"gitView.pr.toast.noPrComments":`No se encontraron comentarios de la PR`,"gitView.pr.toast.prCreated":`PR creada`,"gitView.pr.toast.prMerged":`Merge de PR completado`,"gitView.pr.toast.prNotMerged":`No se hizo merge de la PR`,"gitView.pr.toast.prUpdated":`PR actualizada`,"gitView.pr.toast.sendMessageFailed":`No se pudo enviar el mensaje al agente`,"gitView.pr.toast.titleRequired":`El título es obligatorio`,"gitView.pr.toast.updatePrFailed":`No se pudo actualizar la PR`,"gitView.pullRequest.createHint":`Crea y gestiona PR desde esta rama.`,"gitView.pullRequest.availableOnFeatureBranches":`Disponible cuando la rama actual puede abrir un PR.`,"gitView.pullRequest.title":`PR`,"gitView.tabs.commit":`Commit`,"gitView.tabs.pr":`PR`,"gitView.tabs.update":`Actualizar`,"gitView.tabs.worktree":`Árbol de trabajo`,"gitView.toast.abortOperationFailed":`No se pudo abortar la operación`,"gitView.toast.appliedIdentity":`Identidad aplicada: {name}`,"gitView.toast.applyIdentityFailed":`No se pudo aplicar la identidad`,"gitView.toast.branchCreatedLocally":`Rama creada localmente, pero no se pudo configurar el upstream.`,"gitView.toast.cannotCheckout":`No se puede cambiar a la rama: {reason}`,"gitView.toast.cannotCreateBranch":`No se puede crear la rama: {reason}`,"gitView.toast.cannotRemoveOriginRemote":`No se puede eliminar el remoto origin`,"gitView.toast.cannotRenameBranch":`No se puede cambiar el nombre de la rama: {reason}`,"gitView.toast.checkedOut":`Cambiado a {name}`,"gitView.toast.checkoutFailed":`No se pudo cambiar a {name}`,"gitView.toast.commitCreated":`Commit creado`,"gitView.toast.commitHashCopied":`Hash del commit copiado`,"gitView.toast.continueOperationFailed":`No se pudo continuar la operación`,"gitView.toast.copyFailed":`No se pudo copiar`,"gitView.toast.createBranchFailed":`No se pudo crear la rama`,"gitView.toast.createCommitFailed":`No se pudo crear el commit`,"gitView.toast.createdBranch":`Rama {name} creada`,"gitView.toast.enterCommitMessage":`Escribe un mensaje de commit`,"gitView.toast.fetchedFromRemote":`Recuperado de {name}`,"gitView.toast.generateCommitMessageFailed":`No se pudo generar el mensaje de commit`,"gitView.toast.mergeAborted":`Merge abortado`,"gitView.toast.mergeCompleted":`Merge completado`,"gitView.toast.mergeConflictsDetected":`Se detectaron conflictos al hacer merge`,"gitView.toast.mergedIntoBranch":`Merge de {branch} en {currentBranch}`,"gitView.toast.pulledFilesPlural":`Se trajeron {count} archivos de {name}`,"gitView.toast.pulledFilesSingle":`Se trajo {count} archivo de {name}`,"gitView.toast.pushedToUpstream":`Enviado a {name}`,"gitView.toast.commitOrStashBeforeSync":`Haz commit o stash de tus cambios antes de sincronizar`,"gitView.toast.alreadyUpToDate":`Ya está actualizado`,"gitView.toast.syncedPulledPluralAndPushed":`Se trajeron {count} archivos de {name} y se envió al upstream`,"gitView.toast.syncedPulledSingleAndPushed":`Se trajo {count} archivo de {name} y se envió al upstream`,"gitView.toast.syncedChanges":`Cambios sincronizados`,"gitView.toast.rebaseAborted":`Rebase abortado`,"gitView.toast.rebaseConflictsDetected":`Se detectaron conflictos al hacer rebase`,"gitView.toast.rebaseStepCompleted":`Paso de rebase completado`,"gitView.toast.rebasedOntoBranch":`Rebase de {currentBranch} sobre {branch}`,"gitView.toast.refreshRepositoryFailed":`No se pudo actualizar el repositorio`,"gitView.toast.remoteNameRequired":`Se requiere nombre del remoto`,"gitView.toast.removedRemote":`Remoto {name} eliminado`,"gitView.toast.renameBranchFailed":`No se pudo cambiar el nombre de {oldName} a {newName}`,"gitView.toast.renamedBranch":`{oldName} renombrado a {newName}`,"gitView.toast.restoreStashFailed":`No se pudo restaurar el stash`,"gitView.toast.restoreStashManually":`Debes restaurar el stash manualmente`,"gitView.toast.revertFailed":`No se pudieron revertir los cambios`,"gitView.toast.revertedFile":`{path} revertido`,"gitView.toast.revertedFilesPlural":`{count} archivos revertidos`,"gitView.toast.revertedFilesSingle":`{count} archivo revertido`,"gitView.toast.revertedSomePlural":`{success} archivos revertidos, {failed} fallidos`,"gitView.toast.revertedSomeSingle":`{success} archivo revertido, {failed} fallido`,"gitView.toast.stageFileFailed":`No se pudieron preparar los cambios`,"gitView.toast.stageFileToCommit":`Prepara al menos un archivo para el commit`,"gitView.toast.stageFileToDescribe":`Prepara al menos un archivo para describir`,"gitView.toast.selectFileToCommit":`Selecciona al menos un archivo para el commit`,"gitView.toast.selectFileToDescribe":`Selecciona al menos un archivo para describir`,"gitView.toast.stashedRestored":`Cambios del stash restaurados`,"gitView.toast.syncActionFailed":`{action} falló`,"gitView.toast.unstageFileFailed":`No se pudieron quitar los cambios del área preparada`,"gitView.toast.upstreamSet":`Upstream de {branch} configurado como {remote}`,"gitView.worktree.availableInWorktreeMode":`Disponible solo en modo worktree`,"contextPanel.mode.chat":`Chat`,"contextPanel.mode.files":`Archivos`,"contextPanel.mode.diff":`Cambios`,"contextPanel.mode.stagedDiff":`Staged Diff`,"contextPanel.mode.workingDiff":`Working Diff`,"contextPanel.mode.plan":`Plan`,"contextPanel.mode.context":`Contexto`,"contextPanel.mode.preview":`Vista previa`,"contextPanel.mode.browser":`Navegador`,"contextPanel.browser.open":`Abrir panel del navegador`,"contextPanel.browser.addressAria":`Dirección del navegador`,"contextPanel.browser.empty":`Navegador web`,"contextPanel.browser.emptyHint":`Ingrese una dirección arriba para comenzar a navegar`,"contextPanel.browser.inspectUnavailable":`Esta página no se puede inspeccionar desde el panel del navegador.`,"contextPanel.browser.trustNotice":`Las páginas que abras aquí se ejecutan con acceso completo a OpenChamber: necesario para la inspección y las capturas. Abre solo sitios de confianza: una página maliciosa podría leer tus datos o actuar en tu nombre.`,"contextPanel.file.notice.turnDiffOutsideWorkspace":`El diff del turno no está disponible fuera del proyecto. Se muestra el contenido actual del archivo.`,"contextPanel.tab.closeTabAria":`Cerrar pestaña {label}`,"contextPanel.actions.collapsePanel":`Colapsar panel`,"contextPanel.actions.expandPanel":`Expandir panel`,"contextPanel.actions.closePanel":`Cerrar panel`,"contextPanel.actions.resizePanelAria":`Ajustar tamaño del panel de contexto`,"contextPanel.iframe.sessionChatTitle":`Chat de sesión {sessionID}`,"contextPanel.preview.actions.reload":`Recargar vista previa`,"contextPanel.preview.actions.openExternal":`Abrir en el navegador`,"contextPanel.preview.actions.retry":`Reintentar`,"contextPanel.preview.iframeTitle":`Vista previa`,"contextPanel.preview.invalidUrl":`La vista previa necesita una URL http(s) válida.`,"contextPanel.preview.empty":`Sin URL de vista previa`,"contextPanel.preview.loading":`Conectando proxy de vista previa...`,"contextPanel.preview.proxyError":`No se pudo iniciar el proxy de vista previa.`,"contextPanel.preview.upstreamUnreachable":`El servidor de desarrollo no responde.`,"contextPanel.preview.upstreamUnreachableHint":`Verifica que tu servidor de desarrollo siga en ejecución y vuelve a intentarlo.`,"terminalView.preview.open":`Vista previa`,"terminalView.preview.openTitle":`Abrir panel de vista previa`,"sidebarFilesTree.menu.rename":`Cambiar nombre`,"sidebarFilesTree.menu.copyPath":`Copiar ruta`,"sidebarFilesTree.menu.save":`Guardar`,"sidebarFilesTree.menu.newFile":`Nuevo archivo`,"sidebarFilesTree.menu.newFolder":`Nueva carpeta`,"sidebarFilesTree.menu.delete":`Eliminar`,"sidebarFilesTree.toast.pathCopied":`Ruta copiada`,"sidebarFilesTree.toast.copyFailed":`No se pudo copiar`,"sidebarFilesTree.toast.revealFailed":`No se pudo revelar la ruta`,"sidebarFilesTree.toast.filenameRequired":`El nombre de archivo es obligatorio`,"sidebarFilesTree.toast.writeNotSupported":`La escritura no es compatible`,"sidebarFilesTree.toast.fileCreated":`Archivo creado`,"sidebarFilesTree.toast.operationFailed":`No se pudo completar la operación`,"sidebarFilesTree.toast.folderNameRequired":`El nombre de carpeta es obligatorio`,"sidebarFilesTree.toast.folderCreated":`Carpeta creada`,"sidebarFilesTree.toast.nameRequired":`El nombre es obligatorio`,"sidebarFilesTree.toast.renameNotSupported":`El cambio de nombre no es compatible`,"sidebarFilesTree.toast.renamedSuccessfully":`Nombre cambiado`,"sidebarFilesTree.toast.deleteNotSupported":`La eliminación no es compatible`,"sidebarFilesTree.toast.deletedSuccessfully":`Eliminado`,"sidebarFilesTree.search.placeholder":`Buscar archivos...`,"sidebarFilesTree.search.clearAria":`Limpiar búsqueda`,"sidebarFilesTree.actions.newFileTitle":`Nuevo archivo`,"sidebarFilesTree.actions.newFolderTitle":`Nueva carpeta`,"sidebarFilesTree.actions.refreshTitle":`Actualizar`,"sidebarFilesTree.actions.collapseAllTitle":`Contraer todo`,"sidebarFilesTree.actions.expandAllTitle":`Expandir todo`,"sidebarFilesTree.actions.fileMenuTitle":`Menú de archivo`,"sidebarFilesTree.state.searching":`Buscando...`,"sidebarFilesTree.state.loading":`Cargando...`,"sidebarFilesTree.dialog.createFile.title":`Crear archivo`,"sidebarFilesTree.dialog.createFolder.title":`Crear carpeta`,"sidebarFilesTree.dialog.rename.title":`Cambiar nombre`,"sidebarFilesTree.dialog.delete.title":`Eliminar`,"sidebarFilesTree.dialog.createFile.description":`Crea un archivo nuevo en {path}`,"sidebarFilesTree.dialog.createFolder.description":`Crea una carpeta nueva en {path}`,"sidebarFilesTree.dialog.rename.description":`Cambiar el nombre de {name}`,"sidebarFilesTree.dialog.delete.description":`¿Estás seguro de que quieres eliminar {name}? Esta acción no se puede deshacer.`,"sidebarFilesTree.dialog.rootFallback":`raíz`,"sidebarFilesTree.dialog.rename.placeholder":`Nuevo nombre`,"sidebarFilesTree.dialog.namePlaceholder":`Nombre`,"sidebarFilesTree.dialog.cancel":`Cancelar`,"sidebarFilesTree.dialog.confirm":`Confirmar`,"sidebarFilesTree.dialog.delete.confirm":`Eliminar`,"filesView.dialog.createFile.title":`Crear archivo`,"filesView.dialog.createFolder.title":`Crear carpeta`,"filesView.dialog.rename.title":`Cambiar nombre`,"filesView.dialog.delete.title":`Eliminar`,"filesView.dialog.createFile.description":`Crea un archivo nuevo en {path}`,"filesView.dialog.createFolder.description":`Crea una carpeta nueva en {path}`,"filesView.dialog.rename.description":`Cambiar el nombre de {name}`,"filesView.dialog.delete.description":`¿Estás seguro de que quieres eliminar {name}? Esta acción no se puede deshacer.`,"filesView.dialog.rootFallback":`raíz`,"filesView.dialog.rename.placeholder":`Nuevo nombre`,"filesView.dialog.namePlaceholder":`Nombre`,"filesView.dialog.cancel":`Cancelar`,"filesView.dialog.confirm":`Confirmar`,"filesView.dialog.delete.confirm":`Eliminar`,"filesView.editor.saving":`Guardando...`,"filesView.editor.saved":`Guardado`,"filesView.editor.autoSaveOn":`Guardado automático activado`,"filesView.editor.manualSave":`Guardado manual`,"filesView.editor.saveNowTitle":`Guardar ahora ({shortcut}) - se guarda automáticamente después de 1.5 segundos`,"filesView.editor.saveNowManualTitle":`Guardar ahora ({shortcut})`,"filesView.editor.saveAria":`Guardar ({shortcut})`,"filesView.editor.openInDesktopApp":`Abrir en la aplicación de escritorio`,"filesView.editor.refreshApps":`Actualizar aplicaciones`,"filesView.editor.disableLineWrap":`Desactivar ajuste de línea`,"filesView.editor.enableLineWrap":`Activar ajuste de línea`,"filesView.editor.findInFile":`Buscar en el archivo`,"filesView.editor.goToLine":`Ir a línea`,"filesView.editor.switchToEditMode":`Cambiar al modo de edición`,"filesView.editor.switchToPreviewMode":`Cambiar al modo de vista previa`,"filesView.editor.switchToTextView":`Cambiar a vista de texto`,"filesView.editor.switchToTreeView":`Cambiar a vista de árbol`,"filesView.toast.copyFailed":`No se pudo copiar`,"filesView.toast.openInAppFailed":`No se pudo abrir en {app}`,"filesView.toast.savingNotSupported":`El guardado no es compatible`,"filesView.toast.writeFileFailed":`No se pudo escribir el archivo`,"filesView.toast.saveFailed":`No se pudo guardar`,"filesView.editor.copyFileContents":`Copiar contenido del archivo`,"filesView.editor.copyFilePathTitle":`Copiar ruta del archivo ({path})`,"filesView.editor.saveFile":`Guardar archivo`,"filesView.editor.exitFullscreen":`Salir de pantalla completa`,"filesView.editor.fullscreen":`Pantalla completa`,"filesView.unsaved.title":`Cambios no guardados`,"filesView.unsaved.description":`¿Quieres guardar tus cambios antes de continuar?`,"filesView.unsaved.saveChanges":`Guardar cambios`,"filesView.unsaved.discard":`Descartar`,"filesView.editor.back":`Atrás`,"filesView.editor.openFilesAria":`Abrir archivos`,"filesView.editor.closeFileAria":`Cerrar {name}`,"filesView.editor.selectFile":`Seleccionar un archivo`,"filesView.editor.showControlsAria":`Mostrar controles del editor`,"filesView.editor.controlsTitle":`Controles del editor`,"filesView.editor.pickFileFromTree":`Selecciona un archivo del árbol.`,"filesView.state.loading":`Cargando...`,"filesView.state.openingFileAtChange":`Abriendo archivo en cambio...`,"filesView.tree.search.placeholder":`Buscar archivos...`,"filesView.tree.search.clearAria":`Limpiar búsqueda`,"filesView.tree.search.searching":`Buscando...`,"filesView.tree.actions.newFileTitle":`Nuevo archivo`,"filesView.tree.actions.newFolderTitle":`Nueva carpeta`,"filesView.tree.actions.refreshTitle":`Actualizar`,"filesView.editor.imageAltFallback":`Imagen`,"filesView.error.jsonViewerUnavailable":`Visualizador JSON no disponible`,"filesView.error.switchToTextMode":`Cambia al modo de texto para ver contenido bruto.`,"filesView.warning.largeFilePreviewLimited":`Este archivo es grande ({sizeKb}KB). La vista previa puede estar limitada.`,"filesView.error.previewUnavailable":`Vista previa no disponible`,"filesView.error.switchToEditMode":`Cambia al modo de edición para resolver el problema.`,"filesView.error.readFileFailed":`No se pudo leer el archivo`,"filesView.editor.htmlPreviewTitle":`Vista previa HTML`,"filesView.diagram.closeDiagramView":`Cerrar vista de diagrama`,"filesView.diagram.saveDiagram":`Guardar diagrama`,"contextUsage.aria.label":`Uso del contexto`,"contextUsage.mobile.title":`Uso del contexto`,"contextUsage.mobile.usedTokens":`Tokens usados`,"contextUsage.mobile.contextLimit":`Límite de contexto`,"contextUsage.mobile.outputLimit":`Límite de salida`,"contextUsage.mobile.usage":`Uso`,"contextUsage.tooltip.usage":`Uso: {percent}`,"contextUsage.tooltip.usedOfLimit":`{used} / {limit}`,"contextUsage.tooltip.usedTokens":`Tokens usados: {tokens}`,"contextUsage.tooltip.contextLimit":`Límite de contexto: {tokens}`,"contextUsage.tooltip.outputLimit":`Límite de salida: {tokens}`,"contextSidebar.session.untitled":`Sesión sin título`,"contextSidebar.empty.openSession":`Abrir una sesión para inspeccionar el contexto.`,"contextSidebar.section.context":`Contexto`,"contextSidebar.section.lastAssistantMessage":`Último mensaje del asistente`,"contextSidebar.section.rawMessages":`Mensajes brutos`,"contextSidebar.context.percentUsed":`{percent}% usado`,"contextSidebar.breakdown.user":`Usuario`,"contextSidebar.breakdown.assistant":`Asistente`,"contextSidebar.breakdown.toolCalls":`Llamadas a herramientas`,"contextSidebar.breakdown.other":`Otro`,"contextSidebar.stats.messages":`Mensajes`,"contextSidebar.stats.user":`Usuario`,"contextSidebar.stats.assistant":`Asistente`,"contextSidebar.stats.cost":`Costo`,"contextSidebar.stats.sessionTps":`TPS de la sesión`,"contextSidebar.tokens.input":`Entrada`,"contextSidebar.tokens.output":`Salida`,"contextSidebar.tokens.reasoning":`Razonamiento`,"contextSidebar.tokens.cacheRead":`Lectura de caché`,"contextSidebar.tokens.cacheWrite":`Escritura de caché`,"contextSidebar.tokens.cacheHit":`Acierto de caché`,"contextSidebar.tokens.tps":`TPS`,"contextSidebar.actions.copyJson":`Copiar JSON`,"contextSidebar.actions.copy":`Copiar`,"contextSidebar.actions.copied":`Copiado`,"planView.file.defaultName":`plan`,"planView.title.default":`Plan`,"planView.error.saveFailed":`No se pudo guardar`,"planView.error.previewUnavailable":`Vista previa no disponible`,"planView.error.switchToEditMode":`Cambia al modo de edición para resolver el problema.`,"planView.error.writeFailed":`No se pudo escribir`,"planView.error.writePlanFileFailed":`No se pudo escribir el archivo de plan ({status})`,"planView.actions.improvePlanAria":`Mejorar plan`,"planView.actions.improve":`Mejorar`,"planView.actions.implementPlanAria":`Implementar plan`,"planView.actions.implement":`Implementar`,"planView.actions.sendToNewSession":`Enviar a nueva sesión`,"planView.actions.sendToNewWorktreeSession":`Enviar a nueva sesión de worktree`,"planView.actions.copyPlanContents":`Copiar contenido del plan`,"planView.state.loading":`Cargando...`,"diffView.binary.unavailable":`El contenido de este archivo no puede visualizarse.`,"diffView.change.untracked":`Archivo no rastreado`,"diffView.change.new":`Archivo nuevo`,"diffView.change.deleted":`Archivo eliminado`,"diffView.change.renamed":`Archivo renombrado`,"diffView.change.copied":`Archivo copiado`,"diffView.change.modified":`Archivo modificado`,"diffView.selector.selectFile":`Seleccionar archivo`,"diffView.image.original":`Original`,"diffView.image.modified":`Modificado`,"diffView.image.new":`Nuevo`,"diffView.image.originalAlt":`Original: {path}`,"diffView.image.modifiedAlt":`Modificado: {path}`,"diffView.section.files":`Archivos`,"diffView.state.selectSessionDirectory":`Selecciona un directorio de sesión para ver diferencias`,"diffView.state.loadingRepositoryStatus":`Cargando estado del repositorio...`,"diffView.state.notGitRepository":`No es un repositorio Git. Usa la pestaña Git para inicializar o cambiar de directorio.`,"diffView.state.cleanWorkingTree":`Worktree limpio, no hay cambios para mostrar`,"diffView.state.noLastTurnChanges":`No hay cambios del último turno para mostrar`,"diffView.state.failedToLoadDiff":`No se pudo cargar la diferencia`,"diffView.state.loadingDiff":`Cargando diff...`,"diffView.state.loadingChanges":`Cargando cambios...`,"diffView.state.largeDiff":`Diff grande ({count} líneas modificadas)`,"diffView.state.largeDiffDescription":`El renderizado puede ser lento. Aun así puedes ver el diff con el botón de abajo.`,"diffView.summary.changedFilesSingle":`{count} archivo modificado`,"diffView.summary.changedFilesPlural":`{count} archivos modificados`,"diffView.scope.changed":`Cambiados`,"diffView.scope.staged":`Staged`,"diffView.scope.lastTurn":`Último turno`,"diffView.scope.selectorAria":`Seleccionar modo de cambios`,"diffView.actions.retry":`Volver a intentar`,"diffView.actions.renderAnyway":`Renderizar de todos modos`,"diffView.actions.expandAll":`Expandir todo`,"diffView.actions.collapseAll":`Contraer todo`,"diffView.actions.loadFullFiles":`Cargar archivos completos`,"diffView.actions.disableFullFiles":`No cargar archivos completos`,"diffView.actions.disableLineWrap":`Desactivar ajuste de línea`,"diffView.actions.enableLineWrap":`Activar ajuste de línea`,"diffView.actions.openFileInEditorAtChange":`Abrir este archivo en el editor en el cambio`,"diffView.actions.openFileAtFirstChangedLine":`Abrir este archivo en la primera línea modificada`,"diffView.actions.openFilePreview":`Abrir este archivo`,"diffView.actions.review":`Revisar`,"diffView.actions.reviewAria":`Revisar cambios`,"diffView.reviewDialog.title":`Revisar cambios`,"diffView.reviewDialog.description":`Inicia una sesión de revisión separada para los cambios actuales.`,"diffView.reviewDialog.generateHandoff":`Generar handoff`,"diffView.reviewDialog.autoReview":`Ejecutar ciclo de revisión automática`,"diffView.reviewDialog.info":`Este flujo funciona mejor si se inicia desde la sesión donde se implementaron los cambios.`,"diffView.reviewDialog.actions.cancel":`Cancelar`,"diffView.reviewDialog.actions.start":`Revisar`,"diffView.reviewDialog.actions.starting":`Iniciando...`,"diffView.reviewDialog.toast.noSessionDirectory":`El directorio de la sesión no está disponible`,"diffView.reviewDialog.toast.startFailed":`No se pudo iniciar el flujo de revisión`,"chat.dictation.start":`Iniciar dictado`,"chat.dictation.overlayAria":`Dictado`,"chat.dictation.downloadingModel":`Descargando el modelo de voz...`,"chat.dictation.downloadingModelProgress":`Descargando el modelo de voz... {percent}%`,"chat.dictation.listening":`Escuchando...`,"chat.dictation.processing":`Transcribiendo...`,"chat.dictation.failed":`La transcripción falló`,"chat.dictation.cancel":`Descartar dictado`,"chat.dictation.insert":`Insertar transcripción`,"chat.dictation.insertAndSend":`Insertar y enviar`,"chat.dictation.retry":`Reintentar transcripción`,"chat.dictation.discard":`Descartar grabación`,"chat.history.loadOlder":`Cargar mensajes anteriores`,"chat.history.loadingMore":`Cargando más…`,"chat.history.loadOlderFailed":`No se pudieron cargar los mensajes anteriores. Inténtalo de nuevo.`,"chat.history.loadOlderTimeout":`La carga de mensajes anteriores agotó el tiempo de espera. Inténtalo de nuevo.`,"chat.history.loadFailedTitle":`No se pudo cargar esta conversación`,"chat.history.loadFailedDescription":`La conversación sigue disponible. Intenta cargarla de nuevo.`,"chat.history.retry":`Intentar de nuevo`,"chat.autoReview.title":`El ciclo de revisión de código está en curso`,"chat.autoReview.status.waitingForReviewer":`Esperando al revisor`,"chat.autoReview.status.waitingForImplementer":`Esperando al implementador`,"chat.autoReview.reviewSessionLabel":`Sesión de revisión`,"chat.autoReview.actions.open":`Abrir`,"chat.autoReview.actions.stop":`Detener`,"diffView.hunk.label":`Fragmentos`,"diffView.hunk.stage":`Preparar`,"diffView.hunk.unstage":`Quitar`,"diffView.hunk.discard":`Descartar`,"diffView.hunk.stageTitle":`Preparar fragmento {index}`,"diffView.hunk.unstageTitle":`Quitar fragmento {index} de la preparación`,"diffView.hunk.discardTitle":`Descartar fragmento {index}`,"diffView.hunk.unavailable":`Este fragmento ya no está disponible. Actualice el diff e inténtelo de nuevo.`,"diffView.hunk.unsupported":`Preparar fragmentos individuales no es compatible en este entorno.`,"rightSidebar.contextNotesTodo.plan.defaultTitle":`Plan`,"rightSidebar.contextNotesTodo.empty.selectProject":`Selecciona un proyecto para añadir notas y tareas pendientes.`,"rightSidebar.contextNotesTodo.notes.title":`Notas rápidas — {project}`,"rightSidebar.contextNotesTodo.notes.placeholder":`Captura contexto, recordatorios o enlaces`,"rightSidebar.contextNotesTodo.todo.title":`Tareas pendientes`,"rightSidebar.contextNotesTodo.todo.itemsSingle":`{count} elemento`,"rightSidebar.contextNotesTodo.todo.itemsPlural":`{count} elementos`,"rightSidebar.contextNotesTodo.todo.clearCompleted":`Limpiar completadas`,"rightSidebar.contextNotesTodo.todo.inputPlaceholder":`Añade una tarea pendiente`,"rightSidebar.contextNotesTodo.todo.addAria":`Añadir tarea pendiente`,"rightSidebar.contextNotesTodo.todo.empty":`No hay tareas pendientes aún. Añade una pequeña lista de verificación para este proyecto.`,"rightSidebar.contextNotesTodo.todo.actions.markComplete":`Marcar "{text}" como completada`,"rightSidebar.contextNotesTodo.todo.actions.collapse":`Colapsar tarea pendiente "{text}"`,"rightSidebar.contextNotesTodo.todo.actions.expand":`Expandir tarea pendiente "{text}"`,"rightSidebar.contextNotesTodo.todo.actions.delete":`Eliminar "{text}"`,"rightSidebar.contextNotesTodo.todo.actions.send":`Enviar "{text}"`,"rightSidebar.contextNotesTodo.todo.actions.reorder":`Reordenar "{text}"`,"rightSidebar.contextNotesTodo.todo.resizeAria":`Redimensionar lista de tareas`,"rightSidebar.contextNotesTodo.todo.sendMenu.currentSession":`Enviar a la sesión actual`,"rightSidebar.contextNotesTodo.todo.sendMenu.newSession":`Enviar a una nueva sesión`,"rightSidebar.contextNotesTodo.todo.sendMenu.newWorktreeSession":`Enviar a una nueva sesión de worktree`,"rightSidebar.contextNotesTodo.plans.title":`Planes`,"rightSidebar.contextNotesTodo.plans.filesSingle":`{count} archivo`,"rightSidebar.contextNotesTodo.plans.filesPlural":`{count} archivos`,"rightSidebar.contextNotesTodo.plans.importFromFile":`Importar plan desde archivo`,"rightSidebar.contextNotesTodo.plans.empty":`Aún no hay plans guardados.`,"rightSidebar.contextNotesTodo.plans.deletePlan":`Eliminar plan`,"rightSidebar.contextNotesTodo.plans.deletePlanWithTitle":`Eliminar plan "{title}"`,"rightSidebar.contextNotesTodo.sendDialog.title.newSession":`Enviar a una nueva sesión`,"rightSidebar.contextNotesTodo.sendDialog.title.newWorktree":`Enviar a una nueva sesión de worktree`,"rightSidebar.contextNotesTodo.sendDialog.variant.default":`Predeterminado`,"rightSidebar.contextNotesTodo.sendDialog.actions.cancel":`Cancelar`,"rightSidebar.contextNotesTodo.sendDialog.actions.send":`Enviar`,"rightSidebar.contextNotesTodo.sendDialog.actions.sending":`Enviando`,"rightSidebar.contextNotesTodo.toast.saveNotesFailed":`No se pudieron guardar las notas del proyecto`,"rightSidebar.contextNotesTodo.toast.loadNotesFailed":`No se pudieron cargar las notas del proyecto`,"rightSidebar.contextNotesTodo.toast.noActiveSession":`No hay ninguna sesión activa seleccionada`,"rightSidebar.contextNotesTodo.toast.sentToCurrentSession":`Tarea enviada a la sesión actual`,"rightSidebar.contextNotesTodo.toast.worktreeRequiresGitRepo":`Las acciones de worktree solo están disponibles para repositorios Git`,"rightSidebar.contextNotesTodo.toast.createSessionFailed":`No se pudo crear la sesión`,"rightSidebar.contextNotesTodo.toast.sentToNewSession":`Tarea enviada a una nueva sesión`,"rightSidebar.contextNotesTodo.toast.sentToNewWorktreeSession":`Tarea enviada a una nueva sesión de worktree`,"rightSidebar.contextNotesTodo.toast.sendTodoFailed":`No se pudo enviar la tarea`,"rightSidebar.contextNotesTodo.toast.deletePlanFailed":`No se pudo eliminar el plan`,"rightSidebar.contextNotesTodo.toast.planFileEmpty":`El archivo del plan está vacío`,"rightSidebar.contextNotesTodo.toast.importPlanFailed":`No se pudo importar el plan`,"rightSidebar.contextNotesTodo.toast.planImported":`Plan importado`,"rightSidebar.contextNotesTodo.toast.readPlanFileFailed":`No se pudo leer el archivo del plan`,"inlineComment.range.lines":`Líneas {start}-{end}`,"inlineComment.input.placeholder":`Añadir un comentario... (Cmd+Enter para guardar)`,"inlineComment.input.placeholderShort":`Añadir un comentario...`,"inlineComment.actions.cancel":`Cancelar`,"inlineComment.actions.save":`Guardar`,"inlineComment.actions.comment":`Comentar`,"inlineComment.actions.showLess":`Mostrar menos`,"inlineComment.actions.showMore":`Mostrar más`,"inlineComment.actions.editComment":`Editar comentario`,"inlineComment.actions.deleteComment":`Eliminar comentario`,"inlineComment.toast.selectSessionToSave":`Selecciona una sesión para guardar el comentario`,"header.github.connectedWithLogin":`GitHub: {login}`,"header.github.connected":`Conectado a GitHub`,"header.github.avatarWithLogin":`Avatar de {login}`,"header.github.avatar":`Avatar de GitHub`,"header.github.accountsTitle":`Cuentas de GitHub`,"header.github.accountSource.oauth":`OAuth`,"header.github.accountSource.cli":`CLI`,"header.services.openWithCurrent":`Cambiar de instancia (actual: {current})`,"header.services.open":`Cambiar de instancia`,"header.services.tooltip.currentInstanceWithShortcuts":`Cambiar de instancia: {current} ({toggle}; siguiente pestaña {nextTab})`,"header.services.tooltip.servicesWithShortcuts":`Cambiar de instancia ({toggle}; siguiente pestaña {nextTab})`,"header.services.title":`Cambiar de instancia`,"header.services.viewAria":`Cambiar de instancia`,"header.services.closeAria":`Cerrar el selector de instancia`,"header.services.rateLimits":`Límites de tasa`,"header.services.refreshRateLimitsAria":`Actualizar límites de tasa`,"header.services.noRateLimits":`No hay límites de tasa disponibles.`,"header.services.noRateLimitsReported":`No se reportaron límites de tasa.`,"header.services.remoteUpdate.title":`Actualización de instancia remota`,"header.services.remoteUpdate.checking":`Buscando actualizaciones...`,"header.services.remoteUpdate.upToDate":`Esta instancia está actualizada.`,"header.services.remoteUpdate.available":`La versión {version} está disponible para esta instancia.`,"header.services.remoteUpdate.error":`No se pudieron comprobar las actualizaciones de la instancia remota`,"header.services.remoteUpdate.actions.open":`Actualizar`,"header.services.used":`Usado`,"header.services.remaining":`Restante`,"header.services.modelFamily.other":`Otro`,"header.services.shutdownDev":`Detener OpenChamber`,"header.actions.openPlanAria":`Abrir plan`,"header.actions.toggleChangesPanel":`Panel de cambios`,"header.actions.toggleChangesPanelAria":`Alternar panel de cambios`,"header.actions.sessionMenu":`Acciones de sesión`,"header.actions.sessionMenuAria":`Abrir menú de acciones de sesión`,"header.actions.sessionMenu.servicesWithInstance":`Cambiar de instancia ({current})`,"header.actions.sessionMenu.viewUsage":`Ver uso`,"header.actions.planWithShortcut":`Plan ({shortcut})`,"header.actions.terminalPanelWithShortcut":`Panel de terminal ({shortcut})`,"chat.recap.aria":`Resumen de la sesión`,"chat.recap.label":`Resumen:`,"chat.goal.dialog.titleCreate":`Definir objetivo de sesión`,"chat.goal.dialog.titleManage":`Objetivo de sesión`,"chat.goal.dialog.objectiveLabel":`Objetivo`,"chat.goal.dialog.objectivePlaceholder":`Describe el estado final que el agente debe alcanzar y verificar…`,"chat.goal.dialog.budgetLabel":`Presupuesto de tokens`,"chat.goal.status.active":`Activo`,"chat.goal.status.evaluating":`Evaluando…`,"chat.goal.status.paused":`En pausa`,"chat.goal.status.blocked":`Bloqueado`,"chat.goal.status.budgetLimited":`Presupuesto alcanzado`,"chat.goal.status.complete":`Completado`,"chat.goal.usage.tokens":`{used}`,"chat.goal.usage.tokensWithBudget":`{used}/{budget}`,"chat.goal.usage.turns":`{turns} continuaciones`,"chat.goal.action.pause":`Pausar`,"chat.goal.action.resume":`Reanudar`,"chat.goal.action.markComplete":`Marcar como completado`,"chat.goal.action.clear":`Eliminar objetivo`,"chat.goal.chip.label":`Objetivo`,"chat.goal.action.cancel":`Cancelar`,"chat.goal.action.save":`Guardar objetivo`,"chat.goal.action.start":`Iniciar objetivo`,"chat.goal.toast.actionFailed":`No se pudo actualizar el objetivo`,"chat.goal.toast.distillFallback":`El objetivo superó el límite y no se pudo destilar — el auditor usa una versión recortada`,"chat.goal.row.aria":`Objetivo de sesión — abrir detalles`,"chat.goal.button.createAria":`Definir un objetivo de sesión`,"chat.goal.button.manageAria":`Gestionar el objetivo de sesión`,"chat.goal.button.armAria":`Iniciar un objetivo con el próximo mensaje`,"chat.goal.counter.aria":`Límite de longitud del objetivo`,"chat.goal.button.disarmAria":`Objetivo armado — toca para desactivarlo`,"chat.goal.button.cancelAria":`Objetivo en curso — toca para cancelarlo`,"chat.goal.cancelDialog.title":`¿Cancelar este objetivo?`,"chat.goal.cancelDialog.description":`El agente dejará de trabajar automáticamente hacia este objetivo.`,"chat.goal.cancelDialog.keep":`Mantener objetivo`,"chat.goal.cancelDialog.confirm":`Cancelar objetivo`,"header.actions.toggleTerminalPanel":`Panel de terminal`,"header.actions.toggleTerminalPanelAria":`Mostrar u ocultar panel de terminal`,"terminalView.stream.processExitedMessage":`\r
7
+ Usa @filename para añadir el contenido del archivo.`,"settings.commands.page.templateHint.userInput":`entrada del usuario`,"settings.commands.page.templateHint.shellOutput":`salida del shell`,"settings.commands.page.templateHint.fileContents":`contenido del archivo`,"settings.commands.agentSelector.title":`Seleccionar agente`,"settings.commands.agentSelector.notSelected":`No seleccionado`,"settings.commands.agentSelector.selectAgentPlaceholder":`Seleccionar agente...`,"settings.gitIdentities.page.section.title":`Identidades`,"settings.gitIdentities.page.empty.title":`No hay identidades configuradas`,"settings.gitIdentities.page.empty.description":`Crea una para gestionar la configuración del autor de Git por proyecto`,"settings.gitIdentities.page.discoveredCredentials.title":`Encontrados en ~/.git-credentials`,"settings.gitIdentities.page.badge.default":`predeterminado`,"settings.gitIdentities.page.actions.setAsDefault":`Establecer como predeterminado`,"settings.gitIdentities.page.actions.unsetDefault":`Quitar predeterminado`,"settings.gitIdentities.page.actions.import":`Importar`,"settings.gitIdentities.page.toast.updateDefaultFailed":`No se pudo actualizar la identidad predeterminada`,"settings.gitIdentities.page.toast.defaultUpdated":`Identidad predeterminada actualizada`,"settings.gitIdentities.page.toast.defaultUnset":`Identidad predeterminada quitada`,"settings.gitIdentities.page.toast.profileDeleted":`Perfil "{name}" eliminado`,"settings.gitIdentities.page.toast.deleteProfileFailed":`No se pudo eliminar el perfil`,"settings.gitIdentities.page.deleteDialog.title":`Eliminar perfil`,"settings.gitIdentities.page.deleteDialog.description":`¿Estás seguro de que quieres eliminar "{name}"?`,"settings.gitIdentities.editor.title.importCredential":`Importar credencial`,"settings.gitIdentities.editor.title.newIdentity":`Nueva identidad`,"settings.gitIdentities.editor.title.globalIdentity":`Identidad global`,"settings.gitIdentities.editor.title.editIdentity":`Editar identidad`,"settings.gitIdentities.editor.description.globalReadOnly":`Identidad Git global (solo lectura)`,"settings.gitIdentities.editor.description.newProfile":`Crear una nueva identidad Git`,"settings.gitIdentities.editor.description.editProfile":`Editar la configuración de la identidad`,"settings.gitIdentities.editor.section.commitSigning":`Firma de commits`,"settings.gitIdentities.editor.field.profileName":`Nombre de la identidad`,"settings.gitIdentities.editor.field.profileNamePlaceholder":`Identidad de trabajo, personal, etc.`,"settings.gitIdentities.editor.field.color":`Color`,"settings.gitIdentities.editor.field.icon":`Icono`,"settings.gitIdentities.editor.field.userName":`Nombre de usuario`,"settings.gitIdentities.editor.field.userNameTooltip":`El nombre que aparecerá en los mensajes de commit de Git.`,"settings.gitIdentities.editor.field.userNamePlaceholder":`John Doe`,"settings.gitIdentities.editor.field.emailAddress":`Dirección de correo electrónico`,"settings.gitIdentities.editor.field.emailAddressTooltip":`Debe coincidir con tu correo en GitHub/GitLab para atribuir correctamente.`,"settings.gitIdentities.editor.field.emailAddressPlaceholder":`john@example.com`,"settings.gitIdentities.editor.field.authMethod":`Método de autenticación`,"settings.gitIdentities.editor.field.authToken":`Token`,"settings.gitIdentities.editor.field.sshKeyPath":`Ruta de la clave SSH`,"settings.gitIdentities.editor.field.sshKeyPathTooltip":`Ruta opcional a la clave privada. Ejemplo: ~/.ssh/id_ed25519`,"settings.gitIdentities.editor.field.sshKeyPathPlaceholder":`~/.ssh/id_ed25519`,"settings.gitIdentities.editor.field.signCommits":`Firmar commits con esta identidad`,"settings.gitIdentities.editor.field.signingKey":`Clave de firma`,"settings.gitIdentities.editor.field.signingKeyPlaceholder":`~/.ssh/id_ed25519.pub`,"settings.gitIdentities.editor.field.host":`Servidor`,"settings.gitIdentities.editor.field.hostTooltip":`El token se leerá de ~/.git-credentials para este servidor.`,"settings.gitIdentities.editor.field.hostPlaceholder":`github.com`,"settings.gitIdentities.editor.actions.close":`Cerrar`,"settings.gitIdentities.editor.actions.create":`Crear`,"settings.gitIdentities.editor.actions.save":`Guardar`,"settings.gitIdentities.editor.toast.userNameEmailRequired":`Se requieren nombre de usuario y dirección de correo electrónico`,"settings.gitIdentities.editor.toast.hostRequiredForToken":`Se requiere un servidor para autenticación basada en token`,"settings.gitIdentities.editor.toast.signingKeyRequired":`Se requiere una clave de firma cuando la firma de commits está activada`,"settings.gitIdentities.editor.toast.profileCreated":`Identidad creada`,"settings.gitIdentities.editor.toast.profileUpdated":`Identidad actualizada`,"settings.gitIdentities.editor.toast.createProfileFailed":`No se pudo crear la identidad`,"settings.gitIdentities.editor.toast.updateProfileFailed":`No se pudo actualizar la identidad`,"settings.gitIdentities.editor.toast.saveUnexpectedError":`Ocurrió un error al guardar`,"settings.gitIdentities.editor.toast.profileDeleted":`Identidad eliminada`,"settings.gitIdentities.editor.toast.deleteProfileFailed":`No se pudo eliminar la identidad`,"settings.gitIdentities.editor.toast.deleteUnexpectedError":`Ocurrió un error al eliminar`,"settings.skills.sidebar.title":`Habilidades`,"settings.skills.sidebar.total":`Total {count}`,"settings.skills.sidebar.section.project":`Habilidades del proyecto`,"settings.skills.sidebar.section.user":`Habilidades del usuario`,"settings.skills.sidebar.empty.title":`No hay habilidades configuradas`,"settings.skills.sidebar.empty.description":`Usa el botón + arriba para crear una`,"settings.skills.sidebar.badge.claude":`claude`,"settings.skills.sidebar.badge.agents":`agentes`,"settings.skills.sidebar.badge.opencode":`opencode`,"settings.skills.sidebar.toast.skillDeleted":`Habilidad "{name}" eliminada con éxito`,"settings.skills.sidebar.toast.deleteSkillFailed":`No se pudo eliminar la habilidad`,"settings.skills.sidebar.toast.duplicateLoadFailed":`No se pudo cargar la información de la habilidad para duplicarla`,"settings.skills.sidebar.toast.renameLoadFailed":`No se pudo cargar la información de la habilidad`,"settings.skills.sidebar.toast.removeOldAfterRenameFailed":`No se pudo eliminar la habilidad antigua después del cambio de nombre`,"settings.skills.sidebar.toast.renameFailed":`No se pudo cambiar el nombre de la habilidad`,"settings.skills.sidebar.deleteDialog.title":`Eliminar habilidad`,"settings.skills.sidebar.deleteDialog.description":`¿Estás seguro de que quieres eliminar la habilidad "{name}"?`,"settings.skills.sidebar.renameDialog.title":`Cambiar nombre habilidad`,"settings.skills.sidebar.renameDialog.description":`Introduce un nuevo nombre para la habilidad "{name}"`,"settings.skills.sidebar.renameDialog.placeholder":`Nuevo nombre de habilidad...`,"settings.skills.page.title.newSkill":`Nueva habilidad`,"settings.skills.page.subtitle.newSkill":`Configurar una nueva habilidad`,"settings.skills.page.subtitle.skillLocation":`{location} habilidad`,"settings.skills.page.section.basicInformation":`Información básica`,"settings.skills.page.section.instructions":`Instrucciones`,"settings.skills.page.section.supportingFiles":`Archivos de apoyo`,"settings.skills.page.field.skillNameLocation":`Nombre de la habilidad y ubicación`,"settings.skills.page.field.skillNameHint":`Minúsculas, números y guiones`,"settings.skills.page.field.skillNamePlaceholder":`nombre-de-habilidad`,"settings.skills.page.field.descriptionHint":`El agente usa esta descripción para decidir cuándo cargar la habilidad`,"settings.skills.page.field.descriptionPlaceholder":`Breve descripción de lo que hace esta habilidad...`,"settings.skills.page.field.instructionsPlaceholder":`Instrucciones paso a paso, guías o contenido de referencia...`,"settings.skills.page.badge.claudeCompatible":`Compatible con Claude`,"settings.skills.page.badge.pending":`pendiente`,"settings.skills.page.actions.addFile":`Añadir archivo`,"settings.skills.page.actions.createSkill":`Crear habilidad`,"settings.skills.page.actions.createFile":`Crear archivo`,"settings.skills.page.supportingFiles.empty":`No hay archivos de apoyo. Usa "Añadir archivo" para incluir materiales de referencia.`,"settings.skills.page.loading.details":`Cargando detalles de la habilidad...`,"settings.skills.page.loading.fileContent":`Cargando contenido del archivo...`,"settings.skills.page.empty.title":`Selecciona una habilidad del panel lateral`,"settings.skills.page.empty.description":`o crea una nueva`,"settings.skills.page.deleteFileDialog.title":`Eliminar archivo de apoyo`,"settings.skills.page.deleteFileDialog.description":`¿Estás seguro de que quieres eliminar "{path}"?`,"settings.skills.page.fileDialog.titleEdit":`Editar archivo de apoyo`,"settings.skills.page.fileDialog.titleAdd":`Añadir archivo de apoyo`,"settings.skills.page.fileDialog.descriptionEdit":`Modificar el contenido del archivo`,"settings.skills.page.fileDialog.descriptionAdd":`Crea un archivo nuevo en el directorio de la habilidad`,"settings.skills.page.fileDialog.field.filePath":`Ruta del archivo`,"settings.skills.page.fileDialog.field.filePathPlaceholder":`example.md o docs/reference.txt`,"settings.skills.page.fileDialog.field.filePathHint":`Ruta relativa dentro del directorio de la habilidad. Se crearán automáticamente las subcarpetas.`,"settings.skills.page.fileDialog.field.content":`Contenido`,"settings.skills.page.fileDialog.field.contentPlaceholder":`Contenido del archivo...`,"settings.skills.page.toast.skillNameRequired":`Se requiere el nombre de la habilidad`,"settings.skills.page.toast.invalidSkillName":`El nombre de la habilidad debe ser 1-64 caracteres alfanuméricos en minúscula con guiones, no puede comenzar ni terminar con guion`,"settings.skills.page.toast.descriptionRequired":`Se requiere una descripción`,"settings.skills.page.toast.skillExists":`Ya existe una habilidad con este nombre`,"settings.skills.page.toast.skillCreated":`Habilidad creada`,"settings.skills.page.toast.skillUpdated":`Habilidad actualizada`,"settings.skills.page.toast.createSkillFailed":`No se pudo crear la habilidad`,"settings.skills.page.toast.updateSkillFailed":`No se pudo actualizar la habilidad`,"settings.skills.page.toast.saveUnexpectedError":`Ocurrió un error al guardar`,"settings.skills.page.toast.loadFileContentFailed":`No se pudo cargar el contenido del archivo`,"settings.skills.page.toast.fileNameRequired":`Se requiere el nombre del archivo`,"settings.skills.page.toast.fileExists":`Ya existe un archivo con este nombre`,"settings.skills.page.toast.noSkillSelected":`No se seleccionó ninguna habilidad`,"settings.skills.page.toast.fileAdded":`Archivo "{path}" añadido`,"settings.skills.page.toast.fileCreated":`Archivo "{path}" creado`,"settings.skills.page.toast.fileUpdated":`Archivo "{path}" actualizado`,"settings.skills.page.toast.fileRemoved":`Archivo "{path}" eliminado`,"settings.skills.page.toast.fileDeleted":`Archivo "{path}" borrado`,"settings.skills.page.toast.createFileFailed":`No se pudo crear el archivo`,"settings.skills.page.toast.updateFileFailed":`No se pudo actualizar el archivo`,"settings.skills.page.toast.deleteFileFailed":`No se pudo eliminar el archivo`,"settings.skills.location.option.userOpencode.label":`Usuario / OpenCode`,"settings.skills.location.option.userOpencode.description":`Ubicación global de la configuración de OpenCode`,"settings.skills.location.option.projectOpencode.label":`Proyecto / OpenCode`,"settings.skills.location.option.projectOpencode.description":`Ubicación del .opencode del proyecto actual`,"settings.skills.location.option.userClaude.label":`Usuario / Claude`,"settings.skills.location.option.userClaude.description":`Ubicación global de skills de Claude`,"settings.skills.location.option.projectClaude.label":`Proyecto / Claude`,"settings.skills.location.option.projectClaude.description":`Ubicación .claude del proyecto actual`,"settings.skills.location.option.userAgents.label":`Usuario / Agentes`,"settings.skills.location.option.userAgents.description":`Ubicación global de compatibilidad con .agents`,"settings.skills.location.option.projectAgents.label":`Proyecto / Agentes`,"settings.skills.location.option.projectAgents.description":`Ubicación de compatibilidad con .agents del proyecto actual`,"settings.skills.catalog.shared.field.repository":`Repositorio`,"settings.skills.catalog.shared.field.repositoryPlaceholder":`owner/repo o git@github.com:owner/repo.git`,"settings.skills.catalog.shared.field.optionalSubpath":`Subruta opcional`,"settings.skills.catalog.shared.field.subpathPlaceholder":`ej. skills`,"settings.skills.catalog.shared.field.targetLocation":`Ubicación de destino`,"settings.skills.catalog.shared.field.project":`Proyecto`,"settings.skills.catalog.shared.field.noProjects":`No hay proyectos disponibles`,"settings.skills.catalog.shared.field.chooseProjectPlaceholder":`Elige un proyecto`,"settings.skills.catalog.shared.field.searchSkillsPlaceholder":`Buscar habilidades…`,"settings.skills.catalog.shared.toast.repositoryRequired":`Se requiere la fuente del repositorio`,"settings.skills.catalog.shared.toast.privateRepoNotSupportedVsCode":`Los repositorios privados no son compatibles en VS Code aún`,"settings.skills.catalog.shared.toast.foundSkills":`Se encontraron {count} habilidad(es)`,"settings.skills.catalog.shared.noDescription":`No se proporcionó una descripción`,"settings.skills.catalog.shared.actions.scan":`Escanear`,"settings.skills.catalog.shared.actions.scanning":`Escanear...`,"settings.skills.catalog.shared.actions.install":`Instalar`,"settings.skills.catalog.shared.actions.installing":`Instalando...`,"settings.skills.catalog.shared.auth.title":`Autenticación requerida`,"settings.skills.catalog.shared.auth.description":`Selecciona una identidad de Git (clave SSH)`,"settings.skills.catalog.shared.auth.chooseIdentity":`Elige la identidad`,"settings.skills.catalog.shared.auth.footerHint":`Configura las identidades en Configuración - Identidades de Git.`,"settings.skills.catalog.shared.auth.footerHintArrow":`Configura las identidades en Configuración → Identidades de Git.`,"settings.skills.catalog.conflicts.title":`Ya existen habilidades`,"settings.skills.catalog.conflicts.description":`Algunas de las habilidades seleccionadas ya están instaladas en este alcance. Elige si quieres omitirlas o sobrescribirlas.`,"settings.skills.catalog.conflicts.count":`{count} conflicto(s)`,"settings.skills.catalog.conflicts.installedIn":`Instalado en {scope} / {source}`,"settings.skills.catalog.conflicts.scope.user":`usuario`,"settings.skills.catalog.conflicts.scope.project":`proyecto`,"settings.skills.catalog.conflicts.source.opencode":`opencode`,"settings.skills.catalog.conflicts.source.agents":`agents`,"settings.skills.catalog.conflicts.decision.skip":`Omitir`,"settings.skills.catalog.conflicts.decision.overwrite":`Sobrescribir`,"settings.skills.catalog.conflicts.actions.skipAll":`Omitir todo`,"settings.skills.catalog.conflicts.actions.overwriteAll":`Sobrescribir todo`,"settings.skills.catalog.conflicts.actions.continue":`Continuar`,"settings.skills.catalog.installSkill.title":`Instalar habilidad`,"settings.skills.catalog.installSkill.descriptionPrefix":`Instalar`,"settings.skills.catalog.installSkill.descriptionSuffix":`en uno de los cuatro ubicaciones de destino.`,"settings.skills.catalog.installSkill.field.destination":`Destino`,"settings.skills.catalog.installSkill.field.project":`Proyecto`,"settings.skills.catalog.installSkill.field.noProjects":`No hay proyectos disponibles`,"settings.skills.catalog.installSkill.field.chooseProjectPlaceholder":`Seleccionar proyecto`,"settings.skills.catalog.installSkill.actions.install":`Instalar`,"settings.skills.catalog.installSkill.actions.installing":`Instalando...`,"settings.skills.catalog.installSkill.toast.installed":`Habilidad instalada correctamente`,"settings.skills.catalog.installSkill.toast.authRequired":`Autenticación requerida`,"settings.skills.catalog.installSkill.toast.installFailed":`No se pudo instalar la habilidad`,"settings.skills.catalog.add.title":`Añadir catálogo de habilidades`,"settings.skills.catalog.add.descriptionPrefix":`Añade un repositorio Git como nuevo origen de catálogo. OpenChamber escaneará para encontrar carpetas que contengan`,"settings.skills.catalog.add.descriptionSuffix":`.`,"settings.skills.catalog.add.field.catalogName":`Nombre del catálogo`,"settings.skills.catalog.add.field.catalogNamePlaceholder":`p. ej. Habilidades del equipo`,"settings.skills.catalog.add.field.repository":`Repositorio`,"settings.skills.catalog.add.field.optionalSubpath":`Subruta opcional`,"settings.skills.catalog.add.field.repositoryHint":`Los repositorios públicos funcionan en cualquier lugar. Los privados requieren una identidad SSH (solo en Desktop/Web).`,"settings.skills.catalog.add.scanResult":`Resultado del escaneo: {count} habilidad(es) encontrada(s)`,"settings.skills.catalog.add.duplicateMessage":`Este catálogo ya está añadido.`,"settings.skills.catalog.add.actions.addCatalog":`Añadir catálogo`,"settings.skills.catalog.add.toast.repositoryRequired":`Se requiere el origen del repositorio`,"settings.skills.catalog.add.toast.authenticationRequiredScan":`Autenticación requerida. Selecciona una identidad Git y escanea de nuevo.`,"settings.skills.catalog.add.toast.scanFailed":`No se pudo escanear el repositorio`,"settings.skills.catalog.add.toast.noSkillsFound":`No se encontraron habilidades en este repositorio`,"settings.skills.catalog.add.toast.catalogNameRequired":`Se requiere el nombre del catálogo`,"settings.skills.catalog.add.toast.scanBeforeAdd":`Escanea el repositorio antes de añadir este catálogo`,"settings.skills.catalog.add.toast.catalogAlreadyExists":`Este catálogo ya existe`,"settings.skills.catalog.add.toast.catalogAdded":`Catálogo añadido`,"settings.skills.catalog.add.toast.saveFailed":`No se pudo guardar el catálogo`,"settings.skills.catalog.installFromRepo.title":`Instalar desde repositorio Git`,"settings.skills.catalog.installFromRepo.descriptionPrefix":`Escanea un repositorio para encontrar carpetas que contengan`,"settings.skills.catalog.installFromRepo.descriptionSuffix":`, luego instala las habilidades seleccionadas.`,"settings.skills.catalog.installFromRepo.repositoryHintPrefix":`Para el formato abreviado de GitHub, puedes añadir una subruta como`,"settings.skills.catalog.installFromRepo.authDescription":`Selecciona una identidad Git (clave SSH) que pueda acceder a este repositorio.`,"settings.skills.catalog.installFromRepo.empty.noScanResultsTitle":`No hay resultados de escaneo aún`,"settings.skills.catalog.installFromRepo.empty.noScanResultsDescription":`Escanea un repositorio para descubrir habilidades`,"settings.skills.catalog.installFromRepo.actions.selectAll":`Seleccionar todo`,"settings.skills.catalog.installFromRepo.actions.selectNone":`Seleccionar ninguno`,"settings.skills.catalog.installFromRepo.actions.installSelected":`Instalar selección`,"settings.skills.catalog.installFromRepo.badge.installed":`instalado ({scope}/{source})`,"settings.skills.catalog.installFromRepo.selectedCount":`Seleccionado: {selected} / {total}`,"settings.skills.catalog.installFromRepo.toast.authenticationRequiredScan":`Autenticación requerida. Selecciona una identidad Git y prueba a escanear de nuevo.`,"settings.skills.catalog.installFromRepo.toast.authenticationRequiredInstall":`Autenticación requerida. Selecciona una identidad Git y prueba a instalar de nuevo.`,"settings.skills.catalog.installFromRepo.toast.scanFailed":`No se pudo escanear el repositorio`,"settings.skills.catalog.installFromRepo.toast.selectAtLeastOne":`Selecciona al menos una habilidad para instalar`,"settings.skills.catalog.installFromRepo.toast.installedCount":`{count} habilidad(es) instalada(s)`,"settings.skills.catalog.installFromRepo.toast.installCompleted":`Instalación completada`,"settings.skills.catalog.installFromRepo.toast.installFailed":`No se pudieron instalar las habilidades`,"settings.skills.catalog.page.mode.manual":`Manual`,"settings.skills.catalog.page.mode.external":`Externo`,"settings.skills.catalog.page.title":`Catálogo de habilidades`,"settings.skills.catalog.page.section.sourceRepository":`Repositorio de origen`,"settings.skills.catalog.page.field.selectSourcePlaceholder":`Seleccionar origen`,"settings.skills.catalog.page.actions.refreshTitle":`Actualizar`,"settings.skills.catalog.page.actions.removeCatalogTitle":`Eliminar catálogo`,"settings.skills.catalog.page.actions.addCatalog":`Añadir catálogo`,"settings.skills.catalog.page.actions.removeCatalog":`Eliminar catálogo`,"settings.skills.catalog.page.actions.loadMoreSkills":`Cargar más habilidades`,"settings.skills.catalog.page.loading.catalog":`Cargando...`,"settings.skills.catalog.page.loading.skills":`Cargando habilidades...`,"settings.skills.catalog.page.loading.more":`Cargando...`,"settings.skills.catalog.page.foundCount":`{count} habilidad(es) encontrada(s)`,"settings.skills.catalog.page.error.catalogTitle":`Error del catálogo`,"settings.skills.catalog.page.empty.noSkillsTitle":`No se encontraron habilidades`,"settings.skills.catalog.page.empty.noSkillsDescription":`Prueba con una búsqueda diferente o refresca el catálogo`,"settings.skills.catalog.page.badge.installed":`instalado ({scope})`,"settings.skills.catalog.page.badge.notInstallable":`no instalable`,"settings.skills.catalog.page.badge.unknown":`desconocido`,"settings.skills.catalog.page.byOwnerPrefix":`por`,"settings.skills.catalog.page.removeDialog.title":`Eliminar catálogo`,"settings.skills.catalog.page.removeDialog.description":`¿Estás seguro de que quieres eliminar este catálogo?`,"settings.openchamber.passkeys.title":`Claves de paso`,"settings.openchamber.passkeys.field.currentDevice":`Dispositivo actual`,"settings.openchamber.passkeys.actions.add":`Añadir clave de paso`,"settings.openchamber.passkeys.actions.cancelSetup":`Cancelar configuración de clave de paso`,"settings.openchamber.passkeys.actions.signOutEverywhere":`Cerrar sesión en todos los lugares`,"settings.openchamber.passkeys.actions.signingOut":`Cerrando sesión…`,"settings.openchamber.passkeys.actions.removing":`Eliminando…`,"settings.openchamber.passkeys.state.uiPasswordRequired":`Las claves de paso solo están disponibles cuando el bloqueo con contraseña de la interfaz está habilitado.`,"settings.openchamber.passkeys.state.loading":`Cargando claves de paso…`,"settings.openchamber.passkeys.state.noneSaved":`No se han guardado claves de paso para este host aún.`,"settings.openchamber.passkeys.item.lastUsed":`Último uso {time}`,"settings.openchamber.passkeys.item.added":`Añadido {time}`,"settings.openchamber.passkeys.time.neverUsed":`Nunca usado`,"settings.openchamber.passkeys.toast.loadFailed":`No se pudieron cargar las claves de paso.`,"settings.openchamber.passkeys.toast.enableUiPasswordFirst":`Habilita la contraseña de bloqueo de la interfaz de usuario antes de añadir claves de paso.`,"settings.openchamber.passkeys.toast.added":`Clave de paso añadida`,"settings.openchamber.passkeys.toast.setupCanceled":`Configuración de clave de paso cancelada`,"settings.openchamber.passkeys.toast.addFailed":`No se pudo agregar la clave de paso.`,"settings.openchamber.passkeys.toast.removed":`Clave de paso eliminada`,"settings.openchamber.passkeys.toast.removeFailed":`No se pudo eliminar la clave de paso.`,"settings.openchamber.passkeys.toast.clearAuthFailed":`No se pudo limpiar la autenticación guardada.`,"settings.openchamber.sessionRetention.title":`Retención de sesiones`,"settings.openchamber.sessionRetention.tooltip":`Archivar o eliminar automáticamente sesiones inactivas según la última actividad. Mantiene las 5 sesiones más recientes.`,"settings.openchamber.sessionRetention.field.enableAutoCleanupAria":`Habilitar limpieza automática`,"settings.openchamber.sessionRetention.field.enableAutoCleanup":`Habilitar limpieza automática`,"settings.openchamber.sessionRetention.field.retentionPeriod":`Periodo de retención`,"settings.openchamber.sessionRetention.field.retentionPeriodAria":`Período de retención en días`,"settings.openchamber.sessionRetention.field.days":`días`,"settings.openchamber.sessionRetention.field.whenSessionsExpire":`Cuando las sesiones expiren`,"settings.openchamber.sessionRetention.actions.resetRetentionAria":`Restablecer período de retención`,"settings.openchamber.sessionRetention.actions.runCleanupNow":`Ejecutar limpieza ahora`,"settings.openchamber.sessionRetention.actions.cleaningUp":`Limpieza en curso...`,"settings.openchamber.sessionRetention.action.archive":`Archivar`,"settings.openchamber.sessionRetention.action.delete":`Eliminar`,"settings.openchamber.sessionRetention.manualCleanup.title":`Limpieza manual`,"settings.openchamber.sessionRetention.manualCleanup.eligibleArchiveNow":`Elegible para archivar ahora: {count}`,"settings.openchamber.sessionRetention.manualCleanup.eligibleDeleteNow":`Elegible para eliminar ahora: {count}`,"settings.openchamber.sessionRetention.toast.noneEligibleArchive":`No hay sesiones elegibles para archivar`,"settings.openchamber.sessionRetention.toast.noneEligibleDelete":`No hay sesiones elegibles para eliminar`,"settings.openchamber.sessionRetention.toast.archivedCount":`Archivadas {count} sesión(es)`,"settings.openchamber.sessionRetention.toast.deletedCount":`Eliminadas {count} sesión(es)`,"settings.openchamber.sessionRetention.toast.failedArchiveCount":`No se pudo archivar {count} sesión(es)`,"settings.openchamber.sessionRetention.toast.failedDeleteCount":`No se pudo eliminar {count} sesión(es)`,"settings.openchamber.archivedSessions.title":`Sesiones archivadas`,"settings.openchamber.archivedSessions.description":`Explora las sesiones archivadas por proyecto, restáuralas o ábrelas en vista previa.`,"settings.openchamber.archivedSessions.summarySingle":`{count} sesión archivada`,"settings.openchamber.archivedSessions.summaryPlural":`{count} sesiones archivadas`,"settings.openchamber.archivedSessions.actions.manage":`Administrar sesiones archivadas`,"settings.openchamber.archivedSessions.actions.view":`Ver archivadas`,"settings.openchamber.archivedSessions.actions.preview":`Vista previa`,"settings.openchamber.archivedSessions.actions.restore":`Restaurar`,"settings.openchamber.archivedSessions.otherProjects":`Otros`,"settings.openchamber.archivedSessions.dialog.title":`Sesiones archivadas`,"settings.openchamber.archivedSessions.dialog.description":`Selecciona un proyecto para ver sus sesiones archivadas.`,"settings.openchamber.archivedSessions.dialog.loading":`Cargando sesiones archivadas…`,"settings.openchamber.archivedSessions.dialog.empty":`Aún no hay sesiones archivadas.`,"settings.openchamber.archivedSessions.dialog.emptyProject":`No hay sesiones archivadas en este proyecto.`,"settings.openchamber.archivedSessions.dialog.backToProjects":`Volver a proyectos`,"settings.openchamber.archivedSessions.dialog.sessionCountSingle":`{count} sesión`,"settings.openchamber.archivedSessions.dialog.sessionCountPlural":`{count} sesiones`,"settings.openchamber.archivedSessions.toast.loadFailed":`No se pudieron cargar las sesiones archivadas.`,"settings.openchamber.archivedSessions.toast.restored":`Sesión restaurada`,"settings.openchamber.archivedSessions.toast.restoreFailed":`No se pudo restaurar la sesión`,"settings.openchamber.desktopNetwork.title":`Acceso de red de escritorio`,"settings.openchamber.desktopNetwork.field.windowControlsPosition":`Posición de los controles de ventana`,"settings.openchamber.desktopNetwork.field.windowControlsPositionDescription":`Elige dónde aparecen los botones de minimizar, maximizar y cerrar. Automático sigue el sistema operativo.`,"settings.openchamber.desktopNetwork.field.windowControlsPositionAria":`Posición de los controles de ventana`,"settings.openchamber.desktopNetwork.option.windowControlsAuto":`Automático`,"settings.openchamber.desktopNetwork.option.windowControlsLeft":`Izquierda`,"settings.openchamber.desktopNetwork.option.windowControlsRight":`Derecha`,"settings.openchamber.desktopNetwork.field.launchAtLoginAria":`Iniciar OpenChamber al iniciar sesión`,"settings.openchamber.desktopNetwork.field.launchAtLogin":`Iniciar OpenChamber al iniciar sesión`,"settings.openchamber.desktopNetwork.field.launchAtLoginDescription":`Inicia la app en segundo plano sin abrir una ventana. Usa el icono de estado del escritorio para abrirla.`,"settings.openchamber.desktopNetwork.field.minimizeToTrayAria":`Minimizar y cerrar OpenChamber a la bandeja del sistema`,"settings.openchamber.desktopNetwork.field.minimizeToTray":`Minimizar y cerrar a la bandeja del sistema`,"settings.openchamber.desktopNetwork.field.minimizeToTrayDescription":`Mantiene OpenChamber en ejecución en la bandeja del sistema de Windows cuando la ventana principal se minimiza o se cierra.`,"settings.openchamber.desktopNetwork.field.keepAwakeAria":`Mantener el ordenador activo mientras OpenChamber está en ejecución`,"settings.openchamber.desktopNetwork.field.keepAwake":`Mantener el ordenador activo mientras OpenChamber está en ejecución`,"settings.openchamber.desktopNetwork.field.keepAwakeDescription":`Para que los teléfonos puedan seguir abriendo esta app. La pantalla aún puede apagarse.`,"settings.openchamber.desktopNetwork.field.allowLanAccessAria":`Permitir acceso LAN al lado de escritorio`,"settings.openchamber.desktopNetwork.field.allowLanAccess":`Permitir que otros dispositivos en tu red local abran esta aplicación`,"settings.openchamber.desktopNetwork.field.allowLanAccessDescription":`Reinicia la aplicación para que los teléfonos, tablets y otros ordenadores en tu Wi-Fi puedan abrirla.`,"settings.openchamber.desktopNetwork.field.warning":`Advertencia: mientras esté habilitado, la aplicación es accesible por cualquiera en la misma red local.`,"settings.openchamber.desktopNetwork.field.passwordRequiredWarning":`El acceso LAN requiere una contraseña de UI de escritorio. Hasta que se configure, la app de escritorio se inicia solo localmente.`,"settings.openchamber.desktopPassword.field.password":`Contraseña de UI de escritorio`,"settings.openchamber.desktopPassword.field.passwordPlaceholder":`No se requiere contraseña`,"settings.openchamber.desktopPassword.field.passwordDescription":`OpenChamber la pide después del reinicio y luego cuando vence la sesión: tras 12 horas, o 7 días con Confiar en este dispositivo. Déjalo vacío para desactivar el inicio de sesión.`,"settings.openchamber.desktopNetwork.hint.openAfterRestart":`Después del reinicio, abre desde otro dispositivo: `,"settings.openchamber.desktopNetwork.hint.openNow":`Abrir desde otro dispositivo: `,"settings.openchamber.desktopNetwork.actions.saveAndRestart":`Guardar y reiniciar`,"settings.openchamber.desktopNetwork.error.loadFailed":`No se pudo cargar la configuración de escritorio`,"settings.openchamber.desktopNetwork.error.saveFailed":`No se pudo guardar la configuración de escritorio`,"settings.openchamber.desktopNetwork.error.savedRestartFailed":`Guardado, pero no se pudo reiniciar la aplicación`,"settings.openchamber.desktopNetwork.error.launchAtLoginUnsupported":`El inicio al iniciar sesión no es compatible con este sistema`,"settings.openchamber.desktopNetwork.error.launchAtLoginSaveFailed":`No se pudo actualizar la opción de inicio al iniciar sesión`,"settings.openchamber.desktopNetwork.error.minimizeToTrayUnsupported":`El modo en segundo plano de la bandeja del sistema no es compatible con este sistema`,"settings.openchamber.desktopNetwork.error.minimizeToTraySaveFailed":`No se pudo actualizar la opción de bandeja del sistema`,"settings.openchamber.desktopNetwork.error.keepAwakeUnsupported":`Evitar la suspensión no es compatible con este sistema`,"settings.openchamber.desktopNetwork.error.keepAwakeSaveFailed":`No se pudo actualizar la opción de mantener activo`,"settings.openchamber.opencodeCli.title":`CLI de OpenCode`,"settings.openchamber.opencodeCli.tooltipPrefix":`Ruta absoluta opcional al`,"settings.openchamber.opencodeCli.tooltipSuffix":`ejecutable.`,"settings.openchamber.opencodeCli.field.binaryPath":`Ruta del ejecutable de OpenCode`,"settings.openchamber.opencodeCli.field.binaryPathPlaceholder":`/Users/you/.bun/bin/opencode`,"settings.openchamber.opencodeCli.field.showUpdateNotifications":`Mostrar notificaciones de actualización de OpenCode`,"settings.openchamber.opencodeCli.field.showUpdateNotificationsAria":`Mostrar notificaciones de actualización de OpenCode`,"settings.openchamber.opencodeCli.actions.browseAria":`Buscar ruta del ejecutable de OpenCode`,"settings.openchamber.opencodeCli.actions.browse":`Buscar`,"settings.openchamber.opencodeCli.actions.saveAndReload":`Guardar + Recargar`,"settings.openchamber.opencodeCli.actions.restartingOpenCode":`Reiniciando OpenCode…`,"settings.openchamber.opencodeCli.dialog.selectBinaryTitle":`Seleccionar ejecutable de opencode`,"settings.openchamber.opencodeCli.tipPrefix":`Consejo: también puedes usar`,"settings.openchamber.opencodeCli.tipMiddle":`variable de entorno, pero esta configuración persiste en`,"settings.mcp.sidebar.title":`Servidores MCP`,"settings.mcp.sidebar.total":`Total {count}`,"settings.mcp.sidebar.actions.refreshStatusAria":`Actualizar estado MCP`,"settings.mcp.sidebar.actions.refreshStatusTitle":`Actualizar estado MCP`,"settings.mcp.sidebar.actions.addServerTitle":`Añadir servidor MCP`,"settings.mcp.sidebar.actions.deleting":`Eliminando…`,"settings.mcp.sidebar.empty.title":`No hay servidores MCP configurados`,"settings.mcp.sidebar.empty.description":`Usa el botón + arriba para añadir uno`,"settings.mcp.sidebar.group.projectServers":`Servidores del proyecto`,"settings.mcp.sidebar.group.userServers":`Servidores del usuario`,"settings.mcp.sidebar.serverType.localTitle":`Servidor local`,"settings.mcp.sidebar.serverType.remoteTitle":`Servidor remoto`,"settings.mcp.sidebar.deleteDialog.title":`Eliminar servidor MCP`,"settings.mcp.sidebar.deleteDialog.descriptionPrefix":`¿Seguro que quieres eliminar "{name}"? Esto lo eliminará de`,"settings.mcp.sidebar.toast.deleteFailed":`No se pudo eliminar el servidor MCP`,"settings.mcp.sidebar.toast.serverDeleted":`Servidor MCP "{name}" eliminado`,"settings.mcp.sidebar.toast.refreshListIfStale":`Actualiza la lista de MCP si la interfaz parece desactualizada.`,"settings.plugins.sidebar.title":`Plugins`,"settings.plugins.sidebar.total":`Total: {count}`,"settings.plugins.sidebar.actions.addTitle":`Añadir plugin`,"settings.plugins.sidebar.actions.deleting":`Eliminando…`,"settings.plugins.sidebar.empty.title":`No hay plugins configurados`,"settings.plugins.sidebar.empty.description":`Usa el botón + de arriba para añadir uno`,"settings.plugins.sidebar.group.userEntries":`Configuración de usuario`,"settings.plugins.sidebar.group.userFiles":`Archivo de plugin de usuario`,"settings.plugins.sidebar.group.projectEntries":`Configuración del proyecto`,"settings.plugins.sidebar.group.projectFiles":`Archivo de plugin del proyecto`,"settings.plugins.sidebar.kind.npm":`paquete npm`,"settings.plugins.sidebar.kind.path":`Ruta local`,"settings.plugins.sidebar.kind.file":`Archivo de plugin`,"settings.plugins.sidebar.deleteDialog.title":`Eliminar plugin`,"settings.plugins.sidebar.deleteDialog.description":`¿Seguro que quieres eliminar "{name}"?`,"settings.plugins.sidebar.toast.deleted":`Plugin "{name}" eliminado`,"settings.plugins.sidebar.toast.deleteFailed":`No se pudo eliminar el plugin`,"settings.plugins.page.empty.select":`Selecciona un plugin para verlo o editarlo`,"settings.plugins.page.empty.add":`O haz clic en + para añadir un plugin nuevo`,"settings.plugins.page.header.entry":`Plugin instalado`,"settings.plugins.page.header.file":`Archivo de plugin`,"settings.plugins.page.field.spec":`Especificación`,"settings.plugins.page.field.spec.placeholder":`paquete-npm@versión o /ruta/absoluta`,"settings.plugins.page.field.options":`Opciones (JSON)`,"settings.plugins.page.field.options.invalidJson":`JSON no válido`,"settings.plugins.page.field.fileName":`Nombre de archivo`,"settings.plugins.page.field.content":`Contenido`,"settings.plugins.page.field.scope":`Ámbito`,"settings.plugins.scope.user":`Usuario`,"settings.plugins.scope.project":`Proyecto`,"settings.plugins.page.action.save":`Guardar`,"settings.plugins.page.action.discard":`Descartar`,"settings.plugins.dialog.add.title":`Añadir plugin`,"settings.plugins.dialog.add.tab.npm":`Desde npm`,"settings.plugins.dialog.add.tab.path":`Desde ruta local`,"settings.plugins.dialog.add.tab.file":`Archivo nuevo`,"settings.plugins.dialog.add.action.submit":`Añadir`,"settings.plugins.dialog.add.action.cancel":`Cancelar`,"settings.plugins.toast.created":`Plugin añadido`,"settings.plugins.toast.updated":`Plugin actualizado`,"settings.plugins.toast.reloadFailed":`Falló la recarga de opencode; se requiere reiniciar`,"settings.plugins.validation.fileName":`El nombre de archivo debe estar en minúsculas y terminar en .js / .ts / .mjs / .cjs`,"settings.plugins.validation.specRequired":`La especificación es obligatoria`,"settings.plugins.registry.badge.update.label":`↑ {version}`,"settings.plugins.registry.badge.update.tooltip":`Actualización disponible: {current} → {latest}`,"settings.plugins.registry.badge.malformed.tooltip":`La especificación no es válida`,"settings.plugins.registry.badge.missingPackage.tooltip":`No se encontró el paquete {name} en npm`,"settings.plugins.registry.badge.missingVersion.tooltip":`La versión {version} de {name} no está publicada`,"settings.plugins.registry.badge.pathMissing.tooltip":`Archivo no encontrado: {path}`,"settings.plugins.registry.badge.pathUnreadable.tooltip":`No se puede leer el archivo: {path}`,"settings.plugins.registry.badge.network.tooltip":`No se pudo conectar con el registro de npm`,"settings.plugins.registry.banner.updateAvailable.title":`Actualización disponible`,"settings.plugins.registry.banner.updateAvailable.description":`{current} → {latest}`,"settings.plugins.registry.banner.updateAvailable.action":`Actualizar a {latest}`,"settings.plugins.registry.banner.invalid.title":`Plugin no válido`,"settings.plugins.registry.banner.invalid.malformed":`La sintaxis de la especificación no es válida`,"settings.plugins.registry.banner.invalid.missingPackage":`Paquete no encontrado en npm`,"settings.plugins.registry.banner.invalid.missingVersion":`Versión no publicada`,"settings.plugins.registry.banner.invalid.pathMissing":`El archivo no existe`,"settings.plugins.registry.banner.invalid.pathUnreadable":`No se puede leer el archivo`,"settings.plugins.sidebar.actions.updateToLatest":`Actualizar a la última versión`,"settings.plugins.sidebar.actions.refresh":`Buscar actualizaciones`,"settings.plugins.sidebar.group.updatesAvailable_one":`{count} actualización disponible`,"settings.plugins.sidebar.group.updatesAvailable_other":`{count} actualizaciones disponibles`,"settings.plugins.toast.updatedToLatest":`Plugin actualizado a {version}`,"settings.plugins.toast.refreshing":`Buscando actualizaciones en npm…`,"settings.plugins.toast.refreshFailed":`No se pudo consultar el registro de npm`,"settings.openchamber.keyboardShortcuts.title":`Atajos de teclado`,"settings.openchamber.keyboardShortcuts.actions.resetAll":`Restablecer todo`,"settings.openchamber.keyboardShortcuts.actions.overwrite":`Sobrescribir`,"settings.openchamber.keyboardShortcuts.tooltip":`Captura una nueva combinación de teclas, guárdala y los enlaces se actualizarán inmediatamente.`,"settings.openchamber.keyboardShortcuts.overwritePrompt":`Esta combinación ya está usada por otro atajo. ¿Sobrescribir y limpiar esa otra asignación?`,"settings.openchamber.keyboardShortcuts.field.pressKeys":`Pulsa las teclas...`,"settings.openchamber.keyboardShortcuts.error.captureFirst":`Captura un atajo primero.`,"settings.openchamber.keyboardShortcuts.warning.riskyBrowserShortcut":`Este atajo puede entrar en conflicto con los predeterminados del navegador. Todavía se guarda.`,"settings.openchamber.keyboardShortcuts.action.open_go_to_line.label":`Ir a línea (editor de archivos)`,"settings.openchamber.keyboardShortcuts.action.open_command_palette.label":`Abrir paleta de comandos`,"settings.openchamber.keyboardShortcuts.action.focus_input.label":`Enfocar entrada`,"settings.openchamber.keyboardShortcuts.action.open_settings.label":`Abrir configuración`,"settings.openchamber.keyboardShortcuts.action.toggle_terminal.label":`Mostrar u ocultar terminal`,"settings.openchamber.keyboardShortcuts.action.toggle_bottom_panel.label":`Mostrar u ocultar el panel inferior`,"settings.openchamber.keyboardShortcuts.action.toggle_terminal_expanded.label":`Expandir o contraer terminal`,"settings.openchamber.keyboardShortcuts.action.new_terminal_tab.label":`Nueva pestaña de terminal`,"settings.openchamber.keyboardShortcuts.action.open_new_terminal.label":`Abrir terminal nuevo`,"settings.openchamber.keyboardShortcuts.action.previous_terminal_tab.label":`Pestaña de terminal anterior`,"settings.openchamber.keyboardShortcuts.action.next_terminal_tab.label":`Pestaña de terminal siguiente`,"settings.openchamber.keyboardShortcuts.action.toggle_sidebar.label":`Mostrar u ocultar barra lateral`,"settings.openchamber.keyboardShortcuts.action.toggle_right_sidebar.label":`Mostrar u ocultar panel de revisión`,"settings.openchamber.keyboardShortcuts.action.open_right_sidebar_git.label":`Abrir pestaña de Git en barra lateral derecha`,"settings.openchamber.keyboardShortcuts.action.open_right_sidebar_files.label":`Abrir pestaña de Archivos en barra lateral derecha`,"settings.openchamber.keyboardShortcuts.action.cycle_right_sidebar_tab.label":`Cambiar pestaña de la barra lateral derecha`,"settings.openchamber.keyboardShortcuts.action.close_context_panel_tab.label":`Cerrar pestaña del panel de contexto`,"settings.openchamber.keyboardShortcuts.action.previous_session.label":`Sesión anterior`,"settings.openchamber.keyboardShortcuts.action.next_session.label":`Sesión siguiente`,"settings.openchamber.keyboardShortcuts.action.new_chat.label":`Nueva sesión`,"settings.openchamber.keyboardShortcuts.action.new_chat_worktree.label":`Nuevo borrador de worktree`,"settings.openchamber.keyboardShortcuts.action.new_mini_chat.label":`Nueva ventana Mini Chat`,"settings.openchamber.keyboardShortcuts.action.open_help.label":`Abrir atajos de teclado`,"settings.openchamber.keyboardShortcuts.action.toggle_context_plan.label":`Alternar panel de plan de contexto`,"settings.openchamber.keyboardShortcuts.action.toggle_services_menu.label":`Mostrar u ocultar menú de servicios`,"settings.openchamber.keyboardShortcuts.action.open_usage.label":`Ver uso`,"settings.openchamber.keyboardShortcuts.action.cycle_services_tab.label":`Cambiar pestaña de servicios`,"settings.openchamber.keyboardShortcuts.action.cycle_theme.label":`Cambiar tema`,"settings.openchamber.keyboardShortcuts.action.zoom_in.label":`Acercar`,"settings.openchamber.keyboardShortcuts.action.zoom_out.label":`Alejar`,"settings.openchamber.keyboardShortcuts.action.zoom_reset.label":`Restablecer zoom`,"settings.openchamber.keyboardShortcuts.action.cycle_agent.label":`Cambiar agente`,"settings.openchamber.keyboardShortcuts.action.cycle_favorite_model_forward.label":`Siguiente modelo favorito`,"settings.openchamber.keyboardShortcuts.action.cycle_favorite_model_backward.label":`Modelo favorito anterior`,"settings.openchamber.keyboardShortcuts.action.open_model_selector.label":`Abrir selector de modelo`,"settings.openchamber.keyboardShortcuts.action.expand_input.label":`Expandir entrada`,"settings.openchamber.keyboardShortcuts.action.clear_all_messages.label":`Borrar todos los mensajes`,"settings.openchamber.keyboardShortcuts.action.open_timeline_dialog.label":`Abrir línea de tiempo de conversación`,"settings.openchamber.keyboardShortcuts.action.toggle_prompt_navigator.label":`Mostrar u ocultar navegador de prompts`,"settings.projects.sidebar.total":`Total {count}`,"settings.projects.sidebar.actions.addProject":`Añadir proyecto`,"settings.projects.page.empty.noProjects":`No hay proyectos disponibles.`,"settings.projects.page.title.default":`Configuración del proyecto`,"settings.projects.page.section.worktree":`Worktree`,"settings.projects.page.field.projectName":`Nombre del proyecto`,"settings.projects.page.field.projectNamePlaceholder":`Nombre del proyecto`,"settings.projects.page.field.defaultModel":`Modelo predeterminado para chats nuevos`,"settings.projects.page.field.defaultModelDescription":`Se usa al iniciar un chat nuevo en este proyecto. Si no se define, se usan los valores globales.`,"settings.projects.page.field.accentColor":`Color de énfasis`,"settings.projects.page.field.projectIcon":`Icono del proyecto`,"settings.projects.page.field.projectIconBackgroundAria":`Color de fondo del icono del proyecto`,"settings.projects.page.field.clearIconBackgroundAria":`Limpiar color de fondo del icono`,"settings.projects.page.field.clearBackground":`Limpiar fondo`,"settings.projects.page.field.none":`Ninguno`,"settings.projects.page.field.preview":`Vista previa`,"settings.projects.page.actions.uploadIcon":`Subir icono`,"settings.projects.page.actions.uploading":`Subiendo...`,"settings.projects.page.actions.discoverFavicon":`Buscar favicon`,"settings.projects.page.actions.discovering":`Descubriendo...`,"settings.projects.page.actions.removeProjectIcon":`Eliminar icono del proyecto`,"settings.projects.page.actions.removing":`Eliminando...`,"settings.projects.page.actions.undoRemove":`Deshacer eliminación`,"settings.projects.page.toast.uploadIconFailed":`No se pudo subir el icono del proyecto`,"settings.projects.page.toast.iconUpdated":`Icono del proyecto actualizado`,"settings.projects.page.toast.removeIconFailed":`No se pudo eliminar el icono del proyecto`,"settings.projects.page.toast.iconRemoved":`Icono del proyecto eliminado`,"settings.projects.page.toast.discoverIconFailed":`No se pudo descubrir el icono del proyecto`,"settings.projects.page.toast.customIconAlreadySet":`Icono personalizado ya establecido para este proyecto`,"settings.projects.page.toast.iconDiscovered":`Icono del proyecto descubierto`,"settings.projects.page.toast.saveFailed":`Error al guardar la configuración del proyecto`,"settings.usage.sidebar.title":`Uso`,"settings.usage.sidebar.total":`Total {count}`,"settings.usage.sidebar.actions.toggleAutoRefreshAria":`Alternar refresco automático`,"settings.usage.sidebar.field.autoRefresh":`Actualización automática`,"settings.usage.sidebar.field.refreshInterval":`Intervalo de actualización`,"settings.usage.sidebar.actions.refreshAria":`Actualizar uso`,"settings.usage.sidebar.actions.refreshTitle":`Actualizar uso`,"settings.usage.sidebar.tooltip.autoRefresh":`Actualizar automáticamente los datos de uso en el intervalo establecido`,"settings.usage.sidebar.field.intervalPlaceholder":`Intervalo`,"settings.usage.sidebar.field.display":`Visualización`,"settings.usage.sidebar.field.displayModePlaceholder":`Modo de visualización`,"settings.usage.sidebar.field.displayModeUsage":`Uso`,"settings.usage.sidebar.field.displayModeRemaining":`Cuota restante`,"settings.usage.sidebar.field.showPredictions":`Mostrar predicciones`,"settings.usage.sidebar.status.notSet":`No establecido`,"settings.usage.page.empty.selectProvider":`Selecciona un proveedor para ver detalles de uso.`,"settings.usage.page.header.providerUsage":`Uso de {provider}`,"settings.usage.page.header.refreshing":`Actualizando uso...`,"settings.usage.page.header.lastUpdated":`Última actualización: {time}`,"settings.usage.page.options.showInHeaderAria":`Mostrar en menú de encabezado`,"settings.usage.page.options.showInHeader":`Mostrar en el menú del encabezado`,"settings.usage.page.options.showInHeaderTooltip":`Cuando esté habilitado, el uso de este proveedor será visible en el menú de acceso rápido del encabezado de la aplicación.`,"settings.usage.page.state.noData":`No hay datos de uso disponibles aún.`,"settings.usage.page.state.refreshFailedTitle":`No se pudo actualizar los datos de uso`,"settings.usage.page.state.providerNotConfiguredTitle":`Proveedor no configurado`,"settings.usage.page.state.providerNotConfiguredDescription":`Añade credenciales en la pestaña de Proveedores para habilitar el seguimiento de uso.`,"settings.usage.page.section.modelQuotas":`Cuotas de modelo`,"settings.usage.page.section.otherModels":`Otros modelos`,"settings.usage.page.state.noQuotaWindowsTitle":`No se reportaron ventanas de cuota`,"settings.usage.page.state.noQuotaWindowsDescription":`Este proveedor actualmente no reporta límites de tasa ni cuotas de uso.`,"settings.usage.pace.status.onTrack":`A buen ritmo`,"settings.usage.pace.status.slightlyFast":`Ligeramente rápido`,"settings.usage.pace.status.tooFast":`Demasiado rápido`,"settings.usage.pace.status.usedUp":`Agotado`,"settings.usage.pace.predictionTooltip":`Uso predicho al final de la ventana basado en la velocidad actual: {prediction}`,"settings.usage.pace.wait":`Esperar {duration}`,"settings.usage.pace.prediction":`Pred.: {prediction}`,"settings.usage.pace.rate":`Velocidad: {rate}`,"settings.usage.pace.waitSeparator":` · Esperar `,"settings.usage.pace.predictionLabel":`Pred.: `,"settings.remoteInstances.page.title":`Instancia remota`,"settings.remoteInstances.page.description":`Conéctate a otra máquina por SSH y abre OpenChamber allí.`,"settings.remoteInstances.page.empty.selectInstance":`Selecciona una instancia para ver y editar sus configuraciones.`,"settings.remoteInstances.page.empty.noExtraForwards":`No hay redirecciones adicionales de puerto configuradas.`,"settings.remoteInstances.page.section.actions":`Acciones`,"settings.remoteInstances.page.section.actionsDescription":`Conecta, reconecta, revisa registros o elimina esta conexión.`,"settings.remoteInstances.page.section.remoteServer":`OpenChamber en la máquina remota`,"settings.remoteInstances.page.section.remoteServerDescription":`Elige cómo debe ejecutarse OpenChamber después de conectar por SSH.`,"settings.remoteInstances.page.section.mainTunnel":`Acceso local`,"settings.remoteInstances.page.section.mainTunnelDescription":`Elige la dirección local que se usará para abrir este servidor remoto de OpenChamber.`,"settings.remoteInstances.page.section.authentication":`Autenticación`,"settings.remoteInstances.page.section.authenticationDescription":`Credenciales opcionales para SSH y la interfaz de usuario de OpenChamber remoto.`,"settings.remoteInstances.page.section.portForwards":`Redirecciones de puerto`,"settings.remoteInstances.page.section.portForwardsDescription":`Puertos adicionales opcionales que estarán disponibles a través de esta conexión SSH.`,"settings.remoteInstances.page.field.sshCommand":`Comando SSH`,"settings.remoteInstances.page.field.sshCommandPlaceholder":`ssh user@host o ssh user@host:22`,"settings.remoteInstances.page.field.nickname":`Apodo`,"settings.remoteInstances.page.field.nicknamePlaceholder":`Portátil de trabajo`,"settings.remoteInstances.page.field.connectionTimeoutSeconds":`Tiempo de espera de conexión (segundos)`,"settings.remoteInstances.page.field.installMethod":`Método de instalación`,"settings.remoteInstances.page.field.installMethodHint":`Cómo debe colocarse OpenChamber en la máquina remota cuando esta app lo inicia por ti.`,"settings.remoteInstances.page.field.selectInstallMethodPlaceholder":`Seleccionar método de instalación`,"settings.remoteInstances.page.field.installMethodDownloadRelease":`Descargar versión`,"settings.remoteInstances.page.field.installMethodUploadBundle":`Subir paquete`,"settings.remoteInstances.page.field.selectBindHostPlaceholder":`Seleccionar host de enlace`,"settings.remoteInstances.page.field.sshPasswordOptional":`Contraseña SSH (opcional)`,"settings.remoteInstances.page.field.sshPasswordPlaceholder":`Introducir contraseña SSH`,"settings.remoteInstances.page.field.uiPasswordOptional":`Contraseña de interfaz de usuario (opcional)`,"settings.remoteInstances.page.field.uiPasswordPlaceholder":`Introducir contraseña de interfaz de usuario`,"settings.remoteInstances.page.field.forwardTypeHint":`Elige qué tipo de acceso a puertos debe ofrecer esta conexión SSH.`,"settings.remoteInstances.page.field.typePlaceholder":`Tipo`,"settings.remoteInstances.page.forwardType.local":`Local (-L)`,"settings.remoteInstances.page.forwardType.remote":`Remota (-R)`,"settings.remoteInstances.page.forwardType.dynamic":`Dinámica (-D)`,"settings.remoteInstances.page.forwardTypeDescription.local":`Abre un puerto local que se conecta a un servicio en la máquina remota.`,"settings.remoteInstances.page.forwardTypeDescription.remote":`Abre un puerto en la máquina remota que vuelve a conectarse a tu ordenador.`,"settings.remoteInstances.page.forwardTypeDescription.dynamic":`Abre un proxy SOCKS local a través de la conexión SSH.`,"settings.remoteInstances.page.actions.create":`Crear`,"settings.remoteInstances.page.actions.cancel":`Cancelar`,"settings.remoteInstances.page.actions.connecting":`Conectando...`,"settings.remoteInstances.page.actions.reconnecting":`Reconectando...`,"settings.remoteInstances.page.actions.reconnectNow":`Reconectar ahora`,"settings.remoteInstances.page.actions.logs":`Registros SSH`,"settings.remoteInstances.page.actions.pickRandomPort":`Elegir puerto aleatorio`,"settings.remoteInstances.page.actions.enableForwardAria":`Habilitar redirección`,"settings.remoteInstances.page.actions.openLocal":`Abrir local`,"settings.remoteInstances.page.actions.addForward":`Añadir redirección`,"settings.remoteInstances.page.import.sectionTitle":`Hosts SSH guardados`,"settings.remoteInstances.page.import.loading":`Cargando hosts SSH...`,"settings.remoteInstances.page.import.noneFound":`No se encontraron hosts SSH.`,"settings.remoteInstances.page.import.noneAvailable":`No hay hosts SSH disponibles para importar.`,"settings.remoteInstances.page.import.patternSuffix":`(patrón)`,"settings.remoteInstances.page.status.currentLocalUrl":`URL local actual:`,"settings.remoteInstances.page.status.reconnectStale":`La reconexión parece estar atascada. Puedes intentarlo ahora.`,"settings.remoteInstances.page.logsDialog.title":`Registros SSH`,"settings.remoteInstances.page.logsDialog.loading":`Cargando registros...`,"settings.remoteInstances.page.logsDialog.empty":`No hay registros SSH aún.`,"settings.remoteInstances.page.patternDialog.title":`Crear desde patrón comodín`,"settings.remoteInstances.page.patternDialog.destinationPlaceholder":`user@host`,"settings.remoteInstances.page.phase.resolvingConfiguration":`Resolviendo configuración`,"settings.remoteInstances.page.phase.checkingAuth":`Verificando autenticación`,"settings.remoteInstances.page.phase.establishingSsh":`Estableciendo conexión SSH`,"settings.remoteInstances.page.phase.probingRemote":`Comprobando la máquina remota`,"settings.remoteInstances.page.phase.installingOpenChamber":`Instalando OpenChamber`,"settings.remoteInstances.page.phase.updatingOpenChamber":`Actualizando OpenChamber`,"settings.remoteInstances.page.phase.detectingServer":`Detectando servidor`,"settings.remoteInstances.page.phase.startingServer":`Iniciando servidor`,"settings.remoteInstances.page.phase.forwardingPorts":`Redirigiendo puertos`,"settings.remoteInstances.page.phase.reconnecting":`Reconectando`,"settings.remoteInstances.page.confirm.storeSshPasswordPlaintext":`¿Guardar contraseña SSH en texto plano en disco?`,"settings.remoteInstances.page.confirm.storeUiPasswordPlaintext":`¿Guardar contraseña de interfaz de usuario en texto plano en disco?`,"settings.remoteInstances.page.confirm.removeInstance":`¿Eliminar esta instancia remota?`,"settings.remoteInstances.page.sync.title":`Sincronizar la configuración del agente con este remoto`,"settings.remoteInstances.page.sync.description":`Replica tu configuración local de OpenCode (~/.config/opencode), las habilidades del agente (~/.agents) y las credenciales del proveedor (auth.json) en este remoto para que ambos lados coincidan y los inicios de sesión funcionen. Las carpetas enlazadas simbólicamente se copian como archivos reales.`,"settings.remoteInstances.page.sync.direction.push":`Local → remoto`,"settings.remoteInstances.page.sync.direction.pull":`Remoto → local`,"settings.remoteInstances.page.sync.scope.title":`Qué sincronizar`,"settings.remoteInstances.page.sync.scope.authRequiresGrant":`Autoriza la sincronización de credenciales en la configuración de esta instancia antes de incluir auth.json.`,"settings.remoteInstances.page.sync.runs.title":`Ejecuciones de sincronización recientes`,"settings.remoteInstances.page.sync.runs.empty":`Aún no hay ejecuciones de sincronización para esta instancia.`,"settings.remoteInstances.page.sync.runs.result.success":`Correcto`,"settings.remoteInstances.page.sync.runs.result.failure":`Fallido`,"settings.remoteInstances.page.sync.step.scanLocal":`Analizando la configuración local`,"settings.remoteInstances.page.sync.step.compareRemote":`Comparando con el remoto`,"settings.remoteInstances.page.sync.step.confirm":`Revisar cambios`,"settings.remoteInstances.page.sync.section.files":`Archivos`,"settings.remoteInstances.page.sync.section.directories":`Directorios`,"settings.remoteInstances.page.sync.section.authFile":`Credenciales del proveedor (auth.json)`,"settings.remoteInstances.page.sync.section.agentsRoot":`Habilidades del agente (~/.agents)`,"settings.remoteInstances.page.sync.section.agentsRootCount":`{count} archivos`,"settings.remoteInstances.page.sync.status.overwrite":`Se sobrescribirá`,"settings.remoteInstances.page.sync.status.add":`Se añadirá`,"settings.remoteInstances.page.sync.note.deletes":`Se eliminarán {count} contraparte(s) remota(s) para que ambos lados coincidan.`,"settings.remoteInstances.page.sync.note.backup":`Los archivos remotos reemplazados se respaldan en ~/.config/opencode/.openchamber.sync-backup; la raíz de agents en ~/.openchamber.sync-backup-agents; auth.json en ~/.openchamber.sync-backup-auth en el remoto.`,"settings.remoteInstances.page.sync.note.excluded":`No se sincroniza: datos de sesión, cachés, node_modules, archivos de bloqueo.`,"settings.remoteInstances.page.sync.state.empty":`Nada que sincronizar: no se encontró configuración compatible en este equipo.`,"settings.remoteInstances.page.sync.state.error":`Error al inspeccionar el remoto: {message}`,"settings.remoteInstances.page.sync.state.unavailable":`La sincronización de configuración no está disponible en esta ventana. Vuelve a abrir esta página desde la aplicación de escritorio de OpenChamber (reinicia la app de desarrollo si está en ejecución) e inténtalo de nuevo.`,"settings.remoteInstances.page.sync.applying":`Sincronizando...`,"settings.remoteInstances.page.sync.actions.syncNow":`Sincronizar ahora`,"settings.remoteInstances.page.sync.actions.cancel":`Ahora no`,"settings.remoteInstances.page.sync.toast.success":`Configuración del agente sincronizada con el remoto`,"settings.remoteInstances.page.sync.toast.failed":`Error al sincronizar la configuración de OpenCode`,"settings.remoteInstances.page.section.credentialSync":`Sincronización de credenciales`,"settings.remoteInstances.page.credentialSync.description":`Conectarse a este remoto no autoriza copiar tokens de inicio de sesión del proveedor. Actívalo solo si confías en este remoto para guardar tu auth.json de OpenCode.`,"settings.remoteInstances.page.credentialSync.toggleLabel":`Permitir sincronizar credenciales del proveedor`,"settings.remoteInstances.page.credentialSync.toggleDescription":`Si está activado, la sincronización de configuración puede transferir ~/.local/share/opencode/auth.json a este remoto.`,"settings.remoteInstances.page.credentialSync.toggleAria":`Permitir sincronizar credenciales del proveedor a este remoto`,"settings.remoteInstances.page.credentialSync.confirmGrant":`¿Permitir que este remoto reciba credenciales del proveedor (auth.json)? Los tokens se copiarán por SSH al sincronizar.`,"settings.remoteInstances.page.credentialSync.confirmRevoke":`¿Dejar de permitir la sincronización de credenciales del proveedor a este remoto? Las sincronizaciones futuras omitirán auth.json.`,"settings.remoteInstances.page.credentialSync.toast.granted":`Sincronización de credenciales autorizada para este remoto`,"settings.remoteInstances.page.credentialSync.toast.grantFailed":`Error al autorizar la sincronización de credenciales`,"settings.remoteInstances.page.credentialSync.toast.revoked":`Autorización de sincronización de credenciales eliminada`,"settings.remoteInstances.page.credentialSync.toast.revokeFailed":`Error al revocar la sincronización de credenciales`,"settings.remoteInstances.page.toast.sshCommandRequired":`Se requiere el comando SSH`,"settings.remoteInstances.page.toast.saveFailed":`No se pudo guardar la instancia`,"settings.remoteInstances.page.toast.instanceSaved":`Instancia guardada`,"settings.remoteInstances.page.toast.instanceCreated":`Instancia creada`,"settings.remoteInstances.page.toast.destinationRequired":`Se requiere destino`,"settings.remoteInstances.page.toast.noLogsToCopy":`No hay registros para copiar`,"settings.remoteInstances.page.toast.logsCopied":`Registros copiados`,"settings.remoteInstances.page.toast.logsCleared":`Registros eliminados`,"settings.remoteInstances.page.toast.clearLogsFailed":`No se pudieron eliminar los registros`,"settings.remoteInstances.page.toast.instanceUrlUnavailable":`La URL de la instancia no está disponible`,"settings.remoteInstances.page.toast.connectFailed":`No se pudo conectar con la instancia`,"settings.remoteInstances.page.toast.cancelConnectionFailed":`No se pudo cancelar la conexión`,"settings.remoteInstances.page.toast.disconnectFailed":`No se pudo desconectar la instancia`,"settings.remoteInstances.page.toast.retryFailed":`No se pudo reintentar la conexión`,"settings.remoteInstances.page.toast.instanceRemoved":`Instancia eliminada`,"settings.remoteInstances.page.toast.removeInstanceFailed":`No se pudo eliminar la instancia`,"settings.openchamber.worktrees.state.selectProject":`Selecciona un proyecto para gestionar worktrees.`,"settings.openchamber.worktrees.state.gitOnly":`La configuración de worktree solo está disponible para repositorios Git.`,"settings.openchamber.worktrees.setup.title":`Comandos de configuración`,"settings.openchamber.worktrees.setup.tooltipPrefix":`Ejecútalo automáticamente dentro del directorio del nuevo worktree cuando se crea un worktree. Usa`,"settings.openchamber.worktrees.setup.tooltipSuffix":`para la raíz del proyecto.`,"settings.openchamber.worktrees.setup.loading":`Cargando...`,"settings.openchamber.worktrees.setup.commandPlaceholder":`ej.: bun install`,"settings.openchamber.worktrees.setup.removeCommandAria":`Eliminar comando`,"settings.openchamber.worktrees.setup.addCommand":`Añadir comando`,"settings.openchamber.worktrees.setup.waitForCommands":`Esperar a que terminen los comandos de configuración antes de crear o enviar una sesión`,"settings.openchamber.worktrees.setup.waitForCommandsAria":`Esperar los comandos de configuración de Worktree antes de crear o enviar una sesión`,"settings.openchamber.worktrees.setup.toast.saveFailed":`Error al guardar los comandos de configuración del worktree`,"settings.openchamber.worktrees.list.title":`Worktrees existentes`,"settings.openchamber.worktrees.list.tooltip":`Los worktrees existen fuera del repositorio (gestionados por OpenCode). Eliminar un worktree también elimina las sesiones vinculadas.`,"settings.openchamber.worktrees.list.loading":`Cargando worktrees...`,"settings.openchamber.worktrees.list.empty":`No se encontraron worktrees para este proyecto`,"settings.openchamber.worktrees.list.detachedHead":`HEAD desvinculado`,"settings.openchamber.worktrees.list.deleteWorktreeAria":`Eliminar worktree {name}`,"settings.agents.modelSelector.title":`Seleccionar modelo`,"settings.agents.modelSelector.searchPlaceholder":`Buscar modelos`,"settings.agents.modelSelector.selectPlaceholder":`Seleccionar modelo...`,"settings.agents.modelSelector.notSelected":`No seleccionado`,"settings.agents.modelSelector.noModelOptional":`Sin modelo (opcional)`,"settings.agents.modelSelector.section.favorites":`Favoritos`,"settings.agents.modelSelector.section.recents":`Recientes`,"settings.agents.modelSelector.section.recent":`Reciente`,"settings.agents.modelSelector.badge.current":`Actual`,"settings.agents.modelSelector.actions.favorite":`Favorito`,"settings.agents.modelSelector.actions.unfavorite":`No favorito`,"settings.agents.modelSelector.actions.addToFavorites":`Añadir a favoritos`,"settings.agents.modelSelector.actions.removeFromFavorites":`Eliminar de favoritos`,"settings.agents.modelSelector.state.noModelsFound":`No se encontraron modelos`,"settings.agents.modelSelector.keyboardHints":`↑↓ navegar • Enter seleccionar • Esc cerrar`,"settings.providers.sidebar.title":`Proveedores`,"settings.providers.sidebar.total":`Total {count}`,"settings.providers.sidebar.actions.connectProviderAria":`Conectar proveedor`,"settings.providers.sidebar.actions.connectProviderTitle":`Conectar proveedor`,"settings.providers.sidebar.empty.title":`No se encontraron proveedores`,"settings.providers.sidebar.empty.description":`Revisa tu configuración de OpenCode`,"settings.providers.sidebar.section.userProviders":`Proveedores de usuario`,"settings.providers.sidebar.section.projectProviders":`Proveedores del proyecto`,"settings.providers.page.state.loading":`Cargando...`,"settings.providers.page.state.unableToLoadProviderList":`No se pudo cargar la lista de proveedores`,"settings.providers.page.empty.noProvidersDetected":`No se detectaron proveedores`,"settings.providers.page.empty.checkOpenCodeConfiguration":`Revisa tu configuración de OpenCode`,"settings.providers.page.empty.selectProviderFromSidebar":`Selecciona un proveedor desde el panel lateral`,"settings.providers.page.empty.reviewDetailsAndConfigureAuth":`Revisa los detalles y configura la autenticación`,"settings.providers.page.connect.title":`Conectar proveedor`,"settings.providers.page.connect.selectProviderTitle":`Seleccionar proveedor`,"settings.providers.page.connect.providerField":`Proveedor`,"settings.providers.page.connect.selectProviderPlaceholder":`Seleccionar proveedor`,"settings.providers.page.connect.searchProvidersPlaceholder":`Buscar...`,"settings.providers.page.connect.noProvidersFound":`No se encontraron proveedores`,"settings.providers.page.connect.allProvidersConnected":`Todos los proveedores están conectados.`,"settings.providers.page.auth.title":`Autenticación`,"settings.providers.page.auth.loadingMethods":`Cargando métodos de autenticación...`,"settings.providers.page.auth.apiKeyLabel":`Clave API`,"settings.providers.page.auth.apiKeyTooltip":`Las claves se envían directamente a OpenCode y nunca se almacenan en OpenChamber.`,"settings.providers.page.auth.apiKeyPlaceholder":`sk-...`,"settings.providers.page.auth.oauthMethodFallback":`Método OAuth {index}`,"settings.providers.page.auth.pasteAuthorizationCodePlaceholder":`Pegar código de autorización`,"settings.providers.page.auth.connected":`Conectado`,"settings.providers.page.auth.useReconnectHint":`· Usar Reconnect para actualizar credenciales`,"settings.providers.page.connectionDetails.title":`Detalles de conexión`,"settings.providers.page.connectionDetails.configuredIn":`Configurado en:`,"settings.providers.page.connectionDetails.noActiveSource":`No hay fuente de configuración activa`,"settings.providers.page.connectionDetails.source.authCredentials":`credenciales de autenticación`,"settings.providers.page.connectionDetails.source.userConfig":`configuración del usuario`,"settings.providers.page.connectionDetails.source.projectConfig":`configuración del proyecto`,"settings.providers.page.connectionDetails.source.customConfig":`configuración personalizada`,"settings.providers.page.models.title":`Modelos disponibles`,"settings.providers.page.models.filterPlaceholder":`Filtrar modelos...`,"settings.providers.page.models.noModelsMatchFilter":`No hay modelos que coincidan con este filtro.`,"settings.providers.page.models.capability.toolCalling":`Uso de herramientas`,"settings.providers.page.models.capability.reasoning":`Razonamiento`,"settings.providers.page.models.capability.imageInput":`Entrada de imagen`,"settings.providers.page.models.tokenBadge.context":`ctx`,"settings.providers.page.models.tokenBadge.output":`out`,"settings.providers.page.models.actions.hideModelFromSelectors":`Ocultar modelo en selectores`,"settings.providers.page.models.actions.showModelInSelectors":`Mostrar modelo en selectores`,"settings.providers.page.models.actions.hideModel":`Ocultar modelo`,"settings.providers.page.models.actions.showModel":`Mostrar modelo`,"settings.providers.page.actions.saving":`Guardando...`,"settings.providers.page.actions.saveKey":`Guardar clave`,"settings.providers.page.actions.connect":`Conectar`,"settings.providers.page.actions.copyCode":`Copiar código`,"settings.providers.page.actions.open":`Abrir`,"settings.providers.page.actions.copy":`Copiar`,"settings.providers.page.actions.complete":`Completar`,"settings.providers.page.actions.hide":`Ocultar`,"settings.providers.page.actions.reconnect":`Reconectar`,"settings.providers.page.actions.disconnecting":`Desconectando...`,"settings.providers.page.actions.disconnect":`Desconectar`,"settings.providers.page.actions.hideAll":`Ocultar todo`,"settings.providers.page.actions.showAll":`Mostrar todo`,"settings.providers.page.toast.authMethodsLoadFailed":`No se pudo cargar los métodos de autenticación del proveedor`,"settings.providers.page.toast.providerSourcesLoadFailed":`No se pudo cargar las fuentes del proveedor`,"settings.providers.page.toast.apiKeyRequired":`Se requiere una clave API`,"settings.providers.page.toast.apiKeySaveFailed":`No se pudo guardar la clave API`,"settings.providers.page.toast.apiKeySaved":`Clave API guardada`,"settings.providers.page.toast.oauthStartFailed":`No se pudo iniciar el flujo OAuth`,"settings.providers.page.toast.oauthDetailsMissing":`No se devolvieron detalles de OAuth`,"settings.providers.page.toast.completeOAuthInBrowser":`Completa el flujo OAuth en tu navegador`,"settings.providers.page.toast.oauthCompleteFailed":`No se pudo completar el flujo OAuth`,"settings.providers.page.toast.oauthCompleted":`Conexión OAuth completada`,"settings.providers.page.toast.oauthLinkCopied":`Enlace de OAuth copiado`,"settings.providers.page.toast.oauthLinkCopyFailed":`No se pudo copiar el enlace de OAuth`,"settings.providers.page.toast.deviceCodeCopied":`Código de dispositivo copiado`,"settings.providers.page.toast.deviceCodeCopyFailed":`No se pudo copiar el código de dispositivo`,"settings.providers.page.toast.providerDisconnected":`Proveedor desconectado`,"settings.providers.page.toast.providerDisconnectFailed":`No se pudo desconectar el proveedor`,"settings.mcp.page.empty.selectServer":`Selecciona un servidor MCP desde el panel lateral`,"settings.mcp.page.empty.addNewOne":`o añade uno nuevo`,"settings.mcp.page.header.newServer":`Nuevo servidor MCP`,"settings.mcp.page.header.configureNewServer":`Configurar un nuevo servidor MCP`,"settings.mcp.page.header.transport":`{type} transporte`,"settings.mcp.page.transport.local":`Local · stdio`,"settings.mcp.page.transport.remote":`Remoto · SSE`,"settings.mcp.page.status.label.connected":`Conectado`,"settings.mcp.page.status.label.failed":`Fallido`,"settings.mcp.page.status.label.needsAuth":`Necesita autenticación`,"settings.mcp.page.status.label.needsRegistration":`Necesita registro`,"settings.mcp.page.status.description.connected":`Conectado y listo para que OpenCode descubra herramientas y recursos.`,"settings.mcp.page.status.description.failedDefault":`OpenCode no pudo alcanzar este servidor MCP.`,"settings.mcp.page.status.description.needsAuth":`Este servidor MCP remoto requiere autorización antes de poder conectarse.`,"settings.mcp.page.status.description.needsClientRegistrationDefault":`Este servidor MCP remoto requiere registro del cliente antes de completar la autorización.`,"settings.mcp.page.status.description.disabled":`Este servidor MCP está desactivado en la configuración.`,"settings.mcp.page.status.description.default":`Actualiza o prueba la conexión para cargar el estado de ejecución en tiempo real.`,"settings.mcp.page.status.runtimeStatus":`Estado de ejecución`,"settings.mcp.page.status.projectScopedTo":`Alcance del proyecto: {directory}`,"settings.mcp.page.status.userScoped":`Configuración de alcance del usuario`,"settings.mcp.page.status.activeProject":`el proyecto activo`,"settings.mcp.page.actions.connect":`Conectar`,"settings.mcp.page.actions.disconnect":`Desconectar`,"settings.mcp.page.actions.authorize":`Autorizar`,"settings.mcp.page.actions.reauthorize":`Reautorizar`,"settings.mcp.page.actions.clearAuth":`Limpiar autenticación`,"settings.mcp.page.actions.test":`Probar`,"settings.mcp.page.actions.testConnection":`Probar conexión`,"settings.mcp.page.actions.working":`Trabajando...`,"settings.mcp.page.actions.starting":`Iniciando...`,"settings.mcp.page.actions.clearing":`Limpiando...`,"settings.mcp.page.actions.testing":`Probando...`,"settings.mcp.page.actions.completing":`Completando...`,"settings.mcp.page.actions.completeAuthorization":`Completar autorización`,"settings.mcp.page.actions.openInBrowser":`Abrir en el navegador`,"settings.mcp.page.actions.copyLink":`Copiar enlace`,"settings.mcp.page.actions.deleting":`Eliminando…`,"settings.mcp.page.auth.authorizationUrl":`URL de autorización`,"settings.mcp.page.auth.manualFallbackTitle":`Autenticación manual alternativa`,"settings.mcp.page.auth.manualFallbackDescription":`Si el navegador vuelve a una máquina diferente o muestra una URL de callback con un código, pega esa URL completa o el código sin formato aquí.`,"settings.mcp.page.auth.callbackInputPlaceholder":`Pega la URL de callback o el código de autorización`,"settings.mcp.page.auth.waitingForOpenCode":`Esperando a que OpenCode observe el flujo de autorización completado por el navegador...`,"settings.mcp.page.server.title":`Servidor`,"settings.mcp.page.server.name":`Nombre del servidor`,"settings.mcp.page.server.namePlaceholder":`my-mcp-server`,"settings.mcp.page.server.importJson":`Importar desde un fragmento JSON`,"settings.mcp.page.server.importJsonTitle":`Importa una configuración completa del servidor MCP desde un fragmento JSON`,"settings.mcp.page.server.enable":`Habilitar servidor`,"settings.mcp.page.server.enableAria":`Habilitar servidor`,"settings.mcp.page.server.transportMode":`Modo de transporte`,"settings.mcp.page.connection.command":`Comando`,"settings.mcp.page.connection.serverUrl":`URL del servidor`,"settings.mcp.page.connection.serverUrlPlaceholder":`https://mcp.example.com/mcp`,"settings.mcp.page.connection.pasteCommand":`Pegar comando`,"settings.mcp.page.connection.pasteCommandTitle":`Pega un comando local desde el portapapeles y divídelo automáticamente`,"settings.mcp.page.connection.previewArgs":`Vista previa ({count} argumentos)`,"settings.mcp.page.advanced.title":`Opciones remotas avanzadas`,"settings.mcp.page.advanced.configure":`Configurar opciones avanzadas`,"settings.mcp.page.advanced.autoDetect":`Detectar automáticamente`,"settings.mcp.page.advanced.custom":`Personalizado`,"settings.mcp.page.advanced.headers":`encabezados`,"settings.mcp.page.advanced.timeoutMs":`Tiempo de espera (ms)`,"settings.mcp.page.advanced.timeoutHint":`Dejar en blanco para usar el tiempo de espera predeterminado de OpenCode para MCP.`,"settings.mcp.page.advanced.requestHeaders":`Encabezados de solicitud`,"settings.mcp.page.advanced.headerNamePlaceholder":`Header-Name`,"settings.mcp.page.advanced.pasteHeaders":`Pegar encabezados`,"settings.mcp.page.advanced.pasteHeadersTitle":`Pega líneas KEY=VALUE de encabezados desde el portapapeles`,"settings.mcp.page.advanced.oauthAutoDetection":`Habilitar detección automática de OAuth`,"settings.mcp.page.advanced.oauthAutoDetectionAria":`Habilitar detección automática de OAuth`,"settings.mcp.page.advanced.oauthClientIdPlaceholder":`OAuth client ID`,"settings.mcp.page.advanced.oauthClientSecretPlaceholder":`OAuth client secret`,"settings.mcp.page.advanced.oauthScopesPlaceholder":`Scopes (separados por espacios)`,"settings.mcp.page.advanced.oauthRedirectUriPlaceholder":`Redirect URI`,"settings.mcp.page.advanced.oauthHint":`Dejar estos campos en blanco para que OpenCode infiera automáticamente la configuración de OAuth del servidor MCP.`,"settings.mcp.page.advanced.oauthCallbackHint":`La autorización basada en el navegador utiliza esta URL de callback cuando el Redirect URI está en blanco:`,"settings.mcp.page.env.title":`Variables de entorno`,"settings.mcp.page.env.key":`Clave`,"settings.mcp.page.env.value":`Valor`,"settings.mcp.page.env.valuePlaceholder":`valor`,"settings.mcp.page.env.hide":`Ocultar`,"settings.mcp.page.env.show":`Mostrar`,"settings.mcp.page.env.addVariable":`Añadir variable`,"settings.mcp.page.env.addEnvironmentVariable":`Añadir variable de entorno`,"settings.mcp.page.env.keyPlaceholder":`API_KEY`,"settings.mcp.page.env.pasteEnv":`Pegar .env`,"settings.mcp.page.env.pasteEnvTitle":`Pega líneas KEY=VALUE desde el portapapeles`,"settings.mcp.page.env.plainTextWarning":`⚠ Los valores se almacenan como texto plano en opencode.json`,"settings.mcp.page.env.removeVariableAria":`Eliminar variable`,"settings.mcp.page.importDialog.title":`Importar fragmento JSON`,"settings.mcp.page.importDialog.description":`Pega un fragmento completo de JSON MCP desde documentos u otro archivo de configuración. Los valores leídos llenarán este formulario para revisión antes de guardar.`,"settings.mcp.page.importDialog.pasteFromClipboard":`Pegar JSON desde el portapapeles`,"settings.mcp.page.deleteDialog.title":`Eliminar "{name}"?`,"settings.mcp.page.deleteDialog.descriptionPrefix":`Esto elimina el servidor de`,"settings.mcp.page.deleteDialog.descriptionSuffix":`OpenCode necesitará recargar.`,"settings.mcp.page.toast.clipboardReadFailed":`No se puede leer el portapapeles`,"settings.mcp.page.toast.configImported":`Configuración MCP importada`,"settings.mcp.page.toast.nameRequired":`Se requiere un nombre`,"settings.mcp.page.toast.serverNameExists":`Ya existe un servidor con este nombre`,"settings.mcp.page.toast.localCommandRequired":`El comando no puede estar vacío para un servidor local`,"settings.mcp.page.toast.remoteUrlRequired":`La URL no puede estar vacía para un servidor remoto`,"settings.mcp.page.toast.serverCreatedReloadFailed":`Servidor MCP creado, pero OpenCode no pudo recargar.`,"settings.mcp.page.toast.savedReloadFailed":`Guardado, pero OpenCode no pudo recargar.`,"settings.mcp.page.toast.retryRefreshHint":`Vuelve a actualizar o vuelve a abrir Configuración antes de autorizar este servidor.`,"settings.mcp.page.toast.serverCreatedReloading":`Servidor MCP creado. OpenCode recargando…`,"settings.mcp.page.toast.savedReloading":`Guardado. OpenCode recargando…`,"settings.mcp.page.toast.saveFailed":`No se pudo guardar`,"settings.mcp.page.toast.unexpectedError":`Ocurrió un error`,"settings.mcp.page.toast.serverDeletedReloadFailed":`"{name}" eliminado, pero OpenCode no pudo recargar`,"settings.mcp.page.toast.refreshListIfStale":`Actualiza la lista de MCP si la interfaz parece desactualizada.`,"settings.mcp.page.toast.serverDeleted":`"{name}" eliminado`,"settings.mcp.page.toast.deleteFailed":`No se pudo eliminar`,"settings.mcp.page.toast.disconnected":`Desconectado`,"settings.mcp.page.toast.connected":`Conectado`,"settings.mcp.page.toast.connectionNeedsAuthorization":`La conexión requiere autorización`,"settings.mcp.page.toast.connectionNeedsClientRegistration":`La conexión requiere registro del cliente`,"settings.mcp.page.toast.connectionFailed":`Error de conexión`,"settings.mcp.page.toast.connectionAttemptFinished":`Intento de conexión finalizado. Refresca el estado para más detalles.`,"settings.mcp.page.toast.createServerBeforeLiveActions":`Crea el servidor antes de ejecutar acciones en vivo`,"settings.mcp.page.toast.saveBeforeLiveActions":`Guarda los cambios antes de ejecutar acciones en tiempo real`,"settings.mcp.page.toast.refreshStatusFailed":`No se pudo actualizar el estado de MCP`,"settings.mcp.page.toast.oauthRedirectUrlBuildFailed":`No se pudo construir la URL de redirección de OAuth de MCP`,"settings.mcp.page.toast.oauthBrowserCallbackSaveFailed":`No se pudo guardar la URL de callback del navegador para la autorización de MCP`,"settings.mcp.page.toast.openCodeReloadFailedAfterCallbackSave":`No se pudo recargar OpenCode después de guardar la URL de callback del navegador`,"settings.mcp.page.toast.completeAuthorizationInBrowserWithPaste":`Completa el flujo de autorización de MCP en tu navegador, luego pega el código o URL de callback devuelto aquí`,"settings.mcp.page.toast.completeAuthorizationInBrowser":`Completa el flujo de autorización de MCP en tu navegador`,"settings.mcp.page.toast.openAuthorizationUrlFailed":`No se pudo abrir la URL de autorización automáticamente`,"settings.mcp.page.toast.authorizationStartFailed":`No se pudo iniciar la autorización`,"settings.mcp.page.toast.authSessionExpired":`La sesión de autorización expiró o fue eliminada durante el reinicio. Haz clic en Autorizar nuevamente.`,"settings.mcp.page.toast.savedAuthorizationRemoved":`La autorización guardada de MCP fue eliminada`,"settings.mcp.page.toast.clearAuthorizationFailed":`No se pudo limpiar la autorización`,"settings.mcp.page.toast.authorizationUrlCopied":`URL de autorización copiada`,"settings.mcp.page.toast.authorizationUrlCopyFailed":`No se pudo copiar la URL de autorización`,"settings.mcp.page.toast.pasteCallbackOrCodeFirst":`Pega primero la URL de callback o el código de autorización`,"settings.mcp.page.toast.missingServerDetails":`Detalles del servidor MCP faltantes. Selecciona el servidor nuevamente o pega la URL completa de callback.`,"settings.mcp.page.toast.authorizationCompleted":`Autorización de MCP completada`,"settings.mcp.page.toast.authorizationCompletedFor":`Autorización de MCP completada para {name}`,"settings.mcp.page.toast.authorizationCompleteFailed":`No se pudo completar la autorización de MCP`,"settings.mcp.page.toast.enableServerBeforeTest":`Habilita este servidor antes de probar la conexión`,"settings.mcp.page.toast.connectionTestSucceeded":`Prueba de conexión correcta`,"settings.mcp.page.toast.connectionTestFailed":`No se pudo probar la conexión`,"settings.mcp.page.toast.connectionTestFinished":`Prueba de conexión finalizada. Actualiza el estado para ver detalles.`,"settings.mcp.page.toast.authorizationFailed":`No se pudo autorizar`,"settings.mcp.page.toast.authorizationStillInProgress":`La autorización aún está en progreso en tu navegador. Pega la URL de callback o el código si es necesario.`,"settings.mcp.page.toast.noKeyValuePairsFound":`No se encontraron pares KEY=VALUE en el portapapeles`,"settings.mcp.page.toast.importedVariablesCount":`Variables importadas: {count}`,"settings.mcp.page.toast.pastedArgumentsCount":`Argumentos pegados: {count}`,"settings.shared.projectSelector.fallbackProject":`Proyecto`,"settings.shared.projectSelector.switchProjectAria":`Cambiar proyecto`,"settings.shared.projectSelector.switchProjectTitle":`Cambiar proyecto`,"settings.openchamber.defaults.title":`Configuración por defecto`,"settings.openchamber.defaults.summaryPrefix":`Las nuevas sesiones comenzarán con:`,"settings.openchamber.defaults.summaryOpenCodeDefault":`Agente OpenCode por defecto`,"settings.openchamber.defaults.field.defaultModel":`Modelo por defecto`,"settings.openchamber.defaults.field.defaultThinking":`Pensamiento por defecto`,"settings.openchamber.defaults.field.thinkingPlaceholder":`Pensando`,"settings.openchamber.defaults.field.defaultAgent":`Agente por defecto`,"settings.openchamber.defaults.field.showDeletionDialogAria":`Mostrar diálogo de eliminación`,"settings.openchamber.defaults.smallModel.title":`Modelo pequeño`,"settings.openchamber.defaults.smallModel.description":`Un modelo económico para tareas utilitarias rápidas, como recapitulaciones y resúmenes breves.`,"settings.openchamber.defaults.smallModel.useDefault":`Usar el modelo pequeño predeterminado`,"settings.openchamber.defaults.smallModel.useDefaultAria":`Usar el modelo pequeño predeterminado`,"settings.openchamber.defaults.smallModel.overrideModel":`Modelo de anulación`,"settings.openchamber.defaults.summary.title":`Resúmenes de IA`,"settings.openchamber.defaults.summary.description":`Configura la generación de mensajes de commit y las actualizaciones automáticas de títulos de sesión.`,"settings.openchamber.defaults.summary.modelSourceAria":`Fuente del modelo de resúmenes`,"settings.openchamber.defaults.summary.modelSourceTitle":`Fuente del modelo`,"settings.openchamber.defaults.summary.provider":`Proveedor de OpenCode`,"settings.openchamber.defaults.summary.providerDescription":`Usa un proveedor de OpenCode autenticado y muestra los modelos que el servicio de resúmenes puede llamar.`,"settings.openchamber.defaults.summary.custom":`API personalizada compatible con OpenAI`,"settings.openchamber.defaults.summary.customDescription":`Llama directamente a tu Base URL con el ID del modelo y el token de API indicados abajo.`,"settings.openchamber.defaults.summary.providerUnavailable":`Conecta un proveedor compatible para seleccionar un modelo.`,"settings.openchamber.defaults.summary.providerModel":`Modelo del proveedor`,"settings.openchamber.defaults.summary.baseUrl":`Base URL`,"settings.openchamber.defaults.summary.baseUrlPlaceholder":`https://api.example.com/v1`,"settings.openchamber.defaults.summary.modelId":`ID del modelo`,"settings.openchamber.defaults.summary.modelIdPlaceholder":`gpt-4.1-mini`,"settings.openchamber.defaults.summary.apiToken":`Token de API`,"settings.openchamber.defaults.summary.apiTokenStored":`Token guardado. Introduce un valor para reemplazarlo.`,"settings.openchamber.defaults.summary.apiTokenPlaceholder":`Introduce el token de API`,"settings.openchamber.defaults.summary.clearToken":`Borrar token`,"settings.openchamber.defaults.summary.promptTitle":`Prompts de funciones`,"settings.openchamber.defaults.summary.promptDescription":`Estas instrucciones afectan los mensajes de commit generados y los títulos de sesión automáticos.`,"settings.openchamber.defaults.summary.commitPrompt":`Prompt de commit`,"settings.openchamber.defaults.summary.commitPromptDescription":`Controla la generación del mensaje de commit a partir de los archivos preparados seleccionados.`,"settings.openchamber.defaults.summary.commitPromptPlaceholder":`Déjalo vacío para usar el prompt de commit integrado.`,"settings.openchamber.defaults.summary.sessionTitlePrompt":`Prompt de título de sesión`,"settings.openchamber.defaults.summary.sessionTitlePromptDescription":`Controla los títulos generados cuando una sesión nueva queda inactiva por primera vez (los forks también se actualizan tras su primer mensaje nuevo). Los turnos posteriores no se actualizan solos; renombra o usa el título inteligente manualmente.`,"settings.openchamber.defaults.summary.sessionTitlePromptPlaceholder":`Déjalo vacío para usar el prompt de título integrado.`,"settings.openchamber.defaults.summary.save":`Guardar ajustes de resumen`,"settings.openchamber.defaults.field.showDeletionDialog":`Mostrar diálogo de eliminación`,"settings.openchamber.defaults.field.openFilesPreviewAria":`Abrir archivos previsualizables en modo vista previa`,"settings.openchamber.defaults.field.openFilesPreview":`Abrir archivos previsualizables en modo vista previa`,"settings.openchamber.defaults.option.default":`Predeterminado`,"settings.openchamber.defaults.option.defaultLowercase":`default`,"settings.openchamber.git.title":`Preferencias de Git`,"settings.openchamber.git.changesViewTitle":`Vista de cambios`,"settings.openchamber.git.changesViewAria":`Modo de vista de cambios de Git`,"settings.openchamber.git.option.flatList":`Lista plana`,"settings.openchamber.git.option.treeView":`Vista en árbol`,"settings.openchamber.git.optionAria":`Modo de vista de cambios de Git: {option}`,"settings.openchamber.git.enableGitmojiAria":`Habilitar selector de Gitmoji`,"settings.openchamber.git.enableGitmoji":`Habilitar selector de Gitmoji`,"settings.openchamber.git.showGitignoredAria":`Mostrar archivos gitignored`,"settings.openchamber.git.showGitignored":`Mostrar archivos ignorados por Git`,"settings.github.page.tooltip.connectAccount":`Conecta una cuenta de GitHub para flujos de trabajo de PR e issue dentro de la aplicación.`,"settings.github.page.avatarAlt.withLogin":`Avatar de {login}`,"settings.github.page.avatarAlt.fallback":`Avatar de GitHub`,"settings.github.page.label.unknownUser":`desconocido`,"settings.github.page.label.scopes":`Alcances: {value}`,"settings.github.page.label.otherAccounts":`Cuentas adicionales`,"settings.github.page.accountSource.oauth":`OAuth`,"settings.github.page.accountSource.cli":`CLI`,"settings.github.page.actions.disconnect":`Desconectar`,"settings.github.page.actions.connect":`Conectar GitHub`,"settings.github.page.actions.switchTo":`Cambiar a`,"settings.github.page.actions.addAccount":`Añadir cuenta`,"settings.github.page.actions.openGithub":`Abrir GitHub`,"settings.github.page.status.notConnected":`No conectado`,"settings.github.page.status.active":`Activo`,"settings.github.page.flow.title":`Autorizar OpenChamber`,"settings.github.page.flow.description":`En GitHub, ingresa el siguiente código para autorizar este dispositivo:`,"settings.github.page.flow.waiting":`Esperando aprobación… (actualización automática)`,"settings.github.page.toast.startConnectFailed":`No se pudo iniciar la conexión de GitHub`,"settings.github.page.toast.connected":`Conexión con GitHub establecida`,"settings.github.page.toast.authorizationFailed":`No se pudo autorizar en GitHub`,"settings.github.page.toast.disconnected":`Desconectado de GitHub`,"settings.github.page.toast.disconnectFailed":`No se pudo desconectar de GitHub`,"settings.github.page.toast.accountSwitched":`Cuenta de GitHub cambiada`,"settings.github.page.toast.accountSwitchFailed":`No se pudo cambiar de cuenta de GitHub`,"settings.github.page.oauth.title":`Token OAuth de GitHub`,"settings.github.page.ghCli.title":`Token CLI de GitHub`,"settings.github.page.ghCli.activeDescription":`Autenticado a través de gh CLI`,"settings.github.page.ghCli.fallbackDescription":`Disponible como respaldo si se elimina la autenticación de OpenChamber`,"settings.github.page.ghCli.disabledDescription":`Instalado pero no usado como respaldo`,"settings.github.page.ghCli.actions.disable":`Desactivar`,"settings.github.page.ghCli.actions.enable":`Activar`,"settings.github.page.toast.ghCliEnabled":`Respaldo de gh CLI activado`,"settings.github.page.toast.ghCliDisabled":`Respaldo de gh CLI desactivado`,"settings.github.page.toast.ghCliUpdateFailed":`No se pudo actualizar la configuración de gh CLI`,"settings.notifications.page.delivery.title":`Entrega de notificaciones`,"settings.notifications.page.delivery.enableAria":`Habilitar notificaciones`,"settings.notifications.page.delivery.enableLabel":`Habilitar notificaciones`,"settings.notifications.page.delivery.focusedAria":`Notificar mientras la aplicación esté en foco`,"settings.notifications.page.delivery.focusedLabel":`Notificar mientras la aplicación está en foco`,"settings.notifications.page.delivery.testAction":`Enviar notificación de prueba`,"settings.notifications.page.delivery.browserPermissionHint":`Tu navegador puede solicitar permiso la primera vez.`,"settings.notifications.page.delivery.permissionDenied":`Permiso para notificaciones denegado. Actívalo en la configuración de tu navegador.`,"settings.notifications.page.delivery.permissionGrantedButDisabled":`Permiso concedido, pero las notificaciones están desactivadas.`,"settings.notifications.page.delivery.vscodeHint":`Cuando esté activado, las notificaciones se entregan a través de notificaciones nativas de VS Code.`,"settings.notifications.page.events.title":`Eventos de notificaciones`,"settings.notifications.page.events.completionAria":`Completado del agente`,"settings.notifications.page.events.completionLabel":`Finalización del agente`,"settings.notifications.page.events.subtaskAria":`Completado del subagente`,"settings.notifications.page.events.subtaskLabel":`Finalización del subagente`,"settings.notifications.page.events.errorAria":`Errores del agente`,"settings.notifications.page.events.errorLabel":`Errores del agente`,"settings.notifications.page.events.questionAria":`Preguntas del agente`,"settings.notifications.page.events.questionLabel":`Preguntas del agente`,"settings.notifications.page.template.title":`Plantillas de notificaciones`,"settings.notifications.page.template.variablesLabel":`Variables:`,"settings.notifications.page.template.event.completion":`completion`,"settings.notifications.page.template.event.subtask":`Finalización del subagente`,"settings.notifications.page.template.event.error":`error`,"settings.notifications.page.template.event.question":`question`,"settings.notifications.page.template.field.title":`Título`,"settings.notifications.page.template.field.message":`Mensaje`,"settings.notifications.page.template.defaults.completion.title":`{agent_name} está listo`,"settings.notifications.page.template.defaults.completion.message":`{model_name} completó la tarea`,"settings.notifications.page.template.defaults.error.title":`Error de herramienta`,"settings.notifications.page.template.defaults.error.message":`{last_message}`,"settings.notifications.page.template.defaults.question.title":`Entrada necesaria`,"settings.notifications.page.template.defaults.question.message":`{last_message}`,"settings.notifications.page.template.defaults.subtask.title":`{agent_name} está listo`,"settings.notifications.page.template.defaults.subtask.message":`{model_name} completó la tarea`,"settings.notifications.page.summary.title":`Resumen de IA`,"settings.notifications.page.summary.toggleAria":`Resumir el último mensaje`,"settings.notifications.page.summary.toggleLabel":`Resumir último mensaje`,"settings.notifications.page.summary.requiresTemplateVariable":`Requiere`,"settings.notifications.page.summary.modelLabel":`Modelo de resumen`,"settings.notifications.page.summary.modelTooltip":`Usado para resúmenes de notificaciones y voz.`,"settings.notifications.page.summary.notSelected":`No seleccionado`,"settings.notifications.page.summary.thresholdLabel":`Umbral`,"settings.notifications.page.summary.thresholdHint":`Mensajes más largos que este serán resumidos`,"settings.notifications.page.summary.resetThresholdAria":`Restablecer umbral`,"settings.notifications.page.summary.lengthLabel":`Longitud`,"settings.notifications.page.summary.lengthHint":`Longitud objetivo del resumen en caracteres`,"settings.notifications.page.summary.resetLengthAria":`Restablecer longitud del resumen`,"settings.notifications.page.summary.maxLengthLabel":`Longitud máxima`,"settings.notifications.page.summary.maxLengthHint":`Acortar {last_message} a esta longitud`,"settings.notifications.page.summary.resetMaxLengthAria":`Restablecer longitud máxima del mensaje`,"settings.notifications.page.push.title":`Notificaciones en segundo plan`,"settings.notifications.page.push.enableAria":`Habilitar notificaciones de fondo`,"settings.notifications.page.push.enableLabel":`Habilitar notificaciones en segundo plan`,"settings.notifications.page.push.unsupportedHint":`Las notificaciones en segundo plan no son compatibles. Chrome/Edge de escritorio y Android admiten push. iOS requiere una PWA instalada.`,"settings.notifications.page.push.supportedHint":`Recibe alertas a través del servicio en segundo plan de su sistema operativo`,"settings.notifications.page.push.loadingAria":`Cargando`,"settings.notifications.page.toast.permissionDenied.title":`Permiso para notificaciones denegado`,"settings.notifications.page.toast.permissionDenied.description":`Por favor, habilita las notificaciones en la configuración de tu navegador.`,"settings.notifications.page.toast.permissionDenied.enableInBrowser":`Habilita las notificaciones en la configuración de tu navegador.`,"settings.notifications.page.toast.requestPermissionFailed":`No se pudo solicitar permiso para notificaciones`,"settings.notifications.page.toast.notificationsApiUnavailable":`API de notificaciones no disponible`,"settings.notifications.page.toast.testNotificationSent":`Notificación de prueba enviada con éxito`,"settings.notifications.page.toast.testNotificationFailed":`No se pudo enviar la notificación de prueba`,"settings.notifications.page.toast.pushUnsupported":`Las notificaciones en segundo plan no son compatibles`,"settings.notifications.page.toast.pushApiUnavailable":`API de push no disponible`,"settings.notifications.page.toast.pushKeyLoadFailed":`No se pudo cargar la clave de push`,"settings.notifications.page.toast.enableBackgroundFailed":`No se pudo habilitar notificaciones de fondo`,"settings.notifications.page.toast.backgroundEnabled":`Notificaciones de fondo habilitadas`,"settings.notifications.page.toast.backgroundDisabled":`Notificaciones de fondo deshabilitadas`,"settings.notifications.page.testNotification.title":`Notificación de prueba`,"settings.notifications.page.testNotification.body":`Esta es una notificación de prueba de OpenChamber.`,"settings.voice.page.section.speechRecognition":`Reconocimiento de voz`,"settings.voice.page.field.enableVoiceInput":`Habilitar entrada de voz`,"settings.voice.page.field.enableVoiceInputAria":`Habilitar entrada de voz (dictado)`,"settings.voice.page.section.playbackAndSummary":`Reproducción`,"settings.voice.page.field.provider":`Proveedor`,"settings.voice.page.provider.browser":`Navegador`,"settings.voice.page.provider.custom":`Personalizado`,"settings.voice.page.provider.say":`Decir`,"settings.voice.page.provider.server":`Servidor`,"settings.voice.page.provider.local":`Local`,"settings.voice.page.tooltip.sttLocal":`Transcripción local en el servidor de OpenChamber. Los modelos se descargan automáticamente; no se necesita clave de API.`,"settings.voice.page.tooltip.localTts":`Síntesis local en el servidor de OpenChamber (Kokoro, inglés). El modelo se descarga automáticamente; no se necesita clave de API.`,"settings.voice.page.stt.model.parakeetV2":`Parakeet v2 (inglés)`,"settings.voice.page.stt.model.parakeetV3":`Parakeet v3 (25 idiomas europeos)`,"settings.voice.page.stt.model.whisperBase":`Whisper base (multilingüe)`,"settings.voice.page.stt.model.whisperTiny":`Whisper tiny (multilingüe)`,"settings.voice.page.stt.badge.bestForEnglish":`Mejor para inglés`,"settings.voice.page.stt.badge.bestForMultilingual":`Mejor multilingüe`,"settings.voice.page.stt.meta.accuracy":`Precisión`,"settings.voice.page.stt.meta.speed":`Velocidad`,"settings.voice.page.stt.modelInstalled":`Modelo instalado`,"settings.voice.page.stt.modelDownloading":`Descargando modelo...`,"settings.voice.page.stt.modelDownloadingProgress":`Descargando modelo... {percent}%`,"settings.voice.page.stt.modelNotInstalled":`Modelo no descargado`,"settings.voice.page.stt.modelDownload":`Descargar`,"settings.voice.page.stt.modelDelete":`Eliminar modelo`,"settings.voice.page.stt.modelRetry":`Reintentar`,"settings.voice.page.provider.wasm":`Local`,"settings.voice.page.stt.wasmModel":`Modelo Whisper`,"settings.voice.page.stt.wasmLoaded":`Modelo cargado`,"settings.voice.page.stt.wasmDownloading":`Descargando modelo...`,"settings.voice.page.stt.wasmLoading":`Cargando modelo...`,"settings.voice.page.stt.wasmNotLoaded":`El modelo se descargará en el primer uso de voz`,"settings.voice.page.stt.wasmDownload":`Descargar`,"settings.voice.page.stt.wasmRetry":`Reintentar`,"settings.voice.page.tooltip.browser":`Gratuito, offline, soporte limitado en móvil.`,"settings.voice.page.tooltip.openai":`Calidad alta, compatible con móviles, requiere clave de API.`,"settings.voice.page.tooltip.custom":`Servidor compatible con OpenAI (por ejemplo Kokoro).`,"settings.voice.page.tooltip.say":`Nativo de macOS. Rápido, gratis, offline.`,"settings.voice.page.tooltip.sttBrowser":`API de voz web (Chrome/Edge). Gratis, sin configuración.`,"settings.voice.page.tooltip.sttServer":`Servidor compatible con Whisper de OpenAI. Mayor precisión, cualquier idioma.`,"settings.voice.page.field.apiKey":`Clave de API`,"settings.voice.page.field.apiKeyHintUsingConfig":`Usando la clave de la configuración`,"settings.voice.page.field.apiKeyHintRequired":`OpenAI TTS requiere una clave de API`,"settings.voice.page.field.apiKeyHintProvide":`Proporciona tu clave de OpenAI`,"settings.voice.page.field.serverUrl":`URL del servidor`,"settings.voice.page.field.serverUrlHint":`URL base del servidor compatible con TTS de OpenAI`,"settings.voice.page.field.model":`Modelo`,"settings.voice.page.field.voice":`Voz`,"settings.voice.page.field.voiceIdentifierHint":`Identificador de voz compatible con el servidor`,"settings.voice.page.field.configuredAbove":`Configurado anteriormente`,"settings.voice.page.actions.preview":`Vista previa`,"settings.voice.page.field.selectVoicePlaceholder":`Seleccionar voz`,"settings.voice.page.field.auto":`Automático`,"settings.voice.page.field.speechRate":`Velocidad de habla`,"settings.voice.page.field.speechPitch":`Tono de habla`,"settings.voice.page.field.speechVolume":`Volumen de habla`,"settings.voice.page.field.language":`Idioma`,"settings.voice.page.field.selectLanguagePlaceholder":`Seleccionar idioma`,"settings.voice.page.field.sttBrowserSupportError":`MediaRecorder o AudioContext no están disponibles en este navegador. El STT del servidor puede que no funcione.`,"settings.voice.page.field.sttServerUrlHint":`URL base del servidor compatible con Whisper`,"settings.voice.page.field.sttLanguageHint":`Código BCP-47 (por ejemplo en, fr). Dejar en blanco para detección automática.`,"settings.voice.page.field.silenceThreshold":`Umbral de silencio`,"settings.voice.page.field.silenceHold":`Retención de silencio`,"settings.voice.page.field.transcribeOnStopAria":`Transcribir al detener la grabación`,"settings.voice.page.field.transcribeOnStop":`Transcribir al detener`,"settings.voice.page.field.millisecondsUnit":`ms`,"settings.voice.page.field.messageReadAloudButtonAria":`Botón de lectura en voz alta del mensaje`,"settings.voice.page.field.messageReadAloudButton":`Botón de lectura en voz alta del mensaje`,"settings.voice.page.field.summarizeBeforePlaybackAria":`Resumir antes de la reproducción`,"settings.voice.page.field.summarizeBeforePlayback":`Resumir antes de la reproducción`,"settings.voice.page.field.summarizeVoiceModeResponsesAria":`Resumir respuestas en modo de voz`,"settings.voice.page.field.summarizeVoiceModeResponses":`Resumir respuestas en modo de voz`,"settings.voice.page.field.summarizationThreshold":`Umbral de resumen`,"settings.voice.page.field.summaryMaxLength":`Longitud máxima del resumen`,"settings.voice.page.hint.shiftClickPrefix":`Presionar`,"settings.voice.page.hint.shiftClickSuffix":`en el botón del micrófono para alternar el modo continuo`,"settings.voice.page.preview.browserVoiceFallback":`voz del navegador`,"settings.voice.page.preview.voiceLine":`¡Hola! Soy {voiceName}. Así suena mi voz.`,"settings.voice.page.preview.customServerLine":`¡Hola! Esta es una previsualización del servidor TTS personalizado.`,"settings.voice.page.field.ttsInputMode":`Modo de entrada TTS`,"settings.voice.page.field.ttsInputModeSanitized":`Texto limpio`,"settings.voice.page.field.ttsInputModeRaw":`Markdown sin procesar`,"settings.voice.page.field.ttsInputModeSummarized":`resumido`,"settings.openchamber.visual.section.colorMode":`Tema`,"settings.openchamber.visual.field.themeMode":`Cambiar tema`,"settings.openchamber.visual.field.display":`Visualización`,"settings.openchamber.visual.section.localization":`Localización`,"settings.openchamber.visual.section.spacingAndLayout":`Espaciado y diseño`,"settings.openchamber.visual.section.navigation":`Navegación`,"settings.openchamber.visual.section.chatRenderMode":`Modo de renderizado de chat`,"settings.openchamber.visual.section.chatRenderModeAria":`Modo de renderizado de chat`,"settings.openchamber.visual.section.messageStreamTransport":`Transporte del flujo de mensajes`,"settings.openchamber.visual.section.activityDefault":`Modo predeterminado de actividad`,"settings.openchamber.visual.section.activityDefaultAria":`Modo predeterminado de actividad`,"settings.openchamber.visual.section.showToolsOpenedByDefault":`Mostrar herramientas abiertas por defecto:`,"settings.openchamber.visual.section.sessionAssistance":`Asistencia de sesión`,"settings.openchamber.visual.section.reasoning":`Razonamiento`,"settings.openchamber.visual.section.messageAppearance":`Apariencia de los mensajes`,"settings.openchamber.visual.section.toolsAndFiles":`Herramientas y archivos`,"settings.openchamber.visual.section.composer":`Compositor`,"settings.openchamber.visual.section.userMessageRendering":`Renderizado de mensajes del usuario`,"settings.openchamber.visual.section.userMessageRenderingAria":`Modo de Renderizado de mensajes del usuario`,"settings.openchamber.visual.section.mermaidRendering":`Renderizado de Mermaid`,"settings.openchamber.visual.section.mermaidRenderingAria":`Modo de Renderizado de Mermaid`,"settings.openchamber.visual.section.diffLayout":`Diseño de comparación`,"settings.openchamber.visual.section.diffLayoutAria":`Diseño de comparación`,"settings.openchamber.visual.section.privacy":`Privacidad`,"settings.openchamber.visual.field.lightTheme":`Tema claro`,"settings.openchamber.visual.field.darkTheme":`Tema oscuro`,"settings.openchamber.visual.field.selectLightThemeAria":`Seleccionar tema claro`,"settings.openchamber.visual.field.selectDarkThemeAria":`Seleccionar tema oscuro`,"settings.openchamber.visual.field.selectThemePlaceholder":`Seleccionar tema`,"settings.openchamber.visual.field.timeFormat":`Formato de hora`,"settings.openchamber.visual.field.weekStartsOn":`La semana empieza el`,"settings.openchamber.visual.field.selectTimeFormatAria":`Seleccionar formato de hora`,"settings.openchamber.visual.field.selectWeekStartAria":`Seleccionar inicio de la semana`,"settings.openchamber.visual.actions.reloadThemes":`Recargar temas`,"settings.openchamber.visual.field.macVibrancy":`Transparencia de la ventana`,"settings.openchamber.visual.field.macVibrancyHint":`Usa el desenfoque nativo de macOS (vibrancy) detrás de la barra lateral. Desactívalo para superficies totalmente sólidas y opacas.`,"settings.openchamber.visual.field.dockBadge":`Insignia en el Dock`,"settings.openchamber.visual.field.dockBadgeHint":`Muestra en el icono del Dock de macOS el número de chats con actividad sin ver.`,"settings.openchamber.visual.actions.saveAndRestart":`Guardar y reiniciar`,"settings.openchamber.visual.actions.restarting":`Reiniciando…`,"settings.openchamber.visual.actions.reloadingThemes":`Recargando temas...`,"settings.openchamber.visual.field.themeImportInfoAria":`Información de importación de temas`,"settings.openchamber.visual.field.themeImportInfoTooltip":`Importar temas personalizados desde ~/.config/openchamber/themes/`,"settings.openchamber.visual.field.installAppName":`Nombre de la aplicación para instalar`,"settings.openchamber.visual.field.sidebarBrand":`Marca de la barra lateral`,"settings.openchamber.visual.field.sidebarBrandHint":`Introduce el texto completo del logotipo de la barra lateral. La última palabra separada por espacios usa el color de acento. Déjalo vacío para ocultar el logo.`,"settings.openchamber.visual.field.sidebarBrandAria":`Marca de la barra lateral`,"settings.openchamber.visual.field.installAppNameHint":`Lo usa la instalación de la PWA.`,"settings.openchamber.visual.field.pwaInstallAppNameAria":`Nombre de la aplicación para instalar PWA`,"settings.openchamber.visual.actions.resetInstallAppNameAria":`Restablecer nombre de la aplicación para instalar`,"settings.openchamber.visual.field.installOrientation":`Orientación de instalación`,"settings.openchamber.visual.field.installOrientationHint":`Usado por la aplicación web instalada. Vuelve a instalar la PWA después de cambiar esto.`,"settings.openchamber.visual.field.pwaInstallOrientationAria":`Orientación de instalación de PWA`,"settings.openchamber.visual.field.selectOrientationPlaceholder":`Seleccionar orientación`,"settings.openchamber.visual.actions.resetInstallOrientationAria":`Restablecer orientación de instalación`,"settings.openchamber.visual.field.mobileKeyboardMode":`Comportamiento del teclado móvil`,"settings.openchamber.visual.field.mobileKeyboardModeHint":`El comportamiento predeterminado del navegador es el más seguro. Redimensionar el contenido pide a los navegadores compatibles reducir la app cuando se abre el teclado.`,"settings.openchamber.visual.field.mobileKeyboardModeAria":`Comportamiento del teclado móvil`,"settings.openchamber.visual.field.selectMobileKeyboardModePlaceholder":`Seleccionar comportamiento del teclado`,"settings.openchamber.visual.actions.resetMobileKeyboardModeAria":`Restablecer comportamiento del teclado móvil`,"settings.openchamber.visual.field.interfaceFontSize":`Tamaño de fuente de la interfaz`,"settings.openchamber.visual.field.interfaceFont":`Fuente de la interfaz`,"settings.openchamber.visual.field.selectInterfaceFontAria":`Seleccionar fuente de interfaz`,"settings.openchamber.visual.actions.resetInterfaceFontAria":`Restablecer fuente de interfaz`,"settings.openchamber.visual.field.fontSizePercentageAria":`Porcentaje de tamaño de fuente`,"settings.openchamber.visual.actions.resetFontSizeAria":`Restablecer tamaño de fuente`,"settings.openchamber.visual.field.terminalFontSize":`Tamaño de fuente del terminal`,"settings.openchamber.visual.field.editorFontSize":`Tamaño de fuente del editor`,"settings.openchamber.visual.field.codeFont":`Fuente de código`,"settings.openchamber.visual.field.codeFontSize":`Tamaño de fuente de código`,"settings.openchamber.visual.field.codeFontSizePercentageAria":`Porcentaje de tamaño de fuente de código`,"settings.openchamber.visual.field.selectCodeFontAria":`Seleccionar fuente de código`,"settings.openchamber.visual.actions.resetCodeFontAria":`Restablecer fuente de código`,"settings.openchamber.visual.actions.resetCodeFontSizeAria":`Restablecer tamaño de fuente de código`,"settings.openchamber.visual.actions.resetTerminalFontSizeAria":`Restablecer tamaño de fuente del terminal`,"settings.openchamber.visual.actions.resetEditorFontSizeAria":`Restablecer tamaño de fuente del editor`,"settings.openchamber.visual.field.spacingDensity":`Densidad de espaciado`,"settings.openchamber.visual.actions.resetSpacingAria":`Restablecer espaciado`,"settings.openchamber.visual.field.inputBarOffset":`Desplazamiento de la barra de entrada`,"settings.openchamber.visual.field.inputBarOffsetTooltip":`Elevar la barra de entrada para evitar obstáculos en la pantalla del sistema operativo, como barras de inicio.`,"settings.openchamber.visual.actions.resetInputBarOffsetAria":`Restablecer desplazamiento de la barra de entrada`,"settings.openchamber.visual.field.terminalQuickKeysAria":`Teclas rápidas del terminal`,"settings.openchamber.visual.field.terminalQuickKeys":`Teclas rápidas del terminal`,"settings.openchamber.visual.field.terminalQuickKeysTooltip":`Mostrar Esc, Ctrl y flechas en la vista del terminal`,"settings.openchamber.visual.field.fileEditorKeymap":`Mapa de teclas del editor de archivos`,"settings.openchamber.visual.option.fileEditorKeymap.default":`Predeterminado`,"settings.openchamber.visual.option.fileEditorKeymap.vim":`Vim`,"settings.openchamber.visual.field.activityDefaultModeAria":`Modo predeterminado de actividad: {option}`,"settings.openchamber.visual.field.showExpandedBashToolsAria":`Mostrar herramientas de Bash expandidas`,"settings.openchamber.visual.field.bash":`Bash`,"settings.openchamber.visual.field.userMessageRenderingAria":`Renderizado de mensajes del usuario: {option}`,"settings.openchamber.visual.field.mermaidRenderingAria":`Renderizado de Mermaid: {option}`,"settings.openchamber.visual.field.diffLayoutAria":`Diseño de comparación: {option}`,"settings.openchamber.visual.field.sessionRecap":`Generar resumen de sesión`,"settings.openchamber.visual.field.sessionRecapAria":`Generar un resumen cuando el agente termina`,"settings.openchamber.visual.field.sessionTitleRefresh":`Actualizar el título de la sesión según la conversación reciente`,"settings.openchamber.visual.field.sessionTitleRefreshAria":`Generar automáticamente el título cuando una sesión nueva queda inactiva por primera vez, y cuando un fork envía su primer mensaje nuevo. Los turnos posteriores no se actualizan solos`,"settings.openchamber.visual.field.sessionGoal":`Habilitar objetivos de sesión`,"settings.openchamber.visual.field.sessionGoalAria":`Mantener la sesión trabajando automáticamente hacia un objetivo`,"settings.openchamber.visual.goal.sectionTitle":`Objetivo`,"settings.openchamber.visual.goal.budgetLabel":`Presupuesto de tokens predeterminado`,"settings.openchamber.visual.goal.budgetAria":`Aplicar un presupuesto de tokens predeterminado a los nuevos objetivos`,"settings.openchamber.visual.goal.description":`Activa el botón de diana en el compositor y el próximo mensaje se convierte en un objetivo: el agente sigue trabajando hacia él automáticamente, auditado por el modelo pequeño, incluso mientras no estás.`,"settings.openchamber.visual.field.showReasoningTracesAria":`Mostrar rastros de razonamiento`,"settings.openchamber.visual.field.showReasoningTraces":`Mostrar trazas de razonamiento`,"settings.openchamber.visual.field.collapsibleThinkingBlocksAria":`Habilitar bloques de razonamiento colapsables`,"settings.openchamber.visual.field.collapsibleThinkingBlocks":`Habilitar Bloques de Razonamiento Colapsables`,"settings.openchamber.visual.field.collapsibleUserMessagesAria":`Contraer mensajes largos del usuario`,"settings.openchamber.visual.field.collapsibleUserMessages":`Contraer mensajes largos del usuario`,"settings.openchamber.visual.field.stickyUserHeaderAria":`Encabezado del usuario fijo`,"settings.openchamber.visual.field.stickyUserHeader":`Encabezado de usuario fijo`,"settings.openchamber.visual.field.promptNavigatorEnabledAria":`Navegador de prompts`,"settings.openchamber.visual.field.promptNavigatorEnabled":`Navegador de prompts`,"settings.openchamber.visual.field.expandedEditorToolbarAria":`Mostrar siempre la barra de herramientas del editor`,"settings.openchamber.visual.field.expandedEditorToolbar":`Mostrar siempre la barra de herramientas del editor (anclada bajo las pestañas)`,"settings.openchamber.visual.field.wideChatLayoutAria":`Diseño de chat ancho`,"settings.openchamber.visual.field.wideChatLayout":`Diseño de chat ancho`,"settings.openchamber.visual.field.showSplitAssistantMessageActionsAria":`Acciones en línea del asistente`,"settings.openchamber.visual.field.showSplitAssistantMessageActions":`Acciones en línea del asistente`,"settings.openchamber.visual.field.showSplitAssistantMessageActionsTooltip":`Muestra Copiar respuesta, Guardar como imagen y Leer en voz alta en bloques de texto del asistente que aparecen antes de llamadas a herramientas posteriores dentro de la misma respuesta.`,"settings.openchamber.visual.field.showAssistantTpsAria":`Mostrar la tasa de generación TPS`,"settings.openchamber.visual.field.showAssistantTps":`Mostrar tasa de generación TPS`,"settings.openchamber.visual.field.showAssistantTpsTooltip":`Muestra la velocidad de generación (tokens por segundo) en mensajes del asistente completados y en el panel de contexto. El tiempo de las herramientas no se incluye.`,"settings.openchamber.visual.field.allowPromptingSubagentSessionsAria":`Permitir enviar solicitudes a sesiones de subagentes`,"settings.openchamber.visual.field.allowPromptingSubagentSessions":`Permitir solicitudes en sesiones de subagentes`,"settings.openchamber.visual.field.showToolFileIconsAria":`Mostrar iconos de archivos de herramientas`,"settings.openchamber.visual.field.codeBlockLineWrapAria":`Ajustar líneas de bloques de código`,"settings.openchamber.visual.field.codeBlockLineWrap":`Ajustar líneas de bloques de código`,"settings.openchamber.visual.field.showToolFileIcons":`Mostrar iconos de archivos de herramientas`,"settings.openchamber.visual.field.showSubagentTaskDetailsAria":`Mostrar detalles del trabajo del subagente`,"settings.openchamber.visual.field.showSubagentTaskDetails":`Mostrar detalles del trabajo del subagente`,"settings.openchamber.visual.field.showSubagentTaskDetailsHint":`Si está desactivado, las tareas del subagente se mantienen compactas. Haz clic en la fila para abrir la sesión del subagente.`,"settings.openchamber.visual.field.showTurnChangedFilesAria":`Mostrar archivos cambiados en turnos completados`,"settings.openchamber.visual.field.showTurnChangedFiles":`Mostrar archivos cambiados en turnos completados`,"settings.openchamber.visual.field.showDotfilesAria":`Mostrar archivos ocultos`,"settings.openchamber.visual.field.showDotfiles":`Mostrar archivos ocultos`,"settings.openchamber.visual.field.queueMessagesByDefaultAria":`Poner mensaje en cola por defecto`,"settings.openchamber.visual.field.queueMessagesByDefault":`Poner mensajes en cola por defecto`,"settings.openchamber.visual.field.queueMessagesByDefaultTooltip":`Cuando esté habilitado, Enter coloca mensajes en cola. Usa {modifier}+Enter para enviar.`,"settings.openchamber.visual.field.persistDraftMessagesAria":`Mantener borradores de mensajes`,"settings.openchamber.visual.field.persistDraftMessages":`Conservar borradores de mensajes`,"settings.openchamber.visual.field.enableSpellcheckInTextInputsAria":`Habilitar ortografía en campos de texto`,"settings.openchamber.visual.field.enableSpellcheckInTextInputs":`Habilitar ortografía en campos de texto`,"settings.openchamber.visual.field.sendAnonymousUsageReportsAria":`Enviar informes anónimos de uso`,"settings.openchamber.visual.field.sendAnonymousUsageReports":`Enviar informes anónimos de uso`,"settings.openchamber.visual.field.sendAnonymousUsageReportsHint":`Nos ayuda a entender qué versiones de la aplicación se usan activamente para priorizar mejoras. Solo se recopilan la versión de la aplicación, la plataforma y el entorno de ejecución ; no se recopilan datos personales ni código.`,"settings.openchamber.visual.transcriptCache.label":`Borrar la caché local de sesiones`,"settings.openchamber.visual.transcriptCache.description":`Elimina de este entorno el contenido de conversaciones almacenado en caché. El historial del servidor seguirá disponible.`,"settings.openchamber.visual.transcriptCache.action":`Borrar caché`,"settings.openchamber.visual.transcriptCache.dialog.title":`¿Borrar la caché local de sesiones?`,"settings.openchamber.visual.transcriptCache.dialog.description":`Se eliminará el contenido de conversaciones almacenado en caché en este dispositivo. El historial del servidor seguirá disponible.`,"settings.openchamber.visual.transcriptCache.dialog.clearing":`Borrando…`,"settings.openchamber.visual.transcriptCache.toast.cleared":`Caché local de sesiones borrada`,"settings.openchamber.visual.transcriptCache.toast.failed":`No se pudo borrar la caché local de sesiones`,"settings.openchamber.visual.option.themeMode.system":`Sistema`,"settings.openchamber.visual.option.themeMode.light":`Claro`,"settings.openchamber.visual.option.themeMode.dark":`Oscuro`,"settings.openchamber.visual.option.diffLayout.dynamic.label":`Dinámico`,"settings.openchamber.visual.option.diffLayout.dynamic.description":`Nuevo en línea, modificado lado a lado.`,"settings.openchamber.visual.option.diffLayout.inline.label":`Siempre en línea`,"settings.openchamber.visual.option.diffLayout.inline.description":`Muestra una vista unificada.`,"settings.openchamber.visual.option.diffLayout.sideBySide.label":`Siempre lado a lado`,"settings.openchamber.visual.option.diffLayout.sideBySide.description":`Compara archivos originales y modificados.`,"settings.openchamber.visual.option.mermaidRendering.svg.label":`SVG`,"settings.openchamber.visual.option.mermaidRendering.svg.description":`Renderiza diagramas como gráficos escalables.`,"settings.openchamber.visual.option.mermaidRendering.ascii.label":`ASCII`,"settings.openchamber.visual.option.mermaidRendering.ascii.description":`Renderiza diagramas como bloques de texto.`,"settings.openchamber.visual.option.pwaOrientation.system.label":`Seguir el sistema`,"settings.openchamber.visual.option.pwaOrientation.system.description":`Respetar la configuración de rotación del dispositivo.`,"settings.openchamber.visual.option.pwaOrientation.portrait.label":`Bloqueo vertical`,"settings.openchamber.visual.option.pwaOrientation.portrait.description":`Instalar la aplicación bloqueada en vertical.`,"settings.openchamber.visual.option.pwaOrientation.landscape.label":`Bloqueo horizontal`,"settings.openchamber.visual.option.pwaOrientation.landscape.description":`Instalar la aplicación bloqueada en horizontal.`,"settings.openchamber.visual.option.mobileKeyboardMode.native.label":`Seguir el navegador`,"settings.openchamber.visual.option.mobileKeyboardMode.native.description":`Usar el comportamiento predeterminado del navegador para el paneo y los cambios del viewport al abrir el teclado.`,"settings.openchamber.visual.option.mobileKeyboardMode.resizeContent.label":`Redimensionar contenido`,"settings.openchamber.visual.option.mobileKeyboardMode.resizeContent.description":`Pedir a los navegadores compatibles que reduzcan el diseño de la app en lugar de depender solo del paneo.`,"settings.openchamber.visual.option.userMessageRendering.markdown.label":`Markdown`,"settings.openchamber.visual.option.userMessageRendering.markdown.description":`Renderiza el texto del usuario con formato markdown.`,"settings.openchamber.visual.option.userMessageRendering.plain.label":`Texto plano`,"settings.openchamber.visual.option.userMessageRendering.plain.description":`Renderiza el texto del usuario con espacios en blanco y enlaces preservados.`,"chat.message.userText.collapseAria":`Contraer mensaje del usuario`,"settings.openchamber.visual.option.chatRenderMode.sorted.label":`Ordenado`,"settings.openchamber.visual.option.chatRenderMode.sorted.description":`Organiza el trabajo intermedio en Activity; transmite solo la conclusión final.`,"settings.openchamber.visual.option.chatRenderMode.live.label":`En vivo`,"settings.openchamber.visual.option.chatRenderMode.live.description":`Transmitir el texto del asistente y las herramientas conforme llegan.`,"settings.openchamber.visual.option.messageTransport.auto.label":`Automático`,"settings.openchamber.visual.option.messageTransport.auto.description":`Preferir WebSocket y caer en SSE si es necesario.`,"settings.openchamber.visual.option.messageTransport.ws.label":`WebSocket`,"settings.openchamber.visual.option.messageTransport.ws.description":`Usar WebSocket para transmisión de mensajes.`,"settings.openchamber.visual.option.messageTransport.sse.label":`SSE`,"settings.openchamber.visual.option.messageTransport.sse.description":`Usar server-sent events para transmitir mensajes.`,"settings.openchamber.visual.option.activityRenderMode.collapsed.label":`Colapsado`,"settings.openchamber.visual.option.activityRenderMode.collapsed.description":`Mantener la Actividad colapsada por defecto.`,"settings.openchamber.visual.option.activityRenderMode.summary.label":`Expandido`,"settings.openchamber.visual.option.activityRenderMode.summary.description":`Expandir la Actividad por defecto.`,"settings.openchamber.visual.option.timeFormat.auto.label":`Auto`,"settings.openchamber.visual.option.timeFormat.auto.description":`Usa la preferencia de la configuración regional del sistema.`,"settings.openchamber.visual.option.timeFormat.24h.label":`24 horas`,"settings.openchamber.visual.option.timeFormat.24h.description":`Mostrar la hora como 14:15.`,"settings.openchamber.visual.option.timeFormat.12h.label":`12 horas`,"settings.openchamber.visual.option.timeFormat.12h.description":`Mostrar la hora como 02:15 PM.`,"settings.openchamber.visual.option.weekStart.auto.label":`Auto`,"settings.openchamber.visual.option.weekStart.auto.description":`Usa el inicio de semana de la configuración regional.`,"settings.openchamber.visual.option.weekStart.monday.label":`Lunes`,"settings.openchamber.visual.option.weekStart.sunday.label":`Domingo`,"settings.magicPrompts.page.loading.aria":`Cargando`,"settings.magicPrompts.page.loading.text":`Cargando prompts mágicos...`,"settings.magicPrompts.page.block.visiblePrompt":`Prompt visible`,"settings.magicPrompts.page.block.instructions":`Instrucciones`,"settings.magicPrompts.page.group.gitCommitGenerate.title":`Generación de commit`,"settings.magicPrompts.page.group.gitCommitGenerate.description":`Prompts usados para la generación de mensajes de commit: mensaje visible del usuario + instrucciones ocultas.`,"settings.magicPrompts.page.group.gitPrGenerate.title":`Generación de PR`,"settings.magicPrompts.page.group.gitPrGenerate.description":`Prompts usados para la generación del título/cuerpo de un PR: mensaje visible del usuario + instrucciones ocultas.`,"settings.magicPrompts.page.group.githubPrReview.title":`Revisión de PR`,"settings.magicPrompts.page.group.githubPrReview.description":`Prompts usados para el flujo de revisión de PR: mensaje visible del usuario + carga de instrucciones ocultas.`,"settings.magicPrompts.page.group.githubIssueReview.title":`Revisión de issue`,"settings.magicPrompts.page.group.githubIssueReview.description":`Prompts usados para el flujo de revisión de issue: mensaje visible del usuario + carga de instrucciones ocultas.`,"settings.magicPrompts.page.group.githubPrFailedChecksReview.title":`Revisión de PR con checks fallidos`,"settings.magicPrompts.page.group.githubPrFailedChecksReview.description":`Prompts usados para el análisis de checks fallidos en un PR.`,"settings.magicPrompts.page.group.githubPrCommentsReview.title":`Revisión de comentarios de PR`,"settings.magicPrompts.page.group.githubPrCommentsReview.description":`Prompts usados para el análisis de comentarios de un PR.`,"settings.magicPrompts.page.group.githubSinglePrCommentReview.title":`Revisión de comentario único de PR`,"settings.magicPrompts.page.group.githubSinglePrCommentReview.description":`Prompts usados para el análisis de un comentario único de un PR.`,"settings.magicPrompts.page.group.gitConflictResolve.title":`Resolución de conflictos de merge/rebase`,"settings.magicPrompts.page.group.gitConflictResolve.description":`Prompts usados al resolver conflictos de merge/rebase con IA.`,"settings.magicPrompts.page.group.gitCherrypickConflictResolve.title":`Resolución de conflictos de cherry-pick`,"settings.magicPrompts.page.group.gitCherrypickConflictResolve.description":`Prompts usados al resolver conflictos de cherry-pick en el flujo de integración.`,"settings.magicPrompts.page.group.planImprove.title":`Mejora de plan`,"settings.magicPrompts.page.group.planImprove.description":`Prompt oculto usado al enviar un plan guardado a un flujo de mejora.`,"settings.magicPrompts.page.group.planTodo.title":`Planificación de tareas`,"settings.magicPrompts.page.group.planTodo.description":`Prompt oculto usado al enviar una tarea a una nueva sesión de planificación.`,"settings.magicPrompts.page.group.planImplement.title":`Implementación de plan`,"settings.magicPrompts.page.group.planImplement.description":`Prompt oculto usado al enviar un plan guardado a un flujo de implementación.`,"settings.magicPrompts.page.group.sessionSummary.title":`Resumen de sesión`,"settings.magicPrompts.page.group.sessionSummary.description":`Prompts usados por el comando /summary: mensaje visible del usuario + instrucciones ocultas. No destructivo: no compacta el historial de la sesión.`,"settings.magicPrompts.page.group.sessionWorkspaceReview.title":`Revisión del espacio de trabajo`,"settings.magicPrompts.page.group.sessionExplore.title":`Recorrido del código`,"settings.magicPrompts.page.group.sessionExplore.description":`Prompts usados por el comando /explore: mensaje visible del usuario + instrucciones ocultas. Investiga el repositorio y ofrece una orientación estructurada — la visión general, los módulos principales, cómo se conectan y por dónde empezar — en lugar de un listado archivo por archivo.`,"settings.magicPrompts.page.group.sessionWorkspaceReview.description":`Prompts usados por el comando /workspace-review: mensaje visible del usuario + instrucciones ocultas. Revisa el diff del espacio de trabajo: si logra su intención y si es correcto y adecuado, clasificando los hallazgos por severidad.`,"settings.magicPrompts.page.group.sessionFeaturePlan.title":`Planificación de funciones`,"settings.magicPrompts.page.group.sessionFeaturePlan.description":`Prompts usados por el comando /plan-feature: mensaje visible del usuario + instrucciones ocultas. Ejecuta un diálogo guiado que investiga el código y hace preguntas aclaratorias en lotes pequeños antes de producir un plan de implementación.`,"settings.magicPrompts.page.group.sessionCatchUp.title":`Ponerse al día`,"settings.magicPrompts.page.group.sessionCatchUp.description":`Prompts usados por el comando /catch-up: mensaje visible del usuario + instrucciones ocultas. Construye contexto según la rama — los commits de la rama, su PR y el trabajo sin confirmar juntos — para entender qué estabas haciendo, y luego da un resumen fácil de digerir y un siguiente paso centrado en el producto.`,"settings.magicPrompts.page.group.sessionDebug.title":`Depuración`,"settings.magicPrompts.page.group.sessionDebug.description":`Prompts usados por el comando /debug: mensaje visible del usuario + instrucciones ocultas. Ejecuta una investigación guiada de la causa raíz: captura el síntoma, formula hipótesis, las verifica contra el código y confirma la causa antes de proponer una solución.`,"settings.magicPrompts.page.group.sessionWeigh.title":`Comparar enfoques`,"settings.magicPrompts.page.group.sessionWeigh.description":`Prompts usados por el comando /weigh: mensaje visible del usuario + instrucciones ocultas. Investiga el código y luego presenta 2-3 enfoques distintos con sus ventajas y desventajas y una recomendación, sin escribir un plan ni código.`,"settings.magicPrompts.page.group.sessionFusion.title":`Fusion`,"settings.magicPrompts.page.group.sessionFusion.description":`Prompts usados para combinar salidas de multi-run en una respuesta final: mensaje visible del usuario + instrucciones ocultas antes de los resultados fuente.`,"settings.magicPrompts.page.actions.resetting":`Restableciendo...`,"settings.magicPrompts.page.actions.resetAllOverrides":`Restablecer todas las sobrescrituras`,"settings.magicPrompts.page.actions.resetToDefault":`Restablecer valores predeterminados`,"settings.magicPrompts.page.actions.save":`Guardar`,"settings.magicPrompts.page.placeholdersLabel":`Marcadores de posición:`,"settings.magicPrompts.page.validation.visiblePromptRequired":`El prompt visible no puede estar vacío.`,"settings.magicPrompts.page.status.unsavedChanges":`Cambios no guardados`,"settings.magicPrompts.page.status.usingSavedOverride":`Usando sobrescritura guardada`,"settings.magicPrompts.page.status.usingBuiltinDefault":`Usando valor predeterminado integrado`,"settings.magicPrompts.page.toast.loadFailed":`No se pudieron cargar los prompts mágicos`,"settings.magicPrompts.page.toast.visiblePromptRequired":`El prompt visible no puede estar vacío`,"settings.magicPrompts.page.toast.saved":`Prompt mágico guardado`,"settings.magicPrompts.page.toast.saveFailed":`No se pudo guardar el prompt mágico`,"settings.magicPrompts.page.toast.resetSuccess":`Prompt restablecido al valor predeterminado`,"settings.magicPrompts.page.toast.resetFailed":`No se pudo restablecer el prompt`,"settings.magicPrompts.page.toast.resetAllSuccess":`Se restablecieron todos los prompts sobrescritos`,"settings.magicPrompts.page.toast.resetAllFailed":`No se pudieron restablecer todos los prompts`,"settings.page.promptTemplates.title":`Plantillas de prompt`,"settings.promptTemplates.sidebar.title":`Plantillas de prompt`,"settings.promptTemplates.sidebar.total":`Total: {count}`,"settings.promptTemplates.sidebar.empty.title":`Sin plantillas de prompt`,"settings.promptTemplates.sidebar.empty.description":`Crea una plantilla de prompt para comenzar.`,"settings.promptTemplates.sidebar.toast.deleted":`Plantilla "{name}" eliminada`,"settings.promptTemplates.sidebar.toast.deleteFailed":`Error al eliminar la plantilla`,"settings.promptTemplates.sidebar.toast.nameRequired":`El nombre de la plantilla es obligatorio`,"settings.promptTemplates.sidebar.toast.renamed":`Plantilla renombrada`,"settings.promptTemplates.sidebar.toast.renameFailed":`Error al renombrar la plantilla`,"settings.promptTemplates.sidebar.dialog.deleteTitle":`¿Eliminar plantilla?`,"settings.promptTemplates.sidebar.dialog.deleteDescription":`Se eliminará permanentemente "{name}". Esta acción no se puede deshacer.`,"settings.promptTemplates.sidebar.renameDialog.title":`Renombrar plantilla`,"settings.promptTemplates.sidebar.renameDialog.description":`Introduce un nuevo nombre para "{name}".`,"settings.promptTemplates.sidebar.renameDialog.placeholder":`Nombre de la plantilla`,"settings.promptTemplates.sidebar.badge.default":`predeterminada`,"settings.promptTemplates.page.empty.title":`Selecciona una plantilla`,"settings.promptTemplates.page.empty.description":`Elige una plantilla de la barra lateral para editarla.`,"settings.promptTemplates.page.title.new":`Nueva plantilla`,"settings.promptTemplates.page.subtitle.edit":`Editar plantilla`,"settings.promptTemplates.page.subtitle.new":`Crear una nueva plantilla de prompt`,"settings.promptTemplates.page.section.identity":`Identidad`,"settings.promptTemplates.page.field.name":`Nombre`,"settings.promptTemplates.page.field.namePlaceholder":`Nombre de la plantilla`,"settings.promptTemplates.page.section.template":`Plantilla`,"settings.promptTemplates.page.field.templatePlaceholder":`Introduce el texto de la plantilla de prompt...`,"settings.promptTemplates.page.templateHint":`Este texto se antepondrá al prompt del usuario cuando se seleccione en un grupo multi-run.`,"settings.promptTemplates.page.toast.nameRequired":`El nombre de la plantilla es obligatorio`,"settings.promptTemplates.page.toast.updated":`Plantilla actualizada`,"settings.promptTemplates.page.toast.updateFailed":`Error al actualizar la plantilla`,"settings.promptTemplates.page.toast.created":`Plantilla creada`,"settings.promptTemplates.page.toast.createFailed":`Error al crear la plantilla`,"settings.promptTemplates.page.toast.saveUnexpectedError":`Ocurrió un error inesperado al guardar`,"settings.openchamber.visual.section.followUpBehavior":`Follow-up behavior`,"settings.openchamber.visual.section.followUpBehaviorAria":`Follow-up behavior`,"settings.openchamber.visual.field.followUpBehaviorAria":`Follow-up behavior: {option}`,"settings.openchamber.visual.field.followUpBehaviorDescription":`Choose what happens when you press Enter on a follow-up message while the agent is still responding.`,"settings.openchamber.visual.option.followUpBehavior.steer.label":`Steer`,"settings.openchamber.visual.option.followUpBehavior.queue.label":`Queue`,"settings.page.assistants.title":`Asistentes`,"assistants.title":`Asistentes`,"assistants.subtitle":`Tus ayudantes permanentes`,"assistants.listAria":`Lista de asistentes`,"assistants.menu.edit":`Editar`,"assistants.selectorAria":`Cambiar de asistente. Actual: {name}`,"assistants.state.unsupportedTitle":`Los asistentes no son compatibles`,"assistants.state.unsupportedDescription":`Esta instancia de OpenChamber no ofrece la función de asistentes.`,"assistants.state.instanceDisabledDescription":`Activa los asistentes en Ajustes para usar esta función.`,"assistants.onboarding.title":`Crea tu primer asistente`,"assistants.onboarding.description":`Configura un ayudante permanente y mantén aquí una conversación continua.`,"assistants.onboarding.action":`Crear asistente`,"assistants.actions.retry":`Reintentar`,"assistants.actions.backToChat":`Volver al chat`,"assistants.mode.continuous":`Continuo`,"assistants.mode.stateless":`Sin estado`,"assistants.state.unavailable":`Los asistentes no están disponibles en esta instancia.`,"assistants.state.staleSnapshot":`Se muestra la última instantánea disponible. La actualización falló.`,"assistants.state.sending":`Enviando`,"assistants.state.reconciling":`Confirmando la entrega…`,"assistants.state.sendFailed":`La entrega falló. Puedes reintentar de forma segura.`,"assistants.state.instanceDisabled":`Los asistentes están desactivados en esta instancia.`,"assistants.state.assistantDisabled":`Este asistente está desactivado.`,"assistants.state.invalidConfiguration":`El modelo configurado para este asistente no está disponible.`,"assistants.state.messagesFailed":`No se pudo cargar la conversación.`,"assistants.conversation.continuousHint":`Una conversación continua`,"assistants.conversation.statelessHint":`Cada turno se ejecuta en una sesión nueva sin contexto previo`,"assistants.conversation.newSessionDivider":`Nueva conversación`,"assistants.conversation.emptyTitle":`Inicia una conversación con {name}`,"assistants.conversation.emptyDescription":`Envía un mensaje para iniciar esta conversación continua.`,"assistants.composer.attachment":`Imagen adjunta`,"assistants.composer.removeAttachment":`Quitar archivo adjunto`,"assistants.composer.addImage":`Añadir imagen`,"assistants.composer.send":`Enviar mensaje`,"assistants.composer.placeholder":`Escribe a tu asistente…`,"assistants.composer.disabledPlaceholder":`Asistente no disponible`,"assistants.composer.selectionConflict":`La selección cambió en otro lugar. Se cargaron los ajustes más recientes.`,"assistants.composer.selectionSaveFailed":`No se pudo guardar la selección de modelo y agente.`,"assistants.composer.commandUnavailable":`Los comandos disponibles son /new y /compact.`,"assistants.settings.description":`Configura asistentes para ayudarte con el trabajo. `,"assistants.settings.descriptionLearnMore":`Ver más`,"assistants.settings.instanceEnabled":`Activar`,"assistants.settings.listTitle":`Asistentes`,"assistants.settings.create":`Nuevo asistente`,"assistants.settings.delete":`Eliminar`,"assistants.settings.deleteConfirm":`¿Eliminar {name}? Su historial de conversación se archivará.`,"assistants.settings.name":`Nombre`,"assistants.settings.enabled":`Asistente activado`,"assistants.settings.defaultShare":`Asistente predeterminado para compartir desde este cliente`,"assistants.settings.defaultPrompt":`Prompt predeterminado`,"assistants.settings.defaultPromptPlaceholder":`Define el rol y la forma de trabajo del asistente…`,"assistants.settings.runtime":`Ejecución`,"assistants.settings.model":`Proveedor y modelo`,"assistants.settings.agent":`Agente de OpenCode`,"assistants.settings.mode":`Modo de conversación`,"assistants.settings.workspace":`Espacio de trabajo`,"assistants.settings.workspacePlaceholder":`Espacio de trabajo gestionado`,"assistants.settings.workspaceCurrentPath":`Ruta actual`,"assistants.settings.workspaceChangeHint":`Cambiar el espacio de trabajo inicia una nueva sesión del asistente.`,"assistants.settings.save":`Guardar asistente`,"assistants.settings.empty":`Crea tu primer asistente.`,"assistants.settings.validation.required":`El nombre y el modelo son obligatorios.`,"assistants.settings.toast.saved":`Asistente guardado.`,"assistants.settings.toast.saveFailed":`No se pudo guardar el asistente.`,"assistants.settings.toast.deleted":`Asistente eliminado.`,"assistants.settings.toast.deleteFailed":`No se pudo eliminar el asistente.`,"assistants.settings.toast.toggleFailed":`No se pudo cambiar la disponibilidad de los asistentes.`,"assistants.shareWelcome.title":`Comparte contenido con tu asistente`,"assistants.shareWelcome.description":`Desde cualquier app, toca Compartir y elige un asistente de OpenChamber. Los enlaces, textos e imágenes llegan a su Inbox Topic.`,"assistants.shareWelcome.examplesAria":`Ejemplos de contenido que puedes compartir`,"assistants.shareWelcome.example.chat.title":`Hoja para compartir de iOS`,"assistants.shareWelcome.example.chat.description":`Abre Compartir y elige tu asistente.`,"assistants.shareWelcome.example.article.title":`Compartir directamente en Android`,"assistants.shareWelcome.example.article.description":`Tu asistente aparece entre los contactos rápidos.`,"assistants.shareWelcome.example.note.title":`Elige un asistente`,"assistants.shareWelcome.example.note.description":`El contenido compartido llega a su Inbox Topic.`,"assistants.shareWelcome.action":`Entendido`,"mobile.settings.switchInstance":`Cambiar de instancia`,"common.loading":`Cargando...`,"sessions.startupSync.title":`Sincronizando sesiones`,"sessions.startupSync.progress":`Se cargaron {completed} de {total} proyectos`,"common.unavailable":`No disponible`,"common.language.english":`Inglés`,"common.language.french":`Francés`,"common.language.simplifiedChinese":`Chino (simplificado)`,"common.language.traditionalChinese":`Chino (tradicional)`,"common.language.ukrainian":`Ucraniano`,"common.language.spanish":`Español`,"common.language.brazilianPortuguese":`Portugués brasileño`,"common.language.korean":`Coreano`,"common.language.polish":`Polaco`,"common.language.japanese":`Japonés`,"common.revealPath.finder":`Mostrar en Finder`,"common.revealPath.fileExplorer":`Abrir en File Explorer`,"common.revealPath.fileManager":`Abrir en gestor de archivos`,"pwa.installPrompt.description":`Instala OpenChamber para acceder más rápido`,"pwa.installPrompt.action":`Instalar`,"pwa.installPrompt.dismiss":`Descartar`,"pwa.installPrompt.started":`Instalación iniciada`,"pwa.installPrompt.installed":`OpenChamber se instaló`,"shareOpinion.actions.shareOpinion":`Compartir opinión`,"shareOpinion.actions.bookCall":`Reservar llamada`,"shareOpinion.actions.shortSurvey":`Encuesta breve`,"shareOpinion.dialog.title":`Comparte tu opinión`,"shareOpinion.toast.title":`Ayuda a dar forma a OpenChamber`,"shareOpinion.toast.description":`Cuenta qué es útil, confuso o falta para ayudar a definir lo que viene después.`,"sessions.sidebar.footer.actions.shareOpinion":`Compartir opinión`,"layout.mainTab.chat":`Chat`,"layout.mainTab.plan":`Plan`,"layout.mainTab.diff":`Diff`,"layout.mainTab.diagram":`Diagrama`,"layout.mainTab.files":`Archivos`,"layout.mainTab.terminal":`Terminal`,"layout.mainTab.context":`Contexto`,"mobile.nav.aria":`Navegación móvil`,"mobile.nav.secondaryPageAria":`Página de detalle`,"mobile.connect.welcome.title":`Conéctate a OpenChamber`,"mobile.connect.welcome.description":`Agrega una URL de servidor o escanea un código QR de emparejamiento para empezar a usar la app móvil.`,"mobile.connect.url.label":`URL del servidor`,"mobile.connect.url.placeholder":`http://192.168.1.74:2606`,"mobile.connect.link.divider":`O usa un enlace de emparejamiento`,"mobile.connect.address.divider":`O introduce la dirección del servidor`,"mobile.connect.link.label":`Enlace de emparejamiento`,"mobile.connect.link.placeholder":`Pega el enlace openchamber://connect`,"mobile.connect.link.invalid":`Ese enlace de emparejamiento no es válido o ha caducado.`,"mobile.connect.token.label":`Token de cliente`,"mobile.connect.token.placeholder":`Pega el token de acceso`,"mobile.connect.token.hint":`Solo es necesario si tu servidor requiere un token en lugar de una contraseña.`,"mobile.connect.password.label":`Contraseña`,"mobile.connect.password.placeholder":`Contraseña de OpenChamber`,"mobile.connect.connectButton":`Conectar`,"mobile.connect.unlockButton":`Desbloquear y conectar`,"mobile.connect.cancelPassword":`Usar otro servidor`,"mobile.connect.connecting":`Conectando...`,"mobile.connect.scanQr":`Escanear código QR`,"mobile.connect.welcome.scanHint":`En tu ordenador, abre «Añadir un dispositivo» para mostrar un código QR y escanéalo aquí.`,"mobile.connect.advanced":`Avanzado`,"mobile.connect.manual.toggle":`Conexión manual`,"mobile.connect.scan.permissionDenied":`El acceso a la cámara está desactivado. Actívalo en Ajustes para escanear un código QR.`,"mobile.connect.scan.failed":`No se pudo escanear ese código QR. Inténtalo de nuevo o introduce la URL manualmente.`,"mobile.connect.scan.invalid":`Ese código QR no es un código de conexión de OpenChamber.`,"mobile.connect.scan.unsupported":`El escaneo de QR solo está disponible en la app móvil instalada.`,"mobile.connect.saved.title":`Conexiones guardadas`,"mobile.connect.saved.empty":`Aún no hay conexiones guardadas.`,"mobile.connect.relay.badge":`a través de OpenChamber Relay`,"mobile.connect.error.urlRequired":`Introduce una URL de servidor.`,"mobile.connect.splash.connectingTo":`Conectando al dispositivo:`,"mobile.connect.error.invalidUrl":`Esa URL de servidor no es válida.`,"mobile.connect.error.unreachable":`No se pudo conectar con ese servidor de OpenChamber.`,"mobile.connect.error.authRequired":`Este servidor requiere una contraseña o un token de cliente.`,"mobile.connect.error.passwordFailed":`No se pudo desbloquear ese servidor. Revisa la contraseña.`,"mobile.instances.addTitle":`Agregar instancia`,"mobile.instances.addManual":`Añadir por dirección`,"mobile.instances.editTitle":`Editar instancia`,"mobile.instances.edit":`Editar`,"mobile.instances.delete":`Eliminar`,"mobile.instances.deleteAria":`Eliminar {label}`,"mobile.instances.confirmDeleteAria":`Confirmar la eliminación de {label}`,"mobile.instances.cancelDeleteAria":`Conservar {label}`,"mobile.instances.cancelEdit":`Cancelar`,"mobile.instances.label.label":`Nombre`,"mobile.instances.label.placeholder":`Nombre para mostrar (opcional)`,"mobile.instances.saveNew":`Guardar instancia`,"mobile.instances.status.connectedDirect":`Conectado · Red local`,"mobile.instances.status.connectedRelay":`Conectado · Relay`,"mobile.instances.status.connectedSshRelay":`Conectado · SSH por relay`,"mobile.instances.sshBadge":`SSH`,"mobile.instances.sshViaDesktop":`Enrutado por el escritorio a SSH`,"mobile.connect.error.sshNotConnected":`Esa instancia SSH no está conectada ahora.`,"mobile.connect.ssh.fallbackDesktop":`Instancia SSH no disponible: se conectó al escritorio.`,"mobile.instances.saveEdit":`Guardar cambios`,"mobile.nav.changes":`Cambios`,"mobile.nav.settings":`Ajustes`,"mobile.tabs.projects":`Proyectos`,"mobile.tabs.assistant":`Agente`,"mobile.tabs.scheduled":`Tareas`,"mobile.tabs.settings":`Ajustes`,"mobile.surface.closeAria":`Cerrar`,"mobile.header.openMenuAria":`Abrir menú`,"mobile.header.openMetadataAria":`Abrir metadatos de la sesión`,"mobile.header.metadata.context":`Contexto`,"mobile.header.metadata.branch":`Rama`,"mobile.header.metadata.usage":`Uso`,"mobile.menu.titleAria":`Herramientas del espacio de trabajo`,"mobile.menu.newSession":`Nuevo chat`,"mobile.chat.syncingMessages":`Sincronizando mensajes...`,"mobile.menu.files":`Archivos`,"mobile.menu.changes":`Cambios`,"mobile.menu.mcp":`MCP`,"mobile.menu.instances":`Instancias`,"mobile.menu.update":`Actualizar`,"mobile.menu.settings":`Ajustes`,"mobile.sessions.newChatCta":`Nuevo Chat en {project}`,"mobile.sessions.dateGroup.today":`Hoy`,"mobile.sessions.dateGroup.yesterday":`Ayer`,"mobile.sessions.dateGroup.thisWeek":`Antes esta semana`,"mobile.sessions.dateGroup.older":`Más antiguos`,"mobile.sessions.section.worktrees":`Worktrees`,"mobile.sessions.mainWorkspace":`Espacio de trabajo principal`,"mobile.sessions.section.pinned":`Fijados`,"mobile.sessions.searchAria":`Buscar sesiones`,"mobile.sessions.section.otherProjects":`Cambiar de proyecto`,"mobile.sessions.section.projects":`Proyectos`,"mobile.projects.menu.label":`Más acciones`,"mobile.projects.menu.newChat":`Nueva conversación`,"mobile.projects.menu.newProject":`Nuevo proyecto`,"mobile.projects.menu.scanQr":`Escanear código QR`,"mobile.projects.menu.switchInstance":`Cambiar instancia`,"mobile.sessions.empty.noProjectsTitle":`Sin proyectos`,"mobile.sessions.empty.noProjectsDescription":`Agrega un proyecto para empezar a chatear con tu código.`,"mobile.sessions.empty.noSessionsTitle":`Sin sesiones`,"mobile.sessions.empty.noSessionsDescription":`Inicia tu primer chat para verlo aquí.`,"mobile.sessions.empty.searchTitle":`Sin resultados`,"mobile.sessions.empty.searchDescription":`Prueba con otro término de búsqueda.`,"mobile.sessions.showArchived":`Mostrar archivadas ({count})`,"mobile.sessions.hideArchived":`Ocultar archivadas`,"mobile.sessions.activeWorktreeAria":`Worktree activo`,"mobile.sessions.activeProjectAria":`Proyecto activo`,"mobile.sessions.startNewChat":`Nuevo chat`,"mobile.sessions.newChat":`Nuevo chat`,"mobile.sessions.editOrder":`Reordenar proyectos`,"mobile.sessions.doneEditing":`Listo`,"mobile.sessions.editOrderHint":`Arrastra el asa o usa las flechas para reordenar los proyectos. Toca la marca para finalizar.`,"mobile.sessions.dragHandleAria":`Arrastra {label} para reordenar`,"mobile.sessions.moveUpAria":`Mover {label} arriba`,"mobile.sessions.moveDownAria":`Mover {label} abajo`,"mobile.sessions.removeProjectAria":`Eliminar {label}`,"mobile.sessions.cancelRemoveProjectAria":`Cancelar eliminación de {label}`,"mobile.sessions.confirmRemoveProject":`Cerrar`,"mobile.sessions.confirmRemoveProjectAria":`Confirmar eliminación de {label}`,"mobile.projects.closeConfirmMessage":`¿Cerrar “{title}”? Saldrá de tu lista de proyectos. Las sesiones se quedan en el disco.`,"mobile.sessions.toast.projectRemoved":`Se eliminó {label}`,"mobile.sessions.archiveSessionAria":`Archivar {title}`,"mobile.sessions.cancelArchiveAria":`Cancelar archivar {title}`,"mobile.sessions.stopSessionAria":`Detener {title}`,"mobile.sessions.stopGroupAria":`Detener todas las sesiones en ejecución en {label}`,"mobile.sessions.stopSubsessionsAria":`Detener subsessions en ejecución de {title}`,"mobile.sessions.editProjectAria":`Editar {label}`,"mobile.projectEdit.worktreesTitle":`Worktrees`,"mobile.projectEdit.worktreesEmpty":`Este proyecto aún no tiene worktrees.`,"mobile.projectEdit.reorderHint":`Arrastra para reordenar los worktrees.`,"mobile.projectEdit.dragWorktreeAria":`Arrastra {label} para reordenar`,"mobile.projectEdit.deleteWorktreeAria":`Eliminar worktree {label}`,"mobile.projectEdit.deleteWorktreeTitle":`Eliminar worktree`,"mobile.projectEdit.deleteWorktreeConfirmButton":`Eliminar`,"mobile.projectEdit.deleteWorktreeConfirm":`¿Eliminar el worktree «{name}»? No se puede deshacer.`,"mobile.projectEdit.deleteWorktreeDirty":`Este worktree tiene cambios sin confirmar que se perderán.`,"mobile.projectEdit.deleteWorktreeArchiveNote":`Se archivarán {count} sesión(es) adjunta(s).`,"mobile.projectEdit.deleteLocalBranch":`Eliminar también la rama local`,"mobile.projectEdit.deleteRemoteBranch":`Eliminar también la rama remota`,"mobile.sessions.showMore":`Mostrar {count} más`,"mobile.sessions.search.section.sessions":`Sesiones`,"mobile.sessions.search.section.archived":`Archivadas`,"mobile.sessions.search.section.projects":`Proyectos`,"mobile.sessions.clearSearchAria":`Limpiar búsqueda`,"mobile.header.noProject":`Selecciona un proyecto`,"mobile.header.activeSession":`Sesión activa`,"mobile.header.noSession":`No hay sesión activa`,"mobile.sessions.openSheetAria":`Abrir sesiones y proyectos`,"mobile.sessions.closeSheetAria":`Cerrar sesiones y proyectos`,"mobile.sessions.sheet.title":`Conversaciones recientes`,"mobile.sessions.sheet.resizeAria":`Cambiar el tamaño del panel de sesiones`,"mobile.changes.sheet.resizeAria":`Cambiar el tamaño del panel de cambios`,"mobile.sessions.sheet.description":`Cambia proyectos, abre sesiones o inicia un nuevo chat.`,"mobile.sessions.search.placeholder":`Buscar sesiones`,"mobile.sessions.empty":`No se encontraron sesiones.`,"mobile.sessions.unassignedProject":`Otras sesiones`,"mobile.sessions.newSessionAria":`Iniciar un nuevo chat en este proyecto`,"mobile.sessions.untitled":`Sesión sin título`,"mobile.sessions.project.sessionsSingle":`1 sesión`,"mobile.sessions.project.sessionsPlural":`{count} sesiones`,"mobile.files.refreshAria":`Actualizar archivos`,"mobile.files.backToParentAria":`Volver a {name}`,"mobile.files.rootDirectory":`Archivos del proyecto`,"mobile.files.search.placeholder":`Buscar archivos`,"mobile.files.search.empty":`No se encontraron archivos.`,"mobile.files.parentDirectory":`Directorio superior`,"mobile.files.empty.noDirectory":`Selecciona un proyecto para explorar archivos.`,"mobile.files.empty.directory":`Este directorio está vacío.`,"mobile.files.error.listFailed":`No se pudieron cargar los archivos`,"mobile.files.error.readUnavailable":`La vista previa del archivo no está disponible en este entorno.`,"mobile.files.file.truncated":`Vista previa del archivo truncada para móvil.`,"mobile.files.copyPathAria":`Copiar ruta del archivo`,"mobile.files.copyContent":`Copiar contenido`,"mobile.files.copyContentAria":`Copiar contenido del archivo`,"mobile.files.toast.pathCopied":`Ruta copiada`,"mobile.files.toast.contentCopied":`Contenido copiado`,"mobile.files.toast.copyFailed":`No se pudo copiar`,"mobile.changes.placeholder.title":`Cambios`,"mobile.changes.placeholder.description":`Aquí vivirán la revisión del árbol de trabajo, sync y commits.`,"mobile.changes.branchLabel":`Rama: {branch}`,"mobile.changes.noRemote":`No hay remoto disponible`,"mobile.changes.cleanDescription":`No hay archivos modificados en este workspace.`,"mobile.changes.diffDetail.subtitle":`Diff de solo lectura`,"mobile.changes.diffDetail.loadFailed":`No se pudo cargar el diff`,"mobile.changes.diffDetail.missingTitle":`El archivo ya no tiene cambios`,"mobile.changes.diffDetail.missingDescription":`Vuelve a Cambios y actualiza la lista.`,"mobile.changes.diffDetail.imageUnavailable":`Los diffs de imagen aún no están disponibles en Cambios móvil.`,"mobile.settings.placeholder.title":`Ajustes`,"mobile.settings.placeholder.description":`Aquí vivirán los ajustes móviles de conexión y app.`,"layout.rightSidebar.git":`Git`,"layout.rightSidebar.files":`Archivos`,"layout.rightSidebar.context":`Contexto`,"layout.services.instance":`Instancia`,"layout.services.usage":`Uso`,"sessions.sidebar.header.actions.closeSessions":`Cerrar sesiones`,"sessions.sidebar.header.actions.addProject":`Añadir proyecto`,"sessions.sidebar.header.actions.newSession":`Nuevo chat`,"sessions.sidebar.header.actions.newMultiRun":`Nuevo multi-run`,"sessions.sidebar.header.actions.scheduledTasks":`Tareas programadas`,"sessions.scheduledTasks.dialog.title":`Tareas programadas`,"sessions.scheduledTasks.dialog.actions.create":`Crear`,"sessions.scheduledTasks.dialog.actions.moreAria":`Más acciones para {taskName}`,"sessions.scheduledTasks.dialog.actions.delete":`Eliminar`,"sessions.scheduledTasks.dialog.actions.pause":`Pausar`,"sessions.scheduledTasks.dialog.actions.resume":`Reanudar`,"sessions.scheduledTasks.workspace.filters.all":`Todas`,"sessions.scheduledTasks.workspace.filters.active":`Activas`,"sessions.scheduledTasks.workspace.filters.paused":`En pausa`,"sessions.scheduledTasks.workspace.views.aria":`Vistas de tareas programadas`,"sessions.scheduledTasks.workspace.views.tasks":`Tareas`,"sessions.scheduledTasks.workspace.views.history":`Historial`,"sessions.scheduledTasks.history.loading":`Cargando historial de ejecuciones…`,"sessions.scheduledTasks.history.error.title":`No se pudo cargar el historial`,"sessions.scheduledTasks.history.error.description":`OpenChamber no pudo cargar las ejecuciones registradas.`,"sessions.scheduledTasks.history.error.more":`No se pudieron cargar más ejecuciones. El historial cargado sigue disponible.`,"sessions.scheduledTasks.history.retry":`Reintentar`,"sessions.scheduledTasks.history.empty.title":`Aún no hay ejecuciones`,"sessions.scheduledTasks.history.empty.description":`Las ejecuciones programadas y manuales aparecerán aquí.`,"sessions.scheduledTasks.history.trigger.scheduled":`Programada`,"sessions.scheduledTasks.history.trigger.manual":`Manual`,"sessions.scheduledTasks.history.meta.trigger":`Disparo`,"sessions.scheduledTasks.history.meta.started":`Inicio`,"sessions.scheduledTasks.history.meta.ended":`Fin`,"sessions.scheduledTasks.history.meta.duration":`Duración`,"sessions.scheduledTasks.history.ended.unavailable":`—`,"sessions.scheduledTasks.history.duration.pending":`En curso`,"sessions.scheduledTasks.history.duration.lessThanOneSecond":`<1 s`,"sessions.scheduledTasks.history.duration.milliseconds":`{count} ms`,"sessions.scheduledTasks.history.duration.seconds":`{count} s`,"sessions.scheduledTasks.history.duration.minutesSeconds":`{minutes} min {seconds} s`,"sessions.scheduledTasks.history.duration.minutes":`{count} min`,"sessions.scheduledTasks.history.duration.hoursMinutes":`{hours} h {minutes} min`,"sessions.scheduledTasks.history.duration.hours":`{count} h`,"sessions.scheduledTasks.history.openSession":`Abrir sesión`,"sessions.toast.openFailed":`No se puede cargar la conversación {sessionId}`,"sessions.toast.openFailedMissingDirectory":`No se puede cargar la conversación {sessionId}. Falta la ruta del espacio de trabajo.`,"sessions.toast.openFailedMissingSessionId":`No se puede abrir la conversación. Falta el id de sesión.`,"sessions.scheduledTasks.history.loadingMore":`Cargando más…`,"sessions.scheduledTasks.history.loadMore":`Cargar más`,"sessions.scheduledTasks.workspace.search.placeholder":`Buscar tareas…`,"sessions.scheduledTasks.workspace.search.noResults":`Ninguna tarea coincide con la búsqueda.`,"sessions.scheduledTasks.workspace.partialLoadWarning":`No se pudieron cargar las tareas programadas de algunos proyectos. Las tareas cargadas siguen disponibles.`,"sessions.scheduledTasks.workspace.editor.emptyTitle":`Selecciona una tarea`,"sessions.scheduledTasks.workspace.editor.emptyDescription":`Elige una tarea de la lista o crea una nueva.`,"sessions.scheduledTasks.workspace.confirm.discardChanges":`Los cambios sin guardar se descartarán. ¿Continuar?`,"sessions.scheduledTasks.editor.panel.details":`Detalles`,"sessions.scheduledTasks.editor.panel.frequency":`Frecuencia`,"sessions.scheduledTasks.dialog.description":`Tareas del lado del servidor que crean una nueva sesión y envían un prompt configurado.`,"sessions.scheduledTasks.dialog.project.label":`Proyecto`,"sessions.scheduledTasks.dialog.project.placeholder":`Seleccionar proyecto`,"sessions.scheduledTasks.dialog.project.empty":`No hay proyectos`,"sessions.scheduledTasks.dialog.actions.newTask":`Nueva tarea`,"sessions.scheduledTasks.dialog.actions.runNow":`Ejecutar ahora`,"sessions.scheduledTasks.dialog.actions.edit":`Editar`,"sessions.scheduledTasks.dialog.actions.editAria":`Editar {taskName}`,"sessions.scheduledTasks.dialog.actions.deleteAria":`Eliminar {taskName}`,"sessions.scheduledTasks.dialog.loading":`Cargando tareas...`,"sessions.scheduledTasks.dialog.empty.noTasks":`No hay tareas programadas aún.`,"sessions.scheduledTasks.dialog.empty.selectProject":`Selecciona un proyecto para gestionar tareas programadas.`,"sessions.scheduledTasks.dialog.error.chooseProjectFirst":`Elige un proyecto primero`,"sessions.scheduledTasks.dialog.toast.loadFailed":`No se pudo cargar tareas programadas`,"sessions.scheduledTasks.dialog.toast.saved":`Tarea programada guardada`,"sessions.scheduledTasks.dialog.toast.updateFailed":`No se pudo actualizar la tarea`,"sessions.scheduledTasks.dialog.toast.deleted":`Tarea programada eliminada`,"sessions.scheduledTasks.dialog.toast.deleteFailed":`No se pudo eliminar la tarea`,"sessions.scheduledTasks.dialog.toast.started":`Tarea iniciada`,"sessions.scheduledTasks.dialog.toast.runFailed":`No se pudo ejecutar la tarea`,"sessions.scheduledTasks.dialog.confirm.deleteTask":`Eliminar tarea programada "{taskName}"?`,"sessions.scheduledTasks.dialog.schedule.daily":`Cada día {time}`,"sessions.scheduledTasks.dialog.schedule.dailyWithTimezone":`Cada día {time} ({timezone})`,"sessions.scheduledTasks.dialog.schedule.weekly":`Cada semana {days} {time}`,"sessions.scheduledTasks.dialog.schedule.weeklyWithTimezone":`Cada semana {days} {time} ({timezone})`,"sessions.scheduledTasks.dialog.schedule.once":`Una vez {date} {time}`,"sessions.scheduledTasks.dialog.schedule.onceWithTimezone":`Una vez {date} {time} ({timezone})`,"sessions.scheduledTasks.dialog.schedule.cron":`Cron: {cron}`,"sessions.scheduledTasks.dialog.schedule.cronWithTimezone":`Cron: {cron} ({timezone})`,"sessions.scheduledTasks.dialog.schedule.unknownDate":`Fecha desconocida`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.sun":`Dom`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.mon":`Lun`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.tue":`Mar`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.wed":`Mié`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.thu":`Jue`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.fri":`Vie`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.sat":`Sáb`,"sessions.scheduledTasks.dialog.schedule.weekdayShort.unknown":`?`,"sessions.scheduledTasks.dialog.relativeTime.inLessThanOneMinute":`en <1m`,"sessions.scheduledTasks.dialog.relativeTime.justNow":`ahora mismo`,"sessions.scheduledTasks.dialog.relativeTime.inMinutes":`en {count}m`,"sessions.scheduledTasks.dialog.relativeTime.minutesAgo":`hace {count}m`,"sessions.scheduledTasks.dialog.relativeTime.inDuration":`en {duration}`,"sessions.scheduledTasks.dialog.relativeTime.durationAgo":`hace {duration}`,"sessions.scheduledTasks.dialog.status.success":`Éxito`,"sessions.scheduledTasks.dialog.status.error":`Error`,"sessions.scheduledTasks.dialog.status.running":`Ejecutándose`,"sessions.scheduledTasks.dialog.status.idle":`Inactivo`,"sessions.scheduledTasks.dialog.nextRun.label":`Próximo`,"sessions.scheduledTasks.dialog.lastRun.label":`Última ejecución`,"sessions.scheduledTasks.dialog.lastRun.runningNow":`ejecutándose ahora`,"sessions.scheduledTasks.dialog.lastRun.never":`nunca`,"sessions.scheduledTasks.dialog.taskToggle.enableAria":`Habilitar {taskName}`,"sessions.scheduledTasks.dialog.taskToggle.pauseAria":`Pausar {taskName}`,"sessions.scheduledTasks.dialog.taskToggle.enabled":`Habilitado`,"sessions.scheduledTasks.dialog.taskToggle.paused":`Pausado`,"sessions.scheduledTasks.editor.title.edit":`Editar tarea programada`,"sessions.scheduledTasks.editor.title.new":`Nueva tarea programada`,"sessions.scheduledTasks.editor.description":`Configura una tarea del lado del servidor que crea una nueva sesión y envía un prompt.`,"sessions.scheduledTasks.editor.taskName.label":`Nombre de la tarea`,"sessions.scheduledTasks.editor.taskName.placeholder":`Sincronización diaria`,"sessions.scheduledTasks.editor.scheduleType.label":`Tipo de programación`,"sessions.scheduledTasks.editor.scheduleType.daily":`Diario`,"sessions.scheduledTasks.editor.scheduleType.weekly":`Semanal`,"sessions.scheduledTasks.editor.scheduleType.once":`Una vez`,"sessions.scheduledTasks.editor.scheduleType.cron":`Cron`,"sessions.scheduledTasks.editor.date.label":`Fecha`,"sessions.scheduledTasks.editor.date.placeholder":`Seleccionar fecha`,"sessions.scheduledTasks.editor.date.previousMonth":`Mes anterior`,"sessions.scheduledTasks.editor.date.nextMonth":`Próximo mes`,"sessions.scheduledTasks.editor.date.jumpToToday":`Ir a hoy`,"sessions.scheduledTasks.editor.date.today":`Hoy`,"sessions.scheduledTasks.editor.time.label":`Hora`,"sessions.scheduledTasks.editor.time.hourAria":`Horas`,"sessions.scheduledTasks.editor.time.minuteAria":`Minutos`,"sessions.scheduledTasks.editor.time.periodAria":`Período`,"sessions.scheduledTasks.editor.time.period.am":`AM`,"sessions.scheduledTasks.editor.time.period.pm":`PM`,"sessions.scheduledTasks.editor.times.label":`Horas`,"sessions.scheduledTasks.editor.times.add":`Añadir hora`,"sessions.scheduledTasks.editor.times.removeAria":`Eliminar hora`,"sessions.scheduledTasks.editor.timezone.label":`Zona horaria`,"sessions.scheduledTasks.editor.weekdays.label":`Días de la semana`,"sessions.scheduledTasks.editor.model.label":`Modelo`,"sessions.scheduledTasks.editor.thinkingLevel.label":`Nivel de pensamiento`,"sessions.scheduledTasks.editor.thinkingLevel.default":`Predeterminado`,"sessions.scheduledTasks.editor.agent.label":`Agente`,"sessions.scheduledTasks.editor.prompt.label":`Prompt`,"sessions.scheduledTasks.editor.prompt.placeholder":`Resumir tareas abiertas y proponer próximas acciones`,"sessions.scheduledTasks.editor.enabled.aria":`Habilitar tarea`,"sessions.scheduledTasks.editor.enabled.label":`Habilitado`,"sessions.scheduledTasks.editor.goal.label":`Ejecutar como objetivo`,"sessions.scheduledTasks.editor.goal.aria":`Ejecutar esta tarea como un objetivo que el agente persigue hasta completarlo`,"sessions.scheduledTasks.editor.goal.budgetLabel":`Presupuesto de tokens`,"sessions.scheduledTasks.editor.goal.budgetAria":`Limitar el objetivo a un presupuesto de tokens`,"sessions.scheduledTasks.editor.actions.closeAria":`Cerrar`,"sessions.scheduledTasks.editor.actions.cancel":`Cancelar`,"sessions.scheduledTasks.editor.actions.save":`Guardar`,"sessions.scheduledTasks.editor.actions.saving":`Guardando...`,"sessions.scheduledTasks.editor.toast.saveFailed":`No se pudo guardar la tarea`,"sessions.scheduledTasks.editor.validation.taskNameRequired":`Se requiere nombre de tarea`,"sessions.scheduledTasks.editor.validation.promptRequired":`Se requiere prompt`,"sessions.scheduledTasks.editor.validation.modelRequired":`Se requiere modelo`,"sessions.scheduledTasks.editor.validation.dateFormat":`La fecha debe usar YYYY-MM-DD`,"sessions.scheduledTasks.editor.validation.timeFormat":`La hora debe usar HH:mm`,"sessions.scheduledTasks.editor.validation.atLeastOneTime":`Añadir al menos una hora válida`,"sessions.scheduledTasks.editor.validation.atLeastOneWeekday":`Seleccionar al menos un día de la semana`,"sessions.scheduledTasks.editor.validation.timezoneRequired":`Se requiere zona horaria`,"sessions.scheduledTasks.editor.validation.cronRequired":`Se requiere una expresión cron`,"sessions.scheduledTasks.editor.validation.cronInvalid":`Expresión cron no válida`,"sessions.scheduledTasks.editor.cronExpression.label":`Expresión cron`,"sessions.scheduledTasks.editor.cronExpression.placeholder":`*/5 * * * *`,"sessions.scheduledTasks.editor.cronExpression.nextRuns":`Próximas ejecuciones`,"sessions.scheduledTasks.editor.cronExpression.examples":`Ejemplos`,"sessions.scheduledTasks.editor.cronExpression.examples.every5min":`Cada 5 minutos`,"sessions.scheduledTasks.editor.cronExpression.examples.everyHour":`Cada hora`,"sessions.scheduledTasks.editor.cronExpression.examples.monday9am":`Cada lunes a las 9 a. m.`,"sessions.scheduledTasks.editor.cronExpression.examples.9am5pm":`9 a. m. y 5 p. m. todos los días`,"sessions.scheduledTasks.editor.cronExpression.examples.firstOfMonth":`Primero de cada mes`,"multirun.launcher.title":`Nuevo Multi-Run`,"multirun.launcher.actions.closeEsc":`Cerrar (Esc)`,"multirun.launcher.actions.cancel":`Cancelar`,"multirun.launcher.actions.creating":`Creando...`,"multirun.launcher.actions.startWithModelCount":`Iniciar ({count} modelos)`,"multirun.launcher.project.label":`Proyecto`,"multirun.launcher.project.placeholder":`Seleccionar proyecto`,"multirun.launcher.project.empty":`Añade un proyecto primero.`,"multirun.launcher.project.gitRequired":`Sin aislamiento worktree: las ejecuciones usan el mismo directorio.`,"multirun.launcher.groupName.label":`Nombre del grupo`,"multirun.launcher.groupName.info":`Usado para el directorio de worktree y nombres de rama`,"multirun.launcher.groupName.placeholder":`feature-auth, bugfix-login`,"multirun.launcher.baseBranch.label":`Rama base`,"multirun.launcher.baseBranch.info":`Nueva rama creada desde esta base por modelo`,"multirun.launcher.isolateRuns.label":`Aislar ejecuciones`,"multirun.launcher.agent.label":`Agente`,"multirun.launcher.agent.info":`Agente usado para todas las ejecuciones. Por defecto es el agente configurado.`,"multirun.launcher.setupCommands.label":`Comandos de configuración`,"multirun.launcher.setupCommands.loading":`Cargando...`,"multirun.launcher.setupCommands.commandPlaceholder":`bun install`,"multirun.launcher.setupCommands.removeCommandAria":`Eliminar comando`,"multirun.launcher.setupCommands.addCommand":`Añadir comando`,"multirun.launcher.prompt.label":`Prompt`,"multirun.launcher.prompt.placeholder":`Escribe el prompt que se enviará a todos los modelos...`,"multirun.launcher.attachments.attach":`Adjuntar`,"multirun.launcher.attachments.tooltip":`Archivos idénticos enviados a todas las ejecuciones`,"multirun.launcher.models.label":`Modelos`,"multirun.launcher.models.info":`Selecciona 2-{max} modelos. El mismo modelo puede añadirse varias veces.`,"multirun.launcher.toast.fileTooLarge":`El archivo "{fileName}" es demasiado grande (máximo 10MB)`,"multirun.launcher.toast.attachFailed":`No se pudo adjuntar "{fileName}"`,"multirun.launcher.toast.attachedSingle":`Archivo adjuntado ({count})`,"multirun.launcher.toast.attachedPlural":`Archivos adjuntados ({count})`,"multirun.modelMultiSelect.actions.addModel":`Añadir modelo`,"multirun.modelMultiSelect.search.placeholder":`Buscar modelos`,"multirun.modelMultiSelect.search.noResults":`No se encontraron modelos`,"multirun.modelMultiSelect.sections.favorites":`Favoritos`,"multirun.modelMultiSelect.sections.recent":`Recientes`,"multirun.modelMultiSelect.variant.placeholder":`Pensando`,"multirun.modelMultiSelect.variant.default":`Predeterminado`,"multirun.modelMultiSelect.keyboard.hint":`↑↓ navegar • Enter seleccionar • Esc cerrar`,"multirun.modelMultiSelect.validation.minOnly":`Selecciona al menos {min} modelos.`,"multirun.modelMultiSelect.validation.minToMax":`Selecciona entre {min} y {max} modelos.`,"multirun.agentSelector.placeholder":`Selecciona un agente`,"multirun.fusion.title":`Ejecutar fusion`,"multirun.fusion.description":`Combina los resultados seleccionados del multi-run en una respuesta más sólida.`,"multirun.fusion.provider.placeholder":`Proveedor`,"multirun.fusion.model.placeholder":`Modelo`,"multirun.fusion.sources.label":`Fuentes ({count})`,"multirun.fusion.actions.cancel":`Cancelar`,"multirun.fusion.actions.start":`Iniciar fusion`,"multirun.fusion.actions.starting":`Iniciando...`,"multirun.fusion.toast.noOutputs":`No se encontraron respuestas del asistente para fusionar.`,"multirun.fusion.toast.failed":`No se pudo iniciar fusion.`,"multirun.launcher.attachments.label":`Archivos`,"multirun.launcher.actions.startWithRunCount":`Iniciar ({count} ejecuciones)`,"multirun.launcher.groups.addGroup":`Añadir grupo de ejecución`,"multirun.launcher.groups.removeGroup":`Eliminar grupo`,"multirun.launcher.groups.groupLabel":`Grupo de ejecución {index}`,"multirun.launcher.groups.template.label":`Plantilla`,"multirun.launcher.groups.template.placeholder":`Selecciona una plantilla...`,"multirun.launcher.groups.template.custom":`Prompt personalizado`,"multirun.launcher.groups.prompt.label":`Prompt`,"multirun.launcher.groups.prompt.placeholder":`Introduce el prompt para este grupo...`,"sessions.sidebar.header.actions.searchSessions":`Buscar sesiones`,"sessions.sidebar.header.actions.exitSelection":`Salir de selección`,"sessions.sidebar.header.actions.selectSessions":`Seleccionar sesiones`,"sessions.sidebar.header.actions.sortProjects":`Ordenar proyectos`,"sessions.sidebar.header.actions.sessionDisplayMode":`Acciones de expandir/contraer proyectos`,"sessions.sidebar.header.displayMode.label":`Expandir/contraer proyectos`,"sessions.sidebar.header.displayMode.default":`Predeterminado`,"sessions.sidebar.header.displayMode.minimal":`Mínimo`,"sessions.sidebar.header.displayMode.showRecent":`Mostrar recientes`,"sessions.sidebar.header.displayMode.showArchived":`Mostrar sesiones archivadas`,"sessions.sidebar.header.displayMode.collapseAll":`Colapsar todo`,"sessions.sidebar.header.displayMode.expandAll":`Expandir todo`,"sessions.sidebar.header.projectSort.manual":`Manual`,"sessions.sidebar.header.projectSort.aToZ":`A → Z`,"sessions.sidebar.header.projectSort.zToA":`Z → A`,"sessions.sidebar.header.projectSort.dateAdded":`Más recientes`,"sessions.sidebar.header.projectSort.recent":`Recientes`,"sessions.sidebar.header.search.matchCountSingle":`{count} coincidencia`,"sessions.sidebar.header.search.matchCountPlural":`{count} coincidencias`,"sessions.sidebar.header.search.escapeHint":`Esc para limpiar`,"sessions.sidebar.header.search.placeholder":`Buscar sesiones...`,"sessions.sidebar.header.search.clear":`Limpiar búsqueda`,"sessions.sidebar.footer.actions.settings":`Configuración`,"sessions.sidebar.footer.actions.shortcuts":`Atajos`,"sessions.sidebar.footer.actions.aboutOpenChamber":`Acerca de OpenChamber`,"sessions.sidebar.footer.actions.update":`Actualizar`,"sessions.sidebar.empty.noSessions.title":`No hay sesiones aún`,"sessions.sidebar.empty.noSessions.description":`Crea tu primera sesión para comenzar a programar.`,"sessions.sidebar.empty.noMatches.title":`No hay sesiones coincidentes`,"sessions.sidebar.empty.noMatches.description":`Inténtalo con un título, rama, carpeta o ruta diferente.`,"sessions.sidebar.activity.recentTitle":`Reciente`,"sessions.sidebar.projectsTitle":`Proyectos`,"sessions.sidebar.projectsSyncing":`Sincronizando sesiones…`,"sessions.sidebar.project.loadingSessions":`Cargando sesiones…`,"sessions.switcher.openAria":`Abrir selector de sesiones`,"sessions.switcher.empty":`No hay sesiones recientes`,"sessions.switcher.draftTitle":`Nueva sesión`,"sessions.sidebar.updateCheck.errorTitle":`No se pudo comprobar actualizaciones`,"sessions.sidebar.updateCheck.latestVersion":`Estás en la última versión`,"sessions.sidebar.directory.errorAddProjectTitle":`No se pudo añadir el proyecto`,"sessions.sidebar.directory.errorAddProjectDescription":`Selecciona una carpeta válida.`,"sessions.sidebar.directory.errorSelectDirectoryTitle":`No se pudo seleccionar carpeta`,"sessions.sidebar.folder.newFolderName":`Nueva carpeta`,"sessions.sidebar.bulkActions.delete":`Eliminar`,"sessions.sidebar.bulkActions.archive":`Archivar`,"sessions.sidebar.bulkActions.selectedCount":`{count} seleccionados`,"sessions.sidebar.bulkActions.moveToFolder":`Mover a carpeta`,"sessions.sidebar.bulkActions.deletedSingle":`Se eliminó {count} sesión`,"sessions.sidebar.bulkActions.deletedPlural":`Se eliminaron {count} sesiones`,"sessions.sidebar.bulkActions.failedDeleteSingle":`No se pudo eliminar {count} sesión`,"sessions.sidebar.bulkActions.failedDeletePlural":`No se pudo eliminar {count} sesiones`,"sessions.sidebar.bulkActions.archivedSingle":`Se archivó {count} sesión`,"sessions.sidebar.bulkActions.archivedPlural":`Se archivaron {count} sesiones`,"sessions.sidebar.bulkActions.failedArchiveSingle":`No se pudo archivar {count} sesión`,"sessions.sidebar.bulkActions.failedArchivePlural":`No se pudo archivar {count} sesiones`,"sessions.sidebar.bulkActions.archiveUndoFailed":`No se pudieron restaurar {count} sesiones`,"sessions.sidebar.undo":`Deshacer`,"sessions.sidebar.openSettings":`Ajustes`,"sessions.sidebar.folders.none":`No hay carpetas aún`,"sessions.sidebar.folders.newFolderEllipsis":`Nueva carpeta...`,"sessions.sidebar.folders.removeFromFolder":`Quitar de carpeta`,"sessions.sidebar.folders.moveToFolder":`Mover a carpeta`,"sessions.sidebar.project.actions.newWorktree":`Nuevo worktree`,"sessions.sidebar.project.actions.newWorktreeEllipsis":`Nuevo worktree...`,"sessions.sidebar.project.actions.projectMenu":`Menú del proyecto`,"sessions.sidebar.project.actions.syncSessions":`Sincronizar sesiones`,"sessions.sidebar.project.actions.newSession":`Nueva sesión`,"sessions.sidebar.project.actions.closeProject":`Cerrar proyecto`,"sessions.sidebar.project.actions.edit":`Editar`,"sessions.sidebar.project.actions.newDraftSession":`Nueva sesión de borrador`,"sessions.sidebar.session.menu.rename":`Cambiar nombre`,"sessions.sidebar.session.rename.save":`Guardar nombre de sesión`,"sessions.sidebar.session.rename.cancel":`Cancelar cambio de nombre de sesión`,"sessions.sidebar.session.rename.smartTitle":`Generar títulos automáticamente`,"sessions.sidebar.session.menu.unpin":`Desanclar`,"sessions.sidebar.session.menu.pin":`Anclar`,"sessions.sidebar.session.pin.error":`No se pudo anclar la sesión`,"sessions.sidebar.session.unpin.error":`No se pudo desanclar la sesión`,"sessions.sidebar.session.menu.share":`Compartir`,"sessions.sidebar.session.menu.copied":`Copiado`,"sessions.sidebar.session.menu.copyLink":`Copiar enlace`,"sessions.sidebar.session.menu.unshare":`Dejar de compartir`,"sessions.sidebar.session.menu.exportMarkdown":`Exportar Markdown`,"sessions.sidebar.session.menu.refreshTranscript":`Sincronizar mensajes`,"sessions.sidebar.session.menu.refreshTranscriptSuccess":`Mensajes sincronizados`,"sessions.sidebar.session.menu.refreshTranscriptFailed":`No se pudieron sincronizar los mensajes`,"sessions.sidebar.session.menu.runFusion":`Ejecutar fusion`,"sessions.sidebar.session.menu.openInSidePanel":`Abrir en panel lateral`,"sessions.sidebar.session.actions.openInEditor":`Abrir en el editor`,"sessions.sidebar.session.menu.betaBadge":`beta`,"sessions.sidebar.session.menu.label":`Menú de sesión`,"sessions.sidebar.session.untitled":`Sesión sin título`,"sessions.sidebar.session.export.nothingToExport":`No hay nada para exportar`,"sessions.sidebar.session.export.success":`Sesión exportada`,"sessions.sidebar.session.export.failedRevealPath":`No se pudo mostrar la ruta`,"sessions.sidebar.session.export.untitledSubagent":`Subagente sin título`,"sessions.sidebar.session.export.skippedSubtaskSingle":`La sesión se exportó, pero se omitió {count} tarea de subagente que no se pudo cargar.`,"sessions.sidebar.session.export.skippedSubtaskMany":`La sesión se exportó, pero se omitieron {count} tareas de subagente que no se pudieron cargar.`,"sessions.sidebar.session.export.dialog.title":`Exportar Markdown`,"sessions.sidebar.session.export.dialog.descriptionSingle":`Esta sesión tiene {count} tarea de subagente. ¿Incluirla en la exportación?`,"sessions.sidebar.session.export.dialog.descriptionMany":`Esta sesión tiene {count} tareas de subagente. ¿Incluirlas en la exportación?`,"sessions.sidebar.session.export.dialog.includeSubtasks":`Incluir tareas de subagente`,"sessions.sidebar.session.export.dialog.confirm":`Exportar`,"sessions.sidebar.session.status.active":`Sesión activa`,"sessions.sidebar.session.status.unread":`Actualizaciones no leídas`,"sessions.sidebar.session.status.pinned":`Sesión anclada`,"sessions.sidebar.session.actions.pinned":`Fijado`,"sessions.sidebar.session.status.permissionRequired":`Permiso requerido`,"sessions.sidebar.session.status.questionRequired":`Pregunta pendiente`,"sessions.sidebar.session.subsessions.collapse":`Colapsar subsesiones`,"sessions.sidebar.session.subsessions.expand":`Expandir subsesiones`,"sessions.sidebar.dialogs.deleteSession.title":`¿Eliminar sesión?`,"sessions.sidebar.dialogs.archiveSession.title":`¿Archivar sesión?`,"sessions.sidebar.dialogs.deleteSession.withOneSubtask":`"{sessionTitle}" y su {count} subtarea se eliminarán permanentemente.`,"sessions.sidebar.dialogs.deleteSession.withManySubtasks":`"{sessionTitle}" y sus {count} subtareas se eliminarán permanentemente.`,"sessions.sidebar.dialogs.archiveSession.withOneSubtask":`"{sessionTitle}" y su {count} subtarea se archivarán.`,"sessions.sidebar.dialogs.archiveSession.withManySubtasks":`"{sessionTitle}" y sus {count} subtareas se archivarán.`,"sessions.sidebar.dialogs.deleteSession.single":`"{sessionTitle}" se eliminará permanentemente.`,"sessions.sidebar.dialogs.archiveSession.single":`"{sessionTitle}" se archivará.`,"sessions.sidebar.dialogs.neverAsk":`Nunca preguntar`,"sessions.sidebar.dialogs.cancel":`Cancelar`,"sessions.sidebar.dialogs.deleteSession.titleAction":`Eliminar sesión`,"sessions.sidebar.dialogs.deleteSessions.titleAction":`Eliminar sesiones`,"sessions.sidebar.dialogs.deleteSessions.title":`¿Eliminar sesiones?`,"sessions.sidebar.dialogs.archiveSessions.title":`¿Archivar sesiones?`,"sessions.sidebar.dialogs.deleteSessions.singleDescription":`Se eliminará {count} sesión permanentemente.`,"sessions.sidebar.dialogs.deleteSessions.pluralDescription":`{count} sesiones se eliminarán permanentemente.`,"sessions.sidebar.dialogs.archiveSessions.singleDescription":`{count} sesión se archivará.`,"sessions.sidebar.dialogs.archiveSessions.pluralDescription":`{count} sesiones se archivarán.`,"sessions.sidebar.dialogs.deleteFolder.title":`¿Eliminar carpeta?`,"sessions.sidebar.dialogs.deleteFolder.withOneSubfolder":`"{folderName}" se eliminará junto con {count} subcarpeta. Las sesiones dentro no se eliminarán.`,"sessions.sidebar.dialogs.deleteFolder.withManySubfolders":`"{folderName}" se eliminará junto con {count} subcarpetas. Las sesiones dentro no se eliminarán.`,"sessions.sidebar.dialogs.deleteFolder.withContentsNoSubfolders":`"{folderName}" se eliminará. Las sesiones dentro no se eliminarán.`,"sessions.sidebar.dialogs.deleteFolder.single":`"{folderName}" se eliminará permanentemente.`,"sessions.sidebar.dialogs.deleteResult.singleFailedToDelete":`{count} sesión no se pudo eliminar.`,"sessions.sidebar.dialogs.deleteResult.manyFailedToDelete":`{count} sesiones no se pudieron eliminar.`,"sessions.sidebar.dialogs.deleteResult.singleFailedToArchive":`{count} sesión no se pudo archivar.`,"sessions.sidebar.dialogs.deleteResult.manyFailedToArchive":`{count} sesiones no se pudieron archivar.`,"sessions.sidebar.dialogs.deleteResult.removedFromDate":`Se eliminaron todas las sesiones de {dateLabel}.`,"sessions.sidebar.dialogs.deleteResult.tryAgain":`Vuelve a intentarlo en un momento.`,"sessions.sidebar.dialogs.worktreeDelete.descriptionNoLinked":`Esta acción elimina el worktree seleccionado.`,"sessions.sidebar.dialogs.worktreeDelete.descriptionOneLinked":`Esta acción elimina el worktree seleccionado y archiva {count} sesión vinculada.`,"sessions.sidebar.dialogs.worktreeDelete.descriptionManyLinked":`Esta acción elimina el worktree seleccionado y archiva {count} sesiones vinculadas.`,"sessions.sidebar.dialogs.sessionDelete.descriptionOne":`Esta acción elimina permanentemente 1 sesión.`,"sessions.sidebar.dialogs.sessionDelete.descriptionOneWithDate":`Esta acción elimina permanentemente 1 sesión de {dateLabel}.`,"sessions.sidebar.dialogs.sessionDelete.descriptionMany":`Esta acción elimina permanentemente {count} sesiones.`,"sessions.sidebar.dialogs.sessionDelete.descriptionManyWithDate":`Esta acción elimina permanentemente {count} sesiones de {dateLabel}.`,"sessions.sidebar.dialogs.sessionList.more":`+{count} más`,"sessions.sidebar.session.share.successTitle":`Sesión compartida`,"sessions.sidebar.session.share.successDescription":`Puedes copiar el enlace desde el menú.`,"sessions.sidebar.session.share.error":`No se puede compartir la sesión`,"sessions.sidebar.session.share.copyUrlError":`No se pudo copiar la URL`,"sessions.sidebar.session.unshare.success":`Sesión dejó de compartirse`,"sessions.sidebar.session.unshare.error":`No se puede dejar de compartir la sesión`,"sessions.sidebar.session.delete.success":`Sesión eliminada`,"sessions.sidebar.session.delete.error":`No se pudo eliminar la sesión`,"sessions.sidebar.session.archive.success":`Sesión archivada`,"sessions.sidebar.session.archive.error":`No se pudo archivar la sesión`,"sessions.sidebar.session.archive.undoFailed":`No se pudo deshacer el archivado`,"sessions.sidebar.group.pr.checksPassed":`{success}/{total} comprobaciones aprobadas`,"sessions.sidebar.group.pr.failingCount":`{count} con fallos`,"sessions.sidebar.group.pr.pendingCount":`{count} pendientes`,"sessions.sidebar.group.pr.conflictsOrBlocked":`Conflictos o bloqueados`,"sessions.sidebar.group.pr.mergeable":`Se puede hacer merge`,"sessions.sidebar.group.pr.mergeState":`Estado de merge: {state}`,"sessions.sidebar.group.pr.status.merged":`Fusionada`,"sessions.sidebar.group.pr.status.readyToMerge":`Lista para fusionar`,"sessions.sidebar.group.pr.status.open":`PR abierto`,"sessions.sidebar.group.pr.status.mergeConflicts":`Conflictos de merge`,"sessions.sidebar.group.pr.status.mergeBlocked":`Fusión bloqueada`,"sessions.sidebar.group.pr.status.draft":`PR en borrador`,"sessions.sidebar.group.pr.status.closed":`Cerrado`,"sessions.sidebar.group.empty.noArchivedSessions":`No hay sesiones archivadas aún.`,"sessions.sidebar.group.empty.noSessionsInWorkspace":`Aún no hay sesiones en este espacio de trabajo.`,"sessions.sidebar.group.showMore":`Más`,"sessions.sidebar.group.showMoreSingle":`Mostrar {count} más sesión`,"sessions.sidebar.group.showMorePlural":`Mostrar {count} más sesiones`,"sessions.sidebar.group.showFewer":`Menos`,"sessions.sidebar.group.expandAria":`Expandir {label}`,"sessions.sidebar.group.collapseAria":`Colapsar {label}`,"sessions.sidebar.group.actions.deleteArchivedInGroupAria":`Eliminar sesiones archivadas en {label}`,"sessions.sidebar.group.actions.deleteArchivedSessions":`Eliminar sesiones archivadas`,"sessions.sidebar.group.actions.deleteGroupAria":`Eliminar {label}`,"sessions.sidebar.group.actions.deleteWorktree":`Eliminar worktree`,"sessions.sidebar.group.actions.newDraftInGroupAria":`Nueva sesión de borrador en {label}`,"sessions.sidebar.grouping.projectRoot":`raíz del proyecto`,"sessions.sidebar.grouping.projectRootWithBranch":`raíz del proyecto: {branch}`,"sessions.sidebar.grouping.archived":`archivado`,"sessions.sidebar.grouping.archivedDescription":`Sesiones archivadas y no asignadas`,"sessions.sidebar.folderItem.expandAria":`Expandir carpeta {folderName}`,"sessions.sidebar.folderItem.collapseAria":`Colapsar carpeta {folderName}`,"sessions.sidebar.folderItem.namePlaceholder":`Nombre de carpeta`,"sessions.sidebar.folderItem.newSessionAria":`Nueva sesión en {folderName}`,"sessions.sidebar.folderItem.newSubfolderAria":`Nueva subcarpeta en {folderName}`,"sessions.sidebar.folderItem.newSubfolder":`Nueva subcarpeta`,"sessions.sidebar.folderItem.renameAria":`Cambiar nombre carpeta {folderName}`,"sessions.sidebar.folderItem.deleteArchivedInFolderAria":`Eliminar sesiones archivadas en carpeta {folderName}`,"sessions.sidebar.folderItem.deleteFolderAria":`Eliminar carpeta {folderName}`,"sessions.sidebar.folderItem.emptyFolder":`Vaciar carpeta`,"sessions.sidebar.sessionDialogs.ok":`Aceptar`,"sessions.sidebar.sessionDialogs.linkedSessionSingle":`Sesión vinculada`,"sessions.sidebar.sessionDialogs.linkedSessionPlural":`Sesiones vinculadas`,"sessions.sidebar.sessionDialogs.delete.note":`Los directorios de worktree permanecen intactos. Las subsesiones vinculadas a las sesiones seleccionadas también serán eliminadas.`,"sessions.sidebar.sessionDialogs.directory.errorSelectTitle":`No se pudo seleccionar directorio`,"sessions.sidebar.sessionDialogs.directory.errorOpenTitle":`No se pudo abrir directorio`,"sessions.sidebar.sessionDialogs.directory.errorOpenDescription":`Desktop no pudo otorgar acceso a archivos.`,"sessions.sidebar.sessionDialogs.directory.errorAddProjectTitle":`No se pudo añadir proyecto`,"sessions.sidebar.sessionDialogs.directory.errorAddProjectDescription":`Selecciona una ruta de directorio válida.`,"sessions.sidebar.sessionDialogs.worktree.errorRemoveTitle":`No se pudo eliminar worktree`,"sessions.sidebar.sessionDialogs.worktree.removedTitle":`Worktree eliminado`,"sessions.sidebar.sessionDialogs.worktree.removed":`Worktree eliminado.`,"sessions.sidebar.sessionDialogs.worktree.removedWithRemote":`Worktree y rama remota eliminados.`,"sessions.sidebar.sessionDialogs.worktree.attachedArchived":`Worktree adjunto archivado.`,"sessions.sidebar.sessionDialogs.worktree.attachedArchivedPlural":`Worktrees adjuntos archivados.`,"sessions.sidebar.sessionDialogs.worktree.archivedAndRemoteRemoved":`Worktrees archivados y ramas remotas eliminadas.`,"sessions.sidebar.sessionDialogs.worktree.label":`Worktree`,"sessions.sidebar.sessionDialogs.worktree.pathUnavailable":`Ruta de worktree no disponible.`,"sessions.sidebar.sessionDialogs.worktree.uncommittedWarning":`Los cambios sin commit se perderán.`,"sessions.sidebar.sessionDialogs.actions.deleteRemoteBranch":`Eliminar rama remota`,"sessions.sidebar.sessionDialogs.actions.remoteBranchInfoUnavailable":`Información de rama remota no disponible`,"sessions.sidebar.sessionDialogs.actions.deleteLocalBranch":`Eliminar rama local`,"sessions.sidebar.sessionDialogs.actions.deleting":`Eliminando…`,"sessions.sidebar.sessionDialogs.actions.deleteWorktree":`Eliminar worktree`,"gitView.branch.branchToMergeInto":`Rama de destino del merge`,"gitView.branch.branchToRebaseOnto":`rama de destino del rebase`,"gitView.branch.create":`Crear nueva rama...`,"gitView.branch.currentBadge":`Actual`,"gitView.branch.currentBranchFallback":`rama actual`,"gitView.branch.currentBranchTooltip":`Rama actual`,"gitView.branch.detachedHead":`HEAD desvinculado`,"gitView.branch.dialogDescriptionPrefix":`Elige cómo traer otra rama a`,"gitView.branch.empty":`No se encontraron ramas.`,"gitView.branch.localBranches":`Ramas locales`,"gitView.branch.mergeDescription":`Crea un commit de merge y conserva el historial.`,"gitView.branch.mergeRebase":`Merge/Rebase`,"gitView.branch.mergeRebaseTooltip":`Actualiza esta rama desde otra rama.`,"gitView.branch.mergingInProgress":`Merge en curso`,"gitView.branch.namePlaceholder":`Nombre de la rama`,"gitView.branch.newBranchPlaceholder":`Nombre de la nueva rama`,"gitView.branch.noLocalBranches":`No hay ramas locales`,"gitView.branch.noRemoteBranches":`No hay ramas remotas`,"gitView.branch.operation":`Operación`,"gitView.branch.operationCompleted":`Operación completada`,"gitView.branch.operationFailed":`No se pudo completar la operación`,"gitView.branch.pushToPrefix":`Enviar`,"gitView.branch.pushToSuffix":`a:`,"gitView.branch.rebaseDescription":`Reaplica tus commits encima de la rama seleccionada.`,"gitView.branch.rebasingInProgress":`Rebase en progreso`,"gitView.branch.remoteBranches":`Ramas remotas`,"gitView.branch.renameTitle":`Cambiar nombre de rama`,"gitView.branch.renameSave":`Guardar nombre de rama`,"gitView.branch.renameSaving":`Guardando nombre de rama`,"gitView.branch.renameCancel":`Cancelar cambio de nombre de rama`,"gitView.branch.searchPlaceholder":`Buscar ramas...`,"gitView.branch.selectBranch":`Seleccionar rama`,"gitView.branch.summaryMergeInfix":`en`,"gitView.branch.summaryMergePrefix":`Se hará merge de`,"gitView.branch.summaryRebaseInfix":`sobre`,"gitView.branch.summaryRebasePrefix":`Se hará rebase de`,"gitView.branch.updateDescriptionPrefix":`Trae los últimos cambios a`,"gitView.branch.updateTitle":`Actualizar rama`,"gitView.changes.changedFilesAria":`Archivos modificados`,"gitView.changes.clearSelectionAria":`Limpiar selección de archivos`,"gitView.changes.collapseDirectoryAria":`Contraer directorio`,"gitView.changes.expandDirectoryAria":`Expandir directorio`,"gitView.changes.revertAll":`Revertir todo`,"gitView.changes.revertAllDescriptionPlural":`Se descartarán los cambios locales de todos los archivos de la lista.`,"gitView.changes.revertAllDescriptionSingle":`Se descartarán los cambios locales del archivo seleccionado.`,"gitView.changes.revertAllDialogTitle":`¿Revertir todos los cambios?`,"gitView.changes.revertDirectoryAria":`Revertir cambios en {path}`,"gitView.changes.revertDirectory":`Revertir carpeta`,"gitView.changes.revertDirectoryDescriptionPlural":`Se descartarán los cambios locales de {count} archivos en {path}.`,"gitView.changes.revertDirectoryDescriptionSingle":`Se descartarán los cambios locales de {count} archivo en {path}.`,"gitView.changes.revertDirectoryDialogTitle":`¿Revertir cambios de la carpeta?`,"gitView.changes.revertDirectoryTooltip":`Revertir cambios de la carpeta`,"gitView.changes.revertFileAria":`Revertir archivo`,"gitView.changes.revertFileTooltip":`Revertir cambios`,"gitView.changes.reverting":`Revertiendo...`,"gitView.changes.selectAllAria":`Seleccionar todos los archivos`,"gitView.changes.selectFileAria":`Seleccionar archivo`,"gitView.changes.deferredTitle":`{count} archivos modificados`,"gitView.changes.deferredStagedCount":`Preparados: {count}`,"gitView.changes.deferredUnstagedCount":`Sin preparar: {count}`,"gitView.changes.deferredHint":`Los conjuntos de cambios muy grandes no se muestran automáticamente para mantener la aplicación fluida.`,"gitView.changes.deferredLoadAction":`Cargar cambios`,"gitView.changes.stagedTitle":`Preparados`,"gitView.changes.resizeSplitAria":`Ajustar tamaño de cambios preparados y sin preparar`,"gitView.changes.stageAllAria":`Preparar todos los cambios`,"gitView.changes.stageDirectoryAria":`Preparar todos los cambios en {path}`,"gitView.changes.stageFileAria":`Preparar {path}`,"gitView.changes.title":`Cambios`,"gitView.changes.toggleDirectorySelectionAria":`Alternar selección de directorio`,"gitView.changes.unstageAllAria":`Quitar todos los cambios del área preparada`,"gitView.changes.unstageDirectoryAria":`Quitar del área preparada todos los cambios en {path}`,"gitView.changes.unstageFileAria":`Quitar {path} del área preparada`,"gitView.commit.addGitmoji":`Añadir gitmoji`,"gitView.commit.aiHighlights.insertAria":`Insertar`,"gitView.commit.aiHighlights.insertTooltip":`Insertar`,"gitView.commit.aiHighlights.title":`Puntos destacados`,"gitView.commit.commit":`Commit`,"gitView.commit.commitAria":`Commit`,"gitView.commit.committing":`Creando commit...`,"gitView.commit.generate":`Generar`,"gitView.commit.generateAria":`Generar mensaje de commit`,"gitView.commit.messagePlaceholder":`Mensaje de commit`,"gitView.commit.push":`Commit & sync`,"gitView.commit.pushAria":`Commit and sync`,"gitView.commit.pushing":`Sincronizando...`,"gitView.commit.selectFilesHint":`Selecciona archivos en Cambios para habilitar el commit.`,"gitView.commit.stageFilesHint":`Prepara archivos para habilitar el commit.`,"gitView.commit.title":`Commit`,"gitView.common.cancel":`Cancelar`,"gitView.common.close":`Cerrar`,"gitView.common.done":`Hecho`,"gitView.common.processing":`Procesando...`,"gitView.common.reset":`Restablecer`,"gitView.conflict.abortOperation":`Abortar operación`,"gitView.conflict.conflictedFiles":`Archivos en conflicto:`,"gitView.conflict.continueLater":`Continuar más tarde`,"gitView.conflict.detectedDescription":`Se detectaron conflictos que debes resolver.`,"gitView.conflict.detectedTitle":`Conflictos detectados`,"gitView.conflict.errorLoadingDetails":`No se pudo cargar detalles`,"gitView.conflict.headInfo":`Información de HEAD:`,"gitView.conflict.loadFailed":`No se pudo cargar`,"gitView.conflict.loading":`Cargando detalles del conflicto...`,"gitView.conflict.noActiveSession":`Sin sesión activa`,"gitView.conflict.noActiveSessionDescription":`Abre o crea una sesión para resolver los conflictos.`,"gitView.conflict.resolveCurrentSession":`Resolver en sesión actual`,"gitView.conflict.resolveNewSession":`Resolver en nueva sesión`,"gitView.empty.cleanDescription":`No hay cambios pendientes.`,"gitView.empty.cleanTitle":`Worktree limpio`,"gitView.empty.pullBehindPlural":`Pull de {count} commits`,"gitView.empty.pullBehindSingle":`Pull de {count} commit`,"gitView.header.identityTooltip":`Identidad de Git`,"gitView.header.noIdentity":`Sin identidad`,"gitView.header.noProfiles":`No hay perfiles disponibles para aplicar.`,"gitView.header.repositoryViews":`Vistas del repositorio`,"gitView.header.removeRemoteAria":`Eliminar remoto`,"gitView.header.removeRemoteTitle":`Eliminar remoto`,"gitView.header.upstreamSynced":`sincronizado`,"gitView.header.upstreamTooltip":`Comparado con {target}.`,"gitView.header.upstreamTooltipTracking":`Comparado con {target}. Los indicadores principales de sincronización aún reflejan {tracking}.`,"gitView.history.actions.cancelButton":`Cancelar`,"gitView.history.actions.checkoutConfirm":`¿Cambiar a este commit como HEAD separado?`,"gitView.history.actions.cherryPickConfirm":`¿Aplicar cherry-pick de este commit sobre la rama actual?`,"gitView.history.actions.conflictToastDescription":`Conflictos en: {files}. Resuélvelos manualmente y haz commit, o aborta con git cherry-pick/revert --abort.`,"gitView.history.actions.conflictToastTitle":`Conflicto`,"gitView.history.actions.confirmButton":`Confirmar`,"gitView.history.actions.mergeConfirm":`¿Fusionar este commit en la rama actual?`,"gitView.history.actions.rebaseConfirm":`¿Rebasear la rama actual sobre este commit?`,"gitView.history.actions.resetHardConfirm":`Reset hard — HEAD se mueve y todos los cambios sin commit se descartan permanentemente.`,"gitView.history.actions.resetMixedConfirm":`Reset mixed — HEAD se mueve y los cambios quedan sin preparar.`,"gitView.history.actions.resetSoftConfirm":`Reset soft — HEAD se mueve y los cambios preparados se conservan.`,"gitView.history.actions.revertConfirm":`¿Preparar una reversión de este commit?`,"gitView.history.actions.checkout":`Cambiar a commit`,"gitView.history.actions.cherryPick":`Cherry-pick`,"gitView.history.actions.createBranch":`Crear rama aquí`,"gitView.history.actions.createBranchConfirm":`Crear`,"gitView.history.actions.createBranchPlaceholder":`Nombre de rama`,"gitView.history.actions.detachedHead":`Checkout realizado (HEAD separado)`,"gitView.history.actions.merge":`Fusionar en la actual`,"gitView.history.actions.rebase":`Rebasear sobre este`,"gitView.history.actions.reset":`Reset...`,"gitView.history.actions.resetHard":`Hard — descartar todos los cambios`,"gitView.history.actions.resetHardConfirmButton":`Descartar cambios`,"gitView.history.actions.resetMixed":`Mixed — quitar del stage`,"gitView.history.actions.resetSoft":`Soft — conservar staged`,"gitView.history.actions.revert":`Revertir`,"gitView.history.binary":`Binario`,"gitView.history.binaryNoDiff":`Archivo binario — no hay diff disponible`,"gitView.history.commitsPlaceholder":`Buscar commits...`,"gitView.history.copySha":`Copiar SHA`,"gitView.history.diffError":`Error al cargar el diff. Haz clic para reintentar.`,"gitView.history.largeDiffDescription":`El renderizado puede ser lento. Puedes ver el diff igualmente haciendo clic abajo.`,"gitView.history.largeDiffTitle":`Diff grande ({count} líneas cambiadas)`,"gitView.history.loadingDiff":`Cargando diff...`,"gitView.history.loadingFiles":`Cargando archivos...`,"gitView.history.loadMore":`Cargar más`,"gitView.history.loadingMore":`Cargando...`,"gitView.history.logSize100":`100 commits`,"gitView.history.logSize25":`25 commits`,"gitView.history.logSize50":`50 commits`,"gitView.history.noCommits":`No se encontraron commits`,"gitView.history.noFiles":`No hay archivos`,"gitView.history.renamedNoDiff":`Archivo renombrado — diff no soportado`,"gitView.history.renderDiffAnyway":`Renderizar igualmente`,"gitView.history.title":`Historial`,"gitView.graph.title":`Grafo`,"gitView.integrate.checking":`Verificando…`,"gitView.integrate.cherryPickAbortedToast":`Cherry-pick abortado`,"gitView.integrate.cherryPickConflictDescription":`Resuelve los conflictos de cherry-pick para continuar.`,"gitView.integrate.cherryPickConflictToast":`Conflictos de cherry-pick detectados`,"gitView.integrate.cherryPickContinueFailedToast":`No se pudo continuar el cherry-pick`,"gitView.integrate.cherryPickFinishedToast":`Cherry-pick completado`,"gitView.integrate.commitsMovedDescriptionPlural":`Commits movidos`,"gitView.integrate.commitsMovedDescriptionSingle":`Commit movido`,"gitView.integrate.commitsMovedToast":`Commits movidos`,"gitView.integrate.commitsToMove":`Commits por mover`,"gitView.integrate.conflictsInFiles":`Conflictos en archivos`,"gitView.integrate.currentCommit":`Commit actual`,"gitView.integrate.currentSession":`Sesión actual`,"gitView.integrate.failedToMoveToast":`No se pudieron mover los commits`,"gitView.integrate.moreFiles":`Más archivos`,"gitView.integrate.move":`Mover`,"gitView.integrate.moveCommits":`Mover commits`,"gitView.integrate.moving":`Moviendo…`,"gitView.integrate.newSession":`Nueva sesión`,"gitView.integrate.noActiveSession":`Sin sesión activa`,"gitView.integrate.noActiveSessionDescription":`Abre o crea una sesión para resolver los conflictos.`,"gitView.integrate.noCommitsToMove":`No hay commits para mover.`,"gitView.integrate.noCommitsToMoveToast":`No hay commits para mover`,"gitView.integrate.previewUnavailable":`Vista previa no disponible`,"gitView.integrate.showAll":`Mostrar todo`,"gitView.integrate.showLess":`Mostrar menos`,"gitView.integrate.showingFirstCommits":`Mostrando los primeros commits`,"gitView.integrate.target":`Destino`,"gitView.integrate.title":`Reintegrar commits`,"gitView.integrate.toMoveCount":`Commits por mover`,"gitView.operation.abort":`Abortar`,"gitView.operation.continue":`Continuar`,"gitView.operation.inProgressTitle":`{operation} en progreso`,"gitView.operation.merge":`Merge`,"gitView.operation.mergeInProgressWithHead":`Haciendo merge de {head}`,"gitView.operation.mergingMessage":`Haciendo merge: {message}`,"gitView.operation.rebase":`Rebase`,"gitView.operation.rebaseInProgress":`Rebase en progreso`,"gitView.operation.rebasingOnto":`Haciendo rebase de {headName} sobre {onto}`,"gitView.operation.resolveConflictsHint":`Resuelve los conflictos y luego continúa la operación.`,"gitView.operation.resolveWithAi":`Resolver con IA`,"gitView.stash.confirmButton":`Guardar cambios y continuar`,"gitView.stash.description":`Tienes cambios sin commit que podrían sobrescribirse. Guárdalos temporalmente antes de continuar.`,"gitView.stash.mergeWith":`Merge con`,"gitView.stash.rebaseOnto":`Rebase sobre`,"gitView.stash.restoreAfterOperation":`Restaurar después de la operación`,"gitView.stash.restoreAria":`Restaurar stash`,"gitView.stash.stepRestore":`Restaura tus cambios guardados`,"gitView.stash.stepStash":`Guarda tus cambios sin commit`,"gitView.stash.thisWill":`Esto hará:`,"gitView.stash.title":`Cambios sin commit`,"gitView.stashes.actions.apply":`Apply`,"gitView.stashes.actions.drop":`Drop`,"gitView.stashes.actions.pop":`Pop`,"gitView.stashes.actions.stashCurrent":`Stash current changes`,"gitView.stashes.actions.stashCurrentWithCount":`Stash {count} files`,"gitView.stashes.confirm.drop":`Drop {ref}?`,"gitView.stashes.description":`Save, restore, and clean up Git stashes for this repository.`,"gitView.stashes.empty.list":`No stashes yet.`,"gitView.stashes.empty.search":`No matching stashes.`,"gitView.stashes.includeUntrackedHint":`Untracked files are included automatically.`,"gitView.stashes.fileCount":`{count} files`,"gitView.stashes.fileCountLoading":`counting files...`,"gitView.stashes.itemNumber":`#{number}`,"gitView.stashes.latestLabel":`Latest`,"gitView.stashes.messagePlaceholder":`Stash name`,"gitView.stashes.searchPlaceholder":`Search stashes`,"gitView.stashes.title":`Stashes`,"gitView.stashes.toast.applyFailed":`Failed to apply stash`,"gitView.stashes.toast.applySuccess":`Stash applied`,"gitView.stashes.toast.createFailed":`Failed to stash changes`,"gitView.stashes.toast.created":`Changes stashed`,"gitView.stashes.toast.dropFailed":`Failed to drop stash`,"gitView.stashes.toast.dropSuccess":`Stash dropped`,"gitView.stashes.toast.loadFailed":`Failed to load stashes`,"gitView.stashes.toast.noChanges":`No local changes to stash`,"gitView.stashes.toast.popFailed":`Failed to pop stash`,"gitView.stashes.toast.popSuccess":`Stash popped`,"gitView.stashes.untitled":`Untitled stash`,"gitView.sync.fetch":`Fetch`,"gitView.sync.fetchFromRemote":`Fetch de {name}`,"gitView.sync.fetchTooltip":`Fetch del remoto`,"gitView.sync.commitOrStashTooltip":`Haz commit o stash de tus cambios antes de sincronizar`,"gitView.sync.moreActionsAria":`Más acciones de sincronización`,"gitView.sync.noRemoteTooltip":`No hay remotos configurados`,"gitView.sync.pull":`Pull`,"gitView.sync.pullTooltip":`Hacer pull`,"gitView.sync.pullTooltipBehind":`Hacer pull ({count} detrás)`,"gitView.sync.push":`Push`,"gitView.sync.pushTooltip":`Hacer push`,"gitView.sync.pushTooltipAhead":`Hacer push ({count} por delante)`,"gitView.sync.sync":`sync`,"gitView.sync.syncChanges":`Sync Changes`,"gitView.sync.syncChangesTooltip":`Sync Changes ({behind} abajo, {ahead} arriba)`,"gitView.sync.syncChangesWithCounts":`Sync Changes {behind}↓ {ahead}↑`,"gitView.sync.syncCounts":`{behind}↓ {ahead}↑`,"gitView.branch.actionsUnavailable":`Acciones de rama no disponibles en este estado del repositorio`,"gitView.conflict.noDetailsAvailable":`No hay detalles de conflicto disponibles`,"gitView.empty.notGitRepository":`Este directorio no es un repositorio Git`,"gitView.empty.notGitRepositoryDescription":`Inicializa Git en este directorio o abre un repositorio.`,"gitView.empty.selectSessionOrDirectory":`Selecciona una sesión o directorio para ver el estado de Git`,"gitView.empty.worktreeFeaturesUnavailable":`Las características de worktree no están disponibles en este modo de espacio de trabajo.`,"gitView.empty.worktreeSetupDescription":`Finalizando la configuración de worktree y preparando el estado del repositorio.`,"gitView.empty.worktreeSetupInProgress":`Configuración de worktree en progreso`,"worktree.bootstrap.toast.failed":`Error al configurar el worktree`,"worktree.bootstrap.toast.failedDescription":`El worktree se creó, pero la configuración en segundo plano no terminó.`,"worktree.bootstrap.toast.timeoutDescription":`El worktree se creó, pero la configuración en segundo plano agotó el tiempo de espera.`,"gitView.gitmoji.empty":`No se encontraron gitmojis`,"gitView.gitmoji.searchPlaceholder":`Buscar gitmojis...`,"gitView.gitmoji.title":`Insertar gitmoji`,"gitView.history.dialogDescription":`Navega por commits recientes e inspecciona los archivos modificados.`,"gitView.loading.checkingRepository":`Verificando repositorio...`,"gitView.loading.loading":`Cargando...`,"gitView.pr.actions.add":`Añadir`,"gitView.pr.actions.cancelEditing":`Cancelar edición`,"gitView.pr.actions.cancelEditingAria":`Cancelar edición de PR`,"gitView.pr.actions.createPr":`Crear PR`,"gitView.pr.actions.edit":`Editar`,"gitView.pr.actions.editPr":`Editar PR`,"gitView.pr.actions.editPrAria":`Editar PR`,"gitView.pr.actions.hide":`Ocultar`,"gitView.pr.actions.markReady":`Marcar como listo`,"gitView.pr.actions.markReadyAria":`Marcar la PR como lista para revisión`,"gitView.pr.actions.mergePr":`Hacer merge de la PR`,"gitView.pr.actions.mergePrAria":`Hacer merge de la PR`,"gitView.pr.actions.openChecks":`Abrir checks`,"gitView.pr.actions.openChecksAria":`Abrir checks fallidos`,"gitView.pr.actions.openComments":`Abrir comentarios`,"gitView.pr.actions.openCommentsAria":`Abrir comentarios de la PR`,"gitView.pr.actions.openOnGitHub":`Abrir en GitHub`,"gitView.pr.actions.openOnGitHubAria":`Abrir PR en GitHub`,"gitView.pr.actions.openSettings":`Abrir configuración`,"gitView.pr.actions.repo":`Repositorio`,"gitView.pr.actions.resolveFailedChecks":`Resolver checks fallidos`,"gitView.pr.actions.resolveFailedChecksAria":`Enviar checks fallidos al agente`,"gitView.pr.actions.savePr":`Guardar PR`,"gitView.pr.actions.savePrAria":`Guardar cambios de la PR`,"gitView.pr.actions.sendCommentToAgent":`Enviar comentario al agente`,"gitView.pr.actions.sendCommentToAgentAria":`Enviar este comentario al agente`,"gitView.pr.actions.sendToAgent":`Enviar al agente`,"gitView.pr.actions.shareComments":`Compartir comentarios`,"gitView.pr.actions.shareCommentsAria":`Enviar comentarios de la PR al agente`,"gitView.pr.actions.toggleDraftAria":`Alternar estado de borrador`,"gitView.pr.actions.refresh":`Actualizar estado de la PR`,"gitView.pr.actions.refreshAria":`Actualizar estado del pull request`,"gitView.pr.additionalContext.added":`Añadido`,"gitView.pr.additionalContext.hint":`Añade contexto adicional para una revisión más efectiva.`,"gitView.pr.additionalContext.optional":`Opcional`,"gitView.pr.additionalContext.title":`Contexto adicional`,"gitView.pr.checkDetails.empty":`No hay detalles del check disponibles`,"gitView.pr.checkDetails.title":`Detalles del check fallido`,"gitView.pr.checkingStatus":`Comprobando estado de la PR...`,"gitView.pr.checks.label":`checks`,"gitView.pr.checks.completedLabel":`Completado`,"gitView.pr.checks.conclusionLabel":`Conclusión`,"gitView.pr.checks.startedLabel":`Iniciado`,"gitView.pr.checks.statusLabel":`Estado`,"gitView.pr.checks.stepLabel":`Paso`,"gitView.pr.checks.steps":`Pasos`,"gitView.pr.comments.empty":`No se encontraron comentarios`,"gitView.pr.comments.generalContext":`Comentario general`,"gitView.pr.comments.reviewContext":`Comentario de revisión`,"gitView.pr.comments.title":`Comentarios`,"gitView.pr.comments.unknownAuthor":`Autor desconocido`,"gitView.pr.createTitle":`Crear PR`,"gitView.pr.draftMustBeReady":`La PR en borrador debe marcarse como lista antes de hacer merge.`,"gitView.pr.field.baseBranch":`Rama base`,"gitView.pr.field.description":`Descripción`,"gitView.pr.field.draft":`Borrador`,"gitView.pr.field.title":`Título`,"gitView.pr.githubNotConnected":`GitHub no está conectado`,"gitView.pr.loadingDescription":`Cargando descripción...`,"gitView.pr.mergeMethod.merge":`Crear un merge commit`,"gitView.pr.mergeMethod.rebase":`Rebase y merge`,"gitView.pr.mergeMethod.squash":`Squash y merge`,"gitView.pr.noDescription":`Sin descripción`,"gitView.pr.noMergePermission":`No tienes permiso para hacer merge de esta PR.`,"gitView.pr.notMergeable":`No se puede hacer merge`,"gitView.pr.numberLabel":`PR # {number}`,"gitView.pr.placeholder.additionalContext":`Cualquier restricción, nota de lanzamiento o contexto para revisor...`,"gitView.pr.placeholder.description":`Describe el cambio...`,"gitView.pr.placeholder.main":`Resume tu PR`,"gitView.pr.placeholder.selectBaseBranch":`Seleccionar rama base`,"gitView.pr.placeholder.title":`Título de la PR`,"gitView.pr.placeholder.whatChanged":`¿Qué cambió y por qué?`,"gitView.pr.statusUnavailable":`Estado de la PR no disponible`,"gitView.pr.toast.baseBranchRequired":`Selecciona una rama base`,"gitView.pr.toast.baseMustDifferFromHead":`La rama base debe diferir de la rama actual`,"gitView.pr.toast.createPrFailed":`No se pudo crear la PR`,"gitView.pr.toast.generateDescriptionFailed":`No se pudo generar la descripción de la PR`,"gitView.pr.toast.githubApiUnavailable":`La API de GitHub no está disponible`,"gitView.pr.toast.loadCheckDetailsFailed":`No se pudieron cargar los detalles del check`,"gitView.pr.toast.loadChecksFailed":`No se pudieron cargar los checks de la PR`,"gitView.pr.toast.loadCommentsFailed":`No se pudieron cargar los comentarios`,"gitView.pr.toast.loadPrCommentsFailed":`No se pudieron cargar los comentarios de la PR`,"gitView.pr.toast.markReadyFailed":`No se pudo marcar la PR como lista`,"gitView.pr.toast.markedReady":`La PR se marcó como lista para revisión`,"gitView.pr.toast.mergeFailed":`No se pudo hacer merge de la PR`,"gitView.pr.toast.noActiveSession":`No hay sesión de chat activa`,"gitView.pr.toast.noActiveSessionDescription":`Abre o crea una sesión de chat para enviar contexto a un agente.`,"gitView.pr.toast.noFailedChecks":`No se encontraron checks fallidos`,"gitView.pr.toast.noModelSelected":`Selecciona un modelo primero`,"gitView.pr.toast.noPrComments":`No se encontraron comentarios de la PR`,"gitView.pr.toast.prCreated":`PR creada`,"gitView.pr.toast.prMerged":`Merge de PR completado`,"gitView.pr.toast.prNotMerged":`No se hizo merge de la PR`,"gitView.pr.toast.prUpdated":`PR actualizada`,"gitView.pr.toast.sendMessageFailed":`No se pudo enviar el mensaje al agente`,"gitView.pr.toast.titleRequired":`El título es obligatorio`,"gitView.pr.toast.updatePrFailed":`No se pudo actualizar la PR`,"gitView.pullRequest.createHint":`Crea y gestiona PR desde esta rama.`,"gitView.pullRequest.availableOnFeatureBranches":`Disponible cuando la rama actual puede abrir un PR.`,"gitView.pullRequest.title":`PR`,"gitView.tabs.commit":`Commit`,"gitView.tabs.pr":`PR`,"gitView.tabs.update":`Actualizar`,"gitView.tabs.worktree":`Árbol de trabajo`,"gitView.toast.abortOperationFailed":`No se pudo abortar la operación`,"gitView.toast.appliedIdentity":`Identidad aplicada: {name}`,"gitView.toast.applyIdentityFailed":`No se pudo aplicar la identidad`,"gitView.toast.branchCreatedLocally":`Rama creada localmente, pero no se pudo configurar el upstream.`,"gitView.toast.cannotCheckout":`No se puede cambiar a la rama: {reason}`,"gitView.toast.cannotCreateBranch":`No se puede crear la rama: {reason}`,"gitView.toast.cannotRemoveOriginRemote":`No se puede eliminar el remoto origin`,"gitView.toast.cannotRenameBranch":`No se puede cambiar el nombre de la rama: {reason}`,"gitView.toast.checkedOut":`Cambiado a {name}`,"gitView.toast.checkoutFailed":`No se pudo cambiar a {name}`,"gitView.toast.commitCreated":`Commit creado`,"gitView.toast.commitHashCopied":`Hash del commit copiado`,"gitView.toast.continueOperationFailed":`No se pudo continuar la operación`,"gitView.toast.copyFailed":`No se pudo copiar`,"gitView.toast.createBranchFailed":`No se pudo crear la rama`,"gitView.toast.createCommitFailed":`No se pudo crear el commit`,"gitView.toast.createdBranch":`Rama {name} creada`,"gitView.toast.enterCommitMessage":`Escribe un mensaje de commit`,"gitView.toast.fetchedFromRemote":`Recuperado de {name}`,"gitView.toast.generateCommitMessageFailed":`No se pudo generar el mensaje de commit`,"gitView.toast.mergeAborted":`Merge abortado`,"gitView.toast.mergeCompleted":`Merge completado`,"gitView.toast.mergeConflictsDetected":`Se detectaron conflictos al hacer merge`,"gitView.toast.mergedIntoBranch":`Merge de {branch} en {currentBranch}`,"gitView.toast.pulledFilesPlural":`Se trajeron {count} archivos de {name}`,"gitView.toast.pulledFilesSingle":`Se trajo {count} archivo de {name}`,"gitView.toast.pushedToUpstream":`Enviado a {name}`,"gitView.toast.commitOrStashBeforeSync":`Haz commit o stash de tus cambios antes de sincronizar`,"gitView.toast.alreadyUpToDate":`Ya está actualizado`,"gitView.toast.syncedPulledPluralAndPushed":`Se trajeron {count} archivos de {name} y se envió al upstream`,"gitView.toast.syncedPulledSingleAndPushed":`Se trajo {count} archivo de {name} y se envió al upstream`,"gitView.toast.syncedChanges":`Cambios sincronizados`,"gitView.toast.rebaseAborted":`Rebase abortado`,"gitView.toast.rebaseConflictsDetected":`Se detectaron conflictos al hacer rebase`,"gitView.toast.rebaseStepCompleted":`Paso de rebase completado`,"gitView.toast.rebasedOntoBranch":`Rebase de {currentBranch} sobre {branch}`,"gitView.toast.refreshRepositoryFailed":`No se pudo actualizar el repositorio`,"gitView.toast.remoteNameRequired":`Se requiere nombre del remoto`,"gitView.toast.removedRemote":`Remoto {name} eliminado`,"gitView.toast.renameBranchFailed":`No se pudo cambiar el nombre de {oldName} a {newName}`,"gitView.toast.renamedBranch":`{oldName} renombrado a {newName}`,"gitView.toast.restoreStashFailed":`No se pudo restaurar el stash`,"gitView.toast.restoreStashManually":`Debes restaurar el stash manualmente`,"gitView.toast.revertFailed":`No se pudieron revertir los cambios`,"gitView.toast.revertedFile":`{path} revertido`,"gitView.toast.revertedFilesPlural":`{count} archivos revertidos`,"gitView.toast.revertedFilesSingle":`{count} archivo revertido`,"gitView.toast.revertedSomePlural":`{success} archivos revertidos, {failed} fallidos`,"gitView.toast.revertedSomeSingle":`{success} archivo revertido, {failed} fallido`,"gitView.toast.stageFileFailed":`No se pudieron preparar los cambios`,"gitView.toast.stageFileToCommit":`Prepara al menos un archivo para el commit`,"gitView.toast.stageFileToDescribe":`Prepara al menos un archivo para describir`,"gitView.toast.selectFileToCommit":`Selecciona al menos un archivo para el commit`,"gitView.toast.selectFileToDescribe":`Selecciona al menos un archivo para describir`,"gitView.toast.stashedRestored":`Cambios del stash restaurados`,"gitView.toast.syncActionFailed":`{action} falló`,"gitView.toast.unstageFileFailed":`No se pudieron quitar los cambios del área preparada`,"gitView.toast.upstreamSet":`Upstream de {branch} configurado como {remote}`,"gitView.worktree.availableInWorktreeMode":`Disponible solo en modo worktree`,"contextPanel.mode.chat":`Chat`,"contextPanel.mode.files":`Archivos`,"contextPanel.mode.diff":`Cambios`,"contextPanel.mode.stagedDiff":`Staged Diff`,"contextPanel.mode.workingDiff":`Working Diff`,"contextPanel.mode.plan":`Plan`,"contextPanel.mode.context":`Contexto`,"contextPanel.mode.preview":`Vista previa`,"contextPanel.mode.browser":`Navegador`,"contextPanel.browser.open":`Abrir panel del navegador`,"contextPanel.browser.addressAria":`Dirección del navegador`,"contextPanel.browser.empty":`Navegador web`,"contextPanel.browser.emptyHint":`Ingrese una dirección arriba para comenzar a navegar`,"contextPanel.browser.inspectUnavailable":`Esta página no se puede inspeccionar desde el panel del navegador.`,"contextPanel.browser.trustNotice":`Las páginas que abras aquí se ejecutan con acceso completo a OpenChamber: necesario para la inspección y las capturas. Abre solo sitios de confianza: una página maliciosa podría leer tus datos o actuar en tu nombre.`,"contextPanel.file.notice.turnDiffOutsideWorkspace":`El diff del turno no está disponible fuera del proyecto. Se muestra el contenido actual del archivo.`,"contextPanel.tab.closeTabAria":`Cerrar pestaña {label}`,"contextPanel.actions.collapsePanel":`Colapsar panel`,"contextPanel.actions.expandPanel":`Expandir panel`,"contextPanel.actions.closePanel":`Cerrar panel`,"contextPanel.actions.resizePanelAria":`Ajustar tamaño del panel de contexto`,"contextPanel.iframe.sessionChatTitle":`Chat de sesión {sessionID}`,"contextPanel.preview.actions.reload":`Recargar vista previa`,"contextPanel.preview.actions.openExternal":`Abrir en el navegador`,"contextPanel.preview.actions.retry":`Reintentar`,"contextPanel.preview.iframeTitle":`Vista previa`,"contextPanel.preview.invalidUrl":`La vista previa necesita una URL http(s) válida.`,"contextPanel.preview.empty":`Sin URL de vista previa`,"contextPanel.preview.loading":`Conectando proxy de vista previa...`,"contextPanel.preview.proxyError":`No se pudo iniciar el proxy de vista previa.`,"contextPanel.preview.upstreamUnreachable":`El servidor de desarrollo no responde.`,"contextPanel.preview.upstreamUnreachableHint":`Verifica que tu servidor de desarrollo siga en ejecución y vuelve a intentarlo.`,"terminalView.preview.open":`Vista previa`,"terminalView.preview.openTitle":`Abrir panel de vista previa`,"sidebarFilesTree.menu.rename":`Cambiar nombre`,"sidebarFilesTree.menu.copyPath":`Copiar ruta`,"sidebarFilesTree.menu.save":`Guardar`,"sidebarFilesTree.menu.newFile":`Nuevo archivo`,"sidebarFilesTree.menu.newFolder":`Nueva carpeta`,"sidebarFilesTree.menu.delete":`Eliminar`,"sidebarFilesTree.toast.pathCopied":`Ruta copiada`,"sidebarFilesTree.toast.copyFailed":`No se pudo copiar`,"sidebarFilesTree.toast.revealFailed":`No se pudo revelar la ruta`,"sidebarFilesTree.toast.filenameRequired":`El nombre de archivo es obligatorio`,"sidebarFilesTree.toast.writeNotSupported":`La escritura no es compatible`,"sidebarFilesTree.toast.fileCreated":`Archivo creado`,"sidebarFilesTree.toast.operationFailed":`No se pudo completar la operación`,"sidebarFilesTree.toast.folderNameRequired":`El nombre de carpeta es obligatorio`,"sidebarFilesTree.toast.folderCreated":`Carpeta creada`,"sidebarFilesTree.toast.nameRequired":`El nombre es obligatorio`,"sidebarFilesTree.toast.renameNotSupported":`El cambio de nombre no es compatible`,"sidebarFilesTree.toast.renamedSuccessfully":`Nombre cambiado`,"sidebarFilesTree.toast.deleteNotSupported":`La eliminación no es compatible`,"sidebarFilesTree.toast.deletedSuccessfully":`Eliminado`,"sidebarFilesTree.search.placeholder":`Buscar archivos...`,"sidebarFilesTree.search.clearAria":`Limpiar búsqueda`,"sidebarFilesTree.actions.newFileTitle":`Nuevo archivo`,"sidebarFilesTree.actions.newFolderTitle":`Nueva carpeta`,"sidebarFilesTree.actions.refreshTitle":`Actualizar`,"sidebarFilesTree.actions.collapseAllTitle":`Contraer todo`,"sidebarFilesTree.actions.expandAllTitle":`Expandir todo`,"sidebarFilesTree.actions.fileMenuTitle":`Menú de archivo`,"sidebarFilesTree.state.searching":`Buscando...`,"sidebarFilesTree.state.loading":`Cargando...`,"sidebarFilesTree.dialog.createFile.title":`Crear archivo`,"sidebarFilesTree.dialog.createFolder.title":`Crear carpeta`,"sidebarFilesTree.dialog.rename.title":`Cambiar nombre`,"sidebarFilesTree.dialog.delete.title":`Eliminar`,"sidebarFilesTree.dialog.createFile.description":`Crea un archivo nuevo en {path}`,"sidebarFilesTree.dialog.createFolder.description":`Crea una carpeta nueva en {path}`,"sidebarFilesTree.dialog.rename.description":`Cambiar el nombre de {name}`,"sidebarFilesTree.dialog.delete.description":`¿Estás seguro de que quieres eliminar {name}? Esta acción no se puede deshacer.`,"sidebarFilesTree.dialog.rootFallback":`raíz`,"sidebarFilesTree.dialog.rename.placeholder":`Nuevo nombre`,"sidebarFilesTree.dialog.namePlaceholder":`Nombre`,"sidebarFilesTree.dialog.cancel":`Cancelar`,"sidebarFilesTree.dialog.confirm":`Confirmar`,"sidebarFilesTree.dialog.delete.confirm":`Eliminar`,"filesView.dialog.createFile.title":`Crear archivo`,"filesView.dialog.createFolder.title":`Crear carpeta`,"filesView.dialog.rename.title":`Cambiar nombre`,"filesView.dialog.delete.title":`Eliminar`,"filesView.dialog.createFile.description":`Crea un archivo nuevo en {path}`,"filesView.dialog.createFolder.description":`Crea una carpeta nueva en {path}`,"filesView.dialog.rename.description":`Cambiar el nombre de {name}`,"filesView.dialog.delete.description":`¿Estás seguro de que quieres eliminar {name}? Esta acción no se puede deshacer.`,"filesView.dialog.rootFallback":`raíz`,"filesView.dialog.rename.placeholder":`Nuevo nombre`,"filesView.dialog.namePlaceholder":`Nombre`,"filesView.dialog.cancel":`Cancelar`,"filesView.dialog.confirm":`Confirmar`,"filesView.dialog.delete.confirm":`Eliminar`,"filesView.editor.saving":`Guardando...`,"filesView.editor.saved":`Guardado`,"filesView.editor.autoSaveOn":`Guardado automático activado`,"filesView.editor.manualSave":`Guardado manual`,"filesView.editor.saveNowTitle":`Guardar ahora ({shortcut}) - se guarda automáticamente después de 1.5 segundos`,"filesView.editor.saveNowManualTitle":`Guardar ahora ({shortcut})`,"filesView.editor.saveAria":`Guardar ({shortcut})`,"filesView.editor.openInDesktopApp":`Abrir en la aplicación de escritorio`,"filesView.editor.refreshApps":`Actualizar aplicaciones`,"filesView.editor.disableLineWrap":`Desactivar ajuste de línea`,"filesView.editor.enableLineWrap":`Activar ajuste de línea`,"filesView.editor.findInFile":`Buscar en el archivo`,"filesView.editor.goToLine":`Ir a línea`,"filesView.editor.switchToEditMode":`Cambiar al modo de edición`,"filesView.editor.switchToPreviewMode":`Cambiar al modo de vista previa`,"filesView.editor.switchToTextView":`Cambiar a vista de texto`,"filesView.editor.switchToTreeView":`Cambiar a vista de árbol`,"filesView.toast.copyFailed":`No se pudo copiar`,"filesView.toast.openInAppFailed":`No se pudo abrir en {app}`,"filesView.toast.savingNotSupported":`El guardado no es compatible`,"filesView.toast.writeFileFailed":`No se pudo escribir el archivo`,"filesView.toast.saveFailed":`No se pudo guardar`,"filesView.editor.copyFileContents":`Copiar contenido del archivo`,"filesView.editor.copyFilePathTitle":`Copiar ruta del archivo ({path})`,"filesView.editor.saveFile":`Guardar archivo`,"filesView.editor.exitFullscreen":`Salir de pantalla completa`,"filesView.editor.fullscreen":`Pantalla completa`,"filesView.unsaved.title":`Cambios no guardados`,"filesView.unsaved.description":`¿Quieres guardar tus cambios antes de continuar?`,"filesView.unsaved.saveChanges":`Guardar cambios`,"filesView.unsaved.discard":`Descartar`,"filesView.editor.back":`Atrás`,"filesView.editor.openFilesAria":`Abrir archivos`,"filesView.editor.closeFileAria":`Cerrar {name}`,"filesView.editor.selectFile":`Seleccionar un archivo`,"filesView.editor.showControlsAria":`Mostrar controles del editor`,"filesView.editor.controlsTitle":`Controles del editor`,"filesView.editor.pickFileFromTree":`Selecciona un archivo del árbol.`,"filesView.state.loading":`Cargando...`,"filesView.state.openingFileAtChange":`Abriendo archivo en cambio...`,"filesView.tree.search.placeholder":`Buscar archivos...`,"filesView.tree.search.clearAria":`Limpiar búsqueda`,"filesView.tree.search.searching":`Buscando...`,"filesView.tree.actions.newFileTitle":`Nuevo archivo`,"filesView.tree.actions.newFolderTitle":`Nueva carpeta`,"filesView.tree.actions.refreshTitle":`Actualizar`,"filesView.editor.imageAltFallback":`Imagen`,"filesView.error.jsonViewerUnavailable":`Visualizador JSON no disponible`,"filesView.error.switchToTextMode":`Cambia al modo de texto para ver contenido bruto.`,"filesView.warning.largeFilePreviewLimited":`Este archivo es grande ({sizeKb}KB). La vista previa puede estar limitada.`,"filesView.error.previewUnavailable":`Vista previa no disponible`,"filesView.error.switchToEditMode":`Cambia al modo de edición para resolver el problema.`,"filesView.error.readFileFailed":`No se pudo leer el archivo`,"filesView.editor.htmlPreviewTitle":`Vista previa HTML`,"filesView.diagram.closeDiagramView":`Cerrar vista de diagrama`,"filesView.diagram.saveDiagram":`Guardar diagrama`,"contextUsage.aria.label":`Uso del contexto`,"contextUsage.mobile.title":`Uso del contexto`,"contextUsage.mobile.usedTokens":`Tokens usados`,"contextUsage.mobile.contextLimit":`Límite de contexto`,"contextUsage.mobile.outputLimit":`Límite de salida`,"contextUsage.mobile.usage":`Uso`,"contextUsage.tooltip.usage":`Uso: {percent}`,"contextUsage.tooltip.usedOfLimit":`{used} / {limit}`,"contextUsage.tooltip.usedTokens":`Tokens usados: {tokens}`,"contextUsage.tooltip.contextLimit":`Límite de contexto: {tokens}`,"contextUsage.tooltip.outputLimit":`Límite de salida: {tokens}`,"contextSidebar.session.untitled":`Sesión sin título`,"contextSidebar.empty.openSession":`Abrir una sesión para inspeccionar el contexto.`,"contextSidebar.section.context":`Contexto`,"contextSidebar.section.lastAssistantMessage":`Último mensaje del asistente`,"contextSidebar.section.rawMessages":`Mensajes brutos`,"contextSidebar.context.percentUsed":`{percent}% usado`,"contextSidebar.breakdown.user":`Usuario`,"contextSidebar.breakdown.assistant":`Asistente`,"contextSidebar.breakdown.toolCalls":`Llamadas a herramientas`,"contextSidebar.breakdown.other":`Otro`,"contextSidebar.stats.messages":`Mensajes`,"contextSidebar.stats.user":`Usuario`,"contextSidebar.stats.assistant":`Asistente`,"contextSidebar.stats.cost":`Costo`,"contextSidebar.stats.sessionTps":`TPS de la sesión`,"contextSidebar.tokens.input":`Entrada`,"contextSidebar.tokens.output":`Salida`,"contextSidebar.tokens.reasoning":`Razonamiento`,"contextSidebar.tokens.cacheRead":`Lectura de caché`,"contextSidebar.tokens.cacheWrite":`Escritura de caché`,"contextSidebar.tokens.cacheHit":`Acierto de caché`,"contextSidebar.tokens.tps":`TPS`,"contextSidebar.actions.copyJson":`Copiar JSON`,"contextSidebar.actions.copy":`Copiar`,"contextSidebar.actions.copied":`Copiado`,"planView.file.defaultName":`plan`,"planView.title.default":`Plan`,"planView.error.saveFailed":`No se pudo guardar`,"planView.error.previewUnavailable":`Vista previa no disponible`,"planView.error.switchToEditMode":`Cambia al modo de edición para resolver el problema.`,"planView.error.writeFailed":`No se pudo escribir`,"planView.error.writePlanFileFailed":`No se pudo escribir el archivo de plan ({status})`,"planView.actions.improvePlanAria":`Mejorar plan`,"planView.actions.improve":`Mejorar`,"planView.actions.implementPlanAria":`Implementar plan`,"planView.actions.implement":`Implementar`,"planView.actions.sendToNewSession":`Enviar a nueva sesión`,"planView.actions.sendToNewWorktreeSession":`Enviar a nueva sesión de worktree`,"planView.actions.copyPlanContents":`Copiar contenido del plan`,"planView.state.loading":`Cargando...`,"diffView.binary.unavailable":`El contenido de este archivo no puede visualizarse.`,"diffView.change.untracked":`Archivo no rastreado`,"diffView.change.new":`Archivo nuevo`,"diffView.change.deleted":`Archivo eliminado`,"diffView.change.renamed":`Archivo renombrado`,"diffView.change.copied":`Archivo copiado`,"diffView.change.modified":`Archivo modificado`,"diffView.selector.selectFile":`Seleccionar archivo`,"diffView.image.original":`Original`,"diffView.image.modified":`Modificado`,"diffView.image.new":`Nuevo`,"diffView.image.originalAlt":`Original: {path}`,"diffView.image.modifiedAlt":`Modificado: {path}`,"diffView.section.files":`Archivos`,"diffView.state.selectSessionDirectory":`Selecciona un directorio de sesión para ver diferencias`,"diffView.state.loadingRepositoryStatus":`Cargando estado del repositorio...`,"diffView.state.notGitRepository":`No es un repositorio Git. Usa la pestaña Git para inicializar o cambiar de directorio.`,"diffView.state.cleanWorkingTree":`Worktree limpio, no hay cambios para mostrar`,"diffView.state.noLastTurnChanges":`No hay cambios del último turno para mostrar`,"diffView.state.failedToLoadDiff":`No se pudo cargar la diferencia`,"diffView.state.loadingDiff":`Cargando diff...`,"diffView.state.loadingChanges":`Cargando cambios...`,"diffView.state.largeDiff":`Diff grande ({count} líneas modificadas)`,"diffView.state.largeDiffDescription":`El renderizado puede ser lento. Aun así puedes ver el diff con el botón de abajo.`,"diffView.summary.changedFilesSingle":`{count} archivo modificado`,"diffView.summary.changedFilesPlural":`{count} archivos modificados`,"diffView.scope.changed":`Cambiados`,"diffView.scope.staged":`Staged`,"diffView.scope.lastTurn":`Último turno`,"diffView.scope.selectorAria":`Seleccionar modo de cambios`,"diffView.actions.retry":`Volver a intentar`,"diffView.actions.renderAnyway":`Renderizar de todos modos`,"diffView.actions.expandAll":`Expandir todo`,"diffView.actions.collapseAll":`Contraer todo`,"diffView.actions.loadFullFiles":`Cargar archivos completos`,"diffView.actions.disableFullFiles":`No cargar archivos completos`,"diffView.actions.disableLineWrap":`Desactivar ajuste de línea`,"diffView.actions.enableLineWrap":`Activar ajuste de línea`,"diffView.actions.openFileInEditorAtChange":`Abrir este archivo en el editor en el cambio`,"diffView.actions.openFileAtFirstChangedLine":`Abrir este archivo en la primera línea modificada`,"diffView.actions.openFilePreview":`Abrir este archivo`,"diffView.actions.review":`Revisar`,"diffView.actions.reviewAria":`Revisar cambios`,"diffView.reviewDialog.title":`Revisar cambios`,"diffView.reviewDialog.description":`Inicia una sesión de revisión separada para los cambios actuales.`,"diffView.reviewDialog.generateHandoff":`Generar handoff`,"diffView.reviewDialog.autoReview":`Ejecutar ciclo de revisión automática`,"diffView.reviewDialog.info":`Este flujo funciona mejor si se inicia desde la sesión donde se implementaron los cambios.`,"diffView.reviewDialog.actions.cancel":`Cancelar`,"diffView.reviewDialog.actions.start":`Revisar`,"diffView.reviewDialog.actions.starting":`Iniciando...`,"diffView.reviewDialog.toast.noSessionDirectory":`El directorio de la sesión no está disponible`,"diffView.reviewDialog.toast.startFailed":`No se pudo iniciar el flujo de revisión`,"chat.dictation.start":`Iniciar dictado`,"chat.dictation.overlayAria":`Dictado`,"chat.dictation.downloadingModel":`Descargando el modelo de voz...`,"chat.dictation.downloadingModelProgress":`Descargando el modelo de voz... {percent}%`,"chat.dictation.listening":`Escuchando...`,"chat.dictation.processing":`Transcribiendo...`,"chat.dictation.failed":`La transcripción falló`,"chat.dictation.cancel":`Descartar dictado`,"chat.dictation.insert":`Insertar transcripción`,"chat.dictation.insertAndSend":`Insertar y enviar`,"chat.dictation.retry":`Reintentar transcripción`,"chat.dictation.discard":`Descartar grabación`,"chat.history.loadOlder":`Cargar mensajes anteriores`,"chat.history.loadingMore":`Cargando más…`,"chat.history.loadOlderFailed":`No se pudieron cargar los mensajes anteriores. Inténtalo de nuevo.`,"chat.history.loadOlderTimeout":`La carga de mensajes anteriores agotó el tiempo de espera. Inténtalo de nuevo.`,"chat.history.loadFailedTitle":`No se pudo cargar esta conversación`,"chat.history.loadFailedDescription":`La conversación sigue disponible. Intenta cargarla de nuevo.`,"chat.history.retry":`Intentar de nuevo`,"chat.autoReview.title":`El ciclo de revisión de código está en curso`,"chat.autoReview.status.waitingForReviewer":`Esperando al revisor`,"chat.autoReview.status.waitingForImplementer":`Esperando al implementador`,"chat.autoReview.reviewSessionLabel":`Sesión de revisión`,"chat.autoReview.actions.open":`Abrir`,"chat.autoReview.actions.stop":`Detener`,"diffView.hunk.label":`Fragmentos`,"diffView.hunk.stage":`Preparar`,"diffView.hunk.unstage":`Quitar`,"diffView.hunk.discard":`Descartar`,"diffView.hunk.stageTitle":`Preparar fragmento {index}`,"diffView.hunk.unstageTitle":`Quitar fragmento {index} de la preparación`,"diffView.hunk.discardTitle":`Descartar fragmento {index}`,"diffView.hunk.unavailable":`Este fragmento ya no está disponible. Actualice el diff e inténtelo de nuevo.`,"diffView.hunk.unsupported":`Preparar fragmentos individuales no es compatible en este entorno.`,"rightSidebar.contextNotesTodo.plan.defaultTitle":`Plan`,"rightSidebar.contextNotesTodo.empty.selectProject":`Selecciona un proyecto para añadir notas y tareas pendientes.`,"rightSidebar.contextNotesTodo.notes.title":`Notas rápidas — {project}`,"rightSidebar.contextNotesTodo.notes.placeholder":`Captura contexto, recordatorios o enlaces`,"rightSidebar.contextNotesTodo.todo.title":`Tareas pendientes`,"rightSidebar.contextNotesTodo.todo.itemsSingle":`{count} elemento`,"rightSidebar.contextNotesTodo.todo.itemsPlural":`{count} elementos`,"rightSidebar.contextNotesTodo.todo.clearCompleted":`Limpiar completadas`,"rightSidebar.contextNotesTodo.todo.inputPlaceholder":`Añade una tarea pendiente`,"rightSidebar.contextNotesTodo.todo.addAria":`Añadir tarea pendiente`,"rightSidebar.contextNotesTodo.todo.empty":`No hay tareas pendientes aún. Añade una pequeña lista de verificación para este proyecto.`,"rightSidebar.contextNotesTodo.todo.actions.markComplete":`Marcar "{text}" como completada`,"rightSidebar.contextNotesTodo.todo.actions.collapse":`Colapsar tarea pendiente "{text}"`,"rightSidebar.contextNotesTodo.todo.actions.expand":`Expandir tarea pendiente "{text}"`,"rightSidebar.contextNotesTodo.todo.actions.delete":`Eliminar "{text}"`,"rightSidebar.contextNotesTodo.todo.actions.send":`Enviar "{text}"`,"rightSidebar.contextNotesTodo.todo.actions.reorder":`Reordenar "{text}"`,"rightSidebar.contextNotesTodo.todo.resizeAria":`Redimensionar lista de tareas`,"rightSidebar.contextNotesTodo.todo.sendMenu.currentSession":`Enviar a la sesión actual`,"rightSidebar.contextNotesTodo.todo.sendMenu.newSession":`Enviar a una nueva sesión`,"rightSidebar.contextNotesTodo.todo.sendMenu.newWorktreeSession":`Enviar a una nueva sesión de worktree`,"rightSidebar.contextNotesTodo.plans.title":`Planes`,"rightSidebar.contextNotesTodo.plans.filesSingle":`{count} archivo`,"rightSidebar.contextNotesTodo.plans.filesPlural":`{count} archivos`,"rightSidebar.contextNotesTodo.plans.importFromFile":`Importar plan desde archivo`,"rightSidebar.contextNotesTodo.plans.empty":`Aún no hay plans guardados.`,"rightSidebar.contextNotesTodo.plans.deletePlan":`Eliminar plan`,"rightSidebar.contextNotesTodo.plans.deletePlanWithTitle":`Eliminar plan "{title}"`,"rightSidebar.contextNotesTodo.sendDialog.title.newSession":`Enviar a una nueva sesión`,"rightSidebar.contextNotesTodo.sendDialog.title.newWorktree":`Enviar a una nueva sesión de worktree`,"rightSidebar.contextNotesTodo.sendDialog.variant.default":`Predeterminado`,"rightSidebar.contextNotesTodo.sendDialog.actions.cancel":`Cancelar`,"rightSidebar.contextNotesTodo.sendDialog.actions.send":`Enviar`,"rightSidebar.contextNotesTodo.sendDialog.actions.sending":`Enviando`,"rightSidebar.contextNotesTodo.toast.saveNotesFailed":`No se pudieron guardar las notas del proyecto`,"rightSidebar.contextNotesTodo.toast.loadNotesFailed":`No se pudieron cargar las notas del proyecto`,"rightSidebar.contextNotesTodo.toast.noActiveSession":`No hay ninguna sesión activa seleccionada`,"rightSidebar.contextNotesTodo.toast.sentToCurrentSession":`Tarea enviada a la sesión actual`,"rightSidebar.contextNotesTodo.toast.worktreeRequiresGitRepo":`Las acciones de worktree solo están disponibles para repositorios Git`,"rightSidebar.contextNotesTodo.toast.createSessionFailed":`No se pudo crear la sesión`,"rightSidebar.contextNotesTodo.toast.sentToNewSession":`Tarea enviada a una nueva sesión`,"rightSidebar.contextNotesTodo.toast.sentToNewWorktreeSession":`Tarea enviada a una nueva sesión de worktree`,"rightSidebar.contextNotesTodo.toast.sendTodoFailed":`No se pudo enviar la tarea`,"rightSidebar.contextNotesTodo.toast.deletePlanFailed":`No se pudo eliminar el plan`,"rightSidebar.contextNotesTodo.toast.planFileEmpty":`El archivo del plan está vacío`,"rightSidebar.contextNotesTodo.toast.importPlanFailed":`No se pudo importar el plan`,"rightSidebar.contextNotesTodo.toast.planImported":`Plan importado`,"rightSidebar.contextNotesTodo.toast.readPlanFileFailed":`No se pudo leer el archivo del plan`,"inlineComment.range.lines":`Líneas {start}-{end}`,"inlineComment.input.placeholder":`Añadir un comentario... (Cmd+Enter para guardar)`,"inlineComment.input.placeholderShort":`Añadir un comentario...`,"inlineComment.actions.cancel":`Cancelar`,"inlineComment.actions.save":`Guardar`,"inlineComment.actions.comment":`Comentar`,"inlineComment.actions.showLess":`Mostrar menos`,"inlineComment.actions.showMore":`Mostrar más`,"inlineComment.actions.editComment":`Editar comentario`,"inlineComment.actions.deleteComment":`Eliminar comentario`,"inlineComment.toast.selectSessionToSave":`Selecciona una sesión para guardar el comentario`,"header.github.connectedWithLogin":`GitHub: {login}`,"header.github.connected":`Conectado a GitHub`,"header.github.avatarWithLogin":`Avatar de {login}`,"header.github.avatar":`Avatar de GitHub`,"header.github.accountsTitle":`Cuentas de GitHub`,"header.github.accountSource.oauth":`OAuth`,"header.github.accountSource.cli":`CLI`,"header.services.openWithCurrent":`Cambiar de instancia (actual: {current})`,"header.services.open":`Cambiar de instancia`,"header.services.tooltip.currentInstanceWithShortcuts":`Cambiar de instancia: {current} ({toggle}; siguiente pestaña {nextTab})`,"header.services.tooltip.servicesWithShortcuts":`Cambiar de instancia ({toggle}; siguiente pestaña {nextTab})`,"header.services.title":`Cambiar de instancia`,"header.services.viewAria":`Cambiar de instancia`,"header.services.closeAria":`Cerrar el selector de instancia`,"header.services.rateLimits":`Límites de tasa`,"header.services.refreshRateLimitsAria":`Actualizar límites de tasa`,"header.services.noRateLimits":`No hay límites de tasa disponibles.`,"header.services.noRateLimitsReported":`No se reportaron límites de tasa.`,"header.services.remoteUpdate.title":`Actualización de instancia remota`,"header.services.remoteUpdate.checking":`Buscando actualizaciones...`,"header.services.remoteUpdate.upToDate":`Esta instancia está actualizada.`,"header.services.remoteUpdate.available":`La versión {version} está disponible para esta instancia.`,"header.services.remoteUpdate.error":`No se pudieron comprobar las actualizaciones de la instancia remota`,"header.services.remoteUpdate.actions.open":`Actualizar`,"header.services.used":`Usado`,"header.services.remaining":`Restante`,"header.services.modelFamily.other":`Otro`,"header.services.shutdownDev":`Detener OpenChamber`,"header.actions.openPlanAria":`Abrir plan`,"header.actions.toggleChangesPanel":`Panel de cambios`,"header.actions.toggleChangesPanelAria":`Alternar panel de cambios`,"header.actions.sessionMenu":`Acciones de sesión`,"header.actions.sessionMenuAria":`Abrir menú de acciones de sesión`,"header.actions.sessionMenu.servicesWithInstance":`Cambiar de instancia ({current})`,"header.actions.sessionMenu.viewUsage":`Ver uso`,"header.actions.planWithShortcut":`Plan ({shortcut})`,"header.actions.terminalPanelWithShortcut":`Panel de terminal ({shortcut})`,"chat.recap.aria":`Resumen de la sesión`,"chat.recap.label":`Resumen:`,"chat.goal.dialog.titleCreate":`Definir objetivo de sesión`,"chat.goal.dialog.titleManage":`Objetivo de sesión`,"chat.goal.dialog.objectiveLabel":`Objetivo`,"chat.goal.dialog.objectivePlaceholder":`Describe el estado final que el agente debe alcanzar y verificar…`,"chat.goal.dialog.budgetLabel":`Presupuesto de tokens`,"chat.goal.status.active":`Activo`,"chat.goal.status.evaluating":`Evaluando…`,"chat.goal.status.paused":`En pausa`,"chat.goal.status.blocked":`Bloqueado`,"chat.goal.status.budgetLimited":`Presupuesto alcanzado`,"chat.goal.status.complete":`Completado`,"chat.goal.usage.tokens":`{used}`,"chat.goal.usage.tokensWithBudget":`{used}/{budget}`,"chat.goal.usage.turns":`{turns} continuaciones`,"chat.goal.action.pause":`Pausar`,"chat.goal.action.resume":`Reanudar`,"chat.goal.action.markComplete":`Marcar como completado`,"chat.goal.action.clear":`Eliminar objetivo`,"chat.goal.chip.label":`Objetivo`,"chat.goal.action.cancel":`Cancelar`,"chat.goal.action.save":`Guardar objetivo`,"chat.goal.action.start":`Iniciar objetivo`,"chat.goal.toast.actionFailed":`No se pudo actualizar el objetivo`,"chat.goal.toast.distillFallback":`El objetivo superó el límite y no se pudo destilar — el auditor usa una versión recortada`,"chat.goal.row.aria":`Objetivo de sesión — abrir detalles`,"chat.goal.button.createAria":`Definir un objetivo de sesión`,"chat.goal.button.manageAria":`Gestionar el objetivo de sesión`,"chat.goal.button.armAria":`Iniciar un objetivo con el próximo mensaje`,"chat.goal.counter.aria":`Límite de longitud del objetivo`,"chat.goal.button.disarmAria":`Objetivo armado — toca para desactivarlo`,"chat.goal.button.cancelAria":`Objetivo en curso — toca para cancelarlo`,"chat.goal.cancelDialog.title":`¿Cancelar este objetivo?`,"chat.goal.cancelDialog.description":`El agente dejará de trabajar automáticamente hacia este objetivo.`,"chat.goal.cancelDialog.keep":`Mantener objetivo`,"chat.goal.cancelDialog.confirm":`Cancelar objetivo`,"header.actions.toggleTerminalPanel":`Panel de terminal`,"header.actions.toggleTerminalPanelAria":`Mostrar u ocultar panel de terminal`,"terminalView.stream.processExitedMessage":`\r
8
8
  [Proceso terminado{exitCodeSegment}{signalSegment}]\r
9
9
  `,"terminalView.stream.processExitedWithCode":` con código {exitCode}`,"terminalView.stream.processExitedWithSignal":` (señal {signal})`,"terminalView.error.sessionEnded":`Sesión de terminal terminada`,"terminalView.error.connectionFailed":`Error de conexión: {message}`,"terminalView.error.startSessionFailed":`No se pudo iniciar la sesión de terminal`,"terminalView.error.restartFailed":`No se pudo reiniciar la terminal`,"terminalView.error.sendInputFailed":`No se pudo enviar entrada`,"terminalView.empty.noWorkingDirectory":`No hay directorio de trabajo disponible para la terminal.`,"terminalView.empty.selectSession":`Selecciona una sesión para abrir la terminal.`,"terminalView.empty.noWorkingDirectoryForSession":`No hay directorio de trabajo disponible para esta sesión.`,"terminalView.actions.retry":`Volver a intentar`,"terminalView.actions.hardRestart":`Reinicio forzado`,"terminalView.actions.hardRestartTitle":`Forzar el cierre y crear una sesión nueva`,"terminalView.quickKeys.escape":`Esc`,"terminalView.quickKeys.tabAria":`Tab`,"terminalView.quickKeys.controlLabel":`Ctrl`,"terminalView.quickKeys.controlModifierAria":`Modificador de control`,"terminalView.quickKeys.commandModifierAria":`Modificador de comando`,"terminalView.quickKeys.arrowUpAria":`Flecha arriba`,"terminalView.quickKeys.arrowLeftAria":`Flecha izquierda`,"terminalView.quickKeys.arrowDownAria":`Flecha abajo`,"terminalView.quickKeys.arrowRightAria":`Flecha derecha`,"terminalView.quickKeys.enterAria":`Enter`,"terminalView.tabs.closeTabTitle":`Cerrar pestaña`,"terminalView.tabs.newTabTitle":`Nueva pestaña`,"terminalView.bottomDock.resizeAria":`Ajustar tamaño del panel de terminal`,"terminalView.bottomDock.restoreTitle":`Restaurar altura del panel de terminal`,"terminalView.bottomDock.restoreAria":`Restaurar altura del panel de terminal`,"terminalView.bottomDock.expandTitle":`Expandir panel de terminal`,"terminalView.bottomDock.expandAria":`Expandir panel de terminal`,"terminalView.bottomDock.closeTitle":`Cerrar panel de terminal`,"terminalView.bottomDock.closeAria":`Cerrar panel de terminal`,"terminalView.viewport.inputAria":`Entrada de terminal`,"directoryExplorerDialog.title":`Añadir directorio de proyecto`,"directoryExplorerDialog.description":`Elige una carpeta para añadir como proyecto.`,"directoryExplorerDialog.toggle.showHidden":`Mostrar ocultos`,"directoryExplorerDialog.pathInput.placeholder":`Escribe la ruta o selecciona desde el árbol...`,"directoryExplorerDialog.actions.openingFinder":`Abriendo...`,"directoryExplorerDialog.actions.openInFinder":`Abrir en Finder`,"directoryExplorerDialog.actions.adding":`Añadiendo...`,"directoryExplorerDialog.actions.addProject":`Añadir proyecto`,"directoryExplorerDialog.actions.addLocalProject":`Añadir proyecto local`,"directoryExplorerDialog.actions.cloneRepository":`Clonar repositorio`,"directoryExplorerDialog.actions.cloneAndAdd":`Clonar y añadir`,"directoryExplorerDialog.actions.cloning":`Clonando...`,"directoryExplorerDialog.actions.createAndAdd":`Crear y añadir`,"directoryExplorerDialog.actions.alreadyAdded":`Ya añadido`,"directoryExplorerDialog.clone.remoteUrlPlaceholder":`URL del repositorio (HTTPS o SSH)`,"directoryExplorerDialog.browse.directories":`Directorios`,"directoryExplorerDialog.browse.loading":`Cargando directorios...`,"directoryExplorerDialog.browse.empty":`No hay directorios coincidentes.`,"directoryExplorerDialog.browse.parentDirectory":`Directorio padre`,"directoryExplorerDialog.browse.addedBadge":`Añadido`,"directoryExplorerDialog.browse.quickAdd":`Añadir`,"directoryExplorerDialog.footer.navigate":`Navegar`,"directoryExplorerDialog.footer.select":`Seleccionar`,"directoryExplorerDialog.footer.add":`Añadir`,"directoryExplorerDialog.shortcut.enter":`Enter`,"directoryExplorerDialog.toast.unableToAccessDirectory":`No se puede acceder al directorio`,"directoryExplorerDialog.toast.desktopDeniedAccess":`El escritorio denegó el acceso al directorio.`,"directoryExplorerDialog.toast.failedToOpenDirectory":`No se pudo abrir el directorio`,"directoryExplorerDialog.toast.desktopCouldNotGrantAccess":`El escritorio no pudo otorgar acceso al archivo.`,"directoryExplorerDialog.toast.failedToAddProject":`No se pudo añadir el proyecto`,"directoryExplorerDialog.toast.cloneUrlRequired":`Introduce una URL de repositorio antes de clonar.`,"directoryExplorerDialog.toast.selectValidDirectoryPath":`Por favor selecciona una ruta de directorio válida.`,"directoryExplorerDialog.toast.failedToSelectDirectory":`No se pudo seleccionar el directorio`,"directoryExplorerDialog.toast.unknownError":`Ocurrió un error desconocido.`,"directoryTree.actions.createNewDirectory":`Crear nueva carpeta`,"directoryTree.actions.pinDirectory":`Fijar carpeta`,"directoryTree.actions.unpinDirectory":`Desfijar carpeta`,"directoryTree.actions.createDirectory":`Crear carpeta`,"directoryTree.actions.cancel":`Cancelar`,"directoryTree.actions.selectWorkingDirectoryAria":`Seleccionar carpeta de trabajo`,"directoryTree.state.locatingHomeDirectory":`Buscando la carpeta de inicio...`,"directoryTree.state.loading":`Cargando...`,"directoryTree.state.noDirectoriesFound":`No se encontraron directorios`,"directoryTree.section.pinned":`Fijados`,"directoryTree.section.browse":`Explorar`,"aboutDialog.versionLabel":`Versión {version}`,"aboutDialog.openChamberVersionLabel":`Versión de OpenChamber {version}`,"aboutDialog.openCodeVersionLabel":`Versión de OpenCode {version}`,"aboutDialog.actions.copyDiagnostics":`Copiar diagnósticos`,"aboutDialog.actions.preparingDiagnostics":`Preparando diagnósticos...`,"aboutDialog.actions.diagnosticsCopied":`Diagnósticos copiados`,"aboutDialog.diagnosticsDescription":`Incluye el estado de OpenChamber, el estado de OpenCode, directorios y proyectos.`,"aboutDialog.footerNote":`Hecho con amor para la comunidad`,"aboutDialog.toast.copyFailed":`No se pudo copiar`,"aboutDialog.toast.diagnosticsNotReady":`Los diagnósticos aún no están listos. Espera un segundo y vuelve a intentarlo.`,"aboutDialog.toast.diagnosticsCopied":`Diagnósticos copiados`,"helpDialog.title":`Atajos de teclado`,"helpDialog.description":`Usa estos atajos de teclado para navegar por OpenChamber de manera eficiente`,"helpDialog.section.navigationCommands":`Navegación y comandos`,"helpDialog.section.sessionManagement":`Gestión de sesiones`,"helpDialog.section.panels":`Paneles`,"helpDialog.section.interface":`Interfaz`,"helpDialog.item.openCommandPalette":`Abrir paleta de comandos`,"helpDialog.item.showKeyboardShortcuts":`Mostrar atajos de teclado (este diálogo)`,"helpDialog.item.toggleSessionSidebar":`Mostrar u ocultar barra lateral de sesión`,"helpDialog.item.cycleAgent":`Cambiar agente (entrada de chat)`,"helpDialog.item.openModelSelector":`Abrir selector de modelos`,"helpDialog.item.navigateModels":`Navegar modelos (en selector)`,"helpDialog.item.adjustThinkingMode":`Ajustar modo de pensamiento (en selector, cuando esté disponible)`,"helpDialog.item.cycleThinkingVariant":`Cambiar variante de pensamiento (atajo global)`,"helpDialog.item.newWindow":`Nueva ventana (solo escritorio)`,"helpDialog.item.createNewSession":`Crear nueva sesión`,"helpDialog.item.createNewWorktreeDraft":`Crear nuevo borrador de worktree`,"helpDialog.item.previousSession":`Sesión anterior`,"helpDialog.item.nextSession":`Sesión siguiente`,"helpDialog.item.focusChatInput":`Enfocar entrada de chat`,"helpDialog.item.togglePromptNavigator":`Mostrar u ocultar navegador de prompts`,"helpDialog.item.abortActiveRun":`Detener ejecución activa (doble presionar)`,"helpDialog.item.toggleRightSidebar":`Mostrar u ocultar panel de revisión`,"helpDialog.item.openRightSidebarGitTab":`Abrir pestaña de Git en barra lateral derecha`,"helpDialog.item.openRightSidebarFilesTab":`Abrir pestaña de archivos en barra lateral derecha`,"helpDialog.item.cycleRightSidebarTab":`Cambiar pestaña de la barra lateral derecha`,"helpDialog.item.closeContextPanelTab":`Cerrar pestaña del panel de contexto`,"helpDialog.item.toggleTerminal":`Mostrar u ocultar terminal`,"helpDialog.item.newTerminalTab":`Nueva pestaña de terminal (con el terminal enfocado)`,"helpDialog.item.openNewTerminal":`Abrir terminal nuevo`,"helpDialog.item.previousTerminalTab":`Pestaña de terminal anterior (con el terminal enfocado)`,"helpDialog.item.nextTerminalTab":`Pestaña de terminal siguiente (con el terminal enfocado)`,"helpDialog.item.toggleBottomPanel":`Mostrar u ocultar el panel inferior`,"helpDialog.item.toggleTerminalExpanded":`Expandir o contraer terminal`,"helpDialog.item.togglePlanContextPanel":`Alternar panel de contexto del plan`,"helpDialog.item.cycleTheme":`Cambiar tema (Claro → Oscuro → Sistema)`,"helpDialog.item.zoomIn":`Acercar`,"helpDialog.item.zoomOut":`Alejar`,"helpDialog.item.zoomReset":`Restablecer zoom`,"helpDialog.item.switchSession":`Cambiar sesión`,"helpDialog.item.toggleServicesMenu":`Mostrar u ocultar menú de servicios`,"helpDialog.item.openUsage":`Ver uso`,"helpDialog.item.cycleServicesTab":`Cambiar pestaña de servicios`,"helpDialog.item.openSettings":`Abrir configuración`,"helpDialog.section.leaderChords":`Tecla líder (Ctrl+X)`,"helpDialog.item.leaderOpenModel":`Abrir selector de modelo`,"helpDialog.item.leaderOpenAgent":`Abrir selector de agente`,"helpDialog.item.leaderNewSession":`Crear nueva sesión`,"helpDialog.item.leaderCompact":`Compactar sesión actual`,"chat.leaderKey.pendingAria":`Tecla líder activa. Pulsa una tecla de seguimiento.`,"chat.leaderKey.action.model":`Modelo`,"chat.leaderKey.action.agent":`Agente`,"chat.leaderKey.action.newSession":`Nueva`,"chat.leaderKey.action.compact":`Compactar`,"helpDialog.keyCombiner.or":`o`,"helpDialog.proTips.title":`Consejos:`,"helpDialog.proTips.commandPalette":`Usa la paleta de comandos ({shortcut}) para acceder rápidamente a todas las acciones`,"helpDialog.proTips.recentSessions":`Las cinco sesiones más recientes aparecen en la paleta de comandos`,"helpDialog.proTips.themeCycling":`El ciclo de tema recuerda tu preferencia entre sesiones`,"header.actions.rightSidebarWithShortcut":`Barra lateral derecha ({shortcut})`,"header.actions.toggleRightSidebarAria":`Mostrar u ocultar barra lateral derecha`,"header.actions.openAppMenu":`Menú de OpenChamber`,"header.actions.openAppMenuAria":`Abrir menú de OpenChamber`,"header.actions.openSessionsWithShortcut":`Abrir sesiones ({shortcut})`,"header.actions.openSessionsAria":`Abrir sesiones`,"header.actions.closeSessionsAria":`Cerrar sesiones`,"header.actions.newSessionAria":`Nueva sesión`,"header.actions.newSessionWithShortcut":`Nueva sesión ({shortcut})`,"header.actions.backAria":`Atrás`,"header.navigation.mainAria":`Navegación principal`,"header.sessions.title":`Sesiones`,"header.changes.availableAria":`Cambios disponibles`,"session.githubIssuePicker.error.noActiveProject":`No hay ningún proyecto activo`,"session.githubIssuePicker.error.runtimeUnavailable":`API de runtime de GitHub no disponible`,"session.githubIssuePicker.error.notConnected":`GitHub no está conectado`,"session.githubIssuePicker.error.repoNotResolvable":`No se pudo resolver el repositorio`,"session.githubIssuePicker.error.repoMustBeGithub":`El remoto origin debe ser una URL de GitHub`,"session.githubIssuePicker.error.issueNotFound":`No se encontró el issue`,"session.githubIssuePicker.error.noModelSelected":`No hay ningún modelo seleccionado`,"session.githubIssuePicker.toast.loadMoreFailed":`No se pudo cargar más issues`,"session.githubIssuePicker.toast.loadIssueDetailsFailed":`No se pudieron cargar los detalles del issue`,"session.githubIssuePicker.toast.sendContextFailed":`No se pudo enviar el contexto del issue`,"session.githubIssuePicker.toast.sessionCreated":`Sesión creada desde el issue`,"session.githubIssuePicker.toast.startSessionFailed":`No se pudo iniciar la sesión`,"session.githubIssuePicker.title.select":`Vincular issue de GitHub`,"session.githubIssuePicker.title.createSession":`Nueva sesión desde issue de GitHub`,"session.githubIssuePicker.description.select":`Selecciona un issue para vincularlo a esta sesión.`,"session.githubIssuePicker.description.createSession":`Inicia una nueva sesión con contexto oculto del issue (título/cuerpo/etiquetas/comentarios).`,"session.githubIssuePicker.searchPlaceholder":`Buscar usando la sintaxis de búsqueda de código de GitHub`,"session.githubIssuePicker.empty.noActiveProject":`No hay ningún proyecto activo seleccionado.`,"session.githubIssuePicker.empty.runtimeUnavailable":`API de runtime de GitHub no disponible.`,"session.githubIssuePicker.empty.notConnected":`GitHub no está conectado. Conecta tu cuenta de GitHub en configuración.`,"session.githubIssuePicker.empty.noIssuesFound":`No se encontraron issues`,"session.githubIssuePicker.empty.noOpenIssuesFound":`No se encontraron issues abiertos`,"session.githubIssuePicker.loading.issues":`Cargando issues...`,"session.githubIssuePicker.loading.more":`Cargando...`,"session.githubIssuePicker.actions.openSettings":`Abrir configuración`,"session.githubIssuePicker.actions.useIssue":`Usar issue #{number}`,"session.githubIssuePicker.actions.openInGitHubAria":`Abrir en GitHub`,"session.githubIssuePicker.actions.loadMore":`Cargar más`,"session.githubIssuePicker.actions.sectionTitle":`Acciones`,"session.githubIssuePicker.actions.toggleWorktreeAria":`Activar worktree`,"session.githubIssuePicker.actions.createInWorktree":`Crear en worktree`,"session.githubIssuePicker.actions.openRepo":`Abrir repositorio`,"session.githubIssuePicker.actions.refresh":`Actualizar`,"session.githubPrPicker.error.noActiveProject":`No hay ningún proyecto activo`,"session.githubPrPicker.error.runtimeUnavailable":`API de runtime de GitHub no disponible`,"session.githubPrPicker.error.notConnected":`GitHub no está conectado`,"session.githubPrPicker.error.prNotFound":`No se encontró la PR`,"session.githubPrPicker.error.repoNotResolvable":`No se pudo resolver el repositorio`,"session.githubPrPicker.error.repoMustBeGithub":`El remoto origin debe ser una URL de GitHub`,"session.githubPrPicker.toast.loadMoreFailed":`No se pudieron cargar más PR`,"session.githubPrPicker.toast.loadDetailsFailed":`No se pudieron cargar los detalles de la PR`,"session.githubPrPicker.title":`Vincular PR de GitHub`,"session.githubPrPicker.description":`Selecciona una PR para adjuntar contexto de revisión a este mensaje.`,"session.githubPrPicker.searchPlaceholder":`Buscar usando la sintaxis de búsqueda de código de GitHub`,"session.githubPrPicker.includeDiffAria":`Incluir diff de la PR en el contexto adjunto`,"session.githubPrPicker.includeDiff":`Incluir diff de la PR`,"session.githubPrPicker.empty.noActiveProject":`No hay ningún proyecto activo seleccionado.`,"session.githubPrPicker.empty.runtimeUnavailable":`API de runtime de GitHub no disponible.`,"session.githubPrPicker.empty.notConnected":`GitHub no está conectado. Conecta tu cuenta de GitHub en configuración.`,"session.githubPrPicker.empty.noPullRequestsFound":`No se encontraron PR`,"session.githubPrPicker.empty.noOpenPullRequestsFound":`No se encontraron PR abiertas`,"session.githubPrPicker.loading.pullRequests":`Cargando PR...`,"session.githubPrPicker.loading.more":`Cargando...`,"session.githubPrPicker.actions.openSettings":`Abrir configuración`,"session.githubPrPicker.actions.usePullRequest":`Usar PR #{number}`,"session.githubPrPicker.actions.openInGitHubAria":`Abrir en GitHub`,"session.githubPrPicker.actions.loadMore":`Cargar más`,"session.newWorktree.title":`Nuevo worktree`,"session.newWorktree.mode.newBranch":`Nueva rama`,"session.newWorktree.mode.existingBranch":`Rama existente`,"session.newWorktree.selectBranch":`Seleccionar rama`,"session.newWorktree.chooseBranch":`Elige una rama...`,"session.newWorktree.fetchBranches":`Obtener ramas`,"session.newWorktree.searchBranches":`Buscar ramas...`,"session.newWorktree.loadingBranches":`Cargando ramas...`,"session.newWorktree.noBranchesFound":`No se encontraron ramas`,"session.newWorktree.matchingBranches":`Ramas coincidentes`,"session.newWorktree.noMatchingBranches":`No hay ramas coincidentes`,"session.newWorktree.localBranches":`Ramas locales`,"session.newWorktree.remoteBranches":`Ramas remotas`,"session.newWorktree.otherLocalBranches":`Otras ramas locales`,"session.newWorktree.otherRemoteBranches":`Otras ramas remotas`,"session.newWorktree.branchName":`Nombre de la rama`,"session.newWorktree.branchNamePlaceholder":`feature/my-awesome-feature`,"session.newWorktree.actions.change":`Cambiar`,"session.newWorktree.actions.startFromGitHubIssuePr":`Iniciar desde Issue/PR de GitHub`,"session.newWorktree.usingPrBranch":`Usando rama de la PR: {branch}`,"session.newWorktree.fromIssue":`De issue #{number}: {title}`,"session.newWorktree.worktreeDirectory":`Directorio del worktree`,"session.newWorktree.worktreeDirectoryPlaceholder":`my-worktree-directory`,"session.newWorktree.resetToMatchBranchName":`Restablecer para coincidir con el nombre de la rama`,"session.newWorktree.sourceBranch":`Rama de origen`,"session.newWorktree.selectSourceBranch":`Seleccionar rama de origen`,"session.newWorktree.selectSourceBranchPlaceholder":`Seleccionar rama de origen...`,"session.newWorktree.newBranchFromSource":`Se creará una nueva rama desde {source}`,"session.newWorktree.issueNumber":`Issue #{number}`,"session.newWorktree.prNumber":`PR #{number}`,"session.newWorktree.includeDiffBadge":`+diff`,"session.newWorktree.newSessionTitle":`Nueva sesión`,"session.newWorktree.fromSource":`desde {source}`,"session.newWorktree.actions.cancel":`Cancelar`,"session.newWorktree.actions.creating":`Creando...`,"session.newWorktree.actions.createWorktree":`Crear worktree`,"session.newWorktree.actions.reset":`Restablecer`,"session.newWorktree.error.noModelSelected":`No hay ningún modelo seleccionado`,"session.newWorktree.error.noActiveProject":`No hay ningún proyecto activo`,"session.newWorktree.error.branchNameRequired":`Se requiere el nombre de la rama`,"session.newWorktree.error.worktreeDirectoryRequired":`Se requiere el directorio del worktree`,"session.newWorktree.error.sendGitHubContextFailed":`No se pudo enviar el contexto de GitHub`,"session.newWorktree.error.createWorktreeFailed":`No se pudo crear el worktree`,"session.newWorktree.toast.sessionFromIssue":`Sesión creada desde issue`,"session.newWorktree.toast.sessionFromPr":`Sesión creada desde PR`,"session.newWorktree.toast.worktreeCreated":`Worktree creado`,"session.newWorktree.toast.worktreeCreatedDescription":`{target} - configurando en segundo plano`,"session.githubIntegration.title":`Seleccionar desde GitHub`,"session.githubIntegration.tabs.issues":`Issues`,"session.githubIntegration.tabs.pullRequests":`PR`,"session.githubIntegration.connect.title":`Conectar a GitHub`,"session.githubIntegration.connect.description":`Vincula issues o PR para rellenar automáticamente los detalles del worktree`,"session.githubIntegration.connect.action":`Conectar a GitHub`,"session.githubIntegration.search.issuesPlaceholder":`Buscar usando la sintaxis de búsqueda de código de GitHub`,"session.githubIntegration.search.prsPlaceholder":`Buscar usando la sintaxis de búsqueda de código de GitHub`,"session.githubIntegration.empty.noIssuesFound":`No se encontraron issues`,"session.githubIntegration.empty.noPullRequestsFound":`No se encontraron PR`,"session.githubIntegration.actions.loadMore":`Cargar más`,"session.githubIntegration.actions.cancel":`Cancelar`,"session.githubIntegration.actions.select":`Seleccionar`,"session.githubIntegration.selected.issueNumber":`Issue #{number}`,"session.githubIntegration.selected.prNumber":`PR #{number}`,"session.githubIntegration.includeDiffAria":`Incluir diff del PR en el contexto de la sesión`,"session.githubIntegration.includeDiff":`Incluir diff del PR`,"session.githubIntegration.error.notConnected":`GitHub no está conectado`,"session.githubIntegration.error.loadDataFailed":`No se pudieron cargar los datos`,"session.githubIntegration.validation.branchAlreadyCheckedOut":`La rama ya está en uso en un worktree`,"session.githubIntegration.validation.branchAlreadyExists":`La rama ya existe localmente`,"session.githubIntegration.validation.failed":`No se pudo validar`,"chat.fileAttachment.toast.attachFailed":`No se pudo adjuntar el archivo`,"chat.fileAttachment.toast.someFilesSkipped":`Algunos archivos se omitieron:
10
10
  {summary}`,"chat.fileAttachment.toast.vscodePickFailed":`No se pudieron seleccionar archivos en VS Code`,"chat.fileAttachment.fileFallback":`archivo`,"chat.fileAttachment.skippedFallback":`omitido`,"chat.fileAttachment.actions.attachAria":`Adjuntar archivos`,"chat.fileAttachment.actions.attach":`Adjuntar archivos`,"chat.fileAttachment.actions.removeNamed":`Eliminar {name}`,"chat.fileAttachment.actions.removeImage":`Eliminar imagen`,"chat.fileAttachment.actions.expandImages":`Mostrar más imágenes`,"chat.fileAttachment.actions.collapseImages":`Mostrar menos imágenes`,"chat.fileAttachment.activeEditor.addFile":`Agregar archivo:{name} al contexto`,"chat.fileAttachment.activeEditor.pinSelection":`Anclar selección al contexto`,"chat.fileAttachment.activeEditor.remove":`Quitar del contexto`,"chat.fileAttachment.openInDiagram":`Abrir en vista de diagrama`,"chat.pendingChanges.fileCountSingle":`{count} archivo`,"chat.pendingChanges.fileCountPlural":`{count} archivos`,"chat.pendingChanges.changedInWorkspace":`modificado en el espacio de trabajo`,"chat.changedFiles.title":`Archivos modificados`,"chat.changedFiles.actions.openFileTitle":`Abrir {path}`,"chat.activity.title":`Detalles del procesamiento`,"chat.activity.active":`Procesando`,"chat.activity.compacting":`Comprimiendo`,"chat.activity.compactionCompleted":`Compresión completada`,"chat.activity.expandAria":`Expandir detalles del procesamiento`,"chat.activity.collapseAria":`Contraer detalles del procesamiento`,"chat.activity.completed":`Procesado en {duration}`,"chat.activity.completedStatus":`Procesado`,"chat.activity.agentsWorking":`{count} agentes trabajando`,"chat.activity.agentsInvolved":`{count} agentes involucrados`,"chat.activity.moreHidden":`+{count} más...`,"chat.emptyState.opencodeUnreachable":`OpenCode no es accesible`,"chat.emptyState.startNewChat":`Iniciar una nueva conversación`,"chat.emptyState.draftTitle":`What are we working on?`,"chat.emptyState.draftTitleWithProject":`What are we working on in {project}?`,"chat.emptyState.establishingConversation":`Estableciendo conversación`,"chat.draftPresets.explore.label":`Explore the codebase`,"chat.draftPresets.catchup.label":`Catch me up`,"chat.draftPresets.weigh.label":`Weigh my options`,"chat.draftPresets.plan.label":`Start feature planning`,"chat.draftPresets.craftGoal.label":`Crear un Goal`,"chat.draftPresets.debug.label":`Debug an issue`,"chat.draftPresets.review.label":`Review my changes`,"chat.draftStarters.add":`Add a starter`,"chat.draftStarters.searchPlaceholder":`Search commands and skills…`,"chat.draftStarters.empty":`Nothing to add`,"chat.draftStarters.sectionBuiltIn":`Built-in`,"chat.draftStarters.sectionCommands":`Commands`,"chat.draftStarters.sectionSkills":`Skills`,"chat.draftStarters.remove":`Quitar`,"chat.draftStarters.expand":`Mostrar más`,"chat.draftStarters.collapse":`Mostrar menos`,"chat.scrollToBottom.aria":`Ir al final`,"chat.promptNavigator.aria":`Navegación de prompts`,"chat.promptNavigator.currentPrompt":`Prompt actual`,"chat.promptNavigator.loadMore":`Cargar más prompts`,"chat.timeline.relative.justNow":`ahora mismo`,"chat.timeline.relative.minutesAgo":`hace {count}m`,"chat.timeline.relative.hoursAgo":`hace {count}h`,"chat.timeline.relative.daysAgo":`hace {count}d`,"chat.timeline.title":`Línea de tiempo de la conversación`,"chat.timeline.description":`Navega hasta cualquier punto de la conversación o crea una nueva sesión`,"chat.timeline.searchPlaceholder":`Buscar mensajes...`,"chat.timeline.empty.search":`No se encontraron mensajes`,"chat.timeline.empty.session":`No hay mensajes en esta sesión aún`,"chat.timeline.noTextContent":`[No hay contenido de texto]`,"chat.timeline.actions.title":`Acciones`,"chat.timeline.actions.revertFromHere":`Revertir desde aquí`,"chat.timeline.actions.forkFromHere":`Crear una rama desde aquí`,"chat.timeline.actions.previousTurn":`Turno anterior`,"chat.timeline.actions.latest":`Último`,"chat.timeline.help.clickMessage":`Haz clic en un mensaje para desplazarse hasta él en la conversación`,"chat.timeline.help.undoToPoint":`Deshacer hasta este punto (el texto del mensaje se llenará en la entrada)`,"chat.timeline.help.createSessionFromHere":`Crear una nueva sesión desde aquí`,"chat.statusRow.todo.status.inProgress":`En progreso`,"chat.statusRow.todo.status.pending":`Pendiente`,"chat.statusRow.todo.status.completed":`Completado`,"chat.statusRow.todo.status.cancelled":`Cancelado`,"chat.statusRow.todo.priority.high":`Prioridad alta`,"chat.statusRow.todo.priority.medium":`Prioridad media`,"chat.statusRow.todo.priority.low":`Prioridad baja`,"chat.statusRow.actions.stopGeneratingAria":`Detener la generación`,"chat.statusRow.tasksTitle":`Tareas`,"chat.statusRow.summary.activeLeft":`{active} activas · {left} restantes`,"chat.statusRow.aborted":`Interrumpido`,"chat.statusRow.abortPrompt":`Pulsa Esc de nuevo para detener`,"chat.assistantStatus.readingFile":`Leyendo archivo`,"chat.assistantStatus.writingFile":`Escribiendo archivo`,"chat.assistantStatus.editingFile":`Editando archivo`,"chat.assistantStatus.editingFiles":`Editando archivos`,"chat.assistantStatus.compacting":`Comprimiendo`,"chat.assistantStatus.applyingPatch":`Aplicando parche`,"chat.assistantStatus.runningCommand":`Ejecutando comando`,"chat.assistantStatus.searchingContent":`Buscando contenido`,"chat.assistantStatus.findingFiles":`Buscando archivos`,"chat.assistantStatus.listingDirectory":`Listando directorio`,"chat.assistantStatus.delegatingTask":`Delegando tarea`,"chat.assistantStatus.taskWorking":`{name} en curso`,"chat.assistantStatus.fetchingUrl":`Obteniendo URL`,"chat.assistantStatus.searchingWeb":`Buscando en la web`,"chat.assistantStatus.webCodeSearch":`Buscando código web`,"chat.assistantStatus.updatingTodos":`Actualizando tareas`,"chat.assistantStatus.readingTodos":`Leyendo tareas`,"chat.assistantStatus.learningSkill":`Aprendiendo habilidad`,"chat.assistantStatus.askingQuestion":`Haciendo pregunta`,"chat.assistantStatus.switchingToPlanning":`Cambiando a planificación`,"chat.assistantStatus.switchingToBuilding":`Cambiando a construcción`,"chat.assistantStatus.usingTool":`Usando {tool}`,"chat.assistantStatus.working":`Trabajando`,"chat.assistantStatus.processing":`Procesando`,"chat.assistantStatus.preparing":`Preparando`,"chat.assistantStatus.warmingUp":`Preparando el entorno`,"chat.assistantStatus.gearsTurning":`En marcha`,"chat.assistantStatus.computing":`Computando`,"chat.assistantStatus.calculating":`Calculando`,"chat.assistantStatus.analyzing":`Analizando`,"chat.assistantStatus.wheelsSpinning":`En funcionamiento`,"chat.assistantStatus.calibrating":`Calibrando`,"chat.assistantStatus.synthesizing":`Sintetizando`,"chat.assistantStatus.connectingDots":`Conectando ideas`,"chat.assistantStatus.inspectingLogic":`Revisando lógica`,"chat.assistantStatus.weighingOptions":`Evaluando opciones`,"chat.assistantStatus.thinking":`Pensando`,"chat.assistantStatus.composing":`Redactando`,"chat.assistantStatus.sendingMessage":`Enviando mensaje`,"chat.assistantStatus.waitingForPermission":`Esperando permiso`,"chat.assistantStatus.retrying":`Reintentando`,"chat.assistantStatus.retryingIn":`Reintentando {duration}`,"chat.assistantStatus.retryingAttempt":`Reintentando (intento {attempt})`,"chat.assistantStatus.retryingInAttempt":`Reintentando {duration} (intento {attempt})`,"chat.revertIndicator.redo":`Rehacer`,"chat.revertIndicator.redoAria":`Rehacer — restaurar mensajes revertidos`,"chat.revertPopover.title":`Revertidos`,"chat.revertPopover.noTextContent":`Sin contenido de texto`,"chat.revertPopover.forkFromHere":`Bifurcar desde aquí`,"chat.revertPopover.forkFromMessage":`Bifurcar desde este mensaje`,"chat.revertPopover.restoreAll":`Restaurar todo`,"chat.revertPopover.restore":`Restaurar`,"chat.revertPopover.revert":`Revertir`,"chat.revertPopover.fork":`Bifurcar`,"chat.revert.toast.undo":`Revertido a {preview}`,"chat.revert.toast.redo":`Rehecho`,"chat.revert.toast.restored":`Todos los mensajes restaurados`,"chat.errorBoundary.title":`Error en la conversación`,"chat.errorBoundary.description":`La interfaz de la conversación encontró un error. Esto podría deberse a un problema de red temporal o a datos de mensaje corruptos.`,"chat.errorBoundary.sessionLabel":`Sesión`,"chat.errorBoundary.detailsSummary":`Detalles del error`,"chat.errorBoundary.resetAction":`Restablecer la conversación`,"chat.errorBoundary.persistentHint":`Si el problema persiste, intenta actualizar la página.`,"chat.autocomplete.tabs.commands":`Comandos`,"chat.autocomplete.tabs.agents":`Agentes`,"chat.autocomplete.tabs.files":`Archivos`,"chat.autocomplete.keyboardHint":`↑↓ navegar • Enter seleccionar • Esc cerrar`,"chat.commandAutocomplete.command.initDescription":`Crear/actualizar el archivo AGENTS.md`,"chat.commandAutocomplete.command.undoDescription":`Deshacer el último mensaje`,"chat.commandAutocomplete.command.redoDescription":`Rehacer mensajes previamente deshechos`,"chat.commandAutocomplete.command.forkDescription":`Crear una sesión nueva desde el estado actual de la conversación`,"chat.commandAutocomplete.command.timelineDescription":`Abrir la línea de tiempo de la conversación`,"chat.commandAutocomplete.command.modelDescription":`Abrir el selector de modelos`,"chat.commandAutocomplete.command.compactDescription":`Comprimir el historial de la sesión usando IA para reducir el tamaño del contexto`,"chat.commandAutocomplete.command.newDescription":`Iniciar una nueva sesión en el proyecto actual.`,"chat.commandAutocomplete.command.summaryDescription":`Resumen no destructivo de la sesión. Pista opcional del tema después del comando.`,"chat.commandAutocomplete.command.workspaceReviewDescription":`Revisa el diff del espacio de trabajo en intención, corrección y adecuación, con hallazgos por severidad.`,"chat.commandAutocomplete.command.handoffReviewDescription":`Crea o reutiliza una sesión de revisión separada a partir de un handoff generado.`,"chat.commandAutocomplete.command.featurePlanDescription":`Inicia una sesión de planificación guiada e interactiva para una nueva función.`,"chat.commandAutocomplete.command.craftGoalDescription":`Convierte una idea o tarea en un Goal claro y verificable.`,"chat.chatInput.toast.craftGoalFailed":`No se pudo iniciar la creación del Goal`,"chat.commandAutocomplete.command.catchUpDescription":`Recupera el contexto: qué estabas haciendo y por dónde continuar.`,"chat.commandAutocomplete.command.debugDescription":`Investigación guiada de la causa raíz de un error antes de proponer una solución.`,"chat.commandAutocomplete.command.weighDescription":`Compara 2-3 enfoques con sus ventajas y desventajas y una recomendación antes de decidir.`,"chat.commandAutocomplete.command.exploreDescription":`Oriéntate en este código: un recorrido general de la arquitectura y las partes principales.`,"chat.commandAutocomplete.badge.skill":`habilidad`,"chat.commandAutocomplete.badge.command":`comando`,"chat.commandAutocomplete.badge.system":`sistema`,"chat.commandAutocomplete.empty":`No se encontraron comandos`,"chat.agentMentionAutocomplete.badge.system":`sistema`,"chat.agentMentionAutocomplete.empty":`No se encontraron agentes`,"chat.fileMentionAutocomplete.searchMoreAgents":`Escribe para buscar más agentes`,"chat.fileMentionAutocomplete.groups.agents":`Agentes`,"chat.fileMentionAutocomplete.groups.sessions":`Sesiones cargadas`,"chat.fileMentionAutocomplete.groups.directories":`Directorios`,"chat.fileMentionAutocomplete.groups.recentFiles":`Archivos recientes`,"chat.fileMentionAutocomplete.groups.files":`Archivos`,"chat.fileMentionAutocomplete.sessionType":`Sesión de OpenCode`,"chat.fileMentionAutocomplete.untitledSession":`Sesión sin título`,"chat.fileMentionAutocomplete.empty":`No se encontraron coincidencias`,"chat.queuedMessage.attachments":`+{count} archivo(s)`,"chat.queuedMessage.empty":`(vacío)`,"chat.queuedMessage.title":`Cola`,"chat.queuedMessage.edit":`editar`,"chat.queuedMessage.send":`enviar`,"chat.queuedMessage.queuing":`Encolando…`,"chat.queuedMessage.queuingAria":`Encolando mensaje`,"chat.queuedMessage.removeAria":`Eliminar de la cola`,"chat.queuedMessage.reorderAria":`Arrastra para reordenar`,"chat.container.returnToParent.aria":`Volver a la sesión principal`,"chat.container.returnToParent.titleNamed":`Volver a: {title}`,"chat.container.returnToParent.title":`Volver a la sesión principal`,"chat.container.returnToParent.label":`Principal`,"chat.container.readOnlySubagentPromptBanner":`Las sesiones de subagentes no pueden recibir prompts.`,"chat.unifiedControls.title":`Controles`,"chat.unifiedControls.model.title":`Modelo`,"chat.unifiedControls.model.noRecent":`No hay modelos recientes`,"chat.unifiedControls.model.moreAria":`Más modelos`,"chat.unifiedControls.effort.title":`Esfuerzo`,"chat.unifiedControls.effort.moreAria":`Más opciones de esfuerzo`,"chat.questionCard.summaryTab":`Resumen`,"chat.questionCard.noAnswer":`(no hay respuesta)`,"chat.questionCard.inputNeeded":`Entrada necesaria`,"chat.questionCard.fromSubagent":`De un subagente`,"chat.questionCard.questionFallback":`Pregunta {index}`,"chat.questionCard.selectMultiple":`Seleccionar múltiples`,"chat.questionCard.recommended":`recomendado`,"chat.questionCard.other":`Otro…`,"chat.questionCard.yourAnswer":`Tu respuesta`,"chat.questionCard.submit":`Enviar`,"chat.questionCard.next":`Siguiente`,"chat.questionCard.dismiss":`Descartar`,"chat.questionCard.copyMarkdown":`Copiar como Markdown`,"chat.questionCard.copyJson":`Copiar como JSON`,"chat.questionCard.copiedMarkdown":`Pregunta copiada como Markdown`,"chat.questionCard.copiedJson":`Pregunta copiada como JSON`,"chat.questionCard.copyFailed":`No se pudo copiar la pregunta`,"chat.questionCard.submitFailed":`No se pudo enviar la respuesta`,"chat.questionCard.dismissFailed":`No se pudo descartar la pregunta`,"chat.questionCard.noLongerPending":`Esta pregunta ya no espera una respuesta.`,"chat.questionCard.tryAgain":`Inténtalo de nuevo en un momento.`,"chat.textSelection.toast.noProject":`No se encontró proyecto para esta sesión`,"chat.textSelection.toast.addToNotesFailed":`No se pudo añadir a las notas`,"chat.textSelection.toast.addToNotesSuccess":`Texto seleccionado añadido a notas`,"chat.textSelection.toast.addToNotesSummaryFailed":`No se pudo resumir la selección; se añadió el texto seleccionado a las notas`,"chat.textSelection.actions.addToChat":`Añadir al chat`,"chat.textSelection.actions.newSession":`Nueva sesión`,"chat.textSelection.actions.copy":`Copiar`,"chat.textSelection.actions.addToNotes":`Añadir a las notas`,"chat.textSelection.title.addToCurrentChat":`Añadir al chat actual`,"chat.textSelection.title.newSessionWithSelection":`Crear nueva sesión con selección`,"chat.textSelection.title.saveInsightToNotes":`Guardar texto seleccionado en notas`,"chat.messageBody.actions.editing":`Editando…`,"chat.messageBody.actions.editStaged":`Edición pendiente`,"chat.messageBody.actions.cancelEdit":`Cancelar la edición`,"chat.messageBody.actions.editAria":`Editar el mensaje y conservar los cambios`,"chat.messageBody.actions.edit":`Editar y conservar los cambios`,"chat.messageBody.actions.revertAria":`Volver a este mensaje`,"chat.messageBody.actions.revert":`Volver desde aquí`,"chat.messageBody.actions.forkAria":`Bifurcar desde este mensaje`,"chat.messageBody.actions.fork":`Bifurcar desde aquí`,"chat.messageBody.actions.openSourceSessionAria":`Abrir sesión original`,"chat.messageBody.actions.openSourceSession":`Abrir sesión original`,"chat.messageBody.actions.copyMessageAria":`Copiar texto del mensaje`,"chat.messageBody.actions.copyMessage":`Copiar mensaje`,"chat.messageBody.actions.openPreviewAria":`Abrir vista previa`,"chat.messageBody.actions.openPreview":`Abrir vista previa`,"chat.messageBody.actions.copyAnswer":`Copiar respuesta`,"chat.messageBody.actions.savingImage":`Guardando imagen...`,"chat.messageBody.actions.saveAsImage":`Guardar como imagen`,"chat.messageBody.meta.tpsAria":`Velocidad de generación: {rate}`,"chat.messageBody.meta.tpsTooltip":`Velocidad de generación (tokens/s), sin incluir el tiempo de las herramientas`,"chat.messageBody.forkDialog.instructions.label":`Instrucciones`,"chat.messageBody.forkDialog.instructions.placeholder":`Añade instrucciones para la nueva sesión…`,"chat.messageBody.forkDialog.createWorktree":`Crear worktree`,"chat.forkTransition.preparing":`Preparando la bifurcación`,"chat.forkTransition.copying":`Copiando la conversación (las sesiones largas pueden tardar)`,"chat.forkTransition.opening":`Abriendo la nueva sesión`,"chat.forkTransition.loading":`Cargando mensajes recientes`,"chat.forkTransition.progress":`{current} / {total}`,"chat.generatedResult.actions.copy":`Copiar`,"chat.generatedResult.actions.copied":`Copiado`,"chat.generatedResult.commit.title":`Mensaje de commit generado`,"chat.generatedResult.commit.highlights":`Puntos clave`,"chat.generatedResult.pullRequest.title":`Pull request generado`,"chat.generatedResult.pullRequest.titleLabel":`Título`,"chat.generatedResult.pullRequest.bodyLabel":`Descripción`,"chat.messageBody.tts.stopSpeaking":`Dejar de hablar`,"chat.messageBody.tts.readAloud":`Leer en voz alta`,"chat.messageBody.tts.readAloudWithProvider":`Leer en voz alta ({provider} voz)`,"planView.tts.readAloud":`Leer plan en voz alta`,"planView.tts.stopSpeaking":`Detener lectura`,"filesView.tts.readAloud":`Leer archivo en voz alta`,"filesView.tts.stopSpeaking":`Detener lectura`,"chat.messageBody.toast.imageSaved":`Imagen guardada`,"chat.messageBody.toast.generateImageFailed":`No se pudo generar la imagen`,"chat.chatInput.actions.commands":`Comandos`,"chat.chatInput.actions.attachFiles":`Adjuntar archivos`,"chat.chatInput.actions.attachPhotos":`Adjuntar fotos`,"chat.chatInput.actions.addAttachment":`Añadir adjunto`,"chat.chatInput.actions.linkGithubIssue":`Vincular issue de GitHub`,"chat.chatInput.actions.linkGithubPr":`Vincular PR de GitHub`,"chat.chatInput.actions.modelAgentSettings":`Configuración del modelo y agente`,"chat.chatInput.actions.sendMessageAria":`Enviar mensaje`,"chat.chatInput.actions.queueMessageAria":`Poner mensaje en cola`,"chat.chatInput.actions.queuingMessageAria":`Encolando…`,"chat.chatInput.actions.sendingMessageAria":`Enviando…`,"chat.chatInput.actions.stopGeneratingAria":`Detener generación`,"chat.chatInput.focusMode.toggleAria":`Activar o desactivar modo de enfoque`,"chat.chatInput.focusMode.label":`Modo de enfoque`,"chat.chatInput.permissionAutoAccept.disable":`Desactivar aceptación automática de permisos`,"chat.chatInput.permissionAutoAccept.enable":`Activar aceptación automática de permisos`,"chat.chatInput.permissionAutoAccept.on":`Aceptación automática de permisos: activada`,"chat.chatInput.permissionAutoAccept.off":`Aceptación automática de permisos: desactivada`,"chat.chatInput.linked.byAuthor":`por {author}`,"chat.chatInput.linked.issue.openInBrowserAria":`Abrir issue en el navegador`,"chat.chatInput.linked.issue.removeAria":`Eliminar issue vinculado`,"chat.chatInput.linked.pr.number":`PR #{number}`,"chat.chatInput.linked.pr.openInBrowserAria":`Abrir PR en el navegador`,"chat.chatInput.linked.pr.removeAria":`Eliminar PR vinculada`,"chat.chatInput.placeholder.shell":`Escribe un comando de shell...`,"chat.chatInput.placeholder.chat":`@ para archivos/agentes; / para comandos y habilidades; ! para shell; # para snippets`,"chat.chatInput.placeholder.chatCompact":`Usa @ / ! # para ayudas`,"chat.chatInput.placeholder.selectSession":`Selecciona o crea una sesión para comenzar a chatear`,"chat.chatInput.pastedTextReference":`Texto pegado #{index} · {count} caracteres`,"chat.snippetAutocomplete.action.addNew":`+ Agregar nuevo snippet`,"chat.snippetAutocomplete.empty":`No se encontraron snippets`,"chat.snippetAutocomplete.footer":`↑↓ navegar • Enter seleccionar • Esc cerrar`,"snippets.source.global":`global`,"snippets.source.project":`proyecto`,"chat.chatInput.toast.compactFailed":`No se pudo comprimir la sesión`,"chat.chatInput.toast.summaryFailed":`No se pudo generar el resumen`,"chat.messageBody.actions.sendReviewFeedback":`Enviar feedback de revisión al agente que implementa los cambios`,"chat.messageBody.actions.sendImplementationResponse":`Enviar respuesta de implementación al agente revisor`,"chat.chatInput.toast.reviewFailed":`No se pudieron revisar los cambios`,"chat.chatInput.toast.planFeatureFailed":`No se pudo iniciar la planificación de la función`,"chat.chatInput.toast.catchUpFailed":`No se pudo recuperar el contexto`,"chat.chatInput.toast.debugFailed":`No se pudo iniciar la depuración`,"chat.chatInput.toast.weighFailed":`No se pudieron comparar las opciones`,"chat.chatInput.toast.exploreFailed":`No se pudo iniciar el recorrido`,"chat.chatInput.toast.attachmentsTooLarge":`Los adjuntos son demasiado grandes para enviar. Intenta reducir la cantidad o el tamaño de las imágenes.`,"chat.chatInput.toast.sendAttachmentsFailed":`No se pudieron enviar los adjuntos. Intenta con menos archivos o imágenes más pequeñas.`,"chat.chatInput.toast.messageSendFailed":`El mensaje no se pudo enviar. Los adjuntos se restauraron.`,"chat.chatInput.toast.sendStatusUnknown":`Estado del mensaje desconocido. Verifique e intente de nuevo.`,"chat.chatInput.toast.queueOperationFailed":`La operación de la cola falló.`,"chat.chatInput.toast.queueOperationStatusUnknown":`Se desconoce el estado de la operación de la cola. El estado del servidor se actualizará automáticamente.`,"chat.chatInput.toast.clipboardAttachFailed":`No se pudo adjuntar la imagen desde el portapapeles`,"chat.chatInput.toast.attachFileFailed":`No se pudo adjuntar el archivo`,"chat.chatInput.toast.attachNamedFailed":`No se pudo adjuntar {name}`,"chat.chatInput.toast.someFilesSkipped":`Algunos archivos se omitieron: