Files
openchamber/packages/ui/src/lib/i18n/messages/es.settings.ts
T
Bohdan Triapitsyn a5aa32446d feat(browser): replace the preview proxy with a real browser panel and an agent web tool (#2883)
The preview panel worked by proxying a dev server through OpenChamber's own
origin and rewriting the HTML that came back. Anything the rewriter did not
anticipate broke, and pages that refuse to be embedded never loaded at all.
This deletes the proxy (-1604 lines and its tests) and merges the preview and
browser panels into one surface backed by a real Chromium view.

What the panel is now

- A `<webview>` in its own session partition: logins and cookies persist, hot
  reload works because nothing is rewritten, DevTools are one click away.
- Annotation: pick one element, drag a region, or draw freehand, write a note,
  and it reaches chat with a screenshot of the visible page with the marks on it.
- Toolbar: hard reload, page zoom, device sizes, a light/dark switch that
  applies to the page rather than the app, and cookie/cache clearing scoped to
  the panel alone.
- Several pages at once, each tab showing the page's own favicon, and an address
  bar that suggests pages already visited in this project.
- Dev servers are listed from what is actually listening on the machine, checked
  against what a project announced, so a server is offered no matter how it was
  started. One that is still starting is waited for instead of failing.

Remote dev servers

The desktop app binds a local port and pipes raw bytes to the OpenChamber host
over the existing authenticated connection, so the page keeps its own origin at
the root of its own host. The reachable set is exactly what discovery reports
and is re-checked per connection, so an authenticated client cannot dial
arbitrary local services on the host. Links and redirects to another loopback
port stay on the machine that served the page. A tunnel that cannot be opened is
reported; it is never replaced by the plain loopback URL, which would answer
from the user's own machine under a remote address.

Agent control

Browser actions are a separate `openchamber_web` tool: open, snapshot, click,
type, scroll, inspect computed styles, resize between mobile/tablet/desktop, and
capture a screenshot into `.openchamber/screenshots/` in the project. The
existing `openchamber` tool keeps sessions, worktrees and scheduled tasks. Each
has its own setting in the new Settings -> General -> OpenChamber Tools section,
and the plugin is not injected at all when both are off.

Capability belongs to the connected client, not to configuration: a client
declares on its event stream that it can drive a page, which only a Chromium
host does. Exactly one client performs each request — it claims the request
before acting, and the first claim wins — because deciding by whose result
arrives first would be too late for a click that already happened. No client
listening is answered immediately with an explanation rather than a timeout.

Runtime boundaries

Web tabs get a plain iframe that can display a page but not inspect one. The
VS Code extension no longer offers the surface at all, since nothing that makes
the panel worth having works there. Mobile is unaffected.

Native boundary

Camera, microphone, location and device-picker requests from panel pages are
denied — Electron grants them by default when no handler is set, and the panel
loads whatever address the user types. Page capture, appearance emulation and
storage clearing verify that their target belongs to the panel's own session
instead of trusting a web-contents id from the renderer.

Persisted state

Stored `preview` tabs migrate to `browser` (v13 -> v14). Context panel tab
limits are now per surface, so filling one surface no longer evicts another's
tabs. Address history is stored per project and per runtime.

Documentation

`preview.mdx` and `desktop-browser.mdx` rewritten across all locales, the agent
tool settings path corrected, new `DOCUMENTATION.md` for the browser-control
broker and the dev tunnel, and the `ui-api-decoupling` skill updated where it
still described the deleted proxy.
2026-08-13 22:44:13 +03:00

2137 lines
189 KiB
TypeScript

export const settingsDict = {
'settings.providers.page.openCodeGo.title': 'Seguimiento de uso de OpenCode Go',
'settings.providers.page.openCodeGo.description': 'Conecta el panel de OpenCode Go para ver las cuotas móvil, semanal y mensual.',
'settings.providers.page.openCodeGo.workspaceId': 'ID del espacio de trabajo',
'settings.providers.page.openCodeGo.authCookie': 'Cookie de autenticación',
'settings.providers.page.openCodeGo.apiKey': 'Clave API',
'settings.providers.page.openCodeGo.help': 'Copia el ID desde la URL del panel y la cookie auth desde las herramientas del navegador. OpenChamber nunca examina las cookies del navegador.',
'settings.providers.page.openCodeGo.save': 'Guardar y validar',
'settings.providers.page.openCodeGo.replace': 'Reemplazar',
'settings.providers.page.openCodeGo.validate': 'Validar',
'settings.providers.page.openCodeGo.delete': 'Eliminar',
'settings.providers.page.quotaCredentials.saved': 'Credenciales de {provider} guardadas.',
'settings.providers.page.quotaCredentials.accessToken': 'Token de acceso',
'settings.providers.page.quotaCredentials.refreshToken': 'Token de actualización',
'settings.providers.page.quotaCredentials.tokenPlaceholder': 'Pega el token',
'settings.providers.page.openCodeGo.saveFailed': 'No se pudieron validar las credenciales de OpenCode Go.',
'settings.providers.page.openCodeGo.valid': 'Las credenciales de OpenCode Go son válidas.',
'settings.providers.page.openCodeGo.invalid': 'Las credenciales de OpenCode Go no son válidas o han caducado.',
'settings.providers.page.openCodeGo.deleted': 'Credenciales de OpenCode Go eliminadas.',
'settings.providers.page.openCodeGo.deleteFailed': 'No se pudieron eliminar las credenciales de OpenCode Go.',
"settings.appearance.language.label": "Idioma",
"settings.appearance.language.description": "Elige el idioma de la interfaz.",
"settings.appearance.language.select": "Seleccionar idioma",
"settings.window.description": "Ventana de configuración de OpenChamber.",
"settings.view.home.title": "Configuración",
"settings.view.home.description": "Saltar a páginas comunes.",
"settings.view.home.cards.providers.title": "Proveedores",
"settings.view.home.cards.providers.description": "Conectar modelos + credenciales",
"settings.view.home.cards.agents.title": "Agentes",
"settings.view.home.cards.agents.description": "Prompts, herramientas, permisos",
"settings.view.home.cards.skillsCatalog.title": "Catálogo de habilidades",
"settings.view.home.cards.skillsCatalog.description": "Instalar habilidades desde catálogos",
"settings.view.home.cards.mcp.title": "MCP",
"settings.view.home.cards.mcp.description": "Configurar servidores + conexiones MCP",
'settings.view.home.cards.plugins.title': 'Plugins',
'settings.view.home.cards.plugins.description': 'Manage opencode plugins',
"settings.view.home.cards.usage.title": "Uso",
"settings.view.home.cards.usage.description": "Cuota + visibilidad del gasto",
"settings.view.unavailable.title": "No disponible",
"settings.view.unavailable.description": "Esta página de configuración no está disponible en este entorno de ejecución.",
"settings.view.badge.beta": "beta",
"settings.view.actions.reloadOpenCode": "Recargar OpenCode",
"settings.view.actions.reloadOpenCodeTooltip": "Restablecer OpenCode y recargar su configuración.",
"settings.view.actions.applyAndRestartOpenCode": "Aplicar y reiniciar",
"settings.view.actions.applyAndRestartOpenCodeTooltipSingle": "Aplicar 1 cambio de configuración pendiente y reiniciar OpenCode.",
"settings.view.actions.applyAndRestartOpenCodeTooltipPlural": "Aplicar {count} cambios de configuración pendientes y reiniciar OpenCode.",
"settings.view.pendingRestart.applying": "Reiniciando…",
"settings.view.pendingRestart.applied": "OpenCode se reinició con los cambios de configuración pendientes.",
"settings.view.pendingRestart.applyFailed": "No se pudieron aplicar los cambios de configuración.",
"settings.view.pendingRestart.manualRestartRequired": "Guardado en disco. Reinicia el servidor OpenCode conectado para aplicar los cambios.",
"settings.view.pendingRestart.saved": "Guardado. Reinicia OpenCode para aplicar.",
"settings.view.pendingRestart.confirm.title": "¿Aplicar y reiniciar?",
"settings.view.pendingRestart.confirm.description": "Reiniciar OpenCode detendrá cualquier chat en ejecución. Los cambios de configuración guardados se aplicarán después del reinicio.",
"settings.view.pendingRestart.confirm.dontShowAgain": "No volver a mostrar",
"settings.view.pendingRestart.confirm.cancel": "Cancelar", "settings.view.actions.backToSettings": "Volver a Configuración",
"settings.view.actions.closeSettings": "Cerrar configuración",
"settings.view.actions.openSectionList": "Abrir lista de secciones",
"settings.view.actions.closeSettingsWithShortcut": "Cerrar configuración ({shortcut}+,)",
"settings.view.actions.back": "Atrás",
"settings.view.actions.resizeNavigation": "Ajustar tamaño de la navegación",
"settings.view.search.placeholder": "Buscar configuración",
"settings.view.search.aria": "Buscar configuración",
"settings.view.search.clear": "Borrar búsqueda de configuración",
"settings.view.search.noResults": "No hay configuraciones coincidentes",
"settings.view.nav.group.general": "OpenChamber",
"settings.view.nav.group.projects": "Espacio de trabajo",
"settings.view.nav.group.opencode": "OpenCode",
"settings.view.nav.group.content": "Biblioteca",
"settings.page.projects.title": "Proyectos",
"settings.page.remoteInstances.title": "Instancias remotas",
"settings.page.providers.title": "Proveedores",
"settings.page.usage.title": "Uso",
"settings.page.agents.title": "Agentes",
"settings.page.commands.title": "Comandos",
"settings.page.mcp.title": "MCP",
'settings.page.plugins.title': 'Plugins',
"settings.page.skills.title": "Habilidades",
"settings.page.skillsCatalog.title": "Catálogo de habilidades",
"settings.page.git.title": "Git",
"settings.page.appearance.title": "Apariencia",
"settings.page.appearance.description": "Personaliza el aspecto y la sensación de OpenChamber.",
"settings.page.chat.title": "Chat",
"settings.page.chat.description": "Configura cómo se muestran los mensajes y las herramientas.",
"settings.page.shortcuts.title": "Atajos",
"settings.page.shortcuts.description": "Personaliza los atajos de teclado.",
"settings.page.general.title": "General",
"settings.page.general.description": "Inicio de la aplicación, seguridad, conexión y privacidad.",
"settings.page.sessions.title": "Sesiones",
"settings.page.sessions.description": "Define valores predeterminados y retención de sesiones.",
"settings.page.magicPrompts.title": "Prompts mágicos",
"settings.page.notifications.title": "Notificaciones",
"settings.page.notifications.description": "Elige cuándo y cómo recibir notificaciones.",
"settings.page.voice.title": "Voz",
"settings.page.voice.description": "Configura la voz y el dictado.",
"settings.page.tunnel.title": "Túnel externo",
"settings.page.tunnel.description": "Expón esta instancia a través de un túnel remoto.",
"settings.page.about.title": "Acerca de",
"settings.page.snippets.title": "Snippets",
"settings.snippets.sidebar.title": "Snippets",
"settings.snippets.sidebar.total": "Total: {count}",
"settings.snippets.sidebar.actions.create": "Crear snippet",
"settings.snippets.sidebar.actions.more": "Más acciones para {name}",
"settings.snippets.sidebar.toast.deleted": "Snippet eliminado",
"settings.snippets.sidebar.toast.deleteFailed": "No se pudo eliminar el snippet",
"settings.snippets.sidebar.dialog.deleteTitle": "¿Eliminar snippet?",
"settings.snippets.sidebar.dialog.deleteDescription": "Esto eliminará permanentemente #{name}.",
"settings.snippets.page.empty.title": "Selecciona un snippet",
"settings.snippets.page.empty.description": "Elige un snippet de la barra lateral para editarlo.",
"settings.snippets.page.title.new": "Nuevo snippet",
"settings.snippets.page.field.namePlaceholder": "snippet-name",
"settings.snippets.page.field.descriptionPlaceholder": "Qué hace este snippet",
"settings.snippets.page.field.aliases": "Alias",
"settings.snippets.page.field.aliasesPlaceholder": "safe, careful",
"settings.snippets.page.field.content": "Contenido",
"settings.snippets.page.field.contentPlaceholder": "Markdown del snippet...",
"settings.snippets.page.hint": "Usa #name en los prompts. Admite alias y bloques prepend/append compatibles con opencode-snippets.",
"settings.snippets.page.toast.nameRequired": "El nombre del snippet es obligatorio",
"settings.snippets.page.toast.contentRequired": "El contenido del snippet es obligatorio",
"settings.snippets.page.toast.saveFailed": "No se pudo guardar el snippet",
"settings.snippets.page.toast.saved": "Snippet guardado",
"settings.openchamber.tunnel.title": "Túnel externo",
"settings.openchamber.tunnel.description": "Configura el acceso remoto seguro con enlaces rápidos o tu propio túnel gestionado de Cloudflare.",
"settings.openchamber.tunnel.note.serverSideEnforced": "El acceso seguro al túnel se aplica en el servidor.",
"settings.openchamber.tunnel.note.connectLinksOneTime": "Los enlaces de conexión son de un solo uso: se revocan cuando el túnel se detiene o vence el TTL del enlace.",
"settings.openchamber.tunnel.note.cloudflareConnectorTarget": "Destino del conector de Cloudflare:",
"settings.openchamber.tunnel.note.cloudflareConnectorTargetUse": "Para el destino del conector de Cloudflare, usa",
"settings.openchamber.tunnel.note.tokensSavedPerTunnel": "Los tokens se almacenan por túnel y se reutilizan desde el disco.",
"settings.openchamber.tunnel.note.customConfigUsed": "Se usará un archivo de configuración personalizado al iniciar el túnel.",
"settings.openchamber.tunnel.note.defaultConfigUsed": "Cuando esté vacío, cloudflared usa su configuración predeterminada (~/.cloudflared/config.yml).",
"settings.openchamber.tunnel.note.managedRemoteRequiresDomain": "Los túneles remotos gestionados requieren un dominio comprado en tu cuenta de Cloudflare.",
"settings.openchamber.tunnel.note.managedLocalUsesConfig": "Los túneles locales gestionados usan tu archivo de configuración local de cloudflared.",
"settings.openchamber.tunnel.note.startModeAndGenerateLink": "Inicia un túnel {mode} y genera un enlace de conexión de un solo uso. No cierres la aplicación mientras este túnel esté en uso.",
"settings.openchamber.tunnel.note.scanQrToConnect": "Escanea con tu teléfono para conectar.",
"settings.openchamber.tunnel.section.redeemedAccessLinks": "Enlaces de acceso canjeados",
"settings.openchamber.tunnel.section.savedManagedRemoteTunnels": "Túneles remotos gestionados guardados",
"settings.openchamber.tunnel.notAvailable.cloudflaredNotFound": "cloudflared no encontrado",
"settings.openchamber.tunnel.notAvailable.dependencyNotFound": "No se encontró {dependency}.",
"settings.openchamber.tunnel.notAvailable.installHint": "Instálalo para habilitar el acceso al túnel remoto:",
"settings.openchamber.tunnel.field.provider": "Proveedor",
"settings.openchamber.tunnel.field.providerPlaceholder": "Seleccionar proveedor",
"settings.openchamber.tunnel.field.tunnelType": "Tipo de túnel",
"settings.openchamber.tunnel.field.connectLinkTtl": "TTL del enlace de conexión",
"settings.openchamber.tunnel.field.tunnelSessionTtl": "TTL de la sesión del túnel",
"settings.openchamber.tunnel.field.hostnameLabel": "Nombre de host:",
"settings.openchamber.tunnel.field.savedTokenAvailablePlaceholder": "Token guardado disponible (opcional para reemplazar)",
"settings.openchamber.tunnel.field.pasteTokenPlaceholder": "Pegar token para este túnel",
"settings.openchamber.tunnel.field.newPresetNamePlaceholder": "Nombre del túnel (ej. Producción)",
"settings.openchamber.tunnel.field.newPresetHostnamePlaceholder": "Nombre de host (p. ej. oc.example.com)",
"settings.openchamber.tunnel.field.newPresetTokenPlaceholder": "Token",
"settings.openchamber.tunnel.field.managedRemoteTokenInfoAria": "Información del token del túnel remoto gestionado",
"settings.openchamber.tunnel.field.configurationFile": "Archivo de configuración",
"settings.openchamber.tunnel.field.configurationFilePlaceholder": "Se usa la configuración predeterminada de cloudflared",
"settings.openchamber.tunnel.field.managedRemoteTunnelToConnect": "Túnel remoto gestionado para conectar",
"settings.openchamber.tunnel.field.selectSavedTunnelPlaceholder": "Seleccionar túnel guardado",
"settings.openchamber.tunnel.field.publicUrlHint": "URL pública (no accesible sin un token)",
"settings.openchamber.tunnel.field.connectLink": "Enlace de conexión",
"settings.openchamber.tunnel.field.expires": "Expira",
"settings.openchamber.tunnel.field.connectQrAlt": "Código QR de conexión del túnel",
"settings.openchamber.tunnel.actions.removePresetAria": "Eliminar {name}",
"settings.openchamber.tunnel.actions.saveToken": "Guardar token",
"settings.openchamber.tunnel.actions.browseConfigFileAria": "Explorar archivo de configuración",
"settings.openchamber.tunnel.actions.clearConfigFileAria": "Limpiar archivo de configuración",
"settings.openchamber.tunnel.actions.openManagedRemoteDocs": "Ver documentación sobre cómo configurar un túnel remoto gestionado",
"settings.openchamber.tunnel.actions.openManagedLocalDocs": "Ver documentación sobre la configuración de un túnel local gestionado",
"settings.openchamber.tunnel.actions.startTunnel": "Iniciar túnel",
"settings.openchamber.tunnel.actions.startingTunnel": "Iniciando túnel...",
"settings.openchamber.tunnel.actions.stopTunnel": "Detener túnel",
"settings.openchamber.tunnel.actions.stopping": "Deteniendo...",
"settings.openchamber.tunnel.actions.newConnectLink": "Nuevo enlace de conexión",
"settings.openchamber.tunnel.actions.copied": "Copiado",
"settings.openchamber.tunnel.actions.retry": "Reintentar",
"settings.openchamber.tunnel.option.moreProvidersSoon": "Más proveedores llegarán pronto",
"settings.openchamber.tunnel.option.mode.quick.label": "Rápido",
"settings.openchamber.tunnel.option.mode.quick.tooltip": "El túnel rápido funciona en modo best effort y su disponibilidad no está garantizada.",
"settings.openchamber.tunnel.option.mode.managedRemote.label": "Remoto gestionado",
"settings.openchamber.tunnel.option.mode.managedRemote.tooltip": "El modo remoto gestionado usa tu cuenta de Cloudflare y un nombre de host para acceso de larga duración.",
"settings.openchamber.tunnel.option.mode.managedLocal.label": "Local gestionado",
"settings.openchamber.tunnel.option.mode.managedLocal.tooltip": "El modo local gestionado usa tu configuración local de cloudflared.",
"settings.openchamber.tunnel.warning.quickModeReliability": "Para un acceso de larga duración más confiable, cambie a modo de túnel remoto o local gestionado.",
"settings.openchamber.tunnel.warning.replacesActiveTunnel": "Iniciar este túnel reemplazará el túnel activo y revocará los enlaces de conexión y sesiones remotas existentes.",
"settings.openchamber.tunnel.badge.quick": "RÁPIDO",
"settings.openchamber.tunnel.badge.remote": "REMOTO",
"settings.openchamber.tunnel.badge.local": "LOCAL",
"settings.openchamber.tunnel.state.loading": "Cargando",
"settings.openchamber.tunnel.state.expired": "Expirado",
"settings.openchamber.tunnel.state.revoked": "Revocado",
"settings.openchamber.tunnel.state.inactive": "Inactivo",
"settings.openchamber.tunnel.state.noExpiry": "Sin vencimiento",
"settings.openchamber.tunnel.state.never": "Nunca",
"settings.openchamber.tunnel.state.tunnelReady": "Túnel listo",
"settings.openchamber.tunnel.session.redeemedAt": "Canjeado {time}",
"settings.openchamber.tunnel.session.expiresIn": "Expira en {remaining}",
"settings.openchamber.tunnel.session.inactiveWithReason": "Inactivo ({reason})",
"settings.openchamber.tunnel.error.invalidConfigExtension": "El archivo de configuración debe usar la extensión .yml, .yaml o .json.",
"settings.openchamber.tunnel.tooltip.tokensSavedPath": "Los tokens se almacenan en ~/.config/openchamber/cloudflare-managed-remote-tunnels.json.",
"settings.openchamber.tunnel.empty.noManagedRemoteTunnels": "Aún no se han guardado túneles remotos gestionados.",
"settings.openchamber.tunnel.toast.checkAvailabilityFailed": "No se pudo verificar la disponibilidad del túnel",
"settings.openchamber.tunnel.toast.saveSettingsFailed": "No se pudo guardar la configuración del túnel",
"settings.openchamber.tunnel.toast.saveTtlFailed": "No se pudo guardar la configuración del TTL del túnel",
"settings.openchamber.tunnel.toast.saveTokenFailed": "No se pudo guardar el token del túnel remoto gestionado",
"settings.openchamber.tunnel.toast.selectOrAddManagedRemoteFirst": "Selecciona o agrega un túnel remoto gestionado primero",
"settings.openchamber.tunnel.toast.managedRemoteTokenRequiredBeforeStarting": "Se requiere un token del túnel remoto gestionado antes de iniciar",
"settings.openchamber.tunnel.toast.addManagedRemoteTokenBeforeStarting": "Agrega un token del túnel remoto gestionado antes de iniciar",
"settings.openchamber.tunnel.toast.startFailed": "No se pudo iniciar el túnel",
"settings.openchamber.tunnel.toast.startedButNoPublicUrl": "El túnel se inició pero no se devolvió una URL pública",
"settings.openchamber.tunnel.toast.replacedTunnelSingleSingle": "Reemplazó el túnel anterior: revocó 1 enlace, invalidó 1 sesión.",
"settings.openchamber.tunnel.toast.replacedTunnelSingleManySessions": "Reemplazó el túnel anterior: revocó 1 enlace, invalidó {invalidatedSessionCount} sesiones.",
"settings.openchamber.tunnel.toast.replacedTunnelManyLinksSingleSession": "Reemplazó el túnel anterior: revocó {revokedBootstrapCount} enlaces, invalidó 1 sesión.",
"settings.openchamber.tunnel.toast.replacedTunnelManyMany": "Reemplazó el túnel anterior: revocó {revokedBootstrapCount} enlaces, invalidó {invalidatedSessionCount} sesiones.",
"settings.openchamber.tunnel.toast.linkReady": "Enlace del túnel listo",
"settings.openchamber.tunnel.toast.stopped": "Túnel detenido",
"settings.openchamber.tunnel.toast.stopFailed": "No se pudo detener el túnel",
"settings.openchamber.tunnel.toast.connectLinkCopied": "Enlace de conexión copiado",
"settings.openchamber.tunnel.toast.copyUrlFailed": "No se pudo copiar la URL",
"settings.openchamber.tunnel.toast.saveSelectedManagedRemoteFailed": "No se pudo guardar el túnel remoto gestionado seleccionado",
"settings.openchamber.tunnel.toast.tunnelNameRequired": "Se requiere el nombre del túnel",
"settings.openchamber.tunnel.toast.managedRemoteHostnameRequired": "Se requiere el nombre de host del túnel remoto gestionado",
"settings.openchamber.tunnel.toast.managedRemoteTokenRequired": "Se requiere el token del túnel remoto gestionado",
"settings.openchamber.tunnel.toast.hostnameAlreadyExists": "Este nombre de host ya existe",
"settings.openchamber.tunnel.toast.managedRemoteSaved": "Túnel remoto gestionado guardado",
"settings.openchamber.tunnel.toast.managedRemoteRemoved": "Túnel remoto gestionado eliminado",
"settings.magicPrompts.sidebar.title": "Prompts mágicos",
"settings.magicPrompts.sidebar.description": "Selecciona una plantilla de prompt para editar.",
"settings.magicPrompts.sidebar.group.git": "Git",
"settings.magicPrompts.sidebar.group.github": "GitHub",
"settings.magicPrompts.sidebar.group.planning": "Planificación",
"settings.magicPrompts.sidebar.group.session": "Sesión",
"settings.magicPrompts.sidebar.item.gitCommitGenerate": "Generación de commit",
"settings.magicPrompts.sidebar.item.gitPrGenerate": "Generación de PR",
"settings.magicPrompts.sidebar.item.gitConflictResolve": "Resolución de conflicto de merge/rebase",
"settings.magicPrompts.sidebar.item.gitCherrypickConflictResolve": "Resolución de conflicto de cherry-pick",
"settings.magicPrompts.sidebar.item.githubPrReview": "Revisión de PR",
"settings.magicPrompts.sidebar.item.githubIssueReview": "Revisión de issue",
"settings.magicPrompts.sidebar.item.githubPrFailedChecksReview": "Revisión de PR con comprobaciones fallidas",
"settings.magicPrompts.sidebar.item.githubPrCommentsReview": "Revisión de comentarios de PR",
"settings.magicPrompts.sidebar.item.githubSinglePrCommentReview": "Revisión de comentario único de PR",
"settings.magicPrompts.sidebar.item.planTodo": "Planificar Todo",
"settings.magicPrompts.sidebar.item.planImprove": "Mejorar plan",
"settings.magicPrompts.sidebar.item.planImplement": "Implementar plan",
"settings.magicPrompts.sidebar.item.sessionSummary": "Resumen de sesión",
"settings.magicPrompts.sidebar.item.sessionWorkspaceReview": "Revisión del espacio de trabajo",
"settings.magicPrompts.sidebar.item.sessionExplore": "Recorrido del código",
"settings.magicPrompts.sidebar.item.sessionFeaturePlan": "Planificación de funciones",
"settings.magicPrompts.sidebar.item.sessionCraftGoal": "Creación de Goal",
"settings.magicPrompts.page.group.sessionCraftGoal.title": "Creación de Goal",
"settings.magicPrompts.page.group.sessionCraftGoal.description": "Prompts usados por el comando /craft-goal: mensaje visible del usuario + instrucciones ocultas. Convierte una idea o tarea en un Goal claro y verificable mediante un diálogo guiado.",
"settings.magicPrompts.sidebar.item.sessionCatchUp": "Ponerse al día",
"settings.magicPrompts.sidebar.item.sessionDebug": "Depuración",
"settings.magicPrompts.sidebar.item.sessionWeigh": "Comparar enfoques",
"settings.magicPrompts.sidebar.item.sessionFusion": "Fusion",
"settings.remoteInstances.sidebar.title": "Instancias remotas",
"settings.remoteInstances.sidebar.total": "Total {count}",
"settings.remoteInstances.sidebar.newSshInstanceName": "Nueva conexión SSH",
"settings.remoteInstances.sidebar.actions.addSshInstance": "Añadir conexión SSH",
"settings.remoteInstances.sidebar.actions.connect": "Conectar",
"settings.remoteInstances.sidebar.actions.disconnect": "Desconectar",
"settings.remoteInstances.sidebar.actions.retry": "Reintentar",
"settings.remoteInstances.sidebar.actions.remove": "Eliminar",
"settings.remoteInstances.sidebar.confirm.localPortInUseRetry": "El puerto local ya está en uso. ¿Elegir un puerto libre aleatorio y reintentar?",
"settings.remoteInstances.sidebar.toast.createFailed": "No se pudo crear la conexión SSH",
"settings.remoteInstances.sidebar.toast.retriedWithRandomPort": "Reintentado con un puerto local aleatorio",
"settings.remoteInstances.sidebar.toast.connectFailed": "No se pudo conectar la instancia",
"settings.remoteInstances.sidebar.toast.disconnectFailed": "No se pudo desconectar la instancia",
"settings.remoteInstances.sidebar.toast.retryFailed": "No se pudo reintentar la conexión",
"settings.remoteInstances.sidebar.toast.removeFailed": "No se pudo eliminar la instancia",
"settings.remoteInstances.direct.sidebarTitle": "Enlaces a servidores",
"settings.remoteInstances.direct.sidebarDescription": "Conecta con un enlace o token",
"settings.remoteInstances.direct.title": "Otros servidores de OpenChamber",
"settings.remoteInstances.direct.description": "Servidores a los que esta aplicación puede cambiar. Importa un enlace de conexión del otro servidor o añádelo por dirección.",
"settings.remoteInstances.direct.addDialog.description": "Añade otro servidor de OpenChamber por URL. Úsalo cuando el servidor ya esté en marcha y tengas un token de conexión.",
"settings.remoteInstances.direct.field.labelPlaceholder": "Etiqueta (opcional)",
"settings.remoteInstances.direct.field.urlPlaceholder": "https://host:port",
"settings.remoteInstances.direct.field.tokenPlaceholder": "Token de conexión (opcional para servidores locales de confianza)",
"settings.remoteInstances.direct.note": "Los tokens de conexión se guardan en este dispositivo y solo se usan cuando esta app se conecta a ese servidor.",
"settings.remoteInstances.direct.headers.title": "Additional headers",
"settings.remoteInstances.direct.headers.description": "Optional HTTP headers for desktop API requests. Authorization is reserved for the connection token.",
"settings.remoteInstances.direct.headers.field.namePlaceholder": "Header name",
"settings.remoteInstances.direct.headers.field.valuePlaceholder": "Header value",
"settings.remoteInstances.direct.headers.actions.add": "Add header",
"settings.remoteInstances.direct.headers.removeAria": "Remove header",
"settings.remoteInstances.direct.actions.add": "Añadir servidor",
"settings.remoteInstances.direct.import.description": "Pega un enlace de conexión de otro servidor de OpenChamber.",
"settings.remoteInstances.direct.import.placeholder": "openchamber://connect?...",
"settings.remoteInstances.direct.import.action": "Importar enlace",
"settings.remoteInstances.direct.error.invalidConnectLink": "Enlace de conexión de OpenChamber no válido.",
"settings.remoteInstances.direct.state.loading": "Cargando servidores...",
"settings.remoteInstances.direct.state.empty": "Todavía no se han añadido otros servidores.",
"settings.remoteInstances.clientAuth.title": "Conectarse a este servidor",
"settings.remoteInstances.clientAuth.description": "Crea un enlace o token seguro para que OpenChamber Desktop pueda conectarse a este servidor.",
"settings.remoteInstances.clientAuth.field.labelPlaceholder": "Nombre del dispositivo — p. ej. Mi iPhone",
"settings.remoteInstances.clientAuth.actions.create": "Crear token",
"settings.remoteInstances.clientAuth.actions.pair": "Crear enlace",
"settings.remoteInstances.clientAuth.actions.revoke": "Revocar",
"settings.remoteInstances.clientAuth.actions.clearRevoked": "Borrar revocados",
"settings.remoteInstances.clientAuth.qrAlt": "OpenChamber connection QR code",
"settings.remoteInstances.clientAuth.qrEnlarge": "Ampliar código QR",
"settings.remoteInstances.clientAuth.qrScanHint": "Escanéalo con la app de OpenChamber en tu otro dispositivo. Es de un solo uso y caduca.",
"settings.remoteInstances.clientAuth.qrDialogTitle": "Escanear para conectar",
"settings.remoteInstances.clientAuth.actions.addDevice": "Añadir un dispositivo",
"settings.remoteInstances.clientAuth.actions.copied": "Copiado",
"settings.remoteInstances.clientAuth.addDevice.transportLabel": "¿Dónde usarás este dispositivo?",
"settings.remoteInstances.clientAuth.addDevice.subtitle": "Crea un código QR de un solo uso que conecta otro dispositivo a este servidor.",
"settings.remoteInstances.clientAuth.addDevice.transport.local": "Solo este equipo",
"settings.remoteInstances.clientAuth.addDevice.transport.localHint": "Para aplicaciones en esta misma máquina.",
"settings.remoteInstances.clientAuth.addDevice.transport.lan": "Solo red doméstica",
"settings.remoteInstances.clientAuth.addDevice.transport.lanHint": "Se conecta directamente por tu Wi-Fi. No funciona fuera de esta red.",
"settings.remoteInstances.clientAuth.addDevice.transport.relay": "En cualquier lugar",
"settings.remoteInstances.clientAuth.addDevice.transport.relayHint": "Funciona en casa y fuera. Fuera de casa el tráfico pasa por OpenChamber Private Relay, un túnel cifrado de extremo a extremo. Sin configuración.",
"settings.remoteInstances.clientAuth.addDevice.fallback.relay": "Permitir también el relay cifrado fuera de casa",
"settings.remoteInstances.clientAuth.addDevice.fallback.preferLocal": "Preferir la conexión doméstica directa cuando esté disponible",
"settings.remoteInstances.clientAuth.addDevice.create": "Crear código QR",
"settings.remoteInstances.clientAuth.addDevice.done": "Listo",
"settings.remoteInstances.clientAuth.addDevice.connectedToast": "Dispositivo conectado.",
"settings.remoteInstances.clientAuth.pairingUrl": "Enlace de conexión",
"settings.remoteInstances.clientAuth.createdToken": "Copia este token ahora. Por seguridad, no se volverá a mostrar.",
"settings.remoteInstances.clientAuth.state.loading": "Cargando tokens...",
"settings.remoteInstances.clientAuth.state.empty": "Todavía no hay dispositivos conectados.",
"settings.remoteInstances.clientAuth.state.revoked": "Revocado",
"settings.remoteInstances.clientAuth.state.thisDevice": "Este dispositivo",
"settings.remoteInstances.clientAuth.state.pending": "Esperando conexión…",
"settings.remoteInstances.clientAuth.state.viaRelay": "Relay",
"settings.remoteInstances.clientAuth.state.connectedDirect": "Conectado · Red local",
"settings.remoteInstances.clientAuth.state.connectedRelay": "Conectado · Relay",
"settings.remoteInstances.clientAuth.lastUsed": "Último uso {date}",
"settings.remoteInstances.clientAuth.neverUsed": "Nunca usado",
"settings.remoteInstances.relay.title": "OpenChamber Relay",
"settings.remoteInstances.relay.autoHint": "Se activa automáticamente al vincular un dispositivo por relay.",
"settings.remoteInstances.relay.description": "Permite que tus otros dispositivos se conecten desde cualquier lugar sin abrir puertos. El tráfico está cifrado de extremo a extremo: el relay no puede leerlo.",
"settings.remoteInstances.relay.enableHint": "No se comparte nada hasta que actives el relay en este servidor.",
"settings.remoteInstances.relay.actions.enable": "Activar Relay",
"settings.remoteInstances.relay.actions.disable": "Desactivar",
"settings.remoteInstances.relay.confirm.disable": "¿Desactivar el relay? Los dispositivos conectados a través de él se desconectarán de inmediato.",
"settings.remoteInstances.relay.state.loading": "Comprobando el estado del relay...",
"settings.remoteInstances.relay.state.disabled": "Desactivado",
"settings.remoteInstances.relay.state.connecting": "Conectando",
"settings.remoteInstances.relay.state.connected": "Conectado",
"settings.remoteInstances.relay.state.reconnecting": "Reconectando",
"settings.remoteInstances.relay.state.error": "Error",
"settings.remoteInstances.relay.status.clientsOne": "{count} dispositivo conectado",
"settings.remoteInstances.relay.status.clientsMany": "{count} dispositivos conectados",
"settings.remoteInstances.relay.pair.title": "Emparejar un dispositivo",
"settings.remoteInstances.relay.pair.labelPlaceholder": "Nombre del dispositivo (opcional)",
"settings.remoteInstances.relay.pair.includeToken": "Incluir token de acceso (emparejamiento con un solo escaneo)",
"settings.remoteInstances.relay.pair.noTokenHint": "Sin token, el dispositivo inicia sesión con la contraseña de la interfaz de este servidor tras conectarse.",
"settings.remoteInstances.relay.pair.generate": "Crear enlace de emparejamiento",
"settings.remoteInstances.relay.pair.requiresConnected": "El emparejamiento estará disponible cuando el relay esté conectado.",
"settings.remoteInstances.relay.pair.linkLabel": "Enlace de emparejamiento",
"settings.remoteInstances.relay.pair.warning": "Este enlace concede acceso a este servidor. No lo compartas.",
"settings.remoteInstances.relay.pair.qrAlt": "Código QR de emparejamiento del relay",
"settings.remoteInstances.relay.pair.showQr": "Mostrar código QR",
"settings.remoteInstances.relay.pair.qrDialogTitle": "Escanear para emparejar",
"settings.remoteInstances.relay.pair.qrDialogDescription": "Escanea este código QR con la app de OpenChamber en tu otro dispositivo.",
"settings.remoteInstances.relay.pair.manageHint": "Gestiona o revoca los dispositivos emparejados en la lista «Conexión a este servidor» de arriba.",
"settings.remoteInstances.relay.toast.enableFailed": "No se pudo activar el relay",
"settings.remoteInstances.relay.toast.disableFailed": "No se pudo desactivar el relay",
"settings.remoteInstances.relay.toast.offerFailed": "No se pudo crear el enlace de emparejamiento",
"settings.remoteInstances.relay.toast.linkCopied": "Enlace de emparejamiento copiado",
"settings.remoteInstances.sidebar.phase.ready": "Listo",
"settings.remoteInstances.sidebar.phase.error": "Error",
"settings.remoteInstances.sidebar.phase.reconnect": "Reconectar",
"settings.remoteInstances.sidebar.phase.installing": "Instalando",
"settings.remoteInstances.sidebar.phase.updating": "Actualizando",
"settings.remoteInstances.sidebar.phase.forwarding": "Redirigiendo",
"settings.remoteInstances.sidebar.phase.starting": "Iniciando",
"settings.remoteInstances.sidebar.phase.connecting": "Conectando",
"settings.remoteInstances.sidebar.phase.idle": "Inactivo",
"settings.remoteInstances.page.section.instance": "Instancia",
"settings.remoteInstances.page.section.instanceDescription": "Choose the SSH command and a display name for this connection.",
"settings.remoteInstances.page.field.mode": "Modo",
"settings.remoteInstances.page.field.modeHint": "Elige si OpenChamber debe iniciar el servidor por ti o conectarse a uno que ya está en marcha.",
"settings.remoteInstances.page.field.modePlaceholder": "Seleccionar modo",
"settings.remoteInstances.page.field.modeManaged": "Iniciarlo por mí",
"settings.remoteInstances.page.field.modeExternal": "Ya está en marcha",
"settings.remoteInstances.page.field.preferredRemotePort": "Puerto remoto preferido",
"settings.remoteInstances.page.field.preferredRemotePortHint": "Port to use on the remote machine. Leave empty to choose one automatically.",
"settings.remoteInstances.page.field.keepServerRunning": "Mantener servidor en ejecución",
"settings.remoteInstances.page.field.keepServerRunningHint": "Keep OpenChamber running on the remote machine after you disconnect.",
"settings.remoteInstances.page.field.bindHost": "Host de enlace",
"settings.remoteInstances.page.field.bindHostHint": "Where the local connection should listen. Use 127.0.0.1 or localhost unless you need LAN access.",
"settings.remoteInstances.page.field.preferredLocalPort": "Puerto local preferido",
"settings.remoteInstances.page.field.preferredLocalPortHint": "Local port to open for this connection. Leave empty to choose one automatically.",
"settings.remoteInstances.page.field.forwardType": "Tipo de redirección",
"settings.remoteInstances.page.field.localHostPlaceholder": "127.0.0.1",
"settings.remoteInstances.page.field.remoteHostPlaceholder": "127.0.0.1",
"settings.remoteInstances.page.field.auto": "Automático",
"settings.remoteInstances.page.confirm.bindAllInterfaces": "Vincular a 0.0.0.0 expone los puertos redirigidos a tu red local. ¿Continuar?",
"settings.remoteInstances.page.preview.localSocks5": "(local SOCKS5)",
"settings.remoteInstances.page.preview.local": "(local)",
"settings.remoteInstances.page.preview.remote": "(remoto)",
"settings.remoteInstances.page.toast.openLocalEndpointFailed": "No se pudo abrir la dirección local",
"settings.remoteInstances.page.toast.localUrlCopied": "URL local copiada",
"settings.remoteInstances.page.actions.copyLocalUrl": "Copiar URL local",
"settings.remoteInstances.page.actions.open": "Abrir",
"settings.remoteInstances.page.logsDialog.selectedInstanceFallback": "Instancia seleccionada",
"settings.remoteInstances.page.patternDialog.descriptionWithHost": "{host} requiere un destino concreto.",
"settings.remoteInstances.page.patternDialog.description": "Introduce destino.",
"settings.common.infoAria": "Más información",
"settings.common.actions.cancel": "Cancelar",
"settings.common.actions.create": "Crear",
"settings.common.actions.delete": "Eliminar",
"settings.common.actions.reset": "Restablecer",
"settings.common.actions.rename": "Cambiar nombre",
"settings.common.actions.duplicate": "Duplicar",
"settings.common.actions.import": "Importar",
"settings.common.actions.copyAll": "Copiar todo",
"settings.common.actions.clear": "Limpiar",
"settings.common.actions.saving": "Guardando...",
'settings.common.status.saved': 'Guardado',
'settings.common.status.saveFailed': 'Error al guardar',
"settings.common.actions.saveChanges": "Guardar cambios",
"settings.common.scope.global": "Global",
"settings.common.scope.project": "Proyecto",
"settings.common.field.description": "Descripción",
"settings.common.badge.new": "Nuevo",
"settings.common.badge.modified": "Modificado",
"settings.common.permission.allow": "Permitir",
"settings.common.permission.ask": "Preguntar",
"settings.common.permission.deny": "Denegar",
"settings.common.state.comingSoon": "Próximamente...",
"settings.projects.actions.title": "Acciones",
"settings.projects.actions.description": "Comandos por proyecto mostrados en el encabezado junto al nombre del proyecto.",
"settings.projects.actions.validation.fillNameAndCommand": "Completa el nombre de la acción y el comando antes de guardar.",
"settings.projects.actions.state.loading": "Cargando...",
"settings.projects.actions.state.empty": "No hay acciones configuradas aún.",
"settings.projects.actions.state.untitled": "Acción sin título",
"settings.projects.actions.state.noDesktopSshForwards": "No hay forwards SSH locales habilitados disponibles.",
"settings.projects.actions.field.selectIconAria": "Seleccionar icono",
"settings.projects.actions.field.iconAria": "Icono {icon}",
"settings.projects.actions.field.actionNamePlaceholder": "Nombre de la acción",
"settings.projects.actions.field.command": "Comando",
"settings.projects.actions.field.commandPlaceholder": "p. ej. bun run lint",
"settings.projects.actions.field.autoOpenUrl": "Abrir URL automáticamente",
"settings.projects.actions.field.autoOpenUrlForAria": "Abrir URL automáticamente para {title}",
"settings.projects.actions.field.autoOpenUrlDescription": "Abrir URL desde la salida o la URL personalizada de abajo",
"settings.projects.actions.field.overrideUrlPlaceholder": "URL de reemplazo (opcional)",
"settings.projects.actions.field.overrideUrlTooltip": "Si este campo está lleno, se usa la URL personalizada. Si está vacío, la aplicación abre la mejor URL de la salida.",
"settings.projects.actions.field.desktopSshForward": "Forward SSH de escritorio",
"settings.projects.actions.field.useOutputManualUrl": "Usar URL de salida/manual",
"settings.projects.actions.actions.add": "Añadir acción",
"settings.projects.actions.actions.save": "Guardar acciones",
"settings.projects.actions.toast.saveFailed": "No se pudieron guardar las acciones",
"settings.projects.actions.toast.saved": "Acciones del proyecto guardadas",
"settings.openchamber.about.title": "Acerca de OpenChamber",
"settings.openchamber.about.field.version": "Versión",
"settings.openchamber.about.field.openCodeVersion": "Versión de OpenCode",
"settings.openchamber.about.field.instanceUrls": "URLs de la instancia",
"settings.openchamber.about.field.applicationUrl": "Aplicación",
"settings.openchamber.about.field.tunnelUrl": "Túnel",
"settings.openchamber.about.state.checking": "Comprobando...",
"settings.openchamber.about.state.upToDate": "Actualizado",
"settings.openchamber.about.state.unknown": "desconocido",
"settings.openchamber.about.actions.checkUpdates": "Comprobar actualizaciones",
"settings.openchamber.about.actions.update": "Actualizar",
"settings.openchamber.about.actions.updateToVersion": "Actualizar a {version}",
"settings.openchamber.about.actions.checkForUpdates": "Comprobar actualizaciones",
"settings.openchamber.about.toast.latestVersion": "Ya estás en la última versión",
"settings.agents.sidebar.title": "Agentes",
"settings.agents.sidebar.total": "Total {count}",
"settings.agents.sidebar.empty.title": "No hay agentes configurados",
"settings.agents.sidebar.empty.description": "Usa el botón + arriba para crear uno",
"settings.agents.sidebar.section.builtIn": "Agentes incorporados",
"settings.agents.sidebar.section.custom": "Agentes personalizados",
"settings.agents.sidebar.badge.system": "sistema",
"settings.agents.sidebar.dialog.deleteTitle": "Eliminar agente",
"settings.agents.sidebar.dialog.resetTitle": "Restablecer agente",
"settings.agents.sidebar.dialog.deleteDescription": "¿Seguro que quieres eliminar el agente \"{name}\"?",
"settings.agents.sidebar.dialog.resetDescription": "¿Seguro que quieres restablecer el agente \"{name}\" a su configuración predeterminada?",
"settings.agents.sidebar.renameDialog.title": "Cambiar nombre del agente",
"settings.agents.sidebar.renameDialog.description": "Introduce un nuevo nombre para el agente \"@{name}\"",
"settings.agents.sidebar.renameDialog.placeholder": "Nuevo nombre del agente...",
"settings.agents.sidebar.toast.builtInCannotDelete": "Los agentes incorporados no pueden eliminarse",
"settings.agents.sidebar.toast.agentDeleted": "Agente \"{name}\" eliminado correctamente",
"settings.agents.sidebar.toast.agentReset": "Agente \"{name}\" restablecido a la configuración predeterminada",
"settings.agents.sidebar.toast.deleteFailed": "No se pudo eliminar el agente",
"settings.agents.sidebar.toast.definitionNotFound": "No se encontró la definición del agente. No se cambió nada.",
"settings.agents.sidebar.toast.resetFailed": "No se pudo restablecer el agente",
"settings.agents.sidebar.toast.agentNameRequired": "Se requiere el nombre del agente",
"settings.agents.sidebar.toast.agentExists": "Ya existe un agente con este nombre",
"settings.agents.sidebar.toast.removeOldAfterRenameFailed": "No se pudo eliminar el antiguo agente después del cambio de nombre",
"settings.agents.sidebar.toast.renameFailed": "No se pudo cambiar el nombre del agente",
"settings.agents.sidebar.toast.agentRenamed": "Agente renombrado a \"{name}\"",
"settings.agents.page.toast.permissionNameRequired": "Se requiere el nombre del permiso",
"settings.agents.page.toast.created": "Agente creado correctamente",
"settings.agents.page.toast.updated": "Agente actualizado correctamente",
"settings.agents.page.toast.createFailed": "No se pudo crear el agente",
"settings.agents.page.toast.updateFailed": "No se pudo actualizar el agente",
"settings.agents.page.toast.saveUnexpectedError": "Ocurrió un error al guardar",
"settings.agents.page.toast.savedManualRestart": "Guardado en disco. Reinicia tu servidor OpenCode conectado para aplicar los cambios.",
"settings.agents.page.empty.title": "Selecciona un agente desde la barra lateral",
"settings.agents.page.empty.description": "o crea uno nuevo",
"settings.agents.page.title.new": "Nuevo agente",
"settings.agents.page.subtitle.new": "Configura una nueva asistente",
"settings.agents.page.subtitle.edit": "Editar configuración del agente",
"settings.agents.page.section.identityRole": "Identidad y rol",
"settings.agents.page.section.modelParameters": "Modelo y parámetros",
"settings.agents.page.section.systemPrompt": "Prompt del sistema",
"settings.agents.page.permissionsEditor.sectionInfo": "Edita las reglas de permisos propias de este agente tal como están guardadas en su config. «Heredar» deja la clave sin definir y aplican la config global y los valores por defecto.",
"settings.agents.page.permissionsEditor.defaultLabel": "Predeterminado para todas las herramientas",
"settings.agents.page.permissionsEditor.defaultAria": "Permiso predeterminado para todas las herramientas",
"settings.agents.page.permissionsEditor.defaultInfo": "El valor de reserva del agente (la clave *). Aplica a cualquier herramienta sin regla propia.",
"settings.agents.page.permissionsEditor.effectiveHint": "→ {action}",
"settings.agents.page.permissionsEditor.ruleCount": "{count} reglas",
"settings.agents.page.permissionsEditor.keyAria": "Permiso para {key}",
"settings.agents.page.permissionsEditor.patternPlaceholder": "Patrón, p. ej. rm -rf * o /path/**",
"settings.agents.page.permissionsEditor.patternActionAria": "Acción para el patrón de {key}",
"settings.agents.page.permissionsEditor.customKeyPlaceholder": "Clave de permiso personalizada…",
"settings.agents.page.permissionsEditor.sessionRulesTitle": "Concedidos en sesión (no guardados)",
"settings.agents.page.permissionsEditor.sessionRulesInfo": "Reglas concedidas durante sesiones en vivo (respuestas de «permitir siempre»). Aplican ahora, pero no forman parte de la config guardada y desaparecen al reiniciar.",
"settings.agents.page.permissionsEditor.action.default": "Predeterminado",
"settings.agents.page.permissionsEditor.action.inherit": "Heredar",
"settings.agents.page.permissionsEditor.action.allow": "Permitir",
"settings.agents.page.permissionsEditor.action.ask": "Preguntar",
"settings.agents.page.permissionsEditor.action.deny": "Denegar",
"settings.agents.page.permissionsEditor.actions.save": "Guardar permisos",
"settings.agents.page.permissionsEditor.actions.discard": "Descartar",
"settings.agents.page.permissionsEditor.actions.addRule": "Añadir regla",
"settings.agents.page.permissionsEditor.actions.addKey": "Añadir clave",
"settings.agents.page.permissionsEditor.actions.removeRuleAria": "Eliminar regla",
"settings.agents.page.permissionsEditor.actions.retry": "Reintentar",
"settings.agents.page.permissionsEditor.state.loadFailed": "No se pudo cargar la config de permisos del agente.",
"settings.agents.page.permissionsEditor.toast.saved": "Permisos guardados",
"settings.agents.page.permissionsEditor.toast.savedRestartRequired": "Permisos guardados: reinicia el servidor de OpenCode para aplicarlos",
"settings.agents.page.permissionsEditor.toast.saveFailed": "No se pudieron guardar los permisos",
"settings.agents.page.section.toolPermissions": "Permisos de herramientas",
"settings.agents.page.field.agentName": "Nombre del agente",
"settings.agents.page.field.agentNamePlaceholder": "nombre-agente",
"settings.agents.page.field.scopePlaceholder": "Ámbito",
"settings.agents.page.field.descriptionPlaceholder": "¿Qué hace este agente?",
"settings.agents.page.field.mode": "Modo",
"settings.agents.page.field.modeTooltip": "Visibilidad principal vs subagente",
"settings.agents.page.field.overrideModel": "Sobrescribir modelo",
"settings.agents.page.field.variant": "Variante de pensamiento",
"settings.agents.page.field.variantTooltip": "Opcional. Si el modelo admite razonamiento, la variante controla la profundidad del razonamiento.",
"settings.agents.page.field.variantHint": "Específico del modelo (p. ej. variante de Anthropic)",
"settings.agents.page.field.variantPlaceholder": "p. ej. high, max, low, none",
"settings.agents.page.field.temperature": "Temperatura",
"settings.agents.page.field.temperatureTooltip": "Controla la aleatoriedad. Mayor = más creativo, menor = más enfocado.",
"settings.agents.page.field.temperatureRange": "0.0 a 2.0",
"settings.agents.page.field.clearTemperatureAria": "Limpiar sobrescritura de temperatura",
"settings.agents.page.field.topP": "Top P",
"settings.agents.page.field.topPTooltip": "Diversidad de muestreo del núcleo. Más bajo = solo tokens más probables.",
"settings.agents.page.field.topPRange": "0.0 a 1.0",
"settings.agents.page.field.clearTopPAria": "Limpiar sobrescritura de top p",
"settings.agents.page.field.systemPromptPlaceholder": "Eres un asistente experto en programación...",
"settings.agents.page.mode.primary": "Primario",
"settings.agents.page.mode.subagent": "Subagente",
"settings.agents.page.mode.all": "Todos",
"settings.agents.page.permissions.defaultLabel": "Predeterminado",
"settings.agents.page.permissions.hideEditor": "Ocultar editor",
"settings.agents.page.permissions.advancedEditor": "Editor avanzado",
"settings.agents.page.permissions.globalSummary": "Global: {summary}",
"settings.agents.page.permissions.rulesSummary": "Reglas: {summary}",
"settings.agents.page.permissions.globalDefault": "Predeterminado global",
"settings.agents.page.permissions.pattern": "Patrón",
"settings.agents.page.permissions.addCustomRule": "Añadir regla personalizada",
"settings.agents.page.permissions.permissionPlaceholder": "Permiso...",
"settings.agents.page.permissions.patternPlaceholder": "Patrón (ej. *)",
"settings.page.behavior.title": "Comportamiento",
'settings.page.behavior.description': 'Guía cómo responde el agente.',
"settings.behavior.page.title": "Comportamiento",
"settings.behavior.page.warning.title": "Las reglas globales se combinan con las reglas del proyecto",
"settings.behavior.page.warning.description": "Los cambios realizados aquí actualizan {path}. OpenCode también incluye cualquier AGENTS.md a nivel de proyecto cuando existe.",
"settings.behavior.page.section.systemPrompt": "AGENTS.md global",
"settings.behavior.page.section.systemPromptOptimization": "Optimización del prompt del sistema",
"settings.behavior.page.systemPromptOptimization.enable": "Optimizar el tamaño del prompt del sistema",
"settings.behavior.page.systemPromptOptimization.enableAria": "Optimizar el tamaño del prompt del sistema de OpenCode",
"settings.behavior.page.systemPromptOptimization.info": "Reduce el prompt del sistema aproximadamente un 40 % para los agentes build y plan. Los demás agentes no cambian. Puede eliminar definiciones personalizadas que sobrescriban build o plan, así que no lo actives en esos flujos de trabajo. El cambio se aplica al reiniciar OpenCode.",
"settings.behavior.page.systemPromptOptimization.restarting": "Reiniciando OpenCode para aplicar la optimización del prompt del sistema…",
"settings.behavior.page.field.systemPromptPlaceholder": "Eres un asistente de IA útil...\n\nUsa este espacio para definir reglas absolutas sobre cómo la IA debe comportarse en todas las sesiones y proveedores.",
"settings.behavior.page.section.responseStyle": "Estilo de respuesta",
"settings.behavior.page.responseStyle.tooltip": "Cuando está habilitado, estas instrucciones guían cómo responde el asistente en cada conversación nueva. Se envían con tu primer mensaje y no cambian tus reglas globales de AGENTS.md.",
"settings.behavior.page.responseStyle.enableAria": "Habilitar instrucciones de estilo de respuesta",
"settings.behavior.page.responseStyle.enable": "Agregar instrucciones de estilo de respuesta a conversaciones nuevas",
"settings.behavior.page.responseStyle.preset": "Preajuste",
"settings.behavior.page.responseStyle.option.concise": "Conciso",
"settings.behavior.page.responseStyle.option.detailed": "Detallado",
"settings.behavior.page.responseStyle.option.mentor": "Mentor",
"settings.behavior.page.responseStyle.option.pushback": "Réplica",
"settings.behavior.page.responseStyle.option.noFiller": "Sin relleno",
"settings.behavior.page.responseStyle.option.matchEnergy": "Igualar mi tono",
"settings.behavior.page.responseStyle.option.warmPeer": "Colega cercano",
"settings.behavior.page.responseStyle.option.custom": "Personalizado",
"settings.behavior.page.responseStyle.customPlaceholder": "Escribe la instrucción que se agregará al primer mensaje...",
"settings.behavior.page.toast.saved": "Comportamiento guardado correctamente",
"settings.behavior.page.toast.saveFailed": "Error al guardar el comportamiento",
"settings.commands.sidebar.title": "Comandos",
"settings.commands.sidebar.total": "Total {count}",
"settings.commands.sidebar.empty.title": "No hay comandos configurados",
"settings.commands.sidebar.empty.description": "Usa el botón + arriba para crear uno",
"settings.commands.sidebar.section.builtIn": "Comandos incorporados",
"settings.commands.sidebar.section.custom": "Comandos personalizados",
"settings.commands.sidebar.dialog.deleteTitle": "Eliminar comando",
"settings.commands.sidebar.dialog.resetTitle": "Restablecer comando",
"settings.commands.sidebar.dialog.deleteDescription": "¿Estás seguro de que quieres eliminar el comando \"{name}\"?",
"settings.commands.sidebar.dialog.resetDescription": "¿Estás seguro de que quieres restablecer el comando \"{name}\" a su configuración predeterminada?",
"settings.commands.sidebar.renameDialog.title": "Cambiar nombre del comando",
"settings.commands.sidebar.renameDialog.description": "Introduce un nuevo nombre para el comando \"/{name}\"",
"settings.commands.sidebar.renameDialog.placeholder": "Nuevo nombre del comando...",
"settings.commands.sidebar.toast.builtInCannotDelete": "Los comandos incorporados no pueden eliminarse",
"settings.commands.sidebar.toast.commandDeleted": "Comando \"{name}\" eliminado",
"settings.commands.sidebar.toast.commandReset": "Comando \"{name}\" restablecido al valor predeterminado",
"settings.commands.sidebar.toast.deleteFailed": "No se pudo eliminar el comando",
"settings.commands.sidebar.toast.resetFailed": "No se pudo restablecer el comando",
"settings.commands.sidebar.toast.commandNameRequired": "Se requiere nombre del comando",
"settings.commands.sidebar.toast.commandExists": "Ya existe un comando con este nombre",
"settings.commands.sidebar.toast.removeOldAfterRenameFailed": "No se pudo eliminar el comando antiguo después del cambio de nombre",
"settings.commands.sidebar.toast.renameFailed": "No se pudo cambiar el nombre del comando",
"settings.commands.page.toast.templateRequired": "Se requiere plantilla del comando",
"settings.commands.page.toast.created": "Comando creado",
"settings.commands.page.toast.updated": "Comando actualizado",
"settings.commands.page.toast.createFailed": "No se pudo crear el comando",
"settings.commands.page.toast.updateFailed": "No se pudo actualizar el comando",
"settings.commands.page.toast.saveUnexpectedError": "Ocurrió un error al guardar",
"settings.commands.page.empty.title": "Selecciona un comando de la barra lateral",
"settings.commands.page.empty.description": "o crea uno nuevo",
"settings.commands.page.title.new": "Nuevo comando",
"settings.commands.page.subtitle.new": "Configura un nuevo comando slash",
"settings.commands.page.subtitle.edit": "Editar configuración del comando",
"settings.commands.page.section.identity": "Identidad",
"settings.commands.page.section.executionContext": "Contexto de ejecución",
"settings.commands.page.section.template": "Plantilla del comando",
"settings.commands.page.field.commandName": "Nombre del comando",
"settings.commands.page.field.commandNamePlaceholder": "nombre-del-comando",
"settings.commands.page.field.descriptionPlaceholder": "¿Qué hace este comando?",
"settings.commands.page.field.overrideAgent": "Sobrescribir agente",
"settings.commands.page.field.templatePlaceholder": "Tu plantilla de comando aquí...\n\nUsa $ARGUMENTS para la entrada del usuario.\nUsa !`shell command` para insertar la salida del shell.\nUsa @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.renameFailed": "No se pudo cambiar el nombre de la habilidad",
"settings.skills.sidebar.toast.skillRenamed": "Habilidad renombrada a \"{name}\"",
"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.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. Por defecto a la derecha.",
"settings.openchamber.desktopNetwork.field.windowControlsPositionAria": "Posición de los controles de ventana",
"settings.openchamber.desktopNetwork.option.windowControlsLeft": "Izquierda",
"settings.openchamber.desktopNetwork.option.windowControlsRight": "Derecha",
"settings.openchamber.desktopNetwork.field.windowControls": "Controles de ventana",
"settings.openchamber.desktopNetwork.field.windowControlsStyle": "Estilo",
"settings.openchamber.desktopNetwork.field.windowControlsStyleAria": "Estilo de los controles de ventana",
"settings.openchamber.desktopNetwork.option.windowControlsClassic": "Clásico",
"settings.openchamber.desktopNetwork.option.windowControlsTrafficLights": "Semáforo",
"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.macMenuBarAria": "Mostrar OpenChamber en la barra de menús de macOS",
"settings.openchamber.desktopNetwork.field.macMenuBar": "Mostrar OpenChamber en la barra de menús",
"settings.openchamber.desktopNetwork.field.macMenuBarDescription": "Requiere reiniciar la aplicación. Al desactivarlo, OpenChamber no crea el elemento de la barra de menús ni ejecuta sus actualizaciones de sesiones, aprobaciones y uso.",
"settings.openchamber.desktopNetwork.field.minimizeToTrayAria": "Cerrar OpenChamber a la bandeja del sistema",
"settings.openchamber.desktopNetwork.field.minimizeToTray": "Cerrar a la bandeja del sistema",
"settings.openchamber.desktopNetwork.field.minimizeToTrayDescription": "Mantiene OpenChamber en ejecución en la bandeja del sistema cuando se cierra la ventana principal. Al minimizar, la ventana sigue en la barra de tareas.",
"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.actions.showPassword": "Mostrar contraseña",
"settings.openchamber.desktopPassword.actions.hidePassword": "Ocultar contraseña",
"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.tools.title": "Herramientas de OpenChamber",
"settings.openchamber.tools.field.agentControlTool": "Herramienta de control para agentes",
"settings.openchamber.tools.field.agentControlToolAria": "Activar la herramienta de control para agentes",
"settings.openchamber.tools.field.agentControlToolInfo": "Permite que los agentes orquesten tu trabajo desde el chat: crear sesiones y worktrees, delegar prompts a otros agentes y gestionar tareas programadas. Añade una pequeña descripción de herramienta a cada sesión. Se aplica tras reiniciar OpenCode.",
"settings.openchamber.tools.field.agentWebTool": "Herramienta OpenChamber Web",
"settings.openchamber.tools.field.agentWebToolAria": "Activar la herramienta OpenChamber Web",
"settings.openchamber.tools.field.agentWebToolInfo": "Permite que los agentes vean la página en el panel de navegador de OpenChamber e interactúen con ella: abrir una URL, leer el contenido, hacer clic, escribir, desplazarse y alternar entre diseño móvil y de escritorio. Añade una pequeña descripción de herramienta a cada sesión. Se aplica tras reiniciar 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 panel de terminal",
"settings.openchamber.keyboardShortcuts.action.toggle_terminal_expanded.label": "Expandir o contraer terminal",
"settings.openchamber.keyboardShortcuts.action.add_selection_to_chat.label": "Agregar selección al chat",
"settings.openchamber.keyboardShortcuts.action.toggle_sidebar.label": "Mostrar u ocultar barra lateral",
"settings.openchamber.keyboardShortcuts.action.toggle_right_sidebar.label": 'Alternar panel de contexto',
"settings.openchamber.keyboardShortcuts.action.open_right_sidebar_git.label": 'Abrir superficie de Git',
"settings.openchamber.keyboardShortcuts.action.open_right_sidebar_files.label": 'Abrir superficie de archivos',
"settings.openchamber.keyboardShortcuts.action.switch_context_surface.label": "Cambiar superficie del panel de contexto",
"settings.openchamber.keyboardShortcuts.action.switch_context_surface.suffix": " + 1…0",
"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.cycle_services_tab.label": "Cambiar pestaña de servicios",
"settings.openchamber.keyboardShortcuts.action.cycle_theme.label": "Cambiar tema",
"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.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.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.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.showInWorkStatusAria": "Mostrar en el panel de estado del trabajo",
"settings.usage.page.options.showInWorkStatus": "Mostrar en el panel de estado del trabajo",
"settings.usage.page.options.showInWorkStatusTooltip": "Cuando esté habilitado, el uso de este proveedor será visible en el panel de estado del trabajo.",
"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",
"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.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": "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.custom.optionLabel": "Otro / Personalizado",
"settings.providers.page.custom.title": "Proveedor personalizado",
"settings.providers.page.custom.editTitle": "Editar proveedor personalizado",
"settings.providers.page.custom.description": "Añade un proveedor compatible con OpenAI con URL base, credenciales y lista de modelos. Se guarda en la configuración de OpenCode para usarlo en el chat como cualquier otro proveedor.",
"settings.providers.page.custom.field.providerID.label": "ID del proveedor",
"settings.providers.page.custom.field.providerID.placeholder": "mi-proveedor",
"settings.providers.page.custom.field.providerID.info": "Minúsculas, números, guiones y guiones bajos. Se usa como ID de proveedor de OpenCode.",
"settings.providers.page.custom.field.name.label": "Nombre visible",
"settings.providers.page.custom.field.name.placeholder": "Mi proveedor",
"settings.providers.page.custom.field.name.info": "Se muestra en los selectores de proveedor y modelo.",
"settings.providers.page.custom.field.baseURL.label": "URL base",
"settings.providers.page.custom.field.baseURL.placeholder": "https://api.example.com/v1",
"settings.providers.page.custom.field.baseURL.info": "URL base de la API compatible con OpenAI. Debe empezar por http:// o https://.",
"settings.providers.page.custom.field.apiKey.label": "Clave API",
"settings.providers.page.custom.field.apiKey.placeholder": "sk-... o {env:VAR_NAME}",
"settings.providers.page.custom.field.apiKey.info": "Se guarda en la autenticación de OpenCode, no en OpenChamber. Usa {env:VAR_NAME} para leer una clave del entorno.",
"settings.providers.page.custom.field.apiKey.editInfo": "Déjalo en blanco para conservar la credencial existente, o introduce una clave nueva / {env:VAR_NAME}.",
"settings.providers.page.custom.field.apiKey.editPlaceholder": "Déjalo en blanco para conservar la clave existente",
"settings.providers.page.custom.models.title": "Modelos",
"settings.providers.page.custom.models.idLabel": "ID del modelo",
"settings.providers.page.custom.models.idPlaceholder": "gpt-4o",
"settings.providers.page.custom.models.nameLabel": "Nombre del modelo",
"settings.providers.page.custom.models.namePlaceholder": "GPT-4o",
"settings.providers.page.custom.models.add": "Añadir modelo",
"settings.providers.page.custom.models.remove": "Quitar modelo",
"settings.providers.page.custom.headers.title": "Encabezados",
"settings.providers.page.custom.headers.description": "Encabezados de solicitud opcionales enviados en cada llamada.",
"settings.providers.page.custom.headers.keyLabel": "Nombre del encabezado",
"settings.providers.page.custom.headers.keyPlaceholder": "X-Custom-Header",
"settings.providers.page.custom.headers.valueLabel": "Valor del encabezado",
"settings.providers.page.custom.headers.valuePlaceholder": "valor",
"settings.providers.page.custom.headers.add": "Añadir encabezado",
"settings.providers.page.custom.headers.remove": "Quitar encabezado",
"settings.providers.page.custom.actions.back": "Atrás",
"settings.providers.page.custom.actions.save": "Guardar proveedor",
"settings.providers.page.custom.actions.update": "Actualizar proveedor",
"settings.providers.page.custom.error.providerID.required": "El ID del proveedor es obligatorio",
"settings.providers.page.custom.error.providerID.format": "Usa minúsculas, números, guiones o guiones bajos",
"settings.providers.page.custom.error.providerID.exists": "Ya hay un proveedor conectado con este ID",
"settings.providers.page.custom.error.name.required": "El nombre visible es obligatorio",
"settings.providers.page.custom.error.baseURL.required": "La URL base es obligatoria",
"settings.providers.page.custom.error.baseURL.format": "La URL base debe empezar por http:// o https://",
"settings.providers.page.custom.error.required": "Obligatorio",
"settings.providers.page.custom.error.duplicate": "Duplicado",
"settings.providers.page.custom.error.apiKey.required": "Se requiere una clave API o {env:VAR_NAME}",
"settings.providers.page.custom.authFailure.configAfterAuth": "Las credenciales se guardaron, pero no la configuración del proveedor. Corrige el error e inténtalo de nuevo, o desconéctalo para eliminar el guardado parcial.",
"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.oauth.starting": "Iniciando la autorización…",
"settings.providers.page.auth.oauth.waiting": "Esperando la autorización…",
"settings.providers.page.auth.oauth.waitingHint": "Termina de iniciar sesión en el navegador. Mantén esta página abierta: la conexión se completará sola.",
"settings.providers.page.auth.oauth.codeHint": "Copia el código de autorización del navegador y pégalo aquí.",
"settings.providers.page.auth.oauth.deviceCodeLabel": "Código del dispositivo",
"settings.providers.page.auth.oauth.linkLabel": "Enlace de autorización",
"settings.providers.page.auth.oauth.promptRequired": "Completa «{field}» para continuar",
"settings.providers.page.auth.oauth.error.sessionExpired": "La solicitud de autorización caducó. Vuelve a conectar para reiniciarla.",
"settings.providers.page.auth.oauth.error.codeRequired": "Este proveedor necesita el código de autorización de tu navegador.",
"settings.providers.page.auth.oauth.error.declined": "La autorización se rechazó o no se completó.",
"settings.providers.page.auth.oauth.error.invalidInput": "Se rechazaron los datos introducidos.",
"settings.providers.page.auth.connected": "Conectado",
"settings.providers.page.auth.incomplete": "Faltan credenciales",
"settings.providers.page.auth.incompleteHint": "· Añade una clave API o {env:VAR} antes de usar este proveedor en el chat",
"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.continue": "Continuar",
"settings.providers.page.actions.cancel": "Cancelar",
"settings.providers.page.actions.tryAgain": "Reintentar",
"settings.providers.page.actions.hide": "Ocultar",
"settings.providers.page.actions.reconnect": "Reconectar",
"settings.providers.page.actions.edit": "Editar",
"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.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.providers.page.toast.customProviderSaved": "{provider} conectado",
"settings.providers.page.toast.customProviderSaveFailed": "No se pudo guardar el proveedor personalizado",
"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.label.awaitingRestart": "Esperando reinicio",
"settings.mcp.page.status.description.awaitingRestart": "Este servidor está guardado pero aún no aplicado. Usa «Apply & Restart» para cargarlo en OpenCode; después estarán disponibles la conexión y la autorización.",
"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.walkthroughModel.title": "Modelo del recorrido de cambios",
"settings.openchamber.defaults.walkthroughModel.description": "La revisión con IA de tus cambios necesita salida estructurada y espacio para un diff completo, algo que un modelo pequeño y barato a menudo no ofrece. Los modelos que el catálogo declara incapaces de producir salida estructurada se ocultan aquí. Si no eliges nada, se usa el modelo pequeño.",
"settings.openchamber.defaults.walkthroughModel.overrideModel": "Modelo del recorrido",
"settings.openchamber.defaults.walkthroughModel.usesSmallModel": "Modelo pequeño",
"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.openai": "OpenAI",
"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": "Modo de color",
"settings.openchamber.visual.section.colorModeAndTheme": "Modo de color y tema",
"settings.openchamber.visual.section.mobileLayout": "Diseño móvil",
"settings.openchamber.visual.option.mobileLayout.default": "Anterior",
"settings.openchamber.visual.option.mobileLayout.new": "Nuevo",
"settings.openchamber.visual.section.localization": "Localización",
"settings.openchamber.visual.section.spacingAndLayout": "Espaciado y diseño",
"settings.openchamber.visual.section.densityAndType": "Densidad y tipografía",
"settings.openchamber.visual.section.appInstall": "Instalación de la app",
"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.chatDisplay": "Visualización",
"settings.openchamber.visual.section.chatMessageOptions": "Opciones de mensajes",
"settings.openchamber.visual.section.chatFeatures": "Funciones",
"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.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.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.terminalShell": "Shell del terminal",
"settings.openchamber.visual.field.terminalShellAria": "Seleccionar shell del terminal",
"settings.openchamber.visual.field.terminalShellHint": "Reinicia el terminal para aplicar este cambio a la sesión actual.",
"settings.openchamber.visual.field.terminalLoginShell": "Iniciar como shell de inicio de sesión",
"settings.openchamber.visual.option.terminalShell.auto": "Automático",
"settings.openchamber.visual.field.editorFontSize": "Tamaño de fuente del editor",
"settings.openchamber.visual.field.codeFont": "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.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.showExpandedEditToolsAria": "Mostrar herramientas de edición expandidas",
"settings.openchamber.visual.field.bash": "Bash",
"settings.openchamber.visual.field.editTools": "Herramientas de edición",
"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.sessionSuggestion": "Generar sugerencia del próximo mensaje del usuario",
"settings.openchamber.visual.field.sessionSuggestionAria": "Generar un próximo mensaje sugerido del usuario cuando el agente termina",
"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.autoSaveEnabledAria": "Guardado automático de archivos",
"settings.openchamber.visual.field.autoSaveEnabled": "Guardado automático de archivos",
"settings.openchamber.visual.field.autoSaveEnabledInfo": "Guarda automáticamente las ediciones del archivo después de dejar de escribir. Desactívalo para exigir un guardado manual.",
"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.allowPromptingSubagentSessionsAria": "Permitir enviar solicitudes a sesiones de subagentes",
"settings.openchamber.visual.field.allowPromptingSubagentSessions": "Permitir solicitudes en sesiones de subagentes",
"settings.openchamber.visual.field.draftStartersVisible": "Mostrar iniciadores en la pantalla de nueva sesión",
"settings.openchamber.visual.field.draftStartersVisibleAria": "Mostrar iniciadores en la pantalla de nueva sesión",
"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.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.option.themeMode.system": "Sistema",
"settings.openchamber.visual.option.themeMode.system.description": "Seguir la configuración del sistema",
"settings.openchamber.visual.option.themeMode.light": "Claro",
"settings.openchamber.visual.option.themeMode.light.description": "Usar siempre la apariencia clara",
"settings.openchamber.visual.option.themeMode.dark": "Oscuro",
"settings.openchamber.visual.option.themeMode.dark.description": "Usar siempre la apariencia oscura",
"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": "Renderiza mensajes completados del asistente sin transmisión en vivo.",
"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",
} as const;