@ai-development-environment/server 0.0.74 → 0.0.76
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/standalone/.next/BUILD_ID +1 -1
- package/standalone/.next/build-manifest.json +3 -3
- package/standalone/.next/prerender-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/settings/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/_global-error.html +1 -1
- package/standalone/.next/server/app/_global-error.rsc +1 -1
- package/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/standalone/.next/server/app/_not-found.html +1 -1
- package/standalone/.next/server/app/_not-found.rsc +1 -1
- package/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/standalone/.next/server/chunks/ssr/messages_de_json_[json]_cjs_1uig1ud._.js +1 -1
- package/standalone/.next/server/chunks/ssr/messages_en_json_[json]_cjs_206072-._.js +1 -1
- package/standalone/.next/server/chunks/ssr/messages_es_json_[json]_cjs_082yukd._.js +1 -1
- package/standalone/.next/server/chunks/ssr/messages_fr_json_[json]_cjs_0j6-w0i._.js +1 -1
- package/standalone/.next/server/chunks/ssr/src_components_settings-page_tsx_06dxqc7._.js +1 -1
- package/standalone/.next/server/middleware-build-manifest.js +3 -3
- package/standalone/.next/server/pages/404.html +1 -1
- package/standalone/.next/server/pages/500.html +1 -1
- package/standalone/.next/server/server-reference-manifest.js +1 -1
- package/standalone/.next/server/server-reference-manifest.json +1 -1
- package/standalone/.next/static/chunks/2jvwh8l-4r8jn.js +37 -0
- package/standalone/.next/static/chunks/3r4fi297tsw1d.js +0 -37
- /package/standalone/.next/static/{YQIuXmWQUbKsutRkPFwhf → Aei0gFCWoltbmK7Sdf4sn}/_buildManifest.js +0 -0
- /package/standalone/.next/static/{YQIuXmWQUbKsutRkPFwhf → Aei0gFCWoltbmK7Sdf4sn}/_clientMiddlewareManifest.js +0 -0
- /package/standalone/.next/static/{YQIuXmWQUbKsutRkPFwhf → Aei0gFCWoltbmK7Sdf4sn}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[756817,(a,b,c)=>{b.exports=JSON.parse('{"metadata":{"title":"AI Development Environment","description":"Un entorno de desarrollo centrado en la inteligencia artificial."},"common":{"cancel":"Cancelar","continue":"Continuar","cannotBeUndone":"Esta acción no se puede deshacer."},"shell":{"productName":"AI Development Environment","dashboard":"Panel de control","ai":"IA","navigation":"Navegación","breadcrumbLabel":"Ruta de navegación","navigationDescription":"Navegación principal de AI Development Environment.","actionCenter":"Centro de acciones","notifications":"Notificaciones","notificationsDescription":"Actualizaciones y alertas de notificaciones.","showNavigation":"Mostrar navegación","hideNavigation":"Ocultar navegación","closeNavigation":"Cerrar navegación","showNotifications":"Mostrar notificaciones","hideNotifications":"Ocultar notificaciones","closeNotifications":"Cerrar notificaciones","codebases":"Bases de código","worktrees":"Árboles de trabajo","buildData":"Datos de compilación","builds":"Compilaciones","workflows":"Flujos de trabajo","commands":"Comandos","provisioningProfiles":"Perfiles de aprovisionamiento","devices":"Dispositivos","pushNotifications":"Notificaciones push","agents":"Agentes","usage":"Uso","github":"GitHub","pullRequests":"Solicitudes de extracción","actions":"Acciones","webhooks":"Webhooks","comments":"Comentarios","actionsCache":"Caché de Acciones","jira":"Jira","tickets":"Incidencias","cache":"Caché","system":"Sistema","polling":"Sondeo","skills":"Habilidades","tools":"Herramientas","debugging":"Depuración","consoleLogs":"Registros de consola","analyticsEvents":"Eventos analíticos","unifiedEvents":"Vista unificada","plans":"Planes","sessions":"Sesiones","drafts":"Borradores","credentials":"Credenciales","settings":"Configuración","costs":"Costes","newWorkflow":"Nuevo flujo de trabajo","newCommand":"Nuevo comando","newRun":"Nueva ejecución","enrollDevice":"Registrar dispositivo","skillGroups":"Grupos de habilidades","coverage":"Cobertura","edit":"Editar","enroll":"Inscribir","entries":"Entradas","groups":"Grupos","new":"Nuevo","repositories":"Repositorios","runs":"Ejecuciones","sync":"Sincronización","changes":"Cambios"},"globalSearch":{"title":"Buscar en la aplicación","description":"Busca páginas, recursos de desarrollo y actividad reciente.","open":"Abrir búsqueda global","button":"Buscar","placeholder":"Buscar páginas, tickets, ramas, compilaciones…","loading":"Buscando…","error":"No se pudieron buscar los recursos guardados. Los accesos a páginas siguen disponibles.","empty":"No se encontraron resultados.","noRecents":"Los destinos seleccionados aparecerán aquí para un acceso rápido.","recentBuilds":"Compilaciones recientes","recentWorkflowRuns":"Ejecuciones recientes de flujos","groups":{"recent":"Recientes","PAGES":"Páginas","WORKTREES":"Árboles de trabajo","TICKETS":"Incidencias","PULL_REQUESTS":"Solicitudes de extracción","REPOSITORIES":"Repositorios","CODEBASES":"Bases de código","WORKFLOWS":"Flujos de trabajo","GITHUB_ACTIONS":"Acciones de GitHub","BUILDS":"Compilaciones","AGENTS_JOBS":"Agentes y trabajos","PLANS_SESSIONS":"Planes y sesiones","COMMANDS_RUNS":"Comandos y ejecuciones","SKILLS":"Habilidades","DEVICES_PROFILES":"Dispositivos y perfiles"}},"actionCenter":{"title":"Centro de acciones","description":"Trabajo en curso, decisiones, fallos y compilaciones listas para ejecutar.","refresh":"Actualizar el centro de acciones","totalCount":"{count, plural, one {# elemento} other {# elementos}}","attentionCount":"{count, plural, one {# requiere atención} other {# requieren atención}}","activeCount":"{count, plural, one {# activo} other {# activos}}","emptyTitle":"No hay acciones pendientes","emptyDescription":"El trabajo activo y las nuevas decisiones aparecerán aquí automáticamente.","needsAttention":"Requiere atención","active":"Activo","noAttention":"Ningún elemento requiere atención ahora.","noActive":"No hay trabajo activo ahora.","loadMore":"Cargar más","miniLabel":"Centro de acciones compacto","miniEmpty":"No hay acciones pendientes.","kinds":{"PLAN":"Plan","SESSION":"Sesión","BUILD":"Compilación","WORKFLOW":"Flujo de trabajo"},"reasons":{"QUESTION":"Respuesta necesaria","BLOCKED":"Bloqueado","FAILED":"Fallido","UNRUN_BUILD":"Listo para ejecutar","ACTIVE":"Activo"},"acknowledge":"Confirmar","acknowledgeNamed":"Confirmar {name}","questionFrom":"Pregunta de {source}","customAnswerFor":"Respuesta personalizada para {question}","customAnswer":"Respuesta personalizada","submitAnswer":"Enviar respuesta"},"workflows":{"title":"Flujos de trabajo","descriptionLong":"Diseña, publica y supervisa automatizaciones de desarrollo duraderas.","workflowsTab":"Flujos de trabajo","allRuns":"Todas las ejecuciones","newWorkflow":"Nuevo flujo","search":"Buscar flujos y ejecuciones","refresh":"Actualizar","import":"Importar","export":"Exportar","duplicate":"Duplicar","actions":"Acciones","edit":"Editar","archive":"Archivar","enable":"Activar","enabled":"Activado","disabled":"Desactivado","pauseDefinition":"Pausar flujo","run":"Ejecutar","workflow":"Flujo","status":"Estado","trigger":"Desencadenador","generation":"Generación","started":"Iniciado","queued":"En cola","worktreeQueue":"Cola del árbol de trabajo","workflowQueue":"Cola","worktreeQueueDescription":"Orden combinado de admisión de flujos, planes y sesiones para este árbol. Las colas de planes y sesiones pueden avanzar por separado hasta que un flujo exclusivo llegue al inicio.","workflowQueueDescription":"Ejecuciones en cola del flujo y ejecuciones de IA iniciadas por él. Las posiciones son relativas a todo el trabajo en cola de cada árbol.","runQueueDescription":"Orden de admisión actual para el árbol de esta ejecución. Esta ejecución del flujo aparece resaltada en la lista.","queueEmpty":"La cola está vacía","queueEmptyDescription":"El trabajo nuevo puede comenzar sin esperar detrás de otra ejecución en cola.","queuePosition":"Posición","queueItem":"Ejecución","queueState":"Estado","queueWorktree":"Árbol de trabajo","queuedAt":"En cola","exclusive":"Exclusivo","currentRun":"Ejecución actual","empty":"No hay flujos que coincidan con esta vista.","noRuns":"Todavía no hay ejecuciones de flujos.","noDescription":"Sin descripción","versionCount":"{count, plural, one {# versión} other {# versiones}}","runCount":"{count, plural, one {# ejecución} other {# ejecuciones}}","editor":"Editor de flujos","editorDescription":"Arrastra pasos al lienzo, conecta controles tipados, valida y publica.","saveDraft":"Guardar borrador","saved":"Borrador guardado.","publish":"Publicar","published":"Versión inmutable del flujo publicada.","saveBeforePublish":"Guarda el flujo antes de publicarlo.","validationPassed":"Validación correcta.","validationFailed":"La validación encontró problemas que deben corregirse.","invalidImport":"El archivo importado no es una definición de flujo.","importLoaded":"Definición importada cargada como borrador.","workflowSettings":"Ajustes del flujo","settings":"Ajustes","lockToFit":"Fijar al encuadre","unlockView":"Desbloquear la vista","showSessionData":"Mostrar los datos de sesión","hideSessionData":"Ocultar los datos de sesión","lockSteps":"Fijar los pasos","unlockSteps":"Desbloquear los pasos","name":"Nombre","description":"Descripción","overlapPolicy":"Política de solapamiento","maxConcurrentRuns":"Máximo de ejecuciones simultáneas","exclusiveWorktree":"Reservar el árbol de trabajo para este flujo","exclusiveWorktreeHelp":"La ejecución espera a que termine el trabajo anterior y luego pone en cola otros flujos, planes y sesiones de este árbol hasta completarse. Sus propios pasos continúan normalmente.","completionNotifications":"Notificar cuando este flujo de trabajo finalice correctamente","completionNotificationsHelp":"Desactiva esta opción para omitir las notificaciones de finalización correcta. Las notificaciones de errores y de atención permanecen activadas.","connectorLayout":"Conectores de los pasos","connectorLayouts":{"SIDES":"En los lados","TOP_BOTTOM":"Arriba y abajo"},"displayLayout":"Diseño del visor","displayLayouts":{"REGULAR":"Normal","BASIC":"Básico"},"displayLayoutHelp":{"REGULAR":"Las vistas de solo lectura usan las posiciones creadas en el lienzo.","BASIC":"Las vistas de solo lectura alinean los pasos automáticamente según el ancho disponible. Las posiciones creadas no cambian."},"previewBasicLayout":"Vista previa del diseño básico","exitBasicPreview":"Salir de la vista previa","validate":"Validar","steps":"Pasos","outline":"Esquema","viewOutline":"Ver esquema","viewPalette":"Ver paleta","searchSteps":"Buscar pasos","triggers":"Desencadenadores","mutates":"Modifica","diagnostics":"Diagnósticos de validación","configurationJson":"Configuración (JSON)","applyConfiguration":"Aplicar configuración","requiredPaths":"Rutas requeridas adicionales","providedPaths":"Rutas proporcionadas adicionales","addsToSession":"Añade a los datos de sesión","seedsSession":"Inicializa los datos de sesión","addsToSessionEmpty":"Este paso no añade datos de sesión.","maxAttempts":"Intentos máximos","failurePolicy":"Política de fallo","idempotencyWarning":"Este paso cambia estado externo. Configura una estrategia de idempotencia y no reintentes a ciegas un resultado incierto.","duplicateNode":"Duplicar paso","deleteNode":"Eliminar nodo","deleteConnection":"Eliminar conexión","configuration":"Configuración","notSet":"Sin definir","noConfiguration":"Sin configuración","noRequiredPaths":"Este paso no requiere rutas de sesión.","retryStrategy":"Estrategia de reintento","retryStrategies":{"FIXED":"Espera fija","EXPONENTIAL":"Espera exponencial"},"retryDelay":"Espera de reintento","seconds":"{count, plural, one {# segundo} other {# segundos}}","advancedJson":"Avanzado (JSON sin formato)","advancedJsonHelp":"Edita como JSON los campos sin control de formulario.","extraKeys":"{count, plural, one {# clave adicional} other {# claves adicionales}}","configMustBeObject":"La configuración debe ser un objeto JSON.","selectPlaceholder":"Selecciona una opción","searchPlaceholder":"Buscar","noOptions":"Sin coincidencias","addRow":"Agregar","removeRow":"Quitar","recordKeyPlaceholder":"Clave","recordValuePlaceholder":"Valor","conditionMatchMode":"Coincidencia","conditionMatchAll":"Todas se cumplen","conditionMatchAny":"Alguna se cumple","conditionField":"Valor de sesión","conditionOperator":"Comparación","conditionValue":"Valor comparado","conditionValuePlaceholder":"Valor","addCondition":"Añadir comparación","conditionEmpty":"Todavía no hay comparaciones. Añade una para decidir qué rama se ejecuta.","conditionHelp":"La salida «true» se ejecuta cuando hay coincidencia; en caso contrario se ejecuta la salida «false». Los números y true/false se comparan con su tipo; entrecomilla un valor para compararlo como texto.","conditionAdvanced":"Esta condición anida grupos que el editor no puede mostrar. Edítala como JSON.","conditionOperators":{"EQ":"es igual a","NE":"no es igual a","CONTAINS":"contiene","NOT_CONTAINS":"no contiene","MATCHES":"coincide con la regex","NOT_MATCHES":"no coincide con la regex","GT":"es mayor que","GTE":"es al menos","LT":"es menor que","LTE":"es como máximo","EXISTS":"tiene valor","NOT_EXISTS":"no tiene valor"},"choiceOptionLabel":"Texto del botón","choiceOptionDescription":"Descripción (opcional)","addChoiceOption":"Añadir botón","choiceOptionsEmpty":"Todavía no hay botones. Añade las opciones que ofrece este paso.","choiceOptionsHelp":"Se muestran como botones mientras la ejecución espera una respuesta.","choiceOptionsAdvanced":"Estas opciones no son entradas simples de texto y descripción. Edítalas como JSON.","valueModeToggle":"Cambiar la fuente del valor","valueModeLiteral":"Usar un valor fijo","valueModeSession":"Vincular a datos de sesión","sessionBindingLabel":"Ruta de sesión","sessionPathPlaceholder":"p. ej. ticket.key","sessionBindingHelp":"Lee este valor de los datos de sesión al ejecutar.","interpolationHelp":"Usa {token} para insertar datos de sesión al ejecutar; por ejemplo, {example}.","modelProvider":"Proveedor","modelModel":"Modelo","modelEffort":"Esfuerzo","overlap":{"QUEUE":"Poner en cola cada evento","CONCURRENT":"Ejecutar simultáneamente","COALESCE_LATEST":"Conservar el último evento pendiente"},"overlapPolicies":{"QUEUE":"En cola","CONCURRENT":"Concurrente","COALESCE_LATEST":"Solo el último"},"failure":{"FAIL":"Hacer fallar el flujo","CONTINUE":"Continuar"},"statuses":{"QUEUED":"En cola","PENDING":"Pendiente","READY":"Listo","RUNNING":"En ejecución","WAITING":"En espera","BLOCKED":"Bloqueado","PAUSING":"Pausando","PAUSED":"En pausa","SUCCEEDED":"Completado","FAILED":"Fallido","CANCELLED":"Cancelado","SKIPPED":"Omitido","SUPERSEDED":"Reemplazado","TIMED_OUT":"Tiempo agotado"},"eventTypes":{"RUN_STARTED":"Ejecución iniciada","RUN_PAUSING":"Pausando la ejecución","RUN_PAUSED":"Ejecución en pausa","RUN_RESUMED":"Ejecución reanudada","RUN_CANCELLED":"Ejecución cancelada","RUN_SUCCEEDED":"Ejecución completada","RUN_FAILED":"Ejecución fallida","RUN_DATA_REPAIRED":"Datos reparados","RUN_REPLAYED":"Ejecución repetida","STEP_SUCCEEDED":"Paso completado","STEP_FAILED":"Paso fallido","STEP_BLOCKED":"Paso bloqueado","STEP_WAITING":"Paso en espera","STEP_RETRY_SCHEDULED":"Reintento programado","STEP_RECOVERY_BLOCKED":"Recuperación bloqueada","STEP_WAITING_FOR_RESOURCE":"Esperando el repositorio"},"diagnosticCodes":{"SCHEMA_INVALID":"Esquema no válido","DUPLICATE_NODE_ID":"ID de paso duplicado","DUPLICATE_EDGE_ID":"ID de conexión duplicado","EDGE_ENDPOINT_MISSING":"Falta un extremo de la conexión","TRIGGER_HAS_INPUT":"El activador tiene una entrada","TRIGGER_REQUIRED":"Se requiere un activador","STEP_REQUIRED":"Se requiere un paso","EXPLICIT_JOIN_REQUIRED":"Se requiere un paso de unión","DAG_CYCLE":"Ciclo en el gráfico","UNREACHABLE_STEP":"Paso inalcanzable","SECRET_LITERAL":"Secreto en texto plano","UNRESOLVED_REFERENCE":"Referencia sin resolver","SESSION_BINDING_INVALID":"Vínculo de sesión no válido","SUBWORKFLOW_VERSION_REQUIRED":"Se requiere la versión del subflujo","TRIGGER_DISCONNECTED":"Activador desconectado","RESOURCE_KIND_REQUIRED":"Se requiere el tipo de recurso","ISSUE_COMMAND_ALLOWLIST_REQUIRED":"Se requiere una lista de comandos permitidos","ISSUE_COMMAND_PATTERN_ANCHORED":"El patrón de comando debe estar anclado","REQUIREMENT_UNSATISFIED":"Requisito no satisfecho","PARALLEL_WRITE_CONFLICT":"Conflicto de escritura paralela","TRIGGER_CHOICES_REQUIRED":"Se requieren opciones del activador","TRIGGER_CHOICE_HANDLE_UNKNOWN":"Opción de activador desconocida"},"notFound":"Flujo no encontrado.","publishedVersion":"Versión publicada","runs":"Ejecuciones","graph":"Grafo del flujo","recentRuns":"Ejecuciones recientes","versionHistory":"Historial de versiones","version":"Versión","hash":"Hash del contenido","publishedAt":"Publicado","exportVersion":"Exportar versión {version}","unpublished":"Este flujo aún no se ha publicado.","runNotFound":"Ejecución de flujo no encontrada.","generationValue":"Generación {generation}","pause":"Pausar","resume":"Reanudar","cancelRun":"Cancelar ejecución","runGraph":"Grafo de ejecución en directo","repairData":"Reparar datos de sesión bloqueados","repairDataDescription":"Aplica un parche JSON atómico y reanuda la planificación desde el paso bloqueado.","applyRepair":"Aplicar reparación","questionFrom":"Pregunta de {step}","answer":"Responder","customAnswer":"Respuesta personalizada","answerOnRunPage":"Responder en la página de la ejecución","replay":"Repetir y rebobinar","replayDescription":"Previsualiza los descendientes afectados antes de crear una nueva generación inmutable.","selectReplayStep":"Seleccionar un paso","prepareReplay":"Preparar repetición","replayAffected":"{count, plural, one {Se repetirá # paso} other {Se repetirán # pasos}}","externalEffectsWarning":"Los efectos externos se conservan y no se revertirán:","replayWithoutRestore":"Repetir sin restaurar Git","restoreAndReplay":"Restaurar Git y repetir","stashRestoreReplay":"Guardar, restaurar y repetir","timeline":"Cronología","stepAttempts":"Intentos de paso","sessionData":"Datos de sesión","resources":"Recursos","noEvents":"No hay eventos registrados.","noResources":"No hay recursos enlazados.","open":"Abrir","step":"Paso","iteration":"Iteración","attempt":"Intento","duration":"Duración","error":"Error","resourceWorkflows":"Flujos enlazados","resourceWorkflowsDescription":"Ejecuta un flujo compatible o sigue este recurso durante una ejecución activa.","manageWorkflows":"Gestionar flujos","quickActions":"Acciones rápidas","quickActionsDescription":"Elige dónde aparece este flujo como acción rápida.","quickActionIcon":"Icono del botón","quickActionStyle":"Estilo del botón","quickActionStyles":{"default":"Predeterminado","outline":"Contorno","secondary":"Secundario","destructive":"Destructivo"},"quickActionKind":"Tipo de acción","quickActionKinds":{"STANDARD":"Estándar","MERGE_CONFLICT":"Conflicto de fusión","GITHUB_ACTIONS":"Acciones de GitHub","NONE":"Ninguna"},"quickActionKindHelp":{"STANDARD":"Mostrar con las acciones estándar del worktree.","MERGE_CONFLICT":"Mostrar cuando un rebase se detiene por conflictos.","GITHUB_ACTIONS":"Mostrar en los menús de pipelines y trabajos de GitHub.","NONE":"No mostrar como acción rápida."},"repositoryQuickActions":"Disponibilidad por repositorio","repositoryQuickActionsHelp":"Sin selección se permiten todos los repositorios; una selección crea una lista permitida.","noQuickActionRepositories":"Añade una base de código antes de asignar acciones rápidas por repositorio.","quickActionEligibility":"La acción aparece cuando el flujo está publicado, activado y tiene un disparador de recurso que coincide con el tipo de acción seleccionado.","saveQuickActions":"Guardar acciones rápidas","quickActionStarted":"Se inició {name}.","quickActionView":"Ver","runNamed":"Ejecutar {name}","fullRun":"Ejecución completa","openLinkedResource":"Abrir detalles vinculados","addTriggerChoice":"Añadir opción","triggerChoiceLabel":"Texto de la opción","triggerChoiceKey":"Clave de salida","triggerChoiceKeyDuplicate":"Otra opción ya usa esta clave.","triggerChoiceDescription":"Descripción (opcional)","triggerChoicesHelp":"Cada opción se convierte en un elemento del menú bajo el botón de ejecución y en una salida propia del activador.","triggerChoicesEmpty":"Aún no hay opciones. Añade las que se ofrecerán al iniciar este flujo de trabajo.","triggerChoicesAdvanced":"Estas opciones no son entradas simples de clave, texto y descripción. Edítalas como JSON.","active":"Activo","all":"Todos","archived":"Archivado","archiveFilter":"Filtro de archivo","cancel":"Cancelar","delete":"Eliminar","deleteRunDescription":"Se eliminarán la ejecución y todo su historial de pasos. Esta acción no se puede deshacer.","deleteRunTitle":"Eliminar ejecución del flujo de trabajo","done":"Hecho","editRuns":"Editar","restore":"Restaurar","selectAll":"Seleccionar todo","selectDay":"Seleccionar todo del {day}","selectRun":"Seleccionar ejecución #{id}","selectedRuns":"{count, plural, one {# ejecución seleccionada} other {# ejecuciones seleccionadas}}"},"runs":{"actions":"Acciones","active":"Activo","activeUsage":"Intentos activos","activity":"Actividad","activityDescription":"Actividad en directo y con búsqueda del proveedor y las herramientas para esta ejecución.","age":"Antigüedad","all":"Todos","allOrigins":"Todos los orígenes","allProviders":"Todas las herramientas","answerNeeded":"Respuesta necesaria","answer":"Respuesta","answeredQuestions":"Preguntas respondidas","archive":"Archivar","archiveFilter":"Filtro de archivo","archived":"Archivado","attachFiles":"Adjuntar archivos","attachmentLimits":"Hasta 25 MB por archivo y 100 MB en total.","attachments":"Archivos adjuntos","attachmentsTooLarge":"Los archivos seleccionados superan el límite de entrada de 100 MB.","auto":"Automático","cacheReadTokens":"Caché leída","cacheTokens":"Tokens de caché","cacheWriteTokens":"Caché escrita","cancel":"Cancelar","cancelAndTransfer":"Cancelar la ejecución principal y transferir el árbol de trabajo","changesSnapshots":"Cambios","changesSnapshotsDescription":"Puntos de control de Git capturados durante esta ejecución.","checkpointKinds":{"ANSWER_ROLLBACK":"Reversión de la respuesta","CONTINUE":"Continuación","FINAL":"Final","PRE_ANSWER_REVISION":"Antes de la revisión","QUESTION":"Pregunta","START":"Inicio"},"chooseModel":"Elegir un modelo","continue":"Continuar","copied":"Copiado","copy":"Copiar","cost":"Coste","crossProviderWarning":"El estado oculto del proveedor no se puede transferir entre herramientas. Elige como contexto la transcripción visible o el resumen final.","customAnswer":"Respuesta personalizada","delete":"Eliminar","deleted":"Eliminado","deleteDescription":"El historial nativo del proveedor se eliminará antes que este registro local. Esta acción no se puede deshacer.","deleteDraftDescription":"¿Eliminar de forma permanente el borrador seleccionado? Esta acción no se puede deshacer.","deleteDraftTitle":"Eliminar borrador","deleteTitle":"Eliminar ejecución","detached":"HEAD desacoplado","done":"Hecho","drafts":"Borradores","draftsDescription":"Prompts guardados que puedes iniciar más tarde como plan o sesión.","edit":"Editar","editAnswer":"Editar respuesta","editDraft":"Editar borrador","effort":"Esfuerzo","empty":"No hay elementos: {kind}","emptyDescription":"No se encontraron ejecuciones coincidentes.","estimatedCost":"Coste estimado","eventTypes":{"ASSISTANT":"Asistente","ERROR":"Error","QUESTION":"Pregunta","RESULT":"Resultado","SYSTEM":"Sistema","TOOL":"Herramienta","USER":"Usuario"},"export":"Exportar","exportJson":"Exportar como JSON","exportMarkdown":"Exportar como Markdown","exportSession":"Exportar sesión de {tool} (JSONL)","exportSessionFile":"Descargar archivo original de {tool}","fileTooLarge":"{name} supera el límite de 25 MB por archivo.","followUp":"Seguimiento","followUpDescription":"Crea una ejecución relacionada con contexto reanudado, nuevo o reenviado.","followUpModes":{"ANSWER_REVISION":"Revisión de la respuesta","FRESH":"Nuevo","PLAN_PLAY":"Ejecución del plan","RESEND":"Reenviar","RESUME":"Reanudar"},"followUpPrompt":"Prompt de seguimiento","fresh":"Nuevo","id":"ID","imported":"Importado","importedCollisionWarning":"Esta sesión administrada externamente está activa en un árbol de trabajo reservado por otra sesión administrada. La aplicación no puede controlar su concurrencia.","inputTokens":"Tokens de entrada","jiraTicket":"Incidencia de Jira","linkedItems":"Elementos vinculados","linkedItemsDescription":"Plan de origen y ejecuciones principales y secundarias relacionadas con esta ejecución.","loading":"Cargando…","loadMore":"Cargar más","loadingMore":"Cargando más…","managed":"Administrado","mode":"Modo","model":"Modelo","modelEffort":"Modelo / esfuerzo","newDraft":"Nuevo borrador","newRun":"Nuevo: {kind}","noActivity":"Ninguna actividad coincide con esta búsqueda.","noChanges":"No hay puntos de control de Git disponibles.","noDetail":"Sin detalles adicionales","noDrafts":"No se encontraron borradores coincidentes.","noRollbackChanges":"No se deshará ningún cambio de contenido del árbol de trabajo.","normalizedContext":"Transcripción visible","origin":"Origen","outputTokens":"Tokens de salida","parentRun":"Ejecución principal","pause":"Pausar","pausedFollowUpDescription":"Al iniciar una ejecución secundaria reanudada, se cancela esta sesión pausada y se transfiere atómicamente su reserva del árbol de trabajo.","pausedFollowUpTitle":"Transferir sesión pausada","phases":{"ANSWER_FAILED":"Error al responder","ANSWER_REVISION_PREPARING":"Preparando revisión","ANSWER_REVISION_QUEUED":"Revisión en cola","ANSWER_REVISION_READY":"Revisión lista","CANCELLED":"Cancelado","CANCEL_FAILED":"Error al cancelar","CANCEL_REQUESTED":"Cancelación solicitada","COMPLETED":"Completado","CONTINUE_FAILED":"Error al continuar","DELETE_NATIVE_FAILED":"Error al eliminar en la herramienta","DELETE_REQUESTED":"Eliminación solicitada","FAILED":"Fallido","IMPORTED_ACTIVE_COLLISION":"Importado: conflicto de árbol de trabajo","IMPORTED_SYNCED":"Importado y sincronizado","IN_PROGRESS":"En curso","PAUSED":"Pausado","PAUSE_FAILED":"Error al pausar","PAUSE_REQUESTED":"Pausa solicitada","PLAY_PLAN_FAILED":"Error al ejecutar el plan","PREPARE_ANSWER_REVISION_FAILED":"Error al preparar la revisión","QUEUED":"En cola","RECOVERY_PAUSED":"Pausado tras la recuperación","REVISE_ANSWER_FAILED":"Error en la revisión","RUNNING":"En ejecución","START_FAILED":"Error al iniciar","STEER_FAILED":"Error al guiar","SUPERSEDED_BY_ANSWER_REVISION":"Reemplazado por la revisión de la respuesta","SUPERSEDED_BY_FOLLOW_UP":"Reemplazado por un seguimiento","WAITING_FOR_ANSWER":"Esperando respuesta","WAITING_FOR_WORKTREE":"Esperando el árbol de trabajo"},"pinPreset":"Fijar como preajuste","plan":"Plan","planMutationWarning":"Este plan de solo lectura modificó inesperadamente el árbol de trabajo seleccionado.","plans":"Planes","plansDescription":"Planes de solo lectura que analizan un código y proponen trabajo sin modificarlo.","play":"Ejecutar plan","presets":"Preajustes","recentModels":"Recientes","prompt":"Prompt","promptPlaceholder":"Describe lo que debe hacer el agente…","prepareRevision":"Preparando la reversión…","provider":"Herramienta","raw":"Sin procesar","reasoningTokens":"Tokens de razonamiento","revisionDescription":"El árbol de trabajo seleccionado se restaurará al punto de control inmediatamente anterior a esta pregunta y una nueva sesión vinculada continuará con la respuesta revisada. La sesión anterior permanecerá disponible como historial de auditoría.","revisionDescriptionNoRollback":"El árbol de trabajo conservará sus cambios actuales y una nueva sesión vinculada continuará con la respuesta revisada. La sesión anterior permanecerá disponible como historial de auditoría.","rollbackChanges":"Deshacer los cambios del árbol de trabajo posteriores a esta pregunta","rollbackChangesHint":"Desactívalo para conservar los cambios actuales del árbol de trabajo en lugar de restaurar el punto de control anterior a esta pregunta.","rollbackDiff":"Cambios que se desharán","removeAttachment":"Eliminar {name}","rendered":"Renderizado","repoBranch":"Repositorio / rama","resend":"Reenviar","resendPrompt":"Edita el prompt original antes de reenviarlo sin el contexto anterior.","restore":"Restaurar","resume":"Reanudar","run":"Ejecutado","runNotFound":"No se encontró la ejecución.","saveDraft":"Guardar borrador","confirmRevision":"Iniciar sesión revisada","search":"Buscar {kind}","searchActivity":"Buscar actividad","searchDrafts":"Buscar borradores","searchWorktrees":"Buscar árboles de trabajo","selectDraft":"Seleccionar borrador","selected":"{count, plural, one {# seleccionado} other {# seleccionados}}","selectRun":"Seleccionar ejecución #{id}","selectWorktree":"Seleccionar un árbol de trabajo","send":"Enviar","session":"Sesión","showingCount":"Se muestran {count} de {total}","sessions":"Sesiones","sessionsDescription":"Sesiones gestionadas del proveedor que se ejecutan sobre un worktree.","start":"Iniciar","startDescription":"Inicia un plan o una sesión administrados en el árbol de trabajo seleccionado.","mcpPresets":"Preajustes de herramientas MCP","mcpPresetsDescription":"Concede a esta ejecución solo las herramientas integradas de los preajustes seleccionados. No hay ninguna selección predeterminada.","playPlan":"Ejecutar plan","playPlanDescription":"Elige preajustes MCP habilitados para sesiones para la nueva ejecución de implementación.","startFollowUp":"Iniciar seguimiento","startTitle":"Iniciar un prompt","status":"Estado","statuses":{"CANCELLED":"Cancelado","COMPLETED":"Completado","FAILED":"Fallido","IN_PROGRESS":"En curso","PAUSED":"Pausado","QUEUED":"En cola"},"stashBeforeRollback":"Guardar en el stash los cambios actuales, con y sin seguimiento, antes de restaurar","stashCreated":"Stash creado","steer":"Guiar","steerDescription":"Envía instrucciones al turno activo del proveedor. Las instrucciones esperan detrás de las preguntas pendientes.","steerPlaceholder":"Añade instrucciones para el agente en ejecución…","submitAnswers":"Enviar respuestas","summary":"Resumen","summaryOnly":"Solo el resumen final","superseded":"Reemplazado","ticket":"Incidencia","tool":"Herramienta","toolCallStatuses":{"COMPLETED":"Completado","FAILED":"Fallido","OBSERVED":"Observado"},"toolCalls":"Llamadas a herramientas","unpinPreset":"Quitar preajuste","unrestrictedWarning":"Las sesiones se ejecutan sin solicitudes de aprobación y con acceso sin restricciones mientras mantienen una reserva exclusiva del árbol de trabajo.","uploadFailed":"No se pudo subir el archivo adjunto.","usageCost":"Uso y coste estimado","usageState":"Uso de los intentos","webSearch":"Búsqueda web","webSearchDescription":"Activa la herramienta nativa de búsqueda web del proveedor cuando sea compatible.","worktree":"Árbol de trabajo","reportedCost":"Informado por el proveedor","catalogCost":"Catálogo de costes de modelos","selectAll":"Seleccionar todo","selectDay":"Seleccionar todo del {day}"},"notifications":{"title":"Notificaciones","description":"Consulta el historial y elige cómo recibir cada evento.","deliverySetup":"Entrega en el navegador","deliverySetupDescription":"El permiso del navegador y la suscripción Web Push se configuran por separado para este navegador.","browserAlerts":"Alertas del navegador","browserUnsupported":"Las alertas del navegador no son compatibles aquí.","enabled":"Activado","enable":"Activar","webPush":"Push web","pushUnsupported":"Web Push requiere un navegador compatible y un contexto HTTPS seguro.","pushSubscribed":"Este navegador está suscrito.","pushNotSubscribed":"Este navegador no está suscrito.","subscriptionCount":"{count, plural, one {# navegador suscrito} other {# navegadores suscritos}}","subscribedBrowsers":"Navegadores suscritos","subscribedBrowsersDescription":"Envía una notificación de prueba o elimina navegadores que ya no deban recibir Web Push.","browser":"Navegador","pushService":"Servicio push","locale":"Configuración regional","lastSeen":"Última actividad","actions":"Acciones","noSubscribedBrowsers":"No hay navegadores suscritos a Web Push.","current":"Actual","test":"Probar","testSent":"Enviada","remove":"Eliminar","removeBrowser":"Eliminar {browser}","removeBrowserTitle":"¿Eliminar este navegador suscrito?","removeBrowserDescription":"Este navegador dejará de recibir notificaciones Web Push. Podrá volver a suscribirse más adelante.","unknownBrowser":"Navegador desconocido","subscribe":"Suscribirse","unsubscribe":"Cancelar suscripción","permissionRequired":"Se requiere permiso de notificaciones para Web Push.","pushKeyUnavailable":"La clave pública de Web Push no está disponible.","pushSubscriptionInvalid":"El navegador devolvió una suscripción push no válida.","iosInstallHelp":"En iPhone o iPad, instala esta app desde Compartir → Añadir a pantalla de inicio antes de suscribirte a Web Push.","preferences":"Tipos de notificación","preferencesDescription":"Los canales son independientes. Navegador y Web Push pueden mostrar ambas alertas.","notificationType":"Tipo","sidebarChannel":"Barra lateral","browserChannel":"Navegador","pushChannel":"Push web","toggleChannel":"Cambiar {channel} para {type}","history":"Historial","settingsTab":"Configuración","refresh":"Actualizar","historyCount":"{count, plural, one {# notificación} other {# notificaciones}}","historyEmpty":"Todavía no hay notificaciones.","notification":"Notificación","channels":"Canales","received":"Recibida","edit":"Editar","done":"Listo","deleteSelected":"Eliminar selección","deleteAll":"Eliminar todo","deleteAllTitle":"¿Eliminar todo el historial de notificaciones?","deleteAllDescription":"Esto elimina permanentemente todas las notificaciones de la base de datos.","selectedCount":"{count} seleccionadas","allSelected":"Todas las notificaciones seleccionadas","selectAll":"Seleccionar todas las notificaciones","selectDay":"Seleccionar notificaciones del {day}","selectNotification":"Seleccionar {title}","dismiss":"Descartar","dismissOne":"Descartar {title} de la barra lateral","openBuild":"Abrir compilación","openWorktree":"Abrir árbol de trabajo","delete":"Eliminar","confirmDelete":"Confirmar eliminación","mute":"Silenciar sonidos de notificación","unmute":"Activar sonidos de notificación","clearAll":"Limpiar todo","clearSidebar":"Limpiar barra lateral","clearSidebarTitle":"¿Limpiar la barra de notificaciones?","clearSidebarDescription":"Las notificaciones se quitarán de la barra lateral, pero permanecerán en el historial.","sidebarEmpty":"No hay notificaciones nuevas.","cancel":"Cancelar","permissions":{"default":"El permiso aún no se ha solicitado.","granted":"Permiso concedido para este navegador.","denied":"El permiso está bloqueado en la configuración del navegador."},"types":{"IOS_BUILD_SUCCEEDED":{"title":"Compilación de iOS completada","description":"Una compilación de iOS termina correctamente."},"IOS_BUILD_FAILED":{"title":"Error en la compilación de iOS","description":"Una compilación de iOS termina con un error."},"COMMAND_RUN_SUCCEEDED":{"title":"Ejecución de comando completada","description":"Un comando guardado finaliza correctamente."},"COMMAND_RUN_FAILED":{"title":"Ejecución de comando fallida","description":"Un comando guardado finaliza con un error."},"GITHUB_ACTIONS_SUCCEEDED":{"title":"GitHub Actions completado","description":"Un flujo de GitHub Actions termina correctamente."},"GITHUB_ACTIONS_FAILED":{"title":"Error en GitHub Actions","description":"Un flujo de GitHub Actions termina con un error."},"RUN_NEEDS_ANSWER":{"title":"El plan o la sesión necesita una respuesta","description":"Un plan o una sesión gestionada solicita datos al usuario."},"RUN_COMPLETED":{"title":"Plan o sesión completada","description":"Un plan o una sesión gestionada se completa correctamente."},"RUN_FAILED":{"title":"Plan o sesión fallida","description":"Un plan o una sesión gestionada falla."},"RUN_CANCELLED":{"title":"Plan o sesión cancelada","description":"Un plan o una sesión gestionada se cancela."},"RUN_RECOVERY_PAUSED":{"title":"Plan o sesión en pausa tras la recuperación","description":"Un plan o una sesión gestionada se pausa tras reiniciarse su agente."},"WORKFLOW_MESSAGE":{"title":"Mensaje de flujo de trabajo","description":"Un flujo de trabajo envía una notificación genérica."},"WORKFLOW_NEEDS_ATTENTION":{"title":"El flujo de trabajo necesita atención","description":"Un flujo de trabajo espera datos o una decisión."},"WORKFLOW_COMPLETED":{"title":"Flujo de trabajo completado","description":"Una ejecución de flujo de trabajo se completa correctamente."},"WORKFLOW_FAILED":{"title":"Flujo de trabajo fallido","description":"Una ejecución de flujo de trabajo falla."},"WORKFLOW_RECOVERY_PAUSED":{"title":"Flujo de trabajo en pausa tras la recuperación","description":"Un flujo de trabajo se pausa mientras recupera trabajo duradero."}},"categories":{"BUILDS":"Compilaciones","COMMANDS":"Comandos","GITHUB":"GitHub","RUNS":"Planes y sesiones","WORKFLOWS":"Flujos de trabajo"}},"credentialEncryption":{"title":"Las credenciales de la base de datos no están cifradas","description":"Los secretos guardados en la base de datos de la aplicación están actualmente en texto plano. Genera una clave de 32 bytes con este comando:","instructionsPrefix":"Configura el valor generado como","instructionsSuffix":"en el entorno del servidor y reinícialo. Las credenciales existentes en texto plano se cifrarán juntas después del reinicio.","backup":"Guarda una copia segura de esta clave durante toda la vida de las filas cifradas. Si se pierde o cambia, esas credenciales quedarán ilegibles."},"credentials":{"title":"Credenciales","description":"Consulta el backend activo, el estado de protección y un inventario que solo contiene metadatos. Los valores secretos nunca se muestran aquí.","refresh":"Actualizar","loading":"Cargando el inventario de credenciales…","loadFailed":"No se pudo cargar el inventario de credenciales","storageTitle":"Almacenamiento de credenciales","storageDescription":"Configuración de ejecución y detalles seguros de ubicación del backend seleccionado.","backend":"Sistema de almacenamiento","protection":"Protección","itemCount":"Elementos guardados","mismatchCount":"Incompatibilidades de backend","inventoryTitle":"Credenciales guardadas","inventoryDescription":"Esta tabla solo contiene identificadores y metadatos de protección. Gestiona cada valor desde su configuración correspondiente.","feature":"Función propietaria","kind":"Tipo de credencial","updated":"Actualizado","emptyTitle":"No hay credenciales guardadas","emptyDescription":"Las credenciales aparecerán aquí después de guardarlas desde su formulario de configuración.","emptyDescriptionVault":"No se encontraron credenciales en el punto de montaje y el prefijo de ruta de Vault configurados. Guarda una desde su formulario de configuración o comprueba que el montaje y el prefijo coincidan con el Vault que las contiene.","states":{"READY":"Listo","WARNING":"Advertencia","ERROR":"Error"},"backends":{"DATABASE":"Base de datos","VAULT":"Vault de HashiCorp","KEYCHAIN":"Llavero de macOS","UNKNOWN":"Desconocido"},"encryptionStates":{"ENCRYPTED":"Cifrado","PLAINTEXT":"Texto plano","EXTERNAL":"Backend externo","ERROR":"No disponible"},"protections":{"ENCRYPTED":"Cifrado AES-256-GCM","PLAINTEXT":"Texto plano","VAULT":"Almacén Vault KV v2","KEYCHAIN":"Llavero"},"features":{"jira":"Integración con Jira","github":"Integración con GitHub","cache":"Caché de Actions","mcp":"Servidor MCP externo","ios":"Dispositivos iOS","push":"Notificaciones push","notifications":"Notificaciones"},"kinds":{"jira-api-token":"Token de API","github-personal-access-token":"Token de acceso personal","github-app-private-key":"Clave privada de GitHub App","github-app-webhook-secret":"Secreto del webhook de GitHub App","cache-server-api-key":"Clave de API","cache-server-headers":"Paquete de cabeceras personalizadas","external-mcp-server-headers":"Paquete de cabeceras","ios-profile-signer-private-key":"Clave privada del firmante de perfiles","app-store-connect-private-key":"Clave privada de App Store Connect","apns-token-private-key":"Clave privada del token APNs","apns-certificate-bundle":"Paquete de certificado APNs","web-push-vapid-private-key":"Clave privada VAPID de push web"},"details":{"configuredValue":"Valor configurado","location":"Ubicación","encryptionKey":"Clave de cifrado","service":"Servicio","hostPlatform":"Plataforma del host","address":"Dirección","mount":"Montaje KV v2","pathPrefix":"Prefijo de ruta","namespace":"Espacio de nombres","authenticationToken":"Token de autenticación","additionalHeaders":"Nombres de cabeceras adicionales","customCa":"CA personalizada","tlsServerName":"Nombre de servidor TLS","vaultAccess":"Acceso a Vault"},"detailValues":{"configured":"Configurado","notConfigured":"Sin configurar","none":"Ninguna","invalid":"No válido","applicationDatabase":"Base de datos de la aplicación","readOnly":"Solo lectura","readWrite":"Lectura y escritura"},"warningTitles":{"DATABASE_UNENCRYPTED":"El cifrado de la base de datos está desactivado","CREDENTIAL_ENCRYPTION_KEY_INVALID":"La clave de cifrado no es válida","CREDENTIAL_ENCRYPTION_KEY_MISSING":"Falta la clave de cifrado","CREDENTIAL_ENCRYPTION_KEY_MISMATCH":"La clave de cifrado no coincide","CREDENTIAL_DATA_INVALID":"Los datos de credenciales no son válidos","CREDENTIAL_STORAGE_TYPE_INVALID":"El tipo de almacenamiento no es válido","CREDENTIAL_STORE_UNAVAILABLE":"El almacén de credenciales no está disponible","CREDENTIAL_STORE_READ_ONLY":"El almacén de credenciales es de solo lectura","VAULT_CONFIGURATION_INVALID":"La configuración de Vault no es válida","VAULT_INSECURE_HTTP":"Vault usa HTTP sin cifrar","VAULT_TLS_VERIFICATION_DISABLED":"La verificación del certificado de Vault está desactivada","VAULT_READ_ONLY_IGNORED":"La opción de solo lectura no se aplica","VAULT_ADOPTION_FAILED":"No se pudieron adoptar las credenciales existentes","KEYCHAIN_UNSUPPORTED_PLATFORM":"El llavero no es compatible con este host","BACKEND_MISMATCH":"Hay credenciales en otro backend"},"warnings":{"DATABASE_UNENCRYPTED":"Las credenciales de la base de datos se guardan en texto plano hasta que se configure una clave de cifrado.","CREDENTIAL_ENCRYPTION_KEY_INVALID":"CREDENTIAL_ENCRYPTION_KEY debe ser una codificación Base64 estricta de exactamente 32 bytes. Corrígela y reinicia el servidor; una clave no válida nunca usa texto plano como alternativa.","CREDENTIAL_ENCRYPTION_KEY_MISSING":"Hay credenciales cifradas, pero falta la clave. Restaura la clave original y reinicia el servidor.","CREDENTIAL_ENCRYPTION_KEY_MISMATCH":"La clave configurada no coincide con las credenciales existentes. Restaura la clave original y reinicia el servidor.","CREDENTIAL_DATA_INVALID":"Uno o más registros de credenciales contienen metadatos no válidos y no se pueden utilizar.","CREDENTIAL_STORAGE_TYPE_INVALID":"CREDENTIAL_STORAGE_TYPE debe ser database, vault o keychain.","CREDENTIAL_STORE_UNAVAILABLE":"No se pudo inicializar el almacén de credenciales. Revisa la configuración y los registros del servidor.","CREDENTIAL_STORE_READ_ONLY":"Esta instalación puede leer las credenciales de Vault, pero no modificarlas. Gestiona los secretos desde una instalación con permisos de escritura o borra CREDENTIAL_VAULT_READ_ONLY y concede capacidades de escritura al token.","VAULT_CONFIGURATION_INVALID":"Vault no puede iniciarse con las variables de entorno actuales. Revisa la dirección, las cabeceras, la ruta y la configuración TLS.","VAULT_INSECURE_HTTP":"El tráfico de Vault, los secretos y las cabeceras de autenticación no están protegidos durante el tránsito por HTTP.","VAULT_TLS_VERIFICATION_DISABLED":"VAULT_SKIP_VERIFY permite certificados no confiables y expone el tráfico de Vault a interceptación.","VAULT_READ_ONLY_IGNORED":"CREDENTIAL_VAULT_READ_ONLY solo se aplica al almacenamiento en Vault y el backend actual lo ignora. Las credenciales de esta instalación se pueden seguir modificando.","VAULT_ADOPTION_FAILED":"Las credenciales que ya estaban en el backend externo no se pudieron leer al iniciar, por lo que faltan en este inventario. Comprueba la conexión con el backend y las capacidades del token, y reinicia el servidor.","KEYCHAIN_UNSUPPORTED_PLATFORM":"El llavero de macOS solo está disponible cuando el host de Next.js se ejecuta en macOS. El servidor sigue disponible, pero las operaciones de credenciales fallarán.","BACKEND_MISMATCH":"{count} credencial(es) se guardaron con otro backend. Vuelve a introducirlas desde sus formularios de configuración; los valores no se mueven ni eliminan automáticamente."},"readOnlyBadge":"Solo lectura","readOnlyNotice":"Esta instalación tiene acceso de solo lectura a Vault, por lo que este secreto no se puede cambiar aquí. Actualízalo desde una instalación con permisos de escritura.","adopted":"{count} credencial(es) se adoptaron del backend externo al iniciar el servidor."},"agents":{"title":"Agentes","description":"Gestiona los Macs inscritos y los trabajos duraderos desde un único plano de control.","refresh":"Actualizar","enroll":"Registrar agente","enrollmentTitle":"Comando de registro de un solo uso","enrollmentDescription":"Ejecuta este comando en el Mac después de instalar control-agent. El Mac se conecta de forma saliente; no abre ningún puerto de escucha.","serverAddress":"Dirección del servidor","customServerAddress":"Dirección de servidor personalizada","headers":"Cabeceras de Cloudflare Access","headersDescription":"Estos valores solo se añaden al comando y se guardan en la configuración local del agente.","addHeader":"Añadir cabecera","header":"cabecera","headerName":"Clave de cabecera","headerValue":"Valor de cabecera","removeHeader":"Eliminar {name}","copy":"Copiar comando","copyFailed":"No se pudo copiar el comando. Selecciónalo y cópialo manualmente.","expires":"El token caduca el {date}","loading":"Cargando agentes…","emptyTitle":"No hay agentes registrados","emptyDescription":"Crea un comando de registro para vincular tu primer Mac.","version":"Versión","platform":"Plataforma","lastSeen":"Visto por última vez","never":"Nunca"},"usage":{"title":"Uso","description":"Consulta el uso de tokens y el coste de todos los Macs registrados.","refresh":"Actualizar uso","agentFilterLabel":"Filtrar uso por agente","allAgents":"Todos los agentes","searchAgents":"Buscar agentes…","noAgentsFound":"No se encontraron agentes.","rangeLabel":"Intervalo de uso","allData":"Todos los datos","last7Days":"7 días","last30Days":"30 días","loading":"Cargando agentes…","noAgents":"No hay agentes registrados","noAgentsDescription":"Registra un Mac antes de recopilar el uso.","noCompatible":"No hay agentes compatibles en línea","noCompatibleDescription":"Actualiza control-agent en un Mac en línea para añadir la función ccusage.","noOnline":"No hay agentes en línea","noOnlineDescription":"Conecta un Mac registrado antes de recopilar el uso.","collectionFailed":"Falló la recopilación de uso","collectionFailedDescription":"Ningún agente devolvió un informe ccusage válido. Revisa los errores anteriores e inténtalo de nuevo.","zeroUsage":"No se encontró uso","zeroUsageDescription":"Los agentes respondieron correctamente, pero ccusage no encontró uso diario.","noUsageInRange":"No hay uso en este intervalo","noUsageInRangeDescription":"Elige un intervalo más amplio para ver el uso anterior.","progress":"{complete} de {total} agentes compatibles informaron","offlineAgents":"Sin conexión: {agents}","unsupportedAgents":"Actualización necesaria: {agents}","failedAgents":"Con errores: {agents}","costChartTitle":"Coste diario por modelo","costChartDescription":"Uso diario acumulado en USD para el intervalo seleccionado.","costChartLegendHint":"Selecciona un modelo en la leyenda para mostrarlo por separado.","costChartShowingOnly":"Se muestra solo {model}. Selecciónalo de nuevo para mostrar todos los modelos.","costChartShowOnlyModel":"Mostrar solo {model}","costChartShowAllModels":"Mostrar todos los modelos","summaryFilteredByModel":"Los totales siguientes corresponden solo a {model}.","totalCost":"Coste total","totalTokens":"Tokens totales","inputTokens":"Tokens de entrada","outputTokens":"Tokens de salida","cacheCreationTokens":"Tokens de creación de caché","cacheReadTokens":"Tokens de lectura de caché","usage":"Uso","input":"Entrada","output":"Salida","cacheCreation":"Creación de caché","cacheRead":"Lectura de caché","total":"Total","cost":"Coste","grandTotal":"Total general","unattributedTokens":"Tokens sin atribuir","modelCount":"{count} modelos","agentCount":"{count} agentes","showModels":"Mostrar modelos del {date}","hideModels":"Ocultar modelos del {date}","showAgents":"Mostrar agentes que usan {model}","hideAgents":"Ocultar agentes que usan {model}"},"agentDetail":{"loading":"Cargando agente…","notFound":"No se encontró el agente.","version":"Versión","lastSeen":"Visto por última vez","never":"Nunca","generalInformation":"Información general","generalInformationDescription":"El hardware y el uso de recursos se actualizan con cada señal del agente.","cpuModel":"Modelo de CPU","operatingSystem":"Sistema operativo","architecture":"Arquitectura","ipAddress":"Dirección IP","memory":"Memoria","disk":"Espacio en disco","used":"Usado","free":"Libre","unavailable":"No disponible","capabilities":"Capacidades","capabilitiesDescription":"Busca las capacidades anunciadas por este agente, ejecuta una e inspecciona su respuesta en vivo.","searchCapabilities":"Buscar capacidades","searchCapabilitiesPlaceholder":"Buscar nombres de capacidades…","noMatchingCapabilities":"Ninguna capacidad coincide con esta búsqueda.","capability":"Capacidad","kind":"Tipo","event":"Evento","job":"Trabajo","expandCapability":"Expandir {capability}","collapseCapability":"Contraer {capability}","eventCapabilityDescription":"Este evento solicita una reconciliación inmediata de las bases de código y no acepta datos.","payload":"Datos (objeto JSON)","invoke":"Ejecutar capacidad","invokeOffline":"Conecta este agente antes de ejecutar una capacidad.","noCapabilityResponse":"Ejecuta la capacidad para ver su respuesta.","codebases":"Bases de código","codebasesDescription":"Bases de código registradas en este agente.","noCodebases":"No hay bases de código registradas en este agente.","repository":"Repositorio","status":"Estado","created":"Creado","finished":"Finalizado","selectJob":"Seleccionar {kind}","queuing":"Añadiendo a la cola…","run":"Ejecutar","history":"Historial de trabajos","noJobs":"No se ha ejecutado ningún trabajo en este agente.","cadenceSettings":"Frecuencia del agente","cadenceSettingsDescription":"Ajusta la frecuencia con la que este agente realiza tareas periódicas del plano de control y de los repositorios. El análisis y fetch parten de los valores globales; al guardar se establecen los valores de este agente. Todos los valores están en segundos.","codebaseScanCadence":"Análisis de código base (segundos)","codebaseScanCadenceHelp":"Inspecciona los repositorios registrados e informa del estado de ramas, sincronización, disponibilidad y worktrees. Elige un entero de {min} a {max}.","jobReconciliationCadence":"Conciliación de trabajos duraderos (segundos)","jobReconciliationCadenceHelp":"Consulta el plano de control en busca de trabajos en cola, en ejecución o cancelados para recuperar el trabajo tras eventos perdidos o un reinicio del agente. Elige un entero de {min} a {max}.","gitFetchCadence":"Git fetch (segundos)","gitFetchCadenceHelp":"Ejecuta git fetch origin cuando un código base registrado no se ha actualizado dentro de este intervalo. Elige un entero de {min} a {max}.","heartbeatCadence":"Latido del agente (segundos)","heartbeatCadenceHelp":"Informa al plano de control sobre la conexión, el inventario del agente y el uso actual de recursos. Elige un entero de {min} a {max}.","saveCadenceSettings":"Guardar frecuencia","cadenceSettingsSaved":"Frecuencia del agente guardada.","baseRepoDirectory":"Directorio base de repositorios","baseRepoDirectoryDescription":"Elige la carpeta de este agente que contiene sus repositorios. Las rutas de los worktrees que estén dentro se mostrarán relativas a esta carpeta.","currentDirectory":"Directorio actual","notConfigured":"Sin configurar","useDirectory":"Usar este directorio","clearDirectory":"Borrar directorio","directoryBrowsingUnavailable":"Conecta este agente y actualízalo si es necesario para explorar directorios.","derivedDataLocation":"Derived Data de Xcode","derivedDataLocationDescription":"Elige dónde guarda este agente el DerivedData de Xcode.","derivedDataMode":"Modo de ubicación","derivedDataDefault":"Ubicación predeterminada de Xcode","derivedDataAbsolute":"Directorio absoluto personalizado","derivedDataRelative":"Relativo a cada árbol de trabajo","derivedDataAbsolutePath":"Directorio absoluto","derivedDataRelativePath":"Ruta de carpeta relativa","derivedDataAbsoluteHelp":"Introduce una ruta absoluta en este agente o elige un directorio existente.","derivedDataRelativeHelp":"Esta carpeta se comprueba bajo cada árbol de trabajo activo registrado.","saveDerivedDataSettings":"Guardar configuración de Derived Data","buildsDirectory":"Directorio de compilaciones","buildsDirectoryDescription":"Los registros, productos copiados, archivos y exportaciones se guardan en una carpeta por compilación. De forma predeterminada se añade /Builds al directorio base de repositorios, salvo que se indique otro aquí.","browseBuildsDirectory":"Explorar directorio de compilaciones","effectiveDirectory":"Directorio efectivo","agentDefault":"Valor predeterminado del repositorio base","customBuildsDirectory":"Directorio absoluto personalizado","saveBuildsDirectory":"Guardar directorio de compilaciones","useAgentDefault":"Usar valor predeterminado del repositorio base","deleteAgent":"Eliminar agente","deleteAgentTitle":"¿Eliminar este agente?","deleteAgentDescription":"Eliminar permanentemente {name} y todos sus trabajos y registros de bases de código. Esta acción no se puede deshacer."},"diskSpace":{"title":"Monitor de espacio en disco","description":"Supervisa cada volumen de agente y recupera automáticamente los Derived Data seguros más antiguos cuando queda poco espacio.","loading":"Cargando informes de disco…","settings":"Configuración","normalThreshold":"Umbral de limpieza (GiB)","pressureThreshold":"Umbral de presión (GiB)","saveThresholds":"Guardar umbrales","monitorAgent":"Supervisar agente","pressureModeControl":"Modo de presión","noReport":"Todavía no hay un informe de disco disponible.","notMonitored":"Sin supervisión","observedAt":"Observado {value}","volume":"Volumen","freeOf":"libres de","free":"libres","freeDiskSpace":"Espacio libre en disco","noEnabledAgents":"No hay agentes supervisados","usageToday":"Uso de hoy","thresholdSummary":"Limpieza por debajo de {normal} GiB · crítico a {pressure} GiB","recentDeletions":"Eliminaciones recientes","noRecentDeletions":"No hay eliminaciones automáticas ni manuales recientes.","mainDisk":"Disco principal","baseRepoDisk":"Disco del repositorio base","baseRepoDiskDescription":"Se muestra por separado porque el repositorio base está en otro sistema de archivos.","disabled":"La supervisión de disco está desactivada para este agente.","usageLabel":"{percent}% del disco usado","role":{"MAIN":"Disco principal","BASE_REPO":"Repositorio base","DERIVED_DATA":"Datos derivados"},"status":{"DISABLED":"Desactivado","STALE":"Desactualizado","IDLE":"Inactivo","CLEANUP_REQUIRED":"Requiere limpieza","DELETING":"Eliminando","PRESSURE":"Presión","CRITICAL":"Crítico","ERROR":"Error"},"pressureMode":{"NORMAL":"Normal","MANUAL":"Presión manual","AUTOMATIC":"Presión automática"}},"buildData":{"title":"Datos de compilación","description":"Inspecciona y limpia el DerivedData de Xcode en los agentes registrados.","derivedDataTitle":"Datos derivados","derivedDataDescription":"Productos de compilación, índices, registros y cachés de Xcode por proyecto.","deviceSupportTitle":"Soporte de dispositivos iOS","deviceSupportDescription":"Símbolos y archivos de soporte conservados para las versiones de iOS conectadas a cada agente.","deviceSupportVersion":"Versión de iOS","selectAllDeviceSupport":"Seleccionar todo el soporte de dispositivos iOS","noDeviceSupport":"No se encontraron carpetas de soporte de dispositivos iOS.","deleteDeviceSupportTitle":"¿Eliminar soporte de dispositivos iOS?","deleteDeviceSupportDescription":"¿Eliminar permanentemente {count} carpetas de soporte? Xcode puede recrearlas al conectar un dispositivo compatible.","refresh":"Actualizar","calculateSizes":"Calcular tamaños","loading":"Buscando Derived Data…","emptyTitle":"No se encontró Derived Data","emptyDescription":"Los directorios DerivedData configurados no contienen entradas.","progress":"Se analizaron {complete} de {total} agentes aptos","selected":"{count} seleccionados","deleteSelected":"Eliminar seleccionados","selectAll":"Seleccionar todas las entradas de Derived Data","selectEntry":"Seleccionar {name}","folder":"Carpeta","worktree":"Ruta del árbol de trabajo","size":"Uso de disco","agent":"Agente","modified":"Modificado","locked":"Bloqueado","lock":"Proteger de la limpieza automática","unlock":"Permitir limpieza automática","protectedDeleteWarning":"Eliminación de alto riesgo: las siguientes carpetas están bloqueadas o tienen trabajo en ejecución. Eliminarlas puede interrumpir recursos activos.\\n\\n{details}\\n\\n¿Eliminar de todos modos?","actions":"Acciones","entryActions":"Acciones para {name}","deleteEntry":"Eliminar {name}","confirmDeleteEntry":"Confirmar eliminación de {name}","confirmDelete":"Confirmar","delete":"Eliminar","deleteTitle":"¿Eliminar Derived Data?","deleteDescription":"¿Eliminar permanentemente {count} entradas seleccionadas? Esta acción no se puede deshacer.","history":"Historial de eliminaciones","historyDescription":"Derived Data eliminado de los agentes registrados durante los últimos 90 días.","clearHistory":"Borrar historial","clearHistoryTitle":"¿Borrar el historial?","clearHistoryDescription":"¿Eliminar todos los registros conservados? Esto no afecta a los archivos de los agentes.","loadingHistory":"Cargando historial…","noHistory":"Todavía no se ha eliminado Derived Data.","deleted":"Eliminado","sourceLabel":"Origen","loadMore":"Cargar más","status":{"UNLINKED":"Sin vincular","PENDING":"Compilación iniciándose","SHARED_CACHE":"Caché compartida"},"source":{"USER":"Usuario","AUTOMATIC":"Automático"},"agentStatus":{"QUEUING":"en cola","QUEUED":"en cola","RUNNING":"analizando","SUCCEEDED":"completado","FAILED":"falló","CANCELLED":"cancelado","TIMED_OUT":"tiempo agotado","OFFLINE":"sin conexión","UNSUPPORTED":"se requiere actualizar el agente","INVALID":"respuesta no válida"}},"cacheServerSettings":{"title":"Servidor de caché de Acciones","description":"Conéctate a un servidor de caché de GitHub Actions para gestionar sus entradas de caché.","configured":"Configurado","notConfigured":"Sin configurar","loading":"Cargando configuración…","saved":"Configuración del servidor de caché guardada.","connectionSucceeded":"Conectado correctamente al servidor de caché.","removed":"Configuración del servidor de caché eliminada.","baseUrl":"URL base","baseUrlHelp":"La URL base de la API de gestión, incluido cualquier prefijo de ruta.","setupHelp":"Obtén la URL base de la API de gestión y la clave de API de la configuración del despliegue o del administrador del servidor de caché. La clave configurada se envía como encabezado x-api-key.","apiKey":"Clave de API","apiKeyPlaceholder":"Introduce la clave de API del servidor de caché","apiKeyPlaceholderConfigured":"Déjalo en blanco para conservar la clave actual","apiKeyHelp":"Se envía como el encabezado x-api-key en cada solicitud.","apiKeyKeepHelp":"Hay una clave almacenada. Introduce un valor nuevo para reemplazarla.","headers":"Encabezados personalizados","addHeader":"Añadir encabezado","headersHelp":"Los valores de los encabezados se guardan localmente, se envían con cada solicitud al servidor de caché y nunca vuelven al navegador.","headersSetupHelp":"Añade encabezados personalizados solo si los exige un proxy de autenticación; solicita sus nombres y valores al administrador del proxy.","noHeaders":"No hay encabezados personalizados configurados.","headerName":"Nombre","headerValue":"Valor","headerValuePlaceholderConfigured":"Déjalo en blanco para conservar el valor actual","removeHeader":"Eliminar encabezado","remove":"Eliminar","confirmRemove":"¿Eliminar la configuración del servidor de caché?","confirmRemoveDescription":"Se eliminarán los datos de conexión y la clave de API. La página de Caché de Acciones se ocultará hasta que se vuelva a configurar.","test":"Probar","save":"Guardar"},"cacheServer":{"title":"Caché de Acciones","description":"Explora y gestiona las entradas del servidor de caché de GitHub Actions.","matchLookup":"Búsqueda de coincidencias","refresh":"Actualizar","close":"Cerrar","filtersTitle":"Filtros","filtersDescription":"Filtra las entradas de caché por clave, versión, ámbito o repositorio.","key":"Clave","keyPlaceholder":"Clave de caché","version":"Versión","versionPlaceholder":"Versión de caché","scope":"Ámbito","scopePlaceholder":"Referencia o ámbito","repoId":"ID de repo","repoIdPlaceholder":"ID del repositorio","itemsPerPage":"Por página","deleteMatching":"Eliminar coincidencias","confirmDeleteMatching":"¿Eliminar todas las entradas coincidentes?","confirmDeleteMatchingDescription":"Se eliminarán todas las entradas de caché que coincidan con los filtros aplicados. Esta acción no se puede deshacer.","reset":"Restablecer","applyFilters":"Aplicar","entriesTitle":"Entradas de caché","entriesDescription":"Entradas de caché almacenadas en el servidor.","loading":"Cargando entradas de caché…","noEntries":"Ninguna entrada de caché coincide con los filtros actuales.","updatedAt":"Actualizado","actions":"Acciones","viewDetails":"Ver detalles","delete":"Eliminar","confirmDeleteEntry":"¿Eliminar esta entrada de caché?","edit":"Editar","doneEditing":"Listo","selected":"{count} seleccionados","selectAll":"Seleccionar todas las entradas de caché","selectEntry":"Seleccionar {name}","deleteSelected":"Eliminar seleccionados","confirmDeleteSelected":"¿Eliminar {count} entradas de caché?","showing":"Mostrando {start}–{end} de {total}","previous":"Anterior","next":"Siguiente","notConfiguredTitle":"Servidor de caché sin configurar","notConfiguredDescription":"Configura el servidor de caché de GitHub Actions en la página de Configuración para gestionar sus entradas.","goToSettings":"Ir a Configuración","detailTitle":"Entrada de caché","detailDescription":"La entrada de caché completa y la ubicación de almacenamiento que la respalda.","entryNotFound":"Esta entrada de caché ya no existe.","entrySection":"Entrada","id":"Identificador","locationId":"ID de ubicación","locationSection":"Ubicación de almacenamiento","deleteLocation":"Eliminar ubicación","confirmDeleteLocation":"¿Eliminar esta ubicación de almacenamiento?","confirmDeleteLocationDescription":"Se eliminarán la carpeta de almacenamiento y sus datos. Esta acción no se puede deshacer.","folderName":"Nombre de carpeta","partCount":"Recuento de partes","sizeBytes":"Tamaño","mergeStartedAt":"Combinación iniciada","mergedAt":"Combinado","partsDeletedAt":"Partes eliminadas","lastDownloadedAt":"Última descarga","noLocation":"No hay ninguna ubicación de almacenamiento vinculada a esta entrada.","matchTitle":"Coincidir entrada de caché","matchDescription":"Encuentra la entrada que el servidor de caché restauraría para un conjunto de claves.","primaryKey":"Clave principal","restoreKeys":"Claves de restauración","commaSeparated":"Separado por comas","scopes":"Ámbitos","matchFound":"Coincidencia encontrada","matchTypes":{"EXACT_PRIMARY":"Principal exacta","PREFIXED_PRIMARY":"Principal con prefijo","EXACT_RESTORE":"Restauración exacta","PREFIXED_RESTORE":"Restauración con prefijo"},"noMatch":"Ninguna entrada de caché coincidió con las claves proporcionadas.","runMatch":"Ejecutar coincidencia"},"jobs":{"open":"Abrir trabajo","cancel":"Cancelar","loading":"Cargando trabajo…","notFound":"No se encontró el trabajo.","waiting":"Esperando la salida…"},"jiraTickets":{"title":"Incidencias de Jira","description":"Consulta por estado los proyectos, tableros y consultas JQL guardados.","refresh":"Actualizar","manage":"Administrar","showBoardLayout":"Vista de tablero","showTableLayout":"Vista de tabla","collapseStatus":"Contraer {status}","expandStatus":"Expandir {status}","issueType":"Tipo de incidencia","priority":"Prioridad","loading":"Cargando proyectos de Jira…","loadingTickets":"Cargando incidencias…","loadingTicket":"Cargando detalles de la incidencia…","emptyProjects":"Aún no hay proyectos de Jira","emptyProjectsDescription":"Configura Jira y después añade un proyecto con su primera fuente.","emptySources":"Este proyecto no tiene fuentes","emptySourcesDescription":"Añade una consulta JQL con nombre o una URL de tablero.","emptyTickets":"Ninguna incidencia coincide con esta fuente.","addProject":"Añadir proyecto","addSource":"Añadir fuente","projectTabs":"Proyectos de Jira","sourceTabs":"Fuentes de incidencias","staleWarning":"No se pudo contactar con Jira; se muestran datos caducados de la caché.","truncatedWarning":"Esta fuente supera las 1000 incidencias. Refínala para ver el resto.","issue":"Incidencia","unassigned":"Sin asignar","manageTitle":"Administrar proyectos y fuentes de Jira","manageDescription":"Los proyectos vienen de Jira y cada fuente se valida antes de guardarse.","projects":"Proyectos","availableProjects":"Proyectos disponibles en Jira","selectProject":"Selecciona un proyecto","sourceCount":"{count} fuentes","removeProject":"Quitar proyecto","confirmRemoveProject":"¿Quitar este proyecto y todas sus fuentes guardadas?","sourcesFor":"Fuentes de {project}","displaySettings":"Configuración de visualización","displaySettingsDescription":"Esta configuración solo se aplica a este proyecto.","ticketsToShow":"Incidencias que mostrar","allTickets":"Todas las incidencias","unassignedOrSelfAssigned":"Sin asignar o asignadas a mí","selfAssignedInProgress":"Mis incidencias en curso","hideCompletedTickets":"Ocultar incidencias completadas","hideCompletedTicketsDescription":"Elige qué estados del proyecto cuentan como completados.","completedStatuses":"Estados completados","doneStatus":"Estado final de Auto Merge","noDoneStatus":"Sin configurar","doneStatusDescription":"Auto Merge mueve los tickets vinculados a este estado después de que GitHub fusione la solicitud.","loadingStatuses":"Cargando estados…","selectCompletedStatuses":"Seleccionar estados completados","saveDisplaySettings":"Guardar configuración de visualización","branchNaming":"Nombres de ramas","branchNamingDescription":"Esta función se usa al crear una rama de worktree desde un ticket de este proyecto.","branchNamingFunction":"Función JavaScript para nombrar ramas","branchNamingFunctionHelp":"Recibe ticketKey, type, title y alreadyTaken. Devuelve un nombre de rama Git válido; alreadyTaken se omite en la primera llamada.","saveBranchNaming":"Guardar nombres de ramas","sourceName":"Nombre de la fuente","sourceType":"Tipo de fuente","boardUrl":"URL del tablero","editSource":"Editar fuente","deleteSource":"Eliminar fuente","confirmDeleteSource":"¿Eliminar esta fuente y sus entradas de caché relacionadas?","saveSource":"Guardar fuente","cancel":"Cancelar","done":"Listo","ticket":"Incidencia","staleTicket":"Algunos datos están caducados porque Jira no respondió.","openInJira":"Abrir en Jira","worktreeAction":"Crear worktree","ticketWorktreeTitle":"Crear desde {issueKey}","ticketWorktreeDescription":"Crea un worktree nuevo en un agente o crea la rama del ticket y cambia un worktree existente a ella.","newWorktree":"Worktree nuevo","existingWorktree":"Worktree existente","agentAndCodebase":"Agente y base de código","selectWorktreeDestination":"Seleccionar un destino","searchWorktreeDestinations":"Buscar worktrees, agentes y bases de código","noWorktreeDestinations":"No hay destinos compatibles y conectados disponibles.","chooseWorktreeDestination":"Elige dónde se debe crear la rama del ticket.","loadingWorktreeDestinations":"Cargando destinos de worktree…","ticketWorktreeCreated":"Se creó el worktree del ticket.","ticketBranchChanged":"Se creó la rama del ticket y el worktree cambió a ella.","createTicketWorktree":"Crear worktree del ticket","createAndSwitchBranch":"Crear y cambiar de rama","ticketStashRetryHelp":"Git no pudo cambiar con los cambios actuales. Guarda en stash los cambios rastreados y no rastreados y vuelve a intentarlo.","stashAndRetry":"Guardar en stash y reintentar","detachedBranch":"HEAD separado","descriptionTitle":"Descripción","classification":"Clasificación","labels":"Etiquetas","components":"Componentes","fixVersions":"Versiones de corrección","sprints":"Sprints","relatedIssues":"Incidencias relacionadas","attachments":"Archivos adjuntos","comments":"Comentarios ({count})","noComments":"Esta incidencia no tiene comentarios.","unknownUser":"Usuario desconocido","assignee":"Responsable","reporter":"Informador","created":"Creada","updated":"Actualizada","due":"Vencimiento","resolved":"Resuelta","affectedVersions":"Versiones afectadas","openFullDetails":"Abrir detalles completos","renderFormat":"Formato de visualización","markdown":"Formato Markdown","jiraWiki":"Wiki de Jira","viewRendered":"Ver formato","viewRaw":"Ver texto original","rendered":"Formato","raw":"Original","copied":"Copiado","copy":"Copiar","commentActions":"Acciones del comentario","copyRaw":"Copiar contenido original","copyFailed":"No se pudo copiar el contenido.","authoringFormat":"Formato de escritura","preview":"Vista previa","hidePreview":"Ocultar vista previa","commentBody":"Comentario","commentPlaceholder":"Escribe un comentario…","saving":"Guardando…","addComment":"Añadir comentario","changeAssignee":"Cambiar responsable","searchAssignees":"Buscar usuarios asignables","loadingAssignees":"Cargando usuarios…","noAssignees":"No se encontraron usuarios asignables.","status":"Estado","changeStatus":"Cambiar estado","requiresJira":"Requiere Jira"},"jiraTicketDetail":{"loading":"Cargando incidencia de Jira…","notFound":"Incidencia no encontrada","notFoundDescription":"No se pudo cargar la incidencia de Jira.","back":"Volver a incidencias de Jira","summary":"Resumen","save":"Guardar","editSummary":"Editar resumen","refresh":"Actualizar","edit":"Editar","saveDescription":"Guardar descripción","descriptionHistory":"Historial de la descripción","descriptionHistoryDescription":"Selecciona dos versiones de la actividad de Jira para comparar su texto.","currentVersion":"Versión actual","beforeChange":"Antes de {date}","afterChange":"Después de {date}","loadingHistory":"Cargando historial…","noDescriptionHistory":"No hay versiones anteriores de la descripción.","compareFrom":"Comparar desde","compareTo":"Comparar hasta","compareVersions":"Comparar versiones","descriptionComparison":"Comparación de la descripción","selectVersions":"Selecciona dos versiones diferentes para comparar.","activity":"Actividad","comments":"Comentarios","history":"Historial","worklogs":"Registros de trabajo","unknownUser":"Usuario desconocido","noHistory":"No hay historial disponible.","loadMore":"Cargar más","started":"Iniciado {date}","noWorklogs":"No hay registros de trabajo.","allFields":"Todos los campos de Jira","expandFields":"Mostrar campos","collapseFields":"Ocultar campos","searchFields":"Buscar campos","field":"Campo","value":"Valor","custom":"Personalizado","details":"Detalles","editDetails":"Editar detalles de la incidencia","editDetailsDescription":"Solo se muestran los campos que Jira permite editar.","none":"Ninguno","commaSeparated":"Valores separados por comas","pickDate":"Elegir una fecha","clearDate":"Borrar fecha","saving":"Guardando…"},"githubCache":{"title":"Caché de GitHub","description":"Inspecciona lecturas GraphQL en caché, costes exactos, uso de API, latencia y límites.","ttl":"TTL de caché en minutos","saveTtl":"Guardar TTL","overridesTitle":"TTL de GraphQL personalizadas","overridesDescription":"Sustituye la TTL global de caché para nombres exactos de operaciones GraphQL.","overrideOperation":"Operación GraphQL","overrideTtl":"TTL en segundos","overrideType":"Tipo","noOperationMatches":"No coincide ninguna operación almacenada. Introduce un nombre exacto para añadirla.","selectOperation":"Selecciona o introduce una operación","searchOperations":"Busca o introduce una operación","addOverride":"Añadir excepción","overridesHelp":"Las excepciones se aplican a todos los modos de autenticación, orígenes y variables. La TTL controla la vigencia de la caché, no la frecuencia de consulta de una página.","builtInOverride":"Integrada","customOverride":"Personalizada","overrideTtlFor":"TTL en segundos para {operation}","saveOverride":"Guardar TTL para {operation}","deleteOverride":"Eliminar excepción","confirmDeleteOverride":"¿Eliminar la excepción de TTL para {operation}? La operación usará la TTL global.","deleteOverrideFor":"Eliminar excepción de TTL para {operation}","clearCache":"Vaciar caché","confirmClear":"¿Vaciar todas las respuestas GraphQL de GitHub? El historial y los límites se conservarán.","loading":"Cargando actividad de la API de GitHub…","average":"Promedio {ms} ms","live":"En vivo","cache":"Caché","errors":"Errores","points":"{used} puntos usados · {avoided} evitados","graphqlRateTitle":"Límites de GraphQL","graphqlRateDescription":"Últimos encabezados del límite principal por modo de autenticación.","restRateTitle":"Límites de REST","restRateDescription":"Últimos recursos REST; las respuestas REST no se almacenan en caché.","noRateData":"Aún no se han observado encabezados de límite.","limit":"Límite","remaining":"Restante","used":"Usado","estimated":"Estimado","reset":"Reinicio","resource":"Recurso","observed":"Observado","operationsTitle":"Operaciones de la API de GitHub","operationsDescription":"Llamadas GraphQL y REST, incluido el uso de puntos, en cada intervalo móvil.","sourcesTitle":"Llamadas por origen","sourcesDescription":"Llamadas a la API de GitHub y uso de puntos por función solicitante en cada intervalo móvil.","noMetrics":"No hubo actividad de la API de GitHub en las últimas 24 horas.","operation":"Operación","recentTitle":"Llamadas recientes a la API de GitHub","recentDescription":"Todas las llamadas GraphQL y REST mediante PAT o GitHub App, incluidas las almacenadas, en vivo y fallidas.","clearCalls":"Borrar llamadas recientes","confirmClearCalls":"¿Borrar todas las llamadas recientes a la API de GitHub? Se conservarán las respuestas en caché y las instantáneas de límites.","noCalls":"No se han registrado llamadas a la API de GitHub.","filterApiType":"Filtrar llamadas por tipo de API","allApiTypes":"GraphQL y REST","filterRequestSource":"Filtrar llamadas por origen","allRequestSources":"Todos los orígenes","filterCallSource":"Filtrar llamadas por directo o caché","liveAndCache":"Directo y caché","time":"Hora","source":"Origen","callInfo":"Información de la llamada","status":"Estado","statuses":{"LIVE":"En vivo","CACHE":"Caché","ERROR":"Error"},"requestSources":{"GITHUB_API":"Histórico / desconocido","GITHUB_SETTINGS":"Configuración de GitHub","COMMENTS_PAGE":"Página de comentarios","CODEBASE_REPOSITORY":"Repositorio de código base","PULL_REQUESTS_PAGE":"Página de pull requests","PULL_REQUEST_DETAILS":"Detalles del pull request","ACTIONS_PAGE":"Página de Actions","WORKTREES":"Árboles de trabajo","WORKTREE_PIPELINES":"Pipelines de árboles de trabajo","WORKTREE_AUTOMATION":"Automatización de árboles de trabajo","AUTO_RETRY":"Reintento automático de Actions","WORKFLOW_AUTOMATION":"Automatización de flujos","ACTIONS_NOTIFICATIONS":"Notificaciones de Actions","CACHE_MANAGEMENT":"Página de caché de GitHub"},"authentication":"Autenticación","cost":"Coste en puntos","pointRate":"Puntos y límite","avoided":"{count} evitados","rate":"Recurso del límite","duration":"Duración","error":"Error","entriesTitle":"Entradas GraphQL en caché","entriesDescription":"Respuestas persistentes separadas por autenticación y variables.","noEntries":"No hay respuestas GraphQL de GitHub en caché.","freshness":"Frescura","fresh":"Reciente","stale":"Obsoleta","lastFetched":"Última consulta","lastCost":"Último coste","actions":"Acciones","open":"Abrir","refresh":"Forzar actualización","delete":"Eliminar","confirmDeleteEntry":"¿Eliminar la respuesta en caché de {operation}?","showing":"Mostrando {start}–{end} de {total}","previous":"Anterior","next":"Siguiente"},"githubCacheDetail":{"title":"Entrada GraphQL en caché","description":"Respuesta GraphQL de GitHub en caché","refresh":"Forzar actualización","delete":"Eliminar de la caché","confirmDelete":"¿Eliminar esta respuesta GraphQL en caché?","loading":"Cargando respuesta en caché…","notFound":"Esta respuesta no está en la caché de GitHub.","authentication":"Autenticación","freshness":"Frescura","fresh":"Reciente","stale":"Obsoleta","lastCost":"Último coste exacto en puntos","fetchedAt":"Consultada el","query":"Consulta GraphQL","variables":"Variables","response":"Datos de respuesta"},"jiraCache":{"title":"Caché de Jira","description":"Inspecciona datos almacenados, uso de API, latencia y errores.","ttl":"TTL de caché en minutos","saveTtl":"Guardar TTL","clearCache":"Vaciar caché","confirmClear":"¿Vaciar todas las respuestas e incidencias de Jira? Se conservará el historial.","loading":"Cargando actividad de la caché…","average":"Media de {ms} ms","live":"Directas","cache":"Caché","errors":"Errores","operationsTitle":"Operaciones de API","operationsDescription":"Recuentos por operación y origen en cada periodo móvil.","noMetrics":"No hubo actividad de la API de Jira en las últimas 24 horas.","operation":"Operación","recentTitle":"Llamadas recientes a la API","recentDescription":"Cada operación almacenada del SDK, empezando por la más reciente.","clearCalls":"Borrar llamadas recientes","confirmClearCalls":"¿Borrar todas las llamadas recientes a la API de Jira? Se conservarán las respuestas y los tickets en caché.","noCalls":"No se ha registrado ninguna llamada a Jira.","time":"Hora","fetched":"Datos obtenidos","source":"Origen","sources":{"LIVE":"Directa","CACHE":"Caché","ERROR":"Error"},"duration":"Duración","error":"Error","stale":"Caducada","ticketsTitle":"Incidencias en caché","ticketsDescription":"Cobertura de resumen, detalle y comentarios para incidencias de Jira.","noTickets":"No hay incidencias de Jira almacenadas.","ticket":"Incidencia","status":"Estado","coverage":"Cobertura","freshness":"Vigencia","fresh":"Vigente","lastFetched":"Última obtención","actions":"Acciones","open":"Abrir","refresh":"Actualizar","delete":"Eliminar","confirmDeleteTicket":"¿Eliminar {issueKey} y todas las entradas que la referencian?","showing":"Mostrando {start}–{end} de {total}","previous":"Anterior","next":"Siguiente"},"jiraCacheDetail":{"description":"Datos almacenados de la incidencia","refresh":"Actualizar incidencia","delete":"Eliminar de la caché","confirmDelete":"¿Eliminar {issueKey} y sus entradas relacionadas?","loading":"Cargando incidencia almacenada…","notFound":"Esta incidencia no está en la caché de Jira.","coverage":"Cobertura","freshness":"Vigencia","fresh":"Vigente","stale":"Caducada","detailFetched":"Detalle obtenido","commentsFetched":"Comentarios obtenidos","summaryData":"Respuesta de resumen","detailData":"Respuesta de detalle completo","commentsData":"Respuesta completa de comentarios","notFetched":"Este nivel de datos todavía no se ha obtenido.","relatedEntries":"Entradas de caché relacionadas","noEntries":"Ninguna entrada referencia esta incidencia.","operation":"Operación","fetchedAt":"Obtenido el","entryId":"ID de entrada de caché"},"jiraSettings":{"title":"Configuración","description":"Configura la cuenta de Jira Cloud que usa esta aplicación.","loading":"Cargando configuración de Jira…","credentials":"Credenciales de Jira","configured":"Token configurado","notConfigured":"Token sin configurar","siteUrl":"URL del sitio de Jira Cloud","siteUrlHelp":"Usa la URL base *.atlassian.net de tu sitio Jira.","email":"Correo de la cuenta Jira","accountHelp":"Abre Jira en el navegador y copia únicamente el origen https://*.atlassian.net. Usa el correo de esa misma cuenta de Atlassian.","apiToken":"Token de API de Jira","tokenPlaceholder":"Pega un token de API de Atlassian","tokenPlaceholderConfigured":"Déjalo vacío para conservar el token","tokenHelp":"El token se guarda en SQLite local y nunca vuelve al navegador.","tokenKeepHelp":"Déjalo vacío salvo que quieras sustituir el token guardado.","tokenAcquireHelp":"Crea un token de API estándar de Atlassian que pueda autenticarse directamente en este sitio Jira.","createToken":"Crear token de API de Jira","save":"Guardar configuración","test":"Probar conexión","remove":"Quitar credenciales","saved":"Configuración de Jira guardada.","connectionSucceeded":"La conexión con Jira se realizó correctamente.","removed":"Credenciales eliminadas y datos de Jira en caché borrados.","confirmSiteChange":"Cambiar de sitio elimina proyectos, fuentes y caché. ¿Continuar?","confirmRemove":"¿Quitar el correo y token guardados y borrar la caché de Jira?","webhookTitle":"Webhook de Jira","webhookDescription":"Opcional. Envía los cambios de Jira a los disparadores de flujos y a las actualizaciones en vivo de incidencias, sin esperar a que algo consulte una incidencia.","webhookConfigured":"Webhook configurado","webhookNotConfigured":"Webhook sin configurar","webhookRegistered":"Registrado en Jira","webhookRegisteredAs":"Registrado en Jira como webhook {id}. Edita la URL o el JQL de arriba y vuelve a registrarlo para actualizarlo.","webhookUrl":"URL del webhook","webhookUrlHelp":"Jira debe poder acceder a esta URL por HTTPS público. Edítala si este servidor es público en otra dirección. Las entregas se rechazan si no van firmadas con el secreto de abajo.","webhookJql":"Filtro JQL","webhookJqlHelp":"Opcional. Limita las entregas a los proyectos que automatizas. Cada evento de incidencia cuesta una llamada a la API de Jira, así que ajusta bien el filtro.","webhookSecret":"Secreto de firma","webhookSecretHelp":"Cópialo en el campo Secret del webhook en Jira. Se muestra una sola vez y no se vuelve a devolver: genera otro si lo pierdes.","webhookSecretPending":"Genera un secreto para terminar de configurar el webhook en Jira.","webhookSecretRegistered":"Guardado aquí y en Jira. No hay nada que copiar: al rotarlo se reemplaza en ambos lados.","copy":"Copiar","copied":"Copiado","enableWebhook":"Generar secreto","registerWebhook":"Registrar en Jira","updateRegistration":"Actualizar registro","rotateWebhook":"Renovar secreto","disableWebhook":"Desactivar webhook","webhookEnabled":"Secreto del webhook de Jira generado.","webhookRotated":"Secreto del webhook de Jira renovado. Actualízalo en Jira antes de la próxima entrega.","webhookDisabled":"Webhook de Jira desactivado.","webhookRegisteredNotice":"Webhook de Jira registrado. Las entregas empiezan de inmediato.","webhookReregistered":"Registro del webhook de Jira actualizado.","webhookRotatedInJira":"Secreto del webhook de Jira rotado aquí y en Jira.","confirmRotateRegisteredDescription":"¿Generar un secreto de firma nuevo y actualizarlo en Jira? Las entregas firmadas con el secreto anterior se rechazan.","confirmRotate":"¿Renovar el secreto de firma del webhook de Jira?","confirmRotateDescription":"Las entregas firmadas con el secreto anterior se rechazan hasta que pegues el nuevo en Jira.","confirmDisable":"¿Desactivar el webhook de Jira?","confirmDisableDescription":"Se elimina el secreto de firma y dejan de aceptarse las entregas entrantes. Elimina también el webhook en Jira.","lastWebhook":"Última entrega: {date} ({outcome})","viewDeliveries":"Ver entregas","setupTitle":"Termina la configuración en Jira","manualIntro":"¿No eres administrador de Jira? Genera un secreto y añade el webhook a mano:","setupStep1":"En Jira, abre Configuración → Sistema → WebHooks y elige Create a WebHook.","setupStep2":"Pega la URL de arriba en URL y el secreto en Secret.","setupStep3":"Selecciona estos eventos: {events}","setupStep4":"Define un filtro JQL como {jql} para que solo envíen entregas los proyectos que automatizas.","webhookDocs":"Documentación de webhooks de Jira"},"settings":{"title":"Configuración","description":"Configura las herramientas de desarrollo, los servicios de Apple y las integraciones externas.","developmentGroup":"Desarrollo","developmentGroupDescription":"Elige las herramientas utilizadas con los checkouts locales y los worktrees.","appleGroup":"Servicios de Apple","appleGroupDescription":"Administra la inscripción de iOS y las credenciales de App Store Connect y APNs.","integrationsGroup":"Integraciones","integrationsGroupDescription":"Conecta las cuentas de Jira y GitHub utilizadas en toda la aplicación."},"editorSettings":{"title":"Editor de worktrees","description":"Elige la edición de VS Code que abre los worktrees u oculta esas acciones.","loading":"Cargando ajustes del editor…","label":"Editor","code":"Visual Studio Code (versión estable)","insiders":"Visual Studio Code (canal Insiders)","none":"Ninguno (ocultar botones)","setupHelp":"Instala la edición seleccionada en el Mac que aloja el worktree:","downloadCode":"Descargar Visual Studio Code","downloadInsiders":"Descargar VS Code Insiders","save":"Guardar editor","saved":"Se guardó el ajuste del editor."},"githubSettings":{"title":"Credenciales de GitHub","description":"Conecta la cuenta utilizada para cargar solicitudes de extracción y GitHub Actions.","loading":"Cargando la configuración de GitHub…","configured":"Token configurado","notConfigured":"Token no configurado","apiToken":"Token de acceso personal de GitHub","tokenPlaceholder":"Pega un token de acceso personal de GitHub","tokenPlaceholderConfigured":"Déjalo en blanco para conservar el token guardado","tokenHelp":"Concede acceso de lectura y escritura a las solicitudes de extracción y acceso de lectura a Actions en los repositorios que quieras usar. El token permite ver solicitudes, actuar en hilos de revisión y consultar ejecuciones.","tokenKeepHelp":"Déjalo en blanco salvo que quieras reemplazar el token guardado.","tokenAcquireHelp":"Crea un token específico limitado a los repositorios usados aquí. Concede Actions: lectura, Checks: lectura, Pull requests: lectura y escritura, y Contents: lectura y escritura para fusionar. La lectura de direcciones de correo es opcional para elegir el correo de los commits.","createToken":"Crear token específico","pollInterval":"Intervalo de notificaciones y reintento automático de Actions (segundos)","pollIntervalHelp":"Controla el sondeo de reintentos automáticos y, cuando no hay un webhook firmado de GitHub App disponible, el sondeo de notificaciones. Elige un entero de 30 a 3600.","save":"Guardar configuración","test":"Probar conexión","remove":"Eliminar credenciales","saved":"Configuración de GitHub guardada.","connectionSucceeded":"La conexión con GitHub se realizó correctamente.","removed":"Se eliminaron las credenciales de GitHub. Se conservaron los repositorios gestionados.","confirmRemove":"¿Eliminar las credenciales de GitHub?","confirmRemoveDescription":"Se eliminará el token guardado. Se conservarán los repositorios gestionados y las expresiones de Jira."},"githubAppSettings":{"title":"Reintentos de canalización con GitHub App","description":"Usa tu propia GitHub App para volver a ejecutar flujos de GitHub Actions.","loading":"Cargando la configuración de la GitHub App…","verified":"Verificada","notConfigured":"Sin configurar","setupTitle":"Configura tu propia GitHub App","stepRegister":"Registra una GitHub App con un nombre único, como «Reintentos del entorno de IA», desde","registerLink":"Crear una GitHub App","stepHomepage":"Usa","stepHomepageSuffix":" como URL de inicio. Deja vacía la URL de retorno.","stepPermissions":"Configura Repository permissions → Actions como Read and write. Para actualizaciones en vivo mejoradas, concede también lectura de Checks y Commit statuses.","stepWebhook":"Activa los webhooks, selecciona Workflow run y usa","stepWebhookSuffix":" como URL del webhook. Al guardar se configuran el secreto y la URL mediante GitHub.","stepInstall":"Crea la app, genera una clave privada e instálala solo en los repositorios que deba controlar este despliegue.","stepInstallationId":"Después de instalarla, abre la página Configure de la app. El ID de instalación es el último número de la URL, por ejemplo","stepInstallationIdSuffix":". Sustituye Organization-name por tu organización y copia el valor ID final.","stepCredentials":"Copia el ID de la app y el ID de instalación, y pega ambos junto con el PEM descargado.","appId":"ID de la GitHub App","appIdPlaceholder":"Introduce el ID numérico de la app","installationId":"ID de la instalación","installationIdPlaceholder":"Introduce el ID numérico de instalación","webhookUrl":"URL del webhook","webhookUrlHelp":"Reemplaza el endpoint HTTPS público cuando este despliegue esté detrás de un proxy o túnel.","enhancedWebhooks":"Webhooks de canalización mejorados","enhancedWebhooksHelp":"Recibe actualizaciones de comprobaciones, trabajos y estados de commit cuando GitHub las entrega. Activa los permisos y eventos indicados, aprueba los cambios de instalación y guarda para verificar.","openAppSettings":"Abrir la configuración de la GitHub App","privateKey":"Clave privada en PEM","privateKeyDropZone":"Zona para soltar la clave privada PEM","pemDropHint":"Suelta aquí un archivo .pem o pega la clave debajo.","pemFileLoaded":"Se cargó {filename}. Guarda y verifica para usar esta clave.","pemFileInvalid":"Suelta un archivo .pem válido que contenga una clave privada RSA.","pemFileReadError":"No se pudo leer el archivo PEM soltado.","privateKeyPlaceholder":"Pega el PEM descargado de la GitHub App","privateKeyPlaceholderConfigured":"Déjalo vacío para conservar la clave configurada","privateKeyHelp":"La clave solo se envía al servidor Next.js y nunca se devuelve al navegador.","privateKeyKeepHelp":"Hay una clave privada configurada. Pega otro PEM solo cuando quieras rotarla.","connectedAs":"Conectada a {app} en {account}","connectionDetails":"Actions: {permission}; repositorios: {selection}","pipelinePermissions":"Checks: {checks}; estados de commit: {statuses}","lastVerified":"Última verificación: {date}","webhookConfigured":"Webhook configurado en {url}","webhookNeedsSetup":"Las credenciales de la GitHub App están verificadas, pero GitHub indica que los webhooks no están activados. Activa los webhooks, selecciona el evento Workflow run y vuelve a guardar.","webhookUnavailable":"El webhook requiere un origen HTTPS público; el sondeo con token personal sigue disponible.","lastWebhook":"Último webhook: {date} ({outcome})","viewDeliveries":"Ver entregas","save":"Guardar y verificar","rotate":"Rotar clave y verificar","test":"Probar conexión","remove":"Eliminar GitHub App","saved":"La GitHub App se guardó y verificó.","rotated":"La clave privada de la GitHub App se rotó y verificó.","connectionSucceeded":"Se verificó la conexión de la GitHub App.","removed":"Se eliminaron las credenciales de la GitHub App. Se conservaron el token personal y los repositorios gestionados.","confirmRemove":"¿Eliminar las credenciales de la GitHub App?","confirmRemoveDescription":"Se eliminarán el ID de app, el ID de instalación y la clave privada. Se conservarán las credenciales de solicitudes y los repositorios gestionados."},"polling":{"title":"Sondeo","description":"Consulta las operaciones en segundo plano del servidor y los agentes, su frecuencia, actualidad y errores.","refresh":"Actualizar","loading":"Cargando operaciones de sondeo…","serverTitle":"Operaciones del servidor","agentTitle":"Operaciones de agentes","empty":"No hay operaciones registradas.","operation":"Operación","agent":"Agente","status":"Estado","cadence":"Frecuencia","lastStarted":"Último inicio","lastCompleted":"Última finalización","nextPoll":"Próximo sondeo","details":"Detalles","serverRuntime":"Servidor","agentRuntime":"Agente","everySeconds":"Cada {seconds}s","duration":"{milliseconds} ms","kinds":{"GITHUB_ACTIONS_NOTIFICATIONS":"Notificaciones de GitHub actions","GITHUB_AUTO_RETRY":"Reintento automático de GitHub","APNS_RECOVERY":"Recuperación de lotes APNs","AGENT_HEARTBEAT":"Latido del agente","AGENT_JOB_RECONCILIATION":"Conciliación de trabajos duraderos","AGENT_DISK_SPACE":"Espacio en disco del agente","SIDEBAR_USAGE":"Uso de la barra lateral","CODEBASE_SCAN":"Exploración del código","GIT_FETCH":"Git fetch","WORKTREE_AUTOMATION":"Automatización de worktrees"},"statuses":{"DISABLED":"Desactivado","HEALTHY":"Correcto","RUNNING":"En ejecución","STALE":"Obsoleto","ERROR":"Error"}},"githubWebhooks":{"title":"Webhooks de GitHub","description":"Revisa las entregas de webhooks recibidas de GitHub y cómo se procesó cada evento.","deliveryCount":"{count, plural, one {# entrega} other {# entregas}}","refresh":"Actualizar","clearHistory":"Borrar historial","confirmClearHistory":"¿Borrar todo el historial de entregas de webhooks? Las nuevas entregas seguirán apareciendo aquí.","received":"Recibido","event":"Evento","repository":"Repositorio","outcome":"Resultado","details":"Detalles","workflowRun":"Ejecución de flujo {id}","processed":"Procesado","showing":"Mostrando {start}–{end} de {total}","previous":"Anterior","next":"Siguiente","empty":"Aún no hay entregas de webhooks.","emptyDescription":"Los eventos aparecerán aquí cuando GitHub los envíe al webhook configurado.","outcomes":{"received":"Recibido","processed":"Procesado","ignored":"Ignorado","error":"Error"}},"jiraWebhooks":{"title":"Webhooks de Jira","description":"Revisa las entregas de webhooks recibidas de Jira y cómo se procesó cada evento.","deliveryCount":"{count, plural, one {# entrega} other {# entregas}}","refresh":"Actualizar","clearHistory":"Borrar historial","confirmClearHistory":"¿Borrar todo el historial de entregas de webhooks? Las nuevas entregas seguirán apareciendo aquí.","received":"Recibido","event":"Evento","issue":"Incidencia","outcome":"Resultado","details":"Detalles","change":"cambio","changes":"cambios","retry":"Reintento {count}","processed":"Procesado","showing":"Mostrando {start}–{end} de {total}","previous":"Anterior","next":"Siguiente","empty":"Aún no hay entregas de webhooks.","emptyDescription":"Los eventos aparecerán aquí cuando Jira los envíe al webhook configurado.","outcomes":{"received":"Recibido","processed":"Procesado","ignored":"Ignorado","error":"Error"}},"pullRequests":{"title":"Solicitudes de extracción","description":"Revisa tus solicitudes de GitHub y los repositorios supervisados en un solo lugar.","refresh":"Actualizar","manage":"Gestionar","loading":"Cargando la configuración de GitHub…","credentialsRequired":"Conecta GitHub para ver solicitudes de extracción","credentialsRequiredDescription":"Añade un token de acceso personal en Configuración antes de cargar datos de GitHub.","openSettings":"Abrir Configuración","tabsLabel":"Vistas de solicitudes de extracción","mine":"Mías","reviewRequests":"Solicitudes de revisión","repositories":"Repositorios","stateFilter":"Estado de la solicitud de extracción","repositoryFilter":"Repositorio","selectRepository":"Seleccionar un repositorio","searchRepositories":"Buscar repositorios","searchAvailableRepositories":"Buscar repositorios disponibles","noRepositoryMatches":"Ningún repositorio coincide con la búsqueda.","truncated":"La búsqueda de GitHub devuelve como máximo 1000 resultados. Ajusta tu carga de trabajo en GitHub para ver los resultados que superen este límite.","loadingPullRequests":"Cargando solicitudes de extracción…","loadingMore":"Cargando más…","retryLoad":"Intentar de nuevo","empty":"No hay solicitudes de extracción","emptyDescription":"Actualmente no hay solicitudes de extracción que coincidan con esta vista.","repository":"Repositorio","number":"Número","pullRequest":"Solicitud de extracción","pullRequestAndRepository":"Solicitud de extracción / Repositorio","labels":"Etiquetas","ticket":"Incidencia","pipeline":"Canalización","approval":"Aprobación","openComments":"Comentarios abiertos","viewOpenComments":"Ver {count} comentarios abiertos","age":"Antigüedad","actions":"Acciones","details":"Detalles","openInGitHub":"Abrir en GitHub","merge":"Fusionar","mergePullRequest":"Fusionar pull request","mergePullRequestDescription":"Fusiona {repository} #{number} después de revisar los detalles del commit.","loadingMergeOptions":"Comprobando requisitos de fusión…","mergeType":"Tipo de fusión","selectMergeType":"Seleccionar un tipo de fusión","mergeTypes":{"SQUASH":"Combinar commits y fusionar","MERGE":"Crear un commit de fusión","REBASE":"Rebase y fusión"},"commitMessage":"Mensaje del commit","commitDescription":"Descripción del commit","commitEmail":"Correo del commit","githubDefaultEmail":"Usar el valor predeterminado de GitHub","cancelMerge":"Cancelar","merging":"Fusionando…","pipelineStates":{"ACTION_REQUIRED":"Acción necesaria","CANCELLED":"Cancelado","ERROR":"Error","EXPECTED":"Esperado","FAILURE":"Fallido","IN_PROGRESS":"En curso","NEUTRAL":"Neutral","PENDING":"Pendiente","QUEUED":"En cola","SKIPPED":"Omitido","STALE":"Obsoleto","STARTUP_FAILURE":"Error de inicio","SUCCESS":"Correcto","TIMED_OUT":"Tiempo agotado","NONE":"Sin comprobaciones"},"pipelineMenuTitle":"Estado de las canalizaciones","noPipelines":"No se han informado comprobaciones de canalización.","retry":"Reintentar","retrying":"Reintentando…","retryUnavailable":{"GITHUB_APP_NOT_CONFIGURED":"Configura y verifica una GitHub App en Ajustes para volver a ejecutar este flujo.","NOT_COMPLETED":"Solo se pueden reintentar los flujos completados.","NOT_GITHUB_ACTIONS":"Solo se pueden reintentar ejecuciones de GitHub Actions.","WORKFLOW_RUN_UNAVAILABLE":"GitHub no proporcionó una ejecución para este conjunto de comprobaciones.","HISTORICAL_ATTEMPT":"Los intentos anteriores son de solo lectura."},"reviewStates":{"APPROVED":"Aprobada","CHANGES_REQUESTED":"Cambios solicitados","REVIEW_REQUIRED":"Revisión necesaria","NONE":"Sin decisión"},"pullRequestStates":{"ALL":"Todas","OPEN":"Abierta","CLOSED":"Cerrada","MERGED":"Fusionada"},"mergeableStates":{"CONFLICTING":"Con conflictos","MERGEABLE":"Se puede fusionar","UNKNOWN":"Calculando"},"manageTitle":"Gestionar repositorios de GitHub","manageDescription":"Elige las pestañas de repositorio y configura cómo se extraen las claves de Jira de los títulos.","manageCredentialsRequired":"Configura las credenciales de GitHub antes de añadir repositorios.","managedRepositories":"Repositorios gestionados","noManagedRepositories":"Todavía no hay repositorios gestionados.","addRepository":"Añadir repositorio","browse":"Explorar","enterManually":"Introducir manualmente","privateRepository":"Repositorio privado","managed":"Gestionado","add":"Añadir","loadingRepositories":"Cargando repositorios…","loadMore":"Cargar más","repositoryName":"Propietario/nombre del repositorio","jiraKeyRegex":"Expresión regular de clave de Jira","jiraKeyRegexHelp":"Se usa el primer grupo de captura si existe; de lo contrario, se usa la coincidencia completa. Borra el campo para desactivar el análisis.","defaultJiraKeyRegex":"Expresión predeterminada de clave de ticket","defaultJiraKeyRegexHelp":"Se usa en cada repositorio administrado sin una configuración propia. Se usa el primer grupo de captura si existe.","jiraKeyRegexOverrideHelp":"Déjalo vacío para heredar la expresión predeterminada.","saveDefaultRegex":"Guardar expresión predeterminada","invalidRegex":"Introduce una expresión regular válida para la clave de Jira.","done":"Listo","removeRepository":"Eliminar repositorio","confirmRemoveRepository":"¿Eliminar este repositorio gestionado?","confirmRemoveRepositoryDescription":"Se eliminarán su pestaña de solicitudes y su configuración de expresión regular de Jira.","saveRegex":"Guardar expresión de Jira"},"githubComments":{"title":"Comentarios","description":"Revisa y responde a los hilos de revisión de GitHub en tus solicitudes abiertas.","refresh":"Actualizar","layout":"Diseño de comentarios","cards":"Diseño de tarjetas","table":"Diseño de tabla","loadingConfiguration":"Cargando la configuración de GitHub…","credentialsRequired":"Conecta GitHub para ver comentarios","credentialsDescription":"Añade en Configuración un token personal con acceso de lectura y escritura a solicitudes.","openSettings":"Abrir Configuración","allPullRequests":"Todas las solicitudes abiertas","searchPullRequests":"Buscar solicitudes abiertas","noPullRequestMatches":"Ninguna solicitud abierta coincide con la búsqueda.","currentUser":"Usuario actual","otherUsers":"Otros usuarios","unresolved":"Sin resolver","truncated":"La búsqueda de GitHub devuelve como máximo 1000 solicitudes. Es posible que falten hilos de revisión.","loading":"Cargando comentarios de revisión…","empty":"No hay comentarios de revisión","emptyDescription":"Ningún hilo coincide con la solicitud y los filtros seleccionados.","reviewThreads":"Comentarios de revisión","reviewThreadsDescription":"{count, plural, =0 {Ningún hilo de revisión coincide con los filtros actuales.} one {# hilo de revisión coincide con los filtros actuales.} other {# hilos de revisión coinciden con los filtros actuales.}}","author":"Autor","pullRequest":"Solicitud de extracción","comment":"Comentario","date":"Fecha","replies":"Respuestas","github":"Servicio GitHub","rendered":"Vista renderizada","markdown":"Fuente Markdown","viewRaw":"Original","viewRendered":"Formato","copy":"Copiar","copied":"Copiado","copyFailed":"No se pudo copiar el Markdown.","unknownAuthor":"Autor desconocido","fileComment":"Comentario de archivo","outdated":"Desactualizado","resolved":"Resuelto","openInGitHub":"Abrir en GitHub","openReplyInGitHub":"Abrir respuesta en GitHub","reply":"Responder","replyPlaceholder":"Responder con Markdown…","replyUnavailable":"GitHub no permite que esta cuenta responda a este hilo.","reopen":"Reabrir hilo","resolve":"Resolver hilo","replying":"Respondiendo…","sendReply":"Enviar respuesta"},"pullRequestDetail":{"back":"Solicitudes de extracción","loading":"Cargando detalles de la solicitud…","notFound":"Solicitud de extracción no encontrada","notFoundDescription":"Esta solicitud no está disponible o el token de GitHub configurado no puede acceder a ella.","refresh":"Actualizar","openInGitHub":"Abrir en GitHub","viewWorktree":"Ver worktree","draft":"Borrador","description":"Descripción","noDescription":"No se proporcionó ninguna descripción.","comments":"Comentarios","noComments":"No hay comentarios de revisión","noCommentsDescription":"Esta solicitud de extracción no tiene hilos de revisión.","pipelines":"Canalizaciones","pipelineCount":"{count} canalizaciones y contextos de estado","viewAll":"Ver todo","pipelineName":"Canalización","pipelineStatus":"Estado","pipelineDetails":"Detalles","viewPipeline":"Ver","jobCount":"{count} trabajos","noJobs":"No se informaron trabajos para esta ejecución.","viewJob":"Ver {job} en GitHub","jobActions":"Acciones para {job}","retryJob":"Reintentar {job}","showJobSteps":"Mostrar los pasos de {job}","hideJobSteps":"Ocultar los pasos de {job}","steps":"Pasos","noSteps":"Aún no se han informado pasos para este trabajo.","details":"Detalles de la solicitud","branches":"Ramas","changes":"Cambios","files":"Archivos modificados","commits":"Confirmaciones","mergeable":"Capacidad de fusión","openComments":"Comentarios abiertos","created":"Creada","updated":"Actualizada","merged":"Fusionada","people":"Personas","author":"Autor","assignees":"Asignados","unassigned":"Sin asignar","unknown":"Desconocido"},"actionsPage":{"title":"Acciones de GitHub","description":"Supervisa ejecuciones de flujos de trabajo en las bases de código registradas en GitHub.","refresh":"Actualizar","loadingConfiguration":"Cargando la configuración de GitHub…","credentialsRequired":"Conecta GitHub para ver Actions","credentialsRequiredDescription":"Añade en Configuración un token de acceso personal con permiso de lectura de Actions.","openSettings":"Abrir Configuración","repositoryFilter":"Repositorio","allRepositories":"Todos los repositorios","searchRepositories":"Buscar repositorios","noRepositoryMatches":"Ningún repositorio coincide con la búsqueda.","branchFilter":"Rama","branchFilterPlaceholder":"Introduce el nombre exacto de la rama","applyBranchFilter":"Aplicar","clearBranchFilter":"Borrar el filtro de rama","pipelineFilter":"Flujo de trabajo","allPipelines":"Todos los pipelines","searchPipelines":"Buscar pipelines","noPipelineMatches":"Ningún pipeline coincide con la búsqueda.","loadingRuns":"Cargando ejecuciones…","noCodebases":"No hay bases de código de GitHub","noCodebasesDescription":"Registra una base de código con un origen github.com para ver sus ejecuciones.","empty":"No hay ejecuciones","emptyDescription":"GitHub no devolvió ejecuciones para la selección de repositorios.","expand":"Expandir","repository":"Repositorio","workflowRun":"Ejecución","trigger":"Desencadenador","status":"Estado","pullRequest":"Solicitud de extracción","ticket":"Incidencia","worktree":"Árbol de trabajo","started":"Iniciada","duration":"Duración: {duration}","actions":"Acciones","runNumber":"Ejecución n.º {number}","autoRetry":"Reintento automático","attempt":"Intento {attempt}","view":"Ver","viewWorktree":"Ver","cancel":"Cancelar","cancelling":"Cancelando…","forceCancel":"Forzar cancelación","forceCancelling":"Forzando cancelación…","forceCancelTitle":"¿Forzar la cancelación de esta ejecución?","forceCancelDescription":"La cancelación forzada omite las condiciones que normalmente impiden que GitHub detenga esta ejecución. Úsala solo si la cancelación normal está bloqueada.","keepRunning":"Mantener en ejecución","showJobs":"Mostrar trabajos de {run}","hideJobs":"Ocultar trabajos de {run}","jobs":"Trabajos","jobCount":"{count} trabajos","loadingJobs":"Cargando trabajos…","retryLoad":"Reintentar","noJobs":"No se informaron trabajos para esta ejecución.","showJobSteps":"Mostrar los pasos de {job}","hideJobSteps":"Ocultar los pasos de {job}","retryJob":"Reintentar {job}","steps":"Pasos","noSteps":"Aún no se han informado pasos para este trabajo.","loadMore":"Cargar más","loadingMore":"Cargando más…"},"githubAutomation":{"autoRetry":"Reintento automático","title":"Configurar reintento automático","description":"Vuelve a ejecutar automáticamente los flujos de trabajo o trabajos seleccionados de GitHub Actions.","loading":"Cargando flujos de trabajo y reglas guardadas…","credentialsRequired":"Configura un token de acceso personal y verifica una GitHub App con acceso de escritura a Actions antes de crear reglas.","scope":"Se aplica a","currentRuns":"Ejecuciones actuales","futureRuns":"Ejecuciones futuras","targets":"Pipelines y trabajos","allWorkflows":"Todos los flujos de trabajo, incluidos los que se añadan después","noWorkflows":"No se encontraron flujos de trabajo de GitHub Actions.","mode":"Modo de reintento","failureMode":"Reintentar fallos","countMode":"Reintentar ejecuciones correctas por cantidad","retryLimit":"Límite de reintentos","unlimited":"Ilimitado","failureStrategy":"Cuando ocurre un fallo","failedJobs":"Reintentar solo los trabajos fallidos","allJobs":"Reintentar todos los trabajos","savedRules":"Reglas guardadas","edit":"Editar regla","ruleProgress":"{retries} reintentos automáticos en {executions} ejecuciones","pause":"Pausar regla","resume":"Reanudar regla","delete":"Eliminar regla","close":"Cerrar","save":"Guardar regla","limitError":"Introduce un límite de reintentos entre 1 y 100.","targetRequired":"Selecciona al menos un flujo de trabajo o trabajo.","attemptSelector":"Intento del flujo de trabajo","latestAttempt":"Último — Intento {attempt}","attempt":"Intento {attempt}","attemptStartedBy":"Iniciado por @{actor}","pipelines":"Canalizaciones","pipelineCount":"{count} pipelines de GitHub Actions","pipeline":"Canalización","status":"Estado","actions":"Acciones","view":"Ver","noJobs":"No se informaron trabajos para este intento.","statuses":{"ACTIVE":"Activa","PAUSED":"Pausada","COMPLETED":"Completada","EXHAUSTED":"Agotada","ERROR":"Error"},"scopes":{"WORKFLOW_RUN":"Ejecución actual","WORKTREE_BRANCH":"Rama del worktree","PULL_REQUEST":"Pull request","REPOSITORY":"Repositorio"}},"codebases":{"title":"Bases de código","description":"Supervisa repositorios Git y copias de trabajo en todos los agentes registrados.","refreshAll":"Actualizar todo","fetchAll":"Descargar todo","add":"Añadir base de código","groupBy":"Agrupar bases de código por","agents":"Agentes","repositories":"Repositorios","loading":"Cargando bases de código…","emptyTitle":"Aún no hay bases de código","emptyDescription":"Añade un repositorio Git existente desde un agente conectado.","skipped":"Se omitieron {count} bases de código desconectadas, incompatibles o no disponibles.","fetchQueued":"La descarga comenzó para las bases de código disponibles.","refreshQueued":"La actualización comenzó para las bases de código disponibles.","online":"Conectado","offline":"Desconectado","edit":"Editar","view":"Ver","folder":"Carpeta","origin":"Origen","branch":"Rama","upstream":"Rama remota","lastChecked":"Última comprobación","lastFetched":"Última descarga","never":"Nunca","unknown":"Desconocido","none":"Ninguna","ahead":"Adelantada {count}","behind":"Atrasada {count}","sync":{"IN_SYNC":"Sincronizada","AHEAD":"Adelantada","BEHIND":"Atrasada","DIVERGED":"Divergente","NO_UPSTREAM":"Sin rama remota","DETACHED":"Desacoplada","UNKNOWN":"Desconocido"},"availability":{"AVAILABLE":"Disponible","MISSING":"Falta la carpeta","NOT_REPOSITORY":"No es un repositorio Git","ORIGIN_MISMATCH":"El origen cambió","ERROR":"No disponible"},"operationRunning":"Operación Git en curso…","fetch":"Descargar","addTitle":"Añadir una base de código","addDescription":"Explora un agente, inspecciona un repositorio Git y confirma su origen antes de guardarlo.","agent":"Agente","selectAgent":"Selecciona un agente conectado","browseHome":"Explorar la carpeta personal","home":"Inicio","showHidden":"Mostrar carpetas ocultas","truncated":"Solo se muestran las primeras 1.000 carpetas.","addFolder":"Añadir esta carpeta","detached":"HEAD desacoplado","existingOrigin":"Este origen ya usa el nombre compartido «{name}».","name":"Nombre del repositorio","repositoryDescription":"Descripción del repositorio","cancel":"Cancelar","confirm":"Confirmar base de código","editTitle":"Editar detalles del repositorio","loadingRepository":"Cargando repositorio…","repositoryNotFound":"Repositorio no encontrado","repositoryNotFoundDescription":"Es posible que este repositorio lógico ya no tenga una copia de trabajo registrada.","backToCodebases":"Volver a bases de código","repositorySharedDescription":"Estos detalles, configuraciones de compilación y scripts permitidos pertenecen al repositorio lógico y se aplican a todas las copias de agentes y árboles de trabajo.","repositoryDetails":"Detalles del repositorio","repositoryDetailsDescription":"Administra los ajustes compartidos por todas las copias registradas de este repositorio.","repositorySaved":"Detalles del repositorio guardados.","autoRetry":"Reintento automático","autoRetryDescription":"Configura reglas de reintento duraderas para los flujos de trabajo de GitHub Actions de este repositorio.","autoRetryGitHubOnly":"El reintento automático solo está disponible para repositorios alojados en GitHub.","skillGroups":"Grupos de habilidades","skillGroupsHelp":"Elige los grupos que se sincronizan en todos los checkouts y worktrees de este repositorio.","noSkillGroups":"No hay grupos disponibles.","quickActions":"Acciones rápidas","repositoryQuickActionsDescription":"Flujos heredados por este repositorio. Abre un flujo para cambiar su tipo o alcance.","quickActionKinds":{"STANDARD":"Estándar","MERGE_CONFLICT":"Conflicto de fusión","GITHUB_ACTIONS":"Acciones de GitHub"},"allRepositories":"Todos los repositorios","limitedRepositories":"{count, plural, one {Limitado a # repositorio} other {Limitado a # repositorios}}","workflowPaused":"Pausado","noWorkflows":"No hay flujos disponibles.","quickActionEligibility":"Los flujos configurados siguen visibles cuando están pausados; las acciones solo aparecen si están publicados, activados y vinculados al recurso actual.","saveQuickActions":"Guardar acciones rápidas","keepBaseBranchUpToDate":"Mantener actualizada la rama base","keepBaseBranchUpToDateHelp":"Después de una obtención correcta, la rama base avanza mediante fast-forward cuando no hay cambios preparados. Esta configuración del repositorio se aplica a todos los agentes.","save":"Guardar","remove":"Eliminar","confirmRemoveTitle":"¿Eliminar el registro de la base de código?","confirmRemoveDescription":"Se eliminará el registro de {folder}. La carpeta y todos sus archivos permanecerán intactos en el agente.","removed":"Se eliminó el registro de la base de código.","settings":"Configuración","settingsTitle":"Configuración del estado de las bases de código","settingsDescription":"Define con qué frecuencia los agentes actualizados inspeccionan las carpetas registradas e informan del estado de Git.","refreshInterval":"Intervalo de actualización del agente (segundos)","refreshIntervalHelp":"Elige un número entero entre {min} y {max}. Cada agente espera este tiempo tras completar un análisis. No se contacta con los servidores remotos de Git.","fetchInterval":"Intervalo de descarga automática (segundos)","fetchIntervalHelp":"Elige un entero entre {min} y {max}. El agente descarga origin cuando vence este intervalo.","defaultJiraBranchRegex":"Expresión Jira predeterminada para ramas","jiraBranchRegex":"Expresión Jira específica del origen","jiraBranchRegexHelp":"Se usa el primer grupo capturado; si no existe, se usa toda la coincidencia de la rama.","inheritDefaultRegex":"Heredar la expresión predeterminada","settingsSaved":"Se guardaron los ajustes de las bases de código."},"codebaseDetail":{"iosApp":"Aplicación iOS","loading":"Cargando base de código…","notFound":"Base de código no encontrada","notFoundDescription":"Es posible que se haya eliminado este registro de base de código.","back":"Volver a las bases de código","operationQueued":"Operación de Git en cola.","operationSucceeded":"Operación de Git completada.","operationFailed":"La operación de Git falló.","offlineReadOnly":"Este agente está desconectado. La información de ramas guardada estará disponible en modo de solo lectura hasta que vuelva a conectarse.","unsupportedReadOnly":"Actualiza este agente para inspeccionar y administrar ramas y stashes. La información de ramas guardada se muestra en modo de solo lectura.","dirty":"Cambios sin confirmar","refresh":"Actualizar","fetch":"Obtener origin","repositorySettings":"Ajustes del repositorio","origin":"Origen","currentBranch":"Rama actual","upstream":"Rama remota","lastFetched":"Última descarga","activeOperation":"{kind} está en ejecución…","branches":"Ramas ({count})","stashes":"Guardados Git ({count})","branchesTruncated":"Solo se muestran las primeras 1.000 ramas.","localBranches":"Ramas locales","remoteBranches":"Ramas remotas de origin","noLocalBranches":"No se encontraron ramas locales.","noRemoteBranches":"No se encontraron ramas de origin. Obtén origin y vuelve a intentarlo.","branchName":"Rama","branchStatus":"Estado","actions":"Acciones","current":"Actual","default":"Predeterminada","protected":"Protegida","otherWorktree":"Otro árbol de trabajo","localAvailable":"Existe una rama local","switch":"Cambiar","stashAndSwitch":"Guardar y cambiar","confirmDirtySwitchTitle":"¿Guardar los cambios y cambiar de rama?","confirmDirtySwitchDescription":"Los cambios preparados, sin preparar y sin seguimiento se guardarán en un stash nuevo antes de cambiar a {branch}. El stash se conservará.","checkout":"Cambiar a esta rama","stashAndCheckout":"Guardar y cambiar","confirmDirtyCheckoutTitle":"¿Guardar los cambios y cambiar a esta rama?","confirmDirtyCheckoutDescription":"Los cambios preparados, sin preparar y sin seguimiento se guardarán en un stash nuevo antes de cambiar a {branch}. El stash se conservará.","pull":"Traer","deleteRemote":"Eliminar remota","confirmDeleteRemoteBranchTitle":"¿Eliminar la rama remota?","confirmDeleteRemoteBranchDescription":"origin/{branch} se eliminará permanentemente. Las ramas locales y los árboles de trabajo con el mismo nombre permanecerán intactos.","delete":"Eliminar","cancel":"Cancelar","confirmDeleteBranchTitle":"¿Eliminar la rama local?","confirmDeleteBranchDescription":"Git eliminará {branch} de forma segura solo si sus commits ya se fusionaron. No se puede eliminar la rama actual, la predeterminada ni la de otro árbol de trabajo.","noStashes":"No hay stashes","noStashesDescription":"Este checkout no tiene stashes de Git actualmente.","preview":"Vista previa","hidePreview":"Ocultar vista previa","loadingPreview":"Cargando parche del stash…","emptyPatch":"Este stash no tiene un parche de texto que mostrar.","copyPatch":"Copiar parche","patchCopied":"Parche copiado","copyPatchFailed":"No se pudo copiar el parche.","patchTruncated":"Este parche se truncó a 256 KiB.","stashesTruncated":"Solo se muestran los primeros 200 stashes.","apply":"Aplicar","confirmDeleteStashTitle":"¿Eliminar el stash?","confirmDeleteStashDescription":"{stash} se eliminará permanentemente. Aplícalo primero si necesitas conservar sus cambios.","stashesTitle":"Stashes","stashMessage":"Stash","searchBranches":"Buscar ramas","searchBranchesPlaceholder":"Filtrar por nombre de rama","noMatchingBranches":"Ninguna rama coincide con tu búsqueda.","sortBranches":"Ordenar ramas","sortByName":"Nombre","sortByNewestCommit":"Commit más reciente","searchStashes":"Buscar stashes","searchStashesPlaceholder":"Filtrar por mensaje o selector","noMatchingStashes":"Ningún stash coincide con tu búsqueda."},"worktrees":{"title":"Árboles de trabajo","description":"Gestiona worktrees de Git principales y vinculados en todos los agentes inscritos.","agentOffline":"El agente está desconectado.","worktreeUnavailable":"Este árbol de trabajo no está disponible.","agentUnsupported":"Actualiza el agente para habilitar compilaciones de iOS.","iosBuildNotConfigured":"Añade primero un proyecto de aplicación iOS y una configuración de compilación en los ajustes del repositorio.","filters":"Filtros de worktrees","searchWorktrees":"Buscar worktrees","searchWorktreesPlaceholder":"Buscar ramas, agentes, repositorios, incidencias o bases de código…","filterByAgent":"Filtrar por agente","allAgents":"Todos los agentes","filterByRepository":"Filtrar por repositorio","allRepositories":"Todos los repositorios","noMatchingWorktrees":"No hay worktrees coincidentes","noMatchingWorktreesDescription":"Prueba otra búsqueda o filtro.","refresh":"Actualizar","fetchNow":"Descargar ahora","fetchStarted":"Se inició la descarga para las bases de código disponibles.","createWorktree":"Crear worktree","worktreeCreated":"Worktree creado.","repositoryCheckout":"Checkout del repositorio","selectCodebase":"Seleccionar agente y repositorio","selectCodebaseHelp":"Elige el checkout del agente que será propietario de este worktree.","searchCodebases":"Buscar repositorios y agentes","noEligibleCodebases":"No hay checkouts de repositorios compatibles y conectados.","newBranch":"Rama nueva","existingBranch":"Rama existente","fromTicket":"Desde ticket","branchName":"Nombre de rama","ticketKey":"Clave del ticket","loadingTicketBranch":"Cargando ticket y nombre de rama…","selectExistingBranch":"Seleccionar una rama existente","selectBaseBranch":"Seleccionar una rama base","searchBranches":"Buscar ramas","noMatchingBranches":"No hay ramas coincidentes.","localBranch":"Local","originBranch":"Rama remota","localAndOrigin":"Local y origin","remoteDefault":"Predeterminada remota","changeBranch":"Cambiar rama","viewCodebase":"Ver base de código","viewRepository":"Ver repositorio","refreshPullRequest":"Actualizar solicitud de extracción","moveToAgent":"Mover a agente","moveWorktree":"Mover árbol de trabajo","moveDescription":"Envía {branch} y cámbialo en otro agente.","destinationAgent":"Agente y copia de destino","selectDestinationAgent":"Seleccionar agente de destino","searchDestinationAgents":"Buscar agentes y copias","noMoveDestinations":"No hay copias de destino compatibles disponibles.","destinationWorktree":"Árbol de trabajo de destino","createDestinationWorktree":"Crear un árbol de trabajo nuevo","dirtyDestinationWarning":"Este destino tiene cambios sin confirmar. Git los llevará a la rama entrante cuando sea posible.","deleteOldWorktree":"Eliminar el árbol anterior después de mover","deleteOldWorktreeDisabled":"Los árboles de trabajo principales no se pueden eliminar.","moveFailed":"No se pudo mover el árbol de trabajo.","moveCompleted":"Árbol de trabajo movido.","moveCompletedWithWarning":"El destino está listo, pero la limpieza del origen requiere atención.","moveCancelled":"Movimiento cancelado. La rama de origen sigue enviada y se conservó el árbol de origen.","moveNeedsStash":"Los cambios del destino impiden cambiar de rama.","moveStashHelp":"Guarda los cambios rastreados y no rastreados del destino, continúa y conserva el stash para restaurarlo manualmente.","moveProgress":"Moviendo {branch}","stashAndContinue":"Guardar y continuar","cancelMove":"Cancelar movimiento","cancel":"Cancelar","moveStatus":{"PUSHING":"Enviando la rama de origen…","CHECKING_OUT":"Cambiando el destino…","AWAITING_STASH":"Esperando una decisión sobre el stash…","CLEANING_UP":"Eliminando el árbol anterior…","SUCCEEDED":"Movimiento completado.","SUCCEEDED_WITH_WARNING":"Movimiento completado con una advertencia de limpieza.","FAILED":"Movimiento fallido.","CANCELLED":"Movimiento cancelado."},"moveBlocked":{"agent":"El agente de origen está desconectado o debe actualizarse.","busy":"Hay otra operación activa para este repositorio.","detached":"Se necesita una rama de origen con nombre.","dirty":"Confirma o descarta los cambios del origen antes de mover.","behind":"Integra los cambios de origin antes de mover.","diverged":"Resuelve la divergencia con origin antes de mover.","unknown":"No se puede verificar que la rama se pueda enviar de forma segura.","destination":"No hay ningún agente de destino compatible disponible."},"deleteWorktree":"Eliminar árbol de trabajo","deleteWorktreeDescription":"Elimina permanentemente {path} y su rama local.","deleteWorktreeWarning":"Se perderán permanentemente todos los cambios preparados, no preparados y no rastreados de este árbol.","deleteRemoteBranch":"Eliminar también origin/{branch}","defaultRemoteProtected":"La rama predeterminada del repositorio no se puede eliminar de origin.","stashAndRetry":"Guardar en stash y reintentar","stashRetryHelp":"Git no pudo cambiar con los cambios actuales. Guarda los cambios rastreados y no rastreados en stash, reintenta y conserva el stash para restaurarlo manualmente.","hidden":"Ocultos ({count})","cards":"Vista de tarjetas","table":"Vista de tabla","loading":"Cargando worktrees…","emptyTitle":"No se encontraron worktrees","emptyDescription":"Añade una base de código y conecta su agente para descubrir sus worktrees.","online":"En línea","offline":"Sin conexión","lastFetched":"Última descarga: {value}","neverFetched":"nunca","secondsAgo":"hace {count} s","branch":"Rama","path":"Ruta","baseBranch":"Rama base","editBase":"Editar rama base","saveBase":"Guardar rama base","inheritBase":"Heredar valor remoto","baseUnavailable":"Rama remota predeterminada no disponible","upstreamStatus":"Estado upstream","baseStatus":"Actualidad de la base","baseCurrent":"Actual · {count} por delante","baseBehind":"{count} detrás de la base","yes":"Sí","notUpToDate":"No · {count} commits detrás de la base","ahead":"{count} por delante","behind":"{count} por detrás","diverged":"Divergente","upToDate":"Actualizada","origin":"Origen","inSync":"Sincronizada","dirty":"Modificado","branchCommits":"Confirmaciones: {count}","unpublished":"Sin publicar","detached":"HEAD separado","unknown":"Desconocido","primary":"Principal","tags":"Etiquetas","manageTags":"Gestionar etiquetas","manageTagsDescription":"Crea etiquetas globales reutilizables y elige los colores de sus insignias.","highlight":"Resaltado","clearHighlight":"Quitar resaltado","customize":"Personalizar worktree","edit":"Editar","editTag":"Editar etiqueta","createTag":"Crear etiqueta","saveTag":"Guardar etiqueta","openCode":"Abrir en VS Code","openInsiders":"Abrir en VS Code Insiders","forcePush":"Forzar push","sync":"Sincronizar","rebase":"Rebasar","rebasePaused":"Rebase en pausa","rebaseConflicts":"Resuelve los conflictos con un flujo o cancela para restaurar el estado anterior al rebase.","rebaseIncomplete":"Hay un rebase en curso. Cancélalo para restaurar el estado anterior de la rama.","cancelRebase":"Cancelar rebase","push":"Push","publish":"Publicar","reset":"Restablecer","stashAll":"Guardar todo en stash","stageAll":"Preparar todo","unstageAll":"Quitar todo del área de preparación","autoSync":"Sincronización automática","autoSyncing":"Auto Sync activo","autoSyncPaused":"Auto Sync en pausa","autoSyncTitle":"Configurar Auto Sync","autoSyncDescription":"Rebasa automáticamente esta rama cuando cambia la rama de destino y fuerza el envío con lease.","useConflictWorkflow":"Ejecutar un flujo de acción rápida para resolver conflictos automáticamente","selectConflictWorkflow":"Flujo de conflictos de fusión","noWorkflow":"Sin flujo","conflictWorkflowChoice":"Opción de activación del flujo","defaultWorkflowTrigger":"Activador predeterminado","saveAutoSync":"Activar Auto Sync","resumeAutoSync":"Reanudar Auto Sync","cancelAutoSync":"Cancelar Auto Sync","autoMerge":"Fusión automática","autoMerging":"Auto Merge activo","autoMergePaused":"Auto Merge en pausa","autoMergeComplete":"Auto Merge completado","autoMergeTitle":"Configurar Auto Merge","autoMergeDescription":"GitHub fusionará la solicitud cuando se cumplan las comprobaciones, revisiones y reglas de rama requeridas.","deleteAfterMerge":"Eliminar este worktree después de la fusión","moveTicketToDone":"Mover el ticket de Jira vinculado al estado final configurado","saveAutoMerge":"Activar Auto Merge","resumeAutoMerge":"Reanudar Auto Merge","cancelAutoMerge":"Cancelar Auto Merge","confirmAction":"Confirmar","operationRunning":"Operación en curso…","loadingDetails":"Cargando commits y cambios…","commits":"Confirmaciones ({count})","changes":"Cambios ({count})","noCommits":"Ningún commit difiere de la rama base.","noChanges":"El worktree está limpio.","conflicted":"En conflicto","staged":"Preparado","unstaged":"Sin preparar","untracked":"Sin seguimiento","truncated":"Solo se muestran los primeros resultados compatibles.","status":"Estado","pullRequest":"Pull request","latestBuild":"Última compilación","openInGitHub":"Abrir en GitHub","openDetails":"Abrir detalles","openWorktreeDetails":"Abrir detalles de {branch}","hiddenTitle":"Worktrees ocultos","hiddenDescription":"Los worktrees ausentes se conservan siete días. Volver a detectarlos restaura sus metadatos.","noHidden":"No hay worktrees ocultos.","purge":"Purgar","purgeAll":"Purgar todo","review":{"APPROVED":"Aprobada","CHANGES_REQUESTED":"Cambios solicitados","REVIEW_REQUIRED":"Revisión necesaria","NONE":"Sin decisión"},"comments":"Comentarios: {count}"},"worktreeDetail":{"loading":"Cargando detalles del worktree…","notFound":"Worktree no encontrado","notFoundDescription":"Este worktree está ausente, oculto o ya no está disponible.","back":"Volver a worktrees","linked":"Vinculado","refresh":"Actualizar","inspectionOffline":"El agente está sin conexión. Los metadatos guardados siguen disponibles, pero no se pueden inspeccionar los commits ni los cambios.","inspectionUnavailable":"Este worktree no está disponible para inspección en vivo.","inspectionBusy":"Los commits y cambios se actualizarán cuando termine la operación activa.","inspectionUnsupported":"Actualiza el agente para inspeccionar commits y cambios.","inspectionFailed":"No se pudieron cargar los commits ni los cambios.","actions":"Acciones","workingTree":"Árbol de trabajo","overview":"Resumen","repository":"Repositorio","origin":"Origen","agent":"Agente","folder":"Carpeta","head":"Commit HEAD","upstream":"Rama ascendente","originStatus":"Estado del origen","baseStatus":"Actualidad de la base","lastChecked":"Última comprobación","lastFetched":"Última descarga","management":"Gestión","branchChanges":"Cambios de la rama","noBranchChanges":"No hay cambios confirmados en la rama","diffTruncated":"Algunos archivos modificados no se muestran porque el resultado fue truncado.","codeCoverage":"Cobertura de código","noCoverageReports":"No se han generado informes de cobertura para este árbol de trabajo.","coverageBuild":"Compilación","coverageStatus":"Estado del informe","coverageStatuses":{"PENDING":"Pendiente","READY":"Listo","FAILED":"Fallido"},"overallCoverage":"Cobertura total","changedCoverage":"Cobertura de cambios","generated":"Generado","viewReport":"Ver informe","loadingDiff":"Cargando cambios…","binaryFileChanged":"Archivo binario modificado","noTextChanges":"No hay cambios de texto","diffTooLarge":"La diferencia supera el límite de visualización de 2 MiB","diffLimit":"Diferencia truncada a 2 MiB.","sideBySide":"Lado a lado","overlap":"Superponer","imageTransparency":"Transparencia de imagen","before":"Antes","after":"Después","noImageSide":"No hay imagen en este lado"},"mcpPresets":{"title":"Preajustes de herramientas MCP","description":"Crea conjuntos reutilizables de privilegio mínimo para planes, sesiones y clientes MCP directos.","create":"Crear preajuste","createTitle":"Crear preajuste de herramientas MCP","editTitle":"Editar preajuste de herramientas MCP","dialogDescription":"Elige herramientas explícitas. Seleccionar un grupo incluye sus descendientes actuales y no concede automáticamente herramientas añadidas después.","name":"Nombre","optionalDescription":"Descripción (opcional)","icon":"Icono","availableForPlans":"Mostrar para planes","availableForSessions":"Mostrar para sesiones","plans":"Planes","sessions":"Sesiones","directOnly":"Solo URL directa","tools":"Herramientas integradas","searchTools":"Buscar herramientas integradas…","noMatchingTools":"Ninguna herramienta integrada coincide con la búsqueda.","selectedToolCount":"{count, plural, one {# herramienta seleccionada} other {# herramientas seleccionadas}}","toolCount":"{count, plural, one {# herramienta} other {# herramientas}}","save":"Guardar preajuste","loading":"Cargando preajustes MCP…","noneAvailable":"No hay preajustes MCP disponibles para este tipo de ejecución.","empty":"Todavía no se han creado preajustes de herramientas MCP.","copyUrl":"Copiar URL del preajuste","edit":"Editar preajuste","delete":"Eliminar preajuste","deleteTitle":"¿Eliminar el preajuste de herramientas MCP?","deleteDescription":"¿Eliminar {name}? Las referencias en borradores y flujos se ignorarán en futuras ejecuciones."},"tools":{"title":"Herramientas","description":"Explora, configura y ejecuta herramientas MCP internas y externas.","toolsTab":"Herramientas","auditTab":"Auditoría","auditTitle":"Auditoría de llamadas a herramientas","auditDescription":"Revisa los registros ToolCallAudit redactados más recientes. Los argumentos solo se representan mediante hashes SHA-256.","auditRefresh":"Actualizar auditoría","auditClear":"Borrar auditoría","auditClearTitle":"¿Borrar la auditoría de herramientas?","auditClearDescription":"¿Eliminar todos los registros de auditoría completados? Las llamadas en curso se conservarán.","auditClearAction":"Eliminar registros de auditoría","auditSearch":"Buscar en la auditoría de herramientas","auditSearchPlaceholder":"Buscar herramientas, autores, orígenes, ID o hashes…","auditLoading":"Cargando auditoría de herramientas…","auditEmpty":"No se ha auditado ninguna llamada a herramientas.","auditNoMatches":"Ningún registro de auditoría coincide con la búsqueda.","auditStarted":"Inicio","auditFinished":"Fin","auditTool":"Herramienta","auditStatus":"Estado","auditSource":"Origen","auditCaller":"Autor","auditGroup":"Grupo","auditDuration":"Duración","auditCorrelationId":"ID de correlación","auditArgumentsHash":"SHA-256 de argumentos","auditId":"ID de auditoría","auditSucceeded":"Correcto","auditFailed":"Fallido","auditRunning":"En curso","auditToolsPage":"Página de herramientas","auditWorkflow":"Flujo de trabajo","connectTitle":"Conectar clientes externos","connectDescription":"Otros clientes MCP pueden llamar a todas las herramientas integradas de este servidor mediante Streamable HTTP.","toolApiToken":"Token de la API de herramientas (opcional)","toolApiTokenPlaceholder":"Introduce TOOLS_API_TOKEN","toolApiTokenHelp":"Solo es necesario cuando TOOLS_API_TOKEN está configurado en el servidor. Se conserva únicamente en la memoria de esta página.","serverUrl":"URL del servidor","copyUrl":"Copiar la URL del servidor","clientConfig":"Configuración del cliente","clientConfigHelp":"Añadir esto a la configuración MCP de Claude Code, Cursor o cualquier otro cliente Streamable HTTP.","copyConfig":"Copiar la configuración","connectCopied":"Copiado","connectCopyFailed":"No se pudo copiar al portapapeles.","connectWarning":"La autenticación se desactiva cuando TOOLS_API_TOKEN no está configurado. Si se activa, mantén el token fuera del control de versiones y de las capturas de pantalla.","serverHost":"Host del servidor","customServerHost":"Host personalizado","addServer":"Añadir servidor MCP","search":"Buscar herramientas","searchPlaceholder":"Busca nombres, descripciones o servidores…","serversTitle":"Servidores MCP externos","serversDescription":"Administra proveedores HTTP con transmisión y SSE heredado.","loadingServers":"Cargando servidores MCP…","noServers":"No hay servidores MCP externos configurados.","name":"Nombre","url":"Dirección URL","transport":"Transporte","prefix":"Prefijo del nombre","actions":"Acciones","http":"HTTP (transmisión)","sse":"SSE (heredado)","editServer":"Editar {name}","delete":"Eliminar","deleteServer":"Eliminar {name}","confirmDelete":"¿Eliminar el servidor MCP?","confirmDeleteDescription":"¿Eliminar {name} y sus encabezados personalizados guardados?","catalogTitle":"Catálogo de herramientas","catalogDescription":"Expande una herramienta, introduce sus parámetros y revisa la respuesta completa.","refresh":"Actualizar herramientas","loadingTools":"Cargando herramientas…","noMatchingTools":"Ninguna herramienta coincide con la búsqueda.","addServerTitle":"Añadir servidor MCP externo","editServerTitle":"Editar servidor MCP externo","serverDialogDescription":"Los datos de conexión solo los usa el cliente MCP del servidor.","prefixHelp":"El prefijo se aplica literalmente al mostrar e invocar herramientas.","headers":"Encabezados personalizados","headersHelp":"Los valores se guardan localmente y nunca vuelven al navegador.","addHeader":"Añadir encabezado","noHeaders":"No hay encabezados personalizados.","headerName":"Nombre del encabezado","headerValue":"Valor del encabezado","keepHeaderValue":"Déjalo vacío para conservar el valor guardado","removeHeader":"Quitar encabezado","saveServer":"Guardar servidor","toolCount":"{count} herramientas","tool":"Herramienta","toolDescription":"Descripción","expandTool":"Expandir {name}","collapseTool":"Contraer {name}","noDescription":"No se proporcionó ninguna descripción.","readOnlyBadge":"Solo lectura","writeBadge":"Escritura","destructiveBadge":"Destructiva","externalEffectBadge":"Efecto externo","confirmWriteTitle":"¿Ejecutar una herramienta de escritura?","confirmWriteDescription":"{name} puede cambiar el estado de la aplicación o de servicios externos. Revisa los argumentos antes de continuar.","confirmDestructiveTitle":"¿Ejecutar una herramienta destructiva?","confirmDestructiveDescription":"{name} puede eliminar o sobrescribir datos de forma permanente. Es posible que esta acción no se pueda recuperar.","confirmRun":"Ejecutar herramienta","confirmDestructiveAction":"Ejecutar herramienta destructiva","cancelRun":"Cancelar","parameters":"Parámetros","noParameters":"Esta herramienta no tiene parámetros.","run":"Ejecutar herramienta","running":"Ejecutando…","response":"Respuesta","copyResponse":"Copiar respuesta","copied":"Respuesta copiada","copyFailed":"No se pudo copiar la respuesta.","noResponse":"Ejecuta la herramienta para ver su respuesta.","selectValue":"Selecciona un valor","unset":"Sin definir","true":"Verdadero","false":"Falso","jsonArguments":"Argumentos (objeto JSON)","invalidJson":"Introduce un JSON válido.","invalidJsonObject":"Introduce un objeto JSON.","jsonObjectPlaceholder":"Introduce pares clave-valor como un objeto JSON","jsonPlaceholder":"Introduce JSON, por ejemplo []"},"skills":{"title":"Habilidades","description":"Gestiona paquetes reutilizables de habilidades de IA en la base de datos, clientes, agentes y repositorios.","manageGroups":"Gestionar grupos","settings":"Configuración","addSkill":"Añadir habilidad","syncAll":"Sincronizar todo","search":"Buscar habilidades","searchPlaceholder":"Buscar nombres, descripciones, grupos, repositorios, agentes o rutas…","database":"Base de datos","skillSource":"Origen de habilidades","databaseSkills":"Habilidades de la base de datos","databaseSkillsDescription":"Paquetes de habilidades canónicos almacenados en el plano de control.","clientSkills":"Habilidades del cliente","clientSkillsDescription":"Paquetes de habilidades detectados en el cliente de IA seleccionado.","loading":"Cargando habilidades…","name":"Nombre","skillDescription":"Descripción","scope":"Ámbito","groups":"Grupos","files":"Archivos","updated":"Actualizado","global":"Global","project":"Proyecto","groupOnly":"Solo grupo","noSkills":"Ninguna habilidad coincide con la búsqueda.","agent":"Agente","location":"Ubicación","status":"Estado","tracked":"Rastreado","inSync":"Sincronizado","toDatabase":"A la base de datos","conflict":"Conflicto","noClientSkills":"No se encontraron habilidades para este cliente.","settingsTitle":"Configuración de habilidades","settingsDescription":"Elige los clientes participantes y la sincronización automática de grupos.","autoSync":"Sincronizar automáticamente grupos de proyecto","autoSyncHelp":"Mantén los grupos asignados actualizados en todos los checkouts y worktrees.","enabledTools":"Clientes de IA habilitados","configured":"Configurado","configuredAgents":"{count} agentes configurados","notDetected":"No detectado","saveSettings":"Guardar configuración","skillNotFound":"Habilidad no encontrada.","loadingSkill":"Cargando habilidad…","newSkill":"Nueva habilidad","editorDescription":"Edita los metadatos y todos los archivos del paquete.","delete":"Eliminar","cancel":"Cancelar","deleteSkillDescription":"¿Eliminar {name} de la base de datos y sus copias gestionadas durante la sincronización?","deleteSkill":"¿Eliminar habilidad?","saveSkill":"Guardar habilidad","syncGlobally":"Sincronizar globalmente","syncGloballyHelp":"Incluye esta habilidad en la sincronización personal/global.","noGroups":"Todavía no hay grupos de habilidades.","packageFiles":"Archivos del paquete","addFiles":"Añadir o reemplazar archivos","download":"Descargar","removeFile":"Eliminar","rename":"Renombrar","executable":"Ejecutable","binaryFile":"Archivo binario. Descárgalo o reemplázalo para editarlo.","selectFile":"Selecciona un archivo","duplicateFile":"Ya existe un archivo con esa ruta.","skillGroups":"Grupos de habilidades","groupsDescription":"Agrupa habilidades de proyecto y asígnalas a repositorios.","groupsTableDescription":"Grupos de habilidades del proyecto y sus habilidades y repositorios asignados.","addGroup":"Añadir grupo","loadingGroups":"Cargando grupos…","skillsCount":"Habilidades","repositoriesCount":"Repositorios","newGroup":"Nuevo grupo","newGroupDescription":"Crea el grupo y luego elige habilidades y repositorios.","createGroup":"Crear grupo","groupNotFound":"Grupo no encontrado.","loadingGroup":"Cargando grupo…","groupSettingsDescription":"Gestiona miembros, repositorios y despliegue.","deleteGroupDescription":"¿Eliminar {name} y las copias que ningún otro grupo necesite?","deleteGroup":"¿Eliminar grupo?","syncGroup":"Sincronizar grupo","saveGroup":"Guardar grupo","groupSkills":"Habilidades del grupo","searchSkills":"Buscar habilidades…","groupRepositories":"Repositorios que usan este grupo","searchRepositories":"Buscar repositorios…","syncRunNotFound":"Sincronización no encontrada.","loadingSync":"Cargando sincronización…","syncTitle":"Sincronización de habilidades","syncGroupName":"Sincronizando el grupo {name} en sus repositorios.","syncAllDescription":"Conciliando habilidades de base de datos, personales y de proyecto.","applySync":"Aplicar sincronización","skipPendingClients":"Omitir clientes pendientes","unknownAgent":"Agente desconocido","syncAgents":"Estado de sincronización de agentes","syncAgentsDescription":"Estado de conexión y sincronización de cada agente participante.","connection":"Conexión","operation":"Operación","syncStatus":"Estado de sincronización","syncChanges":"Cambios propuestos","syncChangesDescription":"Revisa los cambios y resuelve los conflictos antes de aplicar esta sincronización.","change":"Cambio","resolution":"Resolución","newSharedLocation":"Nueva ubicación compartida","chooseGroup":"Elige un grupo","useDatabase":"Usar base de datos","useTarget":"Usar copia del cliente","deleteClientCopy":"Eliminar copia del cliente","editManually":"Editar manualmente","compareAndResolve":"Comparar y resolver","skip":"Omitir","scanningAgents":"Buscando clientes habilitados…","noSyncChanges":"No se requieren cambios.","manualResolution":"Resolución manual","manualResolutionDescription":"Compara paquetes completos y edita el resultado canónico, incluidos archivos de texto, binarios y ejecutables.","startFromDatabase":"Empezar con la base de datos","startFromTarget":"Empezar con la copia del cliente","databaseVersion":"Versión de la base de datos","targetVersion":"Versión del cliente","resultVersion":"Resultado canónico","binaryPreview":"Archivo binario; compara el tamaño y los metadatos de ejecución.","missingFile":"Esta versión no contiene el archivo seleccionado.","filePath":"Ruta del archivo","missingResultFile":"Añade este archivo al resultado o selecciona otro archivo del paquete.","useManualVersion":"Usar versión editada"},"builds":{"title":"Compilaciones","description":"Configura, ejecuta, inspecciona, instala y exporta compilaciones de iOS en bases de código y worktrees.","build":"Compilar","history":"Historial","buildScripts":"Scripts de compilación","status":"Estado","destination":"Destino","duration":"Duración","durationValue":"Duración {duration}","actionsLabel":"Acciones","selectBuilds":"Seleccionar compilaciones","selectBuild":"Seleccionar compilación {id}","selectDate":"Seleccionar todas las compilaciones de {date}","deleteSelected":"Eliminar seleccionadas ({count})","deleteBuilds":"Eliminar compilaciones","deleteBuildsTitle":"¿Eliminar {count, plural, one {la compilación} other {# compilaciones}}?","deleteBuildsDescription":"Esto elimina permanentemente los registros y las carpetas de compilación seleccionados.","filterStatus":"Filtrar compilaciones por estado","allStatuses":"Todos los estados","loading":"Cargando compilaciones…","emptyTitle":"Todavía no hay compilaciones","emptyDescription":"Inicia una compilación desde un worktree para crear el primer registro inmutable.","durationSeconds":"{count} segundos","artifactCount":"{count, plural, one {# artefacto} other {# artefactos}}","viewBuild":"Ver compilación","loadMore":"Cargar más","newScript":"Nuevo script de compilación","noScripts":"No hay scripts de compilación","noScriptsDescription":"Crea hooks de JavaScript reutilizables y autorízalos después para repositorios concretos.","defaultEnabled":"Activado de forma predeterminada","preBuild":"Antes de compilar","postBuild":"Después de compilar","timeoutSeconds":"Tiempo límite de {count} segundos","edit":"Editar","deleteScript":"Eliminar script de compilación","editScript":"Editar script de compilación","scriptDescription":"Los hooks ESM de Node.js de confianza se ejecutan desde la raíz del worktree seleccionado con un entorno mínimo.","name":"Nombre","preBuildScript":"JavaScript previo a la compilación","postBuildScript":"JavaScript posterior a la compilación","preBuildScriptHelp":"Exporta de forma predeterminada una función que reciba buildId, branch, destination, action y la instantánea de URL de telemetría.","postBuildScriptHelp":"Exporta de forma predeterminada una función que también reciba buildFolder, failed, cancelled, errorCode, error y la misma instantánea de URL de telemetría.","timeout":"Tiempo límite en segundos","failureBehavior":"Comportamiento ante fallos","enabledByDefault":"Preseleccionar este script para las compilaciones","save":"Guardar","cancel":"Cancelar","startBuild":"Iniciar compilación","startBuildDescription":"Elige una configuración guardada y un destino. El comando se ejecuta desde la raíz de este worktree.","configuration":"Configuración","configurationInvalid":"El origen, esquema o configuración guardados no están disponibles en este worktree.","noConfigurations":"Crea una configuración de compilación de iOS válida en los ajustes del repositorio antes de iniciar una compilación.","reparse":"Volver a analizar","action":"Acción","destinationType":"Tipo de destino","simulator":"Simulador","physicalDevice":"Dispositivo físico","device":"Dispositivo","selectDevice":"Selecciona un dispositivo","anySimulator":"Cualquier simulador iOS","anyPhysicalDevice":"Cualquier dispositivo iOS físico","scripts":"Scripts de compilación","advancedSettings":"Ajustes avanzados","priorBuildForTesting":"Compilación previa para pruebas","selectPriorBuildForTesting":"Selecciona una compilación para pruebas compatible","noPriorBuildForTesting":"Ejecuta primero una compilación para pruebas correcta con esta configuración.","priorBuildSummary":"usa la compilación para pruebas {id}","developmentTeam":"Equipo de desarrollo","testPlan":"Plan de pruebas","schemeDefaultTestPlan":"Predeterminado del esquema","packageResolution":"Resolución de paquetes","disablePackageRepositoryCache":"Desactivar la caché del repositorio de paquetes","signingStyle":"Estilo de firma","codeSignIdentity":"Identidad de firma de código","provisioningProfileSpecifier":"Perfil de aprovisionamiento","productBundleIdentifier":"Identificador del paquete del producto","codeCoverage":"Activar cobertura de código","parseTestResults":"Analizar los resultados de las pruebas después de la compilación","allowProvisioningDeviceRegistration":"Permitir el registro de dispositivos de aprovisionamiento","parallelTesting":"Pruebas en paralelo","parallelTestingWorkers":"Procesos de pruebas en paralelo","onlyTesting":"Probar únicamente","skipTesting":"Omitir pruebas","priorTestProductsPath":"Ruta de productos de pruebas previas","priorXctestrunPath":"Ruta de xctestrun previa","settingsEnabled":"Activado","settingsDisabled":"Desactivado","advancedSettingsNotCaptured":"No se capturaron ajustes avanzados para esta compilación.","generateWorktreeCoverage":"Generar cobertura de código","startWorktreeCoverage":"Ejecutar cobertura del árbol de trabajo","startWorktreeCoverageDescription":"Ejecuta pruebas con cobertura y mide las líneas ejecutables modificadas en la rama y el árbol de trabajo.","startBuildFailed":"No se pudo iniciar la compilación.","parseTestResultsAction":"Analizar resultados de pruebas","retryParseTestResults":"Reintentar análisis de pruebas","generateCoverageReport":"Generar informe de cobertura","retryCoverageReport":"Reintentar informe de cobertura","viewCoverageReport":"Ver informe de cobertura","testResults":"Resultados de pruebas","testResultsFailed":"No se pudieron analizar los resultados de las pruebas.","testTotal":"{count} pruebas","testPassed":"{count} aprobadas","testFailed":"{count} fallidas","testSkipped":"{count} omitidas","testResultFilters":"Filtros de resultados de pruebas","testFilterAll":"Todas ({count})","testFilterPassed":"Aprobadas ({count})","testFilterFailed":"Fallidas ({count})","testFilterSkipped":"Omitidas ({count})","testsWithoutSuite":"Pruebas sin conjunto","testsWithoutFile":"Pruebas sin archivo","expandTestSuite":"Expandir conjunto de pruebas {suite}","collapseTestSuite":"Contraer conjunto de pruebas {suite}","expandTestFile":"Expandir archivo de pruebas {file}","collapseTestFile":"Contraer archivo de pruebas {file}","testSuitePassed":"{passed} de {total} aprobadas ({percent})","testStatus":"Resultado","testName":"Prueba","testSuite":"Conjunto","testBundle":"Paquete","testDuration":"Duración","coverageReport":"Informe de cobertura de código","viewChangesWithCoverage":"Ver cambios con cobertura","loadingCoverageReport":"Cargando informe de cobertura…","coverageReportNotFound":"Informe de cobertura no encontrado","coverageReportNotFoundDescription":"Primero genera un informe de cobertura desde la página de detalles de la compilación.","backToBuild":"Volver a la compilación","overallCoverage":"Cobertura total","changedCoverage":"Cobertura de cambios","coveredLines":"Líneas cubiertas","executableLines":"Líneas ejecutables","uncoveredLines":"Líneas sin cubrir","changedFilesCoverage":"Cobertura de archivos modificados","allCoverageFiles":"Todos los archivos de cobertura","expandCoverageFiles":"Expandir todos los archivos de cobertura","collapseCoverageFiles":"Contraer todos los archivos de cobertura","searchCoverageFiles":"Buscar objetivos, archivos o rutas","searchChangedCoverageFiles":"Buscar archivos modificados o rutas","sortCoverageFiles":"Ordenar archivos de cobertura por {column}","coverageTarget":"Objetivo","coverageFile":"Archivo","coverage":"Cobertura","changeType":"Cambio","allowProvisioningUpdates":"Permitir actualizaciones de aprovisionamiento","buildSettingOverrides":"Sobrescrituras permitidas de ajustes de compilación (JSON)","commandPreview":"Vista previa del comando","overridesInvalid":"Las sobrescrituras de ajustes de compilación deben ser un objeto JSON.","advancedJsonInvalid":"Los ajustes avanzados deben ser JSON válido.","buildNotFound":"Compilación no encontrada","buildNotFoundDescription":"Este registro de compilación no existe o ya no está disponible.","backToBuilds":"Volver a las compilaciones","buildId":"ID de compilación","deleteBuild":"Eliminar compilación","deleteBuildTitle":"¿Eliminar esta compilación?","deleteBuildDescription":"Esto elimina permanentemente el registro y su carpeta de compilación.","downloadArtifact":"Descargar","downloadIpa":"Descargar IPA","installOnDevice":"Instalar en el dispositivo","installPreparing":"Preparando la descarga…","installRequiresHttps":"La instalación inalámbrica requiere una dirección HTTPS pública. Abra esta página mediante HTTPS o defina PUBLIC_BASE_URL.","installNotSupportedForAppStore":"Las compilaciones de App Store Connect no se pueden instalar de forma inalámbrica. Exporte con Debugging, Release Testing o Enterprise en su lugar.","installMissingBundleIdentifier":"El identificador del paquete no está disponible. Vuelva a exportar el archivo para habilitar la instalación.","installOpenOnDevice":"Abra esta página en un iPhone o iPad para instalar.","installFailed":"No se pudo iniciar la instalación.","copyInstallLink":"Copiar enlace de instalación","installLinkCopied":"Enlace de instalación copiado","ipaBundleIdentifier":"Identificador del paquete","ipaBundleVersion":"Versión","cancelBuild":"Cancelar compilación","rebuild":"Volver a compilar","outOfDate":"Desactualizada","configureBuilds":"Ve a los ajustes del repositorio para configurar las compilaciones","selectedDevices":"{count} dispositivos","selectRunDevices":"Dispositivos de ejecución","noCompatibleDevices":"No hay destinos conectados compatibles disponibles.","run":"Ejecutar","exportArchive":"Exportar archivo","logs":"Registros","expandLogs":"Expandir registros","collapseLogs":"Contraer registros","noLogs":"No se han recibido eventos de registro.","followOutput":"Seguir salida","fitTerminal":"Ajustar terminal","viewRawOutput":"Ver salida sin formato","searchTerminal":"Buscar en la terminal","previousTerminalMatch":"Coincidencia anterior","nextTerminalMatch":"Coincidencia siguiente","scrollLogsToTop":"Ir al inicio de los registros","scrollLogsToBottom":"Ir al final de los registros","commandSummary":"Resumen del comando","copyCommand":"Copiar resumen del comando","commandCopied":"Resumen del comando copiado","copyFailed":"No se pudo copiar al portapapeles.","noScriptExecutions":"No se seleccionaron scripts de compilación.","overview":"Resumen","scheme":"Esquema","head":"Confirmación","startedAt":"Inicio","finishedAt":"Fin","artifactDirectory":"Carpeta de compilación","artifacts":"Artefactos","noArtifacts":"No se capturaron artefactos.","runsAndExports":"Ejecuciones y exportaciones","archiveExport":"Exportación del archivo","noRunsOrExports":"Esta compilación aún no se ha ejecutado ni exportado.","exportArchiveDescription":"Exporta localmente el .xcarchive capturado sin subirlo.","distributionMethod":"Método de distribución","exportMethod":{"DEBUGGING":"Depuración","RELEASE_TESTING":"Pruebas de versión","ENTERPRISE":"Empresa","APP_STORE_CONNECT":"App Store Connect"},"selectTeam":"Seleccione un equipo","noTeams":"No se encontraron equipos de desarrollo en el agente de compilación.","signingCertificate":"Certificado de firma","certificateAutomatic":"Elegido automáticamente","certificateMayNotMatch":"Puede no coincidir con los perfiles seleccionados","provisioningProfiles":"Perfiles de aprovisionamiento","parseProvisioningProfiles":"Analizar proyecto","reparseProvisioningProfiles":"Analizar de nuevo","parseProvisioningProfilesHelp":"Lee los destinos firmables del esquema seleccionado y busca perfiles instalados compatibles.","parseProvisioningProfilesEmpty":"Analiza el proyecto para sustituir el JSON por un selector de perfil para cada app y extensión.","noSigningRequirements":"No se encontraron destinos de app o extensión que requieran firma.","selectSigningSourceFirst":"Selecciona primero una fuente de Xcode, un esquema y una configuración.","selectProfile":"Seleccione un perfil","profileMayNotMatch":"Puede no coincidir con este identificador","manualBundleIdentifier":"Identificador de paquete para añadir","manualBundleIdentifierPlaceholder":"com.ejemplo.app.extension","manualBundleIdentifierHelp":"Añade cualquier identificador que no se haya detectado y elige entre todos los perfiles disponibles.","addBundleIdentifier":"Añadir identificador","removeBundleIdentifier":"Eliminar {bundleId}","showAllProfiles":"Mostrar todos","showMatching":"Mostrar coincidentes","noMatchingProfiles":"Ningún perfil instalado coincide con este paquete para el método seleccionado.","noArchiveBundles":"No se encontraron paquetes firmables en el archivo.","profileExpired":"caducado","signingOptionsFailed":"No se pudieron leer las opciones de firma desde el agente.","automatic":"Automático","manual":"Manual","autoExport":"Exportar automáticamente los archivos correctos","exportWhenComplete":"Exportar al finalizar","uploadSymbols":"Subir símbolos","manageBuildNumber":"Gestionar versión y número de compilación","internalTestFlightOnly":"Solo TestFlight interno","stripSwiftSymbols":"Eliminar símbolos de Swift","thinning":"Optimización de la app","iCloudEnvironment":"Entorno del contenedor iCloud","distributionBundleIdentifier":"Identificador de paquete de distribución","localExportOnly":"Las exportaciones se guardan localmente como IPA y nunca se suben a App Store Connect.","signingAssetCoverageWarning":"Esta identidad está instalada en {installed} de {total} agentes compatibles. Las compilaciones asignadas a otros agentes pueden fallar al exportar.","iosApp":"App iOS","parseCheckout":"Copia usada para analizar","parseCheckoutDescription":"Las configuraciones guardadas se comparten en todo el repositorio. El descubrimiento, la validación y el estado de análisis usan la copia del agente seleccionada.","checkoutUnavailable":"no disponible","addIosProject":"Añadir proyecto de aplicación iOS","addIosProjectDescription":"Activa configuraciones de compilación de Xcode reutilizables para cada checkout y worktree de este repositorio.","sharedProjectDescription":"Las definiciones del proyecto y los scripts permitidos se comparten en el repositorio. El estado de análisis inferior procede de este checkout del agente.","buildConfigurations":"Configuraciones de compilación","newConfiguration":"Nueva configuración","lastParsed":"Analizado: {value}","neverParsed":"Nunca analizado","stale":"metadatos desactualizados","savedValueUnavailable":"valor guardado no disponible","deleteConfiguration":"Eliminar configuración de compilación","allowedScripts":"Scripts de compilación permitidos","createScriptsOnBuildsPage":"Crea scripts reutilizables en la página Compilaciones y vuelve aquí para autorizarlos.","editConfiguration":"Editar configuración de compilación","configurationDescription":"Selecciona un origen de Xcode relativo al repositorio y guarda su esquema, configuración, acción y ajustes avanzados opcionales.","icon":"Icono","configurationIcons":{"none":"Sin icono","apple":"Plataforma Apple","app-window":"Ventana de app","archive":"Archivo","beaker":"Experimento","box":"Caja","bug":"Error","code":"Código","gauge":"Rendimiento","hammer":"Compilación","layers":"Capas","package":"Paquete","play":"Ejecutar","rocket":"Lanzamiento","shield":"Seguridad","smartphone":"App móvil","sparkles":"Función","terminal":"Línea de comandos","test-tube":"Pruebas","wrench":"Herramientas"},"source":"Origen de Xcode","selectSource":"Selecciona un proyecto, workspace o Package.swift de la raíz","loadingSources":"Buscando orígenes…","defaultAction":"Acción predeterminada","advancedJson":"Ajustes avanzados normalizados (JSON)","statuses":{"QUEUED":"En cola","PREPARING":"Preparando","RUNNING":"En curso","SUCCEEDED":"Correcta","FAILED":"Fallida","CANCELLED":"Cancelada"},"parseStatuses":{"UNPARSED":"Sin analizar","PARSING":"Analizando","VALID":"Válido","INVALID":"No válido","ERROR":"Error"},"actions":{"BUILD":"Compilar","TEST":"Probar","ANALYZE":"Analizar","ARCHIVE":"Archivar","BUILD_FOR_TESTING":"Compilar para pruebas","TEST_WITHOUT_BUILDING":"Probar sin compilar"},"failureBehaviors":{"FAIL_BUILD":"Hacer fallar la compilación","CONTINUE":"Continuar con una advertencia"}},"devices":{"title":"Dispositivos","description":"Inscribe iPhone y iPad, revisa el historial de conexión y registra en Apple los dispositivos aprobados.","export":"Exportar TSV para Apple","addDevice":"Añadir dispositivo","filterStatus":"Filtrar dispositivos por estado","allStatuses":"Todos los estados","sort":"Ordenar dispositivos","sortOption":{"NEWEST":"Inscripción más reciente","NAME":"Nombre del dispositivo","LAST_SEEN":"Visto por última vez"},"loading":"Cargando dispositivos…","emptyTitle":"No hay dispositivos inscritos","emptyDescription":"Crea un perfil de inscripción en un iPhone o iPad para recopilar su identificador.","device":"Dispositivo","statusLabel":"Estado","hardware":"Producto","lastIp":"Última IP","enrolled":"Inscrito","registered":"Registro en Apple","lastSeen":"Última conexión","viewDevice":"Ver {name}","unavailable":"No disponible","status":{"PENDING":"Pendiente","REGISTERING":"Registrando","REGISTERED":"Registrado","REGISTRATION_FAILED":"Error de registro","REJECTED":"Rechazado"},"back":"Volver a dispositivos","enrollTitle":"Inscribir un dispositivo iOS","enrollDescription":"Instala un perfil temporal firmado para enviar de forma segura el identificador de desarrollo del dispositivo.","httpsRequired":"La inscripción está desactivada porque esta dirección no usa HTTPS público. Usa un proxy inverso HTTPS con confianza pública o configura PUBLIC_BASE_URL.","collectedTitle":"Información recopilada","collectUdid":"El UDID del dispositivo utilizado para el registro de desarrollo de Apple.","collectProduct":"El modelo de producto Apple indicado por iOS.","collectVersion":"La versión instalada de iOS o iPadOS.","collectIp":"La dirección IP observada durante la descarga y la respuesta del perfil, incluida la cabecera del proxy que la proporcionó.","deviceLabel":"Etiqueta del dispositivo","deviceLabelPlaceholder":"Por ejemplo, iPhone","deviceLabelHelp":"Elige una etiqueta reconocible. El servicio de perfiles de Apple no puede leer el nombre asignado en Ajustes.","consent":"Consiento la recopilación y el almacenamiento del identificador, producto, versión de software y direcciones IP observadas para gestionar el dispositivo.","downloadProfile":"Descargar perfil de inscripción","notFound":"No se encontró este dispositivo.","rebuildWarning":"Este dispositivo está registrado en Apple. Las IPA existentes no obtienen acceso automáticamente; crea un nuevo perfil de aprovisionamiento y exporta una nueva IPA.","openBuilds":"Abrir Compilaciones","configureAppleFirst":"Configura y verifica las credenciales de App Store Connect antes de registrar este dispositivo.","openSettings":"Abrir Ajustes","generalInformation":"Información general","deviceModel":"Modelo del dispositivo","saveName":"Guardar etiqueta","udid":"UDID del dispositivo","hideUdid":"Ocultar UDID del dispositivo","revealUdid":"Mostrar UDID del dispositivo","copyUdid":"Copiar UDID del dispositivo","osVersion":"Versión de software","appleDeviceId":"ID de recurso de Apple","retryRegistration":"Reintentar registro","registerWithApple":"Registrar en Apple","reject":"Rechazar","delete":"Eliminar","ipHistory":"Historial de IP","ipAddress":"Dirección IP","source":"Paso de inscripción","forwardedBy":"Cabecera de dirección","observed":"Observada","noIpHistory":"No hay observaciones de IP guardadas para este dispositivo.","ipSource":{"PROFILE_DOWNLOAD":"Descarga del perfil","PROFILE_RESPONSE":"Respuesta del perfil"},"ipHeaderSource":{"CLOUDFLARE":"Cloudflare (cabecera CF-Connecting-IP)","FORWARDED":"Proxy (cabecera X-Forwarded-For)","REAL_IP":"Proxy de origen (cabecera X-Real-IP)"},"enrollmentHistory":"Historial de inscripciones","noEnrollmentHistory":"No hay intentos de inscripción guardados para este dispositivo.","firmwareTitle":"Firmware de iOS","firmwareDescription":"Versiones de firmware y estado actual de firma proporcionados por IPSW.me.","firmwareLoading":"Cargando información del firmware…","firmwareLoadFailed":"No se pudo cargar la información del firmware: {error}","signingStatus":"Estado de firma","firmwareVersion":"Versión","releaseDate":"Fecha de lanzamiento","fileSize":"Tamaño","firmwareDownload":"Descarga","signed":"Firmado","unsigned":"Sin firmar","downloadFirmware":"Descargar","copyFirmwareUrl":"Copiar URL de descarga para iOS {version}","noFirmware":"No hay información de firmware disponible para este dispositivo.","created":"Creada","completed":"Completada","failure":"Fallo","enrollmentStatus":{"ISSUED":"Emitida","DOWNLOADED":"Descargada","COMPLETED":"Completada","EXPIRED":"Caducada","FAILED":"Fallida"},"registerTitle":"¿Registrar este dispositivo en Apple?","registerDescription":"Se conciliará el dispositivo por UDID y, si hace falta, se añadirá a tu cuenta de Apple Developer. Esto no recompila una IPA.","confirmRegister":"Registrar dispositivo","rejectTitle":"¿Rechazar este dispositivo?","rejectDescription":"El dispositivo seguirá en el historial local y no se podrá registrar. Elimínalo localmente e inscríbelo de nuevo si quieres reconsiderarlo.","confirmReject":"Rechazar dispositivo","deleteTitle":"¿Eliminar este dispositivo?","deleteDescription":"Esto elimina el dispositivo local, los intentos de inscripción y el historial de IP. El registro anual de Apple no se elimina.","confirmDelete":"Eliminar dispositivo"},"iosDeviceSettings":{"title":"Inscripción de dispositivos iOS","description":"Configura perfiles de inscripción firmados y el registro opcional de dispositivos en Apple.","loading":"Cargando ajustes de dispositivos iOS…","unavailable":"No disponible","profileTitle":"Perfil de inscripción","profileDescription":"Estos valores identifican el perfil temporal que aparece en Ajustes de iOS.","signerReady":"Firmante listo","signerNotGenerated":"Firmante sin generar","organizationName":"Nombre de la organización","profileOrganizationHelp":"Usa un nombre reconocible; iOS muestra esta organización mientras se instala el perfil de inscripción.","profileIdentifier":"Identificador del perfil","profileIdentifierHelp":"Usa un identificador DNS inverso estable, como com.example.ai-development-environment.enrollment.","signerCreated":"Creado el {date}","signerExpires":"Caduca el {date}","unverifiedWarning":"El certificado generado es autofirmado, por lo que iOS muestra el perfil como No verificado. Revisa la organización mostrada antes de instalarlo.","regenerateSigner":"Regenerar firmante","regenerateTitle":"¿Regenerar el firmante del perfil?","regenerateDescription":"Los perfiles nuevos usarán otra clave privada y otro certificado. Los perfiles ya descargados podrán responder hasta que caduque su token.","saveProfile":"Guardar ajustes del perfil","profileSaved":"Se guardaron los ajustes del perfil de inscripción.","signerRegenerated":"Se generó un nuevo firmante del perfil.","appleTitle":"API de dispositivos de App Store Connect","appleDescription":"Usa una clave API con acceso a Certificados, Identificadores y Perfiles. La clave privada se guarda en el servidor y nunca vuelve al navegador.","appleSetupHelp":"En Usuarios y acceso → Integraciones, crea una clave API de equipo con acceso a Certificados, Identificadores y Perfiles. Copia el ID del emisor y el ID de clave, y descarga y conserva el archivo .p8; Apple solo lo ofrece una vez.","openApiKeys":"Abrir claves API de App Store Connect","verified":"Verificado","notVerified":"Sin verificar","issuerId":"ID del emisor","keyId":"ID de la clave","privateKey":"Clave privada .p8 de App Store Connect","p8DropZone":"Zona para soltar la clave privada de App Store Connect","p8DropHint":"Pega la clave abajo, suelta aquí un archivo .p8 o elige un archivo.","chooseP8":"Elegir archivo .p8 de App Store Connect","privateKeyPlaceholder":"Pega aquí la clave privada PKCS#8","privateKeyConfiguredPlaceholder":"Hay una clave privada guardada. Déjalo vacío para conservarla.","privateKeyHelp":"Solo se aceptan claves ES256 PKCS#8 descargadas de App Store Connect.","privateKeyKeepHelp":"Déjalo vacío para conservar la clave guardada o proporciona una nueva clave .p8 para sustituirla.","lastVerified":"Credenciales verificadas el {date}","lastTestFailed":"La prueba de credenciales falló el {date}","clear":"Borrar credenciales","clearTitle":"¿Borrar las credenciales de App Store Connect?","clearDescription":"El registro de dispositivos quedará desactivado hasta guardar y verificar otra clave API.","retest":"Probar de nuevo","saveAndVerify":"Guardar y verificar","appleSaved":"Las credenciales de App Store Connect se guardaron y verificaron.","appleTestSucceeded":"Las credenciales de App Store Connect se verificaron correctamente.","appleCleared":"Se borraron las credenciales de App Store Connect.","p8Invalid":"Elige un archivo .p8 válido que contenga una clave privada PKCS#8.","p8ReadError":"No se pudo leer el archivo .p8 seleccionado.","p8Loaded":"Se cargó {filename}. Guarda y verifica para usar esta clave."},"telemetry":{"consoleTitle":"Registros de consola","consoleDescription":"Examina las salidas de consola recopiladas de compilaciones y dispositivos.","analyticsTitle":"Eventos de analítica","analyticsDescription":"Examina los eventos de analítica del producto y sus parámetros a medida que llegan.","unifiedTitle":"Vista unificada","unifiedDescription":"Revisa registros de consola y eventos de analítica en una única cronología en vivo.","separator":"Separador","deleteSeparator":"Eliminar separador {name}","settings":"Configuración","refresh":"Actualizar","search":"Buscar telemetría","searchPlaceholder":"Buscar texto, patrón glob o expresión regular","searchMode":"Modo de búsqueda","searchModes":{"text":"Texto","glob":"Patrón glob","regex":"Expresión regular"},"caseSensitive":"Distinguir mayúsculas y minúsculas","filters":"Filtros","columnsAction":"Columnas","removeColumn":"Quitar columna {column}","export":"Exportar","edit":"Editar","done":"Listo","on":"activado","off":"desactivado","allCollection":"Todo","consoleCollection":"Consola","analyticsCollection":"Analítica","count":"{matching} de {total}","allResultsSelected":"Todas las filas coincidentes están seleccionadas","selectedCount":"{count} seleccionadas","clearSelected":"Borrar selección","clearAll":"Borrar todo","confirmClearRecords":"Borrar registros","confirmClearWithSeparators":"Borrar con separadores","clearBeforeSeparator":"Borrar antes del separador más reciente","confirmClearBefore":"Confirmar borrado antes del separador","cancel":"Cancelar","selectAll":"Seleccionar todas las filas coincidentes","expand":"Expandir fila","collapse":"Contraer fila","selectRow":"Seleccionar fila","selectDay":"Seleccionar todas las filas del {day}","selectSeparator":"Seleccionar filas encima de {name}","loading":"Cargando telemetría…","empty":"No hay telemetría coincidente.","loadMore":"Cargar más","highlight":"Resaltar","clearHighlight":"Quitar resaltado","advancedFilters":"Filtros avanzados","advancedFiltersDescription":"Combina condiciones reutilizables entre campos estándar y rutas de parámetros.","match":"Coincidencia","allConditions":"Todas las condiciones","anyCondition":"Cualquier condición","filterField":"Campo de filtro","operator":"Operador de comparación","removeCondition":"Quitar condición","filterValue":"Valor","appliesTo":"Se aplica a","console":"Consola","analytics":"Analítica","addCondition":"Añadir condición","savedFilters":"Filtros guardados","noSavedFilters":"No hay filtros guardados.","load":"Cargar","delete":"Eliminar","filterName":"Nombre del filtro","saveFilter":"Guardar filtro","updateFilter":"Actualizar filtro","editSavedFilter":"Editar {name}","applyFilters":"Aplicar filtros","clearFilters":"Borrar filtros","manageColumns":"Administrar columnas","manageColumnsDescription":"Elige, ordena, restablece y guarda las columnas utilizadas por esta vista.","availableColumns":"Columnas disponibles","resetColumns":"Restablecer columnas","columnPresets":"Preajustes de columnas","noColumnPresets":"No hay preajustes de columnas.","default":"Predeterminado","setDefault":"Establecer como predeterminado","presetName":"Nombre del preajuste","setAsDefault":"Establecer como predeterminado","savePreset":"Guardar preajuste","updatePreset":"Actualizar preajuste","editPreset":"Editar {name}","saveAs":"Guardar como","applyColumns":"Aplicar columnas","telemetrySettings":"Configuración de observabilidad","apiHelp":"Ayuda de la API","consoleApiHelpTitle":"Enviar registros de consola","analyticsApiHelpTitle":"Enviar eventos de analítica","apiHelpDescription":"Consulta el contrato de ingesta REST y copia una referencia de Markdown lista para usar.","copyMarkdownDocs":"Copiar documentación Markdown","markdownDocsCopied":"Markdown copiado","settingsDescription":"Configura los orígenes de ingesta detectados y reemplazados que comparten todas las vistas.","localBaseUrl":"URL base local","remoteBaseUrl":"URL base remota","override":"Reemplazo","detected":"Detectada: {value}","effective":"Efectiva: {value}","localConsoleEndpoint":"Extremo local de consola","localAnalyticsEndpoint":"Extremo local de analítica","remoteConsoleEndpoint":"Extremo remoto de consola","remoteAnalyticsEndpoint":"Extremo remoto de analítica","copyEndpoint":"Copiar {label}","clearValues":"Borrar valores","noValues":"Sin valores","copyColumnValue":"Copiar {label}: valor","copyValue":"Copiar valor","filterByValue":"Filtrar por valor","copyJsonDictionary":"Copiar diccionario JSON","copyPathValues":"Copiar pares de ruta y valor","copyParameterValue":"Copiar {key}: valor","addColumn":"Añadir columna {key}","filterParameter":"Filtrar por {key}","saveSettings":"Guardar configuración","addSeparator":"Añadir separador","addSeparatorDescription":"Inserta un límite compartido en la cronología. El nombre es opcional.","optionalName":"Nombre opcional","exportTitle":"Exportar telemetría","exportSelectedDescription":"Exporta las {count} filas seleccionadas.","exportAllDescription":"Exporta todas las filas que coinciden con la búsqueda y los filtros actuales.","format":"Formato del archivo","exportFields":"Campos","exportFailed":"La exportación falló. Inténtalo de nuevo.","columns":{"time":"Hora","source":"Origen","level":"Nivel","category":"Categoría","message":"Mensaje","buildId":"ID de compilación","sessionId":"ID de sesión","deviceIp":"IP del dispositivo","receivedAt":"Recibido","attributes":"Atributos","kind":"Tipo","levelKind":"Nivel / Tipo","name":"Nombre del evento","screenName":"Nombre de pantalla","parameters":"Parámetros","defaultParameters":"Parámetros predeterminados","additionalParameters":"Parámetros adicionales","detail":"Detalle","attribute":"Atributo","defaultParameter":"Valor predeterminado","additionalParameter":"Valor adicional"},"operators":{"CONTAINS":"contiene","DOES_NOT_CONTAIN":"no contiene","IS":"es igual a","IS_NOT":"no es igual a","MATCHES_GLOB":"coincide con el patrón glob","MATCHES_REGEX":"coincide con la expresión regular","NO_REGEX_MATCH":"no coincide con la expresión regular","IS_EMPTY":"está vacío","IS_NOT_EMPTY":"no está vacío"}},"provisioningProfiles":{"title":"Perfiles de aprovisionamiento","description":"Inspecciona, sincroniza, importa y elimina recursos de firma de Apple en agentes y en el portal de Apple Developer.","refresh":"Actualizar inventario","refreshProgress":"Actualizando inventario: {complete} de {total} agentes finalizados.","noRefreshAgents":"No hay agentes compatibles con firma disponibles para actualizar.","refreshStatus":{"QUEUED":"En cola","RUNNING":"Escaneando","SUCCEEDED":"Completado","FAILED":"Fallido","CANCELLED":"Cancelado","TIMED_OUT":"Tiempo agotado"},"agents":"Agentes de destino","agentsDescription":"Los agentes antiguos siguen visibles, pero deben actualizarse para recibir operaciones de firma.","unsupported":"No compatible","uploadProfile":"Instalar un perfil","uploadProfileDescription":"Instala un archivo .mobileprovision en todos los agentes seleccionados.","chooseMobileprovision":"Elegir .mobileprovision","importIdentity":"Importar identidad de firma","importIdentityDescription":"Envía un .p12 cifrado mediante permisos de un solo uso y lo importa para codesign.","passphrase":"Contraseña del .p12","chooseP12":"Elegir .p12 cifrado","localProfiles":"Perfiles locales","localCertificates":"Identidades locales","applePortal":"Portal de Apple","profilesDescription":"Los perfiles se agrupan entre agentes por UUID y hash de contenido.","deleteExpired":"Eliminar vencidos","deleteExpiredDescription":"¿Eliminar todos los perfiles locales vencidos de los agentes seleccionados?","name":"Nombre","bundleId":"ID del paquete","type":"Tipo","team":"Equipo","devices":"Dispositivos","expires":"Vence","installedAgents":"Agentes instalados","expired":"Vencido","syncMissing":"Sincronizar faltantes","viewProfile":"Ver detalles de {name}","download":"Descargar perfil","delete":"Eliminar","deleteProfile":"¿Eliminar perfil?","deleteProfileDescription":"Elimina este perfil de todos los agentes indicados. Xcode puede volver a descargar perfiles administrados.","fingerprints":"Huellas","privateKey":"Clave privada","available":"Disponible","missing":"Falta","deleteIdentity":"¿Eliminar identidad de firma?","deleteIdentityDescription":"Elimina esta identidad y su clave privada del llavero de inicio de sesión de cada agente.","portalProfiles":"Perfiles del portal","portalCertificates":"Certificados del portal","createPortalProfile":"Crear perfil del portal","createPortalProfileDescription":"Crea un perfil con un ID de paquete, certificado y los dispositivos registrados aplicables. Nunca genera claves privadas.","profileName":"Nombre del perfil","selectBundleId":"Elegir ID del paquete","selectCertificate":"Elegir certificado","create":"Crear","confirmPortalDelete":"Confirmar cambio en Apple","portalDeleteDescription":"Este cambio afecta inmediatamente a la cuenta de Apple Developer y puede interrumpir firmas en otros equipos.","none":"No se encontró ninguno.","operations":"Operaciones recientes","certificatesDescription":"Identidades de firma agrupadas por huella del certificado entre agentes.","noLocalProfiles":"No se encontraron perfiles de aprovisionamiento locales.","noLocalCertificates":"No se encontraron identidades de firma locales.","loadingPortal":"Cargando recursos de Apple Developer…","loadingProfile":"Cargando perfil de aprovisionamiento…","profileNotFound":"Este perfil de aprovisionamiento ya no está instalado en ningún agente.","profileDetails":"Detalles del perfil","platforms":"Plataformas","created":"Creado","acceptedCertificates":"Huellas de certificados aceptados","provisionedDevices":"Dispositivos aprovisionados","provisionedDevicesDescription":"Este perfil contiene {count} identificadores de dispositivo.","deviceListPendingRefresh":"Actualiza el inventario de firma para cargar los identificadores guardados en este perfil.","noProvisionedDevices":"Este perfil de distribución no está limitado a dispositivos individuales.","device":"Dispositivo","udid":"UDID del dispositivo","status":"Estado","unknownDevice":"No inscrito en esta aplicación"},"apnsDevices":{"title":"Dispositivos APNs","description":"Registros de tokens de apps y MDM disponibles para notificaciones.","loading":"Cargando dispositivos APNs…","empty":"Ninguna app ha registrado un token APNs.","device":"Dispositivo / app","topic":"Tema","environment":"Entorno","pushTypes":"Tipos push","token":"Token oculto","status":"Estado","lastRegistration":"Último registro","lastSend":"Último envío","rename":"Renombrar","renameDescription":"Elige una etiqueta fácil de reconocer.","displayName":"Nombre visible","save":"Guardar","activate":"Activar","deactivate":"Desactivar","delete":"Eliminar","deleteTitle":"¿Eliminar registro APNs?","deleteDescription":"¿Eliminar este registro de token y desvincularlo del historial conservado?","apiHelp":"Ayuda de API","apiHelpTitle":"Registrar un dispositivo APNs","apiHelpDescription":"Envía JSON estricto al endpoint público. Los tokens pueden ser HEX o Base64; MDM también requiere pushMagic."},"pushSettings":{"title":"Notificaciones push","tokenAuthentication":"Autenticación por token (.p8)","tokenDescription":"Recomendada para apps, Live Activities, VoIP y otros tipos que no sean MDM.","tokenSetupHelp":"Crea una clave con el servicio de notificaciones push de Apple (APNs) activado, copia su ID de clave y descarga y conserva el archivo .p8; Apple solo lo ofrece una vez.","createTokenKey":"Crear una clave APNs","configured":"Configurado","notConfigured":"Sin configurar","teamId":"ID de equipo","keyId":"ID de clave","teamIdHelp":"Copia el ID de equipo de los datos de suscripción de Apple Developer.","openMembership":"Abrir datos de suscripción","chooseP8":"Suelta o elige la clave APNs .p8","replaceP8":"Suelta un nuevo .p8 para rotar la clave","p8Ready":".p8 listo para guardar","remove":"Eliminar","removeToken":"¿Eliminar clave APNs?","removeTokenDescription":"Los envíos con autenticación por token se detendrán hasta configurar otro .p8.","save":"Guardar","certificateAuthentication":"Autenticación por certificado (.p12)","certificateDescription":"Se admiten varios certificados por tema y son obligatorios para MDM.","certificateSetupHelp":"Crea el certificado push adecuado, instálalo con su clave privada en Acceso a Llaveros y exporta ambos como un .p12 protegido por contraseña. Usa el tema del certificado (el ID del paquete de la app o el tema MDM) y selecciona su entorno de pruebas o producción.","createCertificate":"Crear un certificado APNs","name":"Nombre de credencial","topic":"Tema","environment":"Entorno","chooseP12":"Elegir .p12 cifrado","p12Ready":".p12 listo para guardar","passphrase":"Contraseña del .p12","addCertificate":"Añadir certificado","expires":"Vence {date}","lastTested":"Última prueba {date}","retest":"Probar de nuevo","removeCertificate":"¿Eliminar certificado APNs?","removeCertificateDescription":"Los envíos que usen este certificado fallarán al eliminarlo."},"pushNotifications":{"title":"Notificaciones push","description":"Crea, valida, dirige, encola e inspecciona notificaciones de Apple.","editor":"Editor de notificaciones","editorDescription":"La forma del payload, cabeceras, límites y dispositivos aptos cambian con el tipo push.","presetName":"Nombre del ajuste","savePreset":"Guardar actual","presetSaved":"Ajuste guardado.","content":"Contenido","headers":"Cabeceras","advanced":"aps avanzado","specialized":"Especializado","pushType":"Tipo push","titleField":"Título","subtitle":"Subtítulo","body":"Cuerpo","badge":"Insignia","sound":"Sonido","category":"Categoría","threadId":"ID del hilo","contentAvailable":"Contenido disponible","mutableContent":"Contenido mutable","criticalSound":"Sonido crítico","soundVolume":"Volumen","topic":"Tema APNs","priority":"Prioridad","apnsId":"ID APNs","expiration":"Caducidad","collapseId":"ID de agrupación","certificateCredential":"Credencial de certificado","selectCredential":"Elegir certificado","titleLocKey":"Clave de localización del título","titleLocArgs":"Argumentos del título","subtitleLocKey":"Clave de localización del subtítulo","subtitleLocArgs":"Argumentos del subtítulo","bodyLocKey":"Clave de localización del cuerpo","bodyLocArgs":"Argumentos del cuerpo","launchImage":"Imagen de inicio","summaryArg":"Argumento de resumen","summaryArgCount":"Cantidad del resumen","targetContentId":"ID de contenido destino","interruptionLevel":"Nivel de interrupción","relevanceScore":"Puntuación de relevancia","customJson":"JSON raíz personalizado","timestamp":"Marca de tiempo","event":"Evento","attributesType":"Tipo de atributos","contentState":"JSON del estado","attributes":"JSON de atributos","staleDate":"Fecha de obsolescencia","dismissalDate":"Fecha de cierre","inputPushToken":"Solicitar token push de entrada","mdmHelp":"MDM usa el certificado elegido y el PushMagic de cada registro. El payload solo contiene mdm, sin diccionario aps.","specializedHelp":"Usa JSON raíz personalizado para el payload de {type}; las cabeceras y límites de APNs se validan igualmente.","payloadPreview":"Vista JSON en vivo","recipients":"Destinatarios","directDevices":"Tokens directos","directToken":"Token único de Live Activity","liveActivityToken":"Token push de Live Activity","allEligibleDevices":"Todos los dispositivos aptos ({count})","selectedDevices":"{count} dispositivos seleccionados","searchDevices":"Buscar dispositivos…","noEligibleDevices":"No hay registros activos compatibles.","saveDraft":"Guardar borrador","draftSaved":"Borrador guardado en el historial.","send":"Enviar","queued":"Lote push encolado.","broadcastChannels":"Canales de difusión de Live Activity","broadcastDescription":"La política de almacenamiento no puede cambiar tras crear el canal.","bundleId":"ID del paquete","noStorage":"Sin almacenamiento","mostRecent":"Mensaje más reciente","createChannel":"Crear canal","deleteChannel":"¿Eliminar canal?","deleteChannelDescription":"Elimina este canal; los ajustes e historial conservan solo su identificador.","delete":"Eliminar","history":"Historial","presets":"Ajustes","created":"Creado","deliveryMode":"Entrega","result":"Éxitos / fallos","status":"Estado","payload":"Carga útil","attempts":"intentos","load":"Cargar en editor","saveAsPreset":"Guardar como ajuste","presetFromHistory":"Historial","resend":"Reenviar","deleteHistory":"¿Eliminar elemento?","deleteHistoryDescription":"Elimina este lote, su payload y resultados.","clearHistory":"Borrar historial","clearHistoryDescription":"¿Eliminar todos los envíos completados y borradores? Los lotes activos se conservan.","name":"Nombre","updated":"Actualizado","loadEdit":"Cargar / editar","deletePreset":"¿Eliminar ajuste?","deletePresetDescription":"Elimina este payload y sus cabeceras reutilizables.","historyDescription":"Lotes enviados, borradores y resultados APNs por destinatario.","presetsDescription":"Contenido y cabeceras reutilizables; los destinatarios se eligen al enviar.","noHistory":"Todavía no hay historial de notificaciones push.","noPresets":"Todavía no hay ajustes de notificaciones push guardados."},"status":{"online":"En línea","offline":"Sin conexión","queued":"En cola","running":"En ejecución","succeeded":"Completado","failed":"Fallido","cancelled":"Cancelado","timed_out":"Tiempo agotado"},"commands":{"title":"Commands","description":"Create reusable shell commands and inspect their durable runs.","newCommand":"New command","runCustom":"Ejecutar personalizado","customCommandDescription":"Ejecuta un comando de shell puntual sin guardar una definición reutilizable.","customCommandPlaceholder":"Introduce un comando o script de shell","customCommandWarning":"El comando se ejecuta con todos los permisos de la cuenta del agente seleccionado y se conserva en el historial inmutable de esta ejecución.","runIn":"Ejecutar en","running":"Ejecutando…","editCommand":"Edit command","editorDescription":"Saved commands run with the full permissions of the selected agent account.","runs":"Runs","definitions":"Definitions","search":"Search commands","active":"Active","archived":"Archived","all":"All","done":"Done","edit":"Edit","refresh":"Refresh","selected":"{count, plural, one {# run selected} other {# runs selected}}","archive":"Archive","restore":"Restore","delete":"Delete","cancel":"Cancel","selectAll":"Select all completed runs","selectDay":"Seleccionar las ejecuciones completadas del {day}","number":"Run","command":"Command","status":"Status","agent":"Agent","worktree":"Worktree","started":"Started","finished":"Finished","home":"Agent home","agentHome":"Agent home directory","terminate":"Terminate","rerun":"Rerun","run":"Run","noRuns":"No command runs match this view.","noDescription":"No description","quickAction":"Quick action","deleteRunsTitle":"Delete command runs?","deleteRunsDescription":"Completed runs and all retained terminal output will be permanently deleted.","name":"Name","commandDescription":"Description","script":"Shell script","scriptHelp":"The script runs through the agent user\'s non-interactive login shell. Interactive input and PTY applications are not supported.","target":"Target","scope":"Target scope","anyAgentHome":"Any agent home","specificAgentHome":"Specific agent home","anyWorktree":"Any worktree","repositoryWorktree":"Worktree in a repository","selectAgent":"Select an agent","selectRepository":"Select a repository","repository":"Repository","restart":"Restart","restartPolicy":"Restart policy","restartLimit":"Failed restart limit","restartHelp":"Attempts that run for at least one minute reset the burst counter before their next exit is evaluated.","never":"Never","onFailure":"On failure","always":"Always","unlimited":"Unlimited restarts","notifications":"Notificaciones","enableNotifications":"Notificar cuando finalice este comando","notificationsHelp":"Los canales de entrega se configuran en la página Notificaciones. Desactiva esta opción para los comandos que no necesiten alertas de finalización.","enableQuickAction":"Show this command as a quick action","icon":"Icon","style":"Button style","defaultStyle":"Default","outlineStyle":"Outline","secondaryStyle":"Secondary","destructiveStyle":"Destructive","save":"Save","saving":"Saving…","runNotFound":"Command run not found.","runNumber":"Command run #{number}","runError":"Command failed","nextRestart":"Next restart","overview":"Resumen","timing":"Timing","duration":"Duración","terminalOutput":"Terminal output","noOutput":"No se ha notificado ninguna salida.","followOutput":"Follow output","fitTerminal":"Fit terminal","viewRawOutput":"Ver salida sin formato","searchTerminal":"Buscar en la terminal","previousTerminalMatch":"Coincidencia anterior","nextTerminalMatch":"Coincidencia siguiente","attempts":"Attempts","result":"Result","snapshot":"Immutable command snapshot","copyCommand":"Copiar","commandCopied":"Copiado","copyFailed":"No se pudo copiar el comando. Selecciónalo y cópialo manualmente.","runCommand":"Ejecutar {name}","chooseAgentTarget":"Elige el directorio de inicio concreto del agente donde se ejecutará este comando.","chooseWorktreeTarget":"Elige el árbol de trabajo concreto donde se ejecutará este comando.","upgradeAgent":"Actualizar agente","upgradeAgentTitle":"Actualiza este agente para ejecutar comandos guardados","upgradeAgentDescription":"Actualiza este agente antes de iniciar comandos guardados.","noEligibleTargets":"No hay destinos aptos disponibles.","noEligibleCommands":"No hay comandos aptos.","view":"Ver","manage":"Administrar","recentRuns":"Ejecuciones recientes","resourceDescriptionAgent":"Comandos guardados aptos y ejecuciones recientes para este agente.","resourceDescriptionWorktree":"Comandos guardados aptos y ejecuciones recientes para este árbol de trabajo.","commandQuickActions":"Acciones rápidas de comandos","agentQuickActionsDescription":"Comandos guardados del directorio de inicio disponibles en este agente.","statusQueued":"En cola","statusRunning":"En ejecución","statusRestarting":"Reiniciando","statusCancelling":"Cancelando","statusSucceeded":"Correcto","statusFailed":"Fallido","statusCancelled":"Cancelado","statusTimedOut":"Tiempo agotado","originManual":"Manual","originQuickAction":"Acción rápida","originWorkflow":"Flujo de trabajo","originRerun":"Reejecución","attemptDivider":"Intento {number}","exitCode":"Salida {code}","targetUnavailable":"Destino no disponible"},"costs":{"title":"Costes","description":"Precios de modelos usados para estimar el coste de los planes y las sesiones.","sourceTitle":"Catálogo de precios","sourceDescription":"De dónde se obtienen los precios de los modelos. Deja el campo vacío para usar el catálogo predeterminado. Los precios se actualizan automáticamente una vez al día.","catalogUrl":"URL de costes de modelos","save":"Guardar","useDefault":"Usar el predeterminado","fetchLatest":"Obtener lo último","lastFetched":"Última obtención","never":"Nunca","modelCount":"{count, plural, =0 {Sin modelos} one {# modelo} other {# modelos}}","customSource":"Fuente personalizada","defaultSource":"Fuente predeterminada","staleCatalog":"Actualización pendiente","lastFetchFailed":"La última obtención falló: {error}","modelsTitle":"Precios de modelos","modelsDescription":"Precios por millón de tokens, según los publica el catálogo.","searchModels":"Buscar modelos","model":"Modelo","provider":"Proveedor","inputPrice":"Entrada / MTok","outputPrice":"Salida / MTok","cacheReadPrice":"Lectura de caché / MTok","cacheWritePrice":"Escritura de caché / MTok","contextWindow":"Contexto","noModels":"No se encontraron modelos coincidentes.","showingCount":"Mostrando {shown} de {total}","sortBy":"Ordenar por {column}","loadingMore":"Cargando más…"},"diffView":{"truncated":"Diferencia recortada en 2 MiB.","binary":"Archivo binario modificado","empty":"Sin cambios de texto","largeDiff":"Esta diferencia tiene {count} líneas y no se ha dibujado.","renderAnyway":"Dibujarla de todos modos","addComment":"Comentar en esta línea","noNewline":"Sin salto de línea al final del archivo","sideBySide":"Lado a lado","overlap":"Superposición","transparency":"Transparencia de la imagen","difference":"Diferencia","sensitivity":"Sensibilidad de la diferencia","differenceColor":"Color de la diferencia","differenceColorRed":"Rojo","differenceColorGreen":"Verde","differenceColorWhite":"Rojo sobre blanco atenuado","differenceSummary":"{percent} % de los píxeles difieren","comparingPixels":"Comparando píxeles…","differenceNeedsBothSides":"Se necesitan ambas revisiones para comparar los píxeles","differenceFailed":"No se han podido comparar estas imágenes","imagesIdentical":"No hay píxeles diferentes","before":"Antes","after":"Después","missingImage":"No hay imagen en este lado"},"diffs":{"title":"Cambios","description":"Revisa cada cambio de un árbol de trabajo, con la cobertura sobre el código.","loading":"Cargando cambios…","loadingDiff":"Cargando la diferencia…","loadingCoverage":"Cargando cobertura…","refresh":"Actualizar","files":"Archivos","selectWorktree":"Elige un árbol de trabajo","searchWorktrees":"Buscar árboles de trabajo…","noWorktrees":"No se encontraron árboles de trabajo","selectAWorktree":"Elige un árbol de trabajo para revisar sus cambios.","selectAFile":"Elige un archivo para ver su diferencia.","searchFiles":"Buscar archivos","searchFilesPlaceholder":"Filtrar por ruta o módulo…","sortFiles":"Ordenar archivos por","sortAscending":"Orden ascendente","sortDescending":"Orden descendente","fileCount":"{count, plural, one {# archivo} other {# archivos}}","fileListTruncated":"lista recortada","noFiles":"No hay cambios en este ámbito.","noMatchingFiles":"Ningún archivo coincide con ese filtro.","noTextChanges":"Sin cambios de texto","binaryFile":"Archivo binario modificado","diffTooLarge":"Esta diferencia supera el límite de visualización.","commits":"Confirmaciones","noCommits":"Esta rama no tiene confirmaciones más allá de su base.","unifiedView":"Vista unificada","splitView":"Vista en paralelo","toggleWrap":"Alternar el ajuste de línea","linkedPullRequest":"Solicitud de incorporación n.º {number}: {title}","selectCoverageReport":"Informe de cobertura","noCoverageOverlay":"Sin superposición de cobertura","coverageStale":"Medido en otra revisión.","coverageOverall":"{percent} total","coverageChanged":"{percent} modificado","scope":{"STAGED":"Preparados","UNSTAGED":"Sin preparar","UNTRACKED":"Sin seguimiento","BRANCH":"Rama","COMMIT":"Confirmaciones"},"fileSort":{"name":"Nombre","module":"Módulo","coverage":"Cobertura","additions":"Adiciones","deletions":"Eliminaciones","changeType":"Tipo de cambio"}}}')}];
|
|
1
|
+
module.exports=[756817,(a,b,c)=>{b.exports=JSON.parse('{"metadata":{"title":"AI Development Environment","description":"Un entorno de desarrollo centrado en la inteligencia artificial."},"common":{"cancel":"Cancelar","continue":"Continuar","cannotBeUndone":"Esta acción no se puede deshacer."},"shell":{"productName":"AI Development Environment","dashboard":"Panel de control","ai":"IA","navigation":"Navegación","breadcrumbLabel":"Ruta de navegación","navigationDescription":"Navegación principal de AI Development Environment.","actionCenter":"Centro de acciones","notifications":"Notificaciones","notificationsDescription":"Actualizaciones y alertas de notificaciones.","showNavigation":"Mostrar navegación","hideNavigation":"Ocultar navegación","closeNavigation":"Cerrar navegación","showNotifications":"Mostrar notificaciones","hideNotifications":"Ocultar notificaciones","closeNotifications":"Cerrar notificaciones","codebases":"Bases de código","worktrees":"Árboles de trabajo","buildData":"Datos de compilación","builds":"Compilaciones","workflows":"Flujos de trabajo","commands":"Comandos","provisioningProfiles":"Perfiles de aprovisionamiento","devices":"Dispositivos","pushNotifications":"Notificaciones push","agents":"Agentes","usage":"Uso","github":"GitHub","pullRequests":"Solicitudes de extracción","actions":"Acciones","webhooks":"Webhooks","comments":"Comentarios","actionsCache":"Caché de Acciones","jira":"Jira","tickets":"Incidencias","cache":"Caché","system":"Sistema","polling":"Sondeo","skills":"Habilidades","tools":"Herramientas","debugging":"Depuración","consoleLogs":"Registros de consola","analyticsEvents":"Eventos analíticos","unifiedEvents":"Vista unificada","plans":"Planes","sessions":"Sesiones","drafts":"Borradores","credentials":"Credenciales","settings":"Configuración","costs":"Costes","newWorkflow":"Nuevo flujo de trabajo","newCommand":"Nuevo comando","newRun":"Nueva ejecución","enrollDevice":"Registrar dispositivo","skillGroups":"Grupos de habilidades","coverage":"Cobertura","edit":"Editar","enroll":"Inscribir","entries":"Entradas","groups":"Grupos","new":"Nuevo","repositories":"Repositorios","runs":"Ejecuciones","sync":"Sincronización","changes":"Cambios"},"globalSearch":{"title":"Buscar en la aplicación","description":"Busca páginas, recursos de desarrollo y actividad reciente.","open":"Abrir búsqueda global","button":"Buscar","placeholder":"Buscar páginas, tickets, ramas, compilaciones…","loading":"Buscando…","error":"No se pudieron buscar los recursos guardados. Los accesos a páginas siguen disponibles.","empty":"No se encontraron resultados.","noRecents":"Los destinos seleccionados aparecerán aquí para un acceso rápido.","recentBuilds":"Compilaciones recientes","recentWorkflowRuns":"Ejecuciones recientes de flujos","groups":{"recent":"Recientes","PAGES":"Páginas","WORKTREES":"Árboles de trabajo","TICKETS":"Incidencias","PULL_REQUESTS":"Solicitudes de extracción","REPOSITORIES":"Repositorios","CODEBASES":"Bases de código","WORKFLOWS":"Flujos de trabajo","GITHUB_ACTIONS":"Acciones de GitHub","BUILDS":"Compilaciones","AGENTS_JOBS":"Agentes y trabajos","PLANS_SESSIONS":"Planes y sesiones","COMMANDS_RUNS":"Comandos y ejecuciones","SKILLS":"Habilidades","DEVICES_PROFILES":"Dispositivos y perfiles"}},"actionCenter":{"title":"Centro de acciones","description":"Trabajo en curso, decisiones, fallos y compilaciones listas para ejecutar.","refresh":"Actualizar el centro de acciones","totalCount":"{count, plural, one {# elemento} other {# elementos}}","attentionCount":"{count, plural, one {# requiere atención} other {# requieren atención}}","activeCount":"{count, plural, one {# activo} other {# activos}}","emptyTitle":"No hay acciones pendientes","emptyDescription":"El trabajo activo y las nuevas decisiones aparecerán aquí automáticamente.","needsAttention":"Requiere atención","active":"Activo","noAttention":"Ningún elemento requiere atención ahora.","noActive":"No hay trabajo activo ahora.","loadMore":"Cargar más","miniLabel":"Centro de acciones compacto","miniEmpty":"No hay acciones pendientes.","kinds":{"PLAN":"Plan","SESSION":"Sesión","BUILD":"Compilación","WORKFLOW":"Flujo de trabajo"},"reasons":{"QUESTION":"Respuesta necesaria","BLOCKED":"Bloqueado","FAILED":"Fallido","UNRUN_BUILD":"Listo para ejecutar","ACTIVE":"Activo"},"acknowledge":"Confirmar","acknowledgeNamed":"Confirmar {name}","questionFrom":"Pregunta de {source}","customAnswerFor":"Respuesta personalizada para {question}","customAnswer":"Respuesta personalizada","submitAnswer":"Enviar respuesta"},"workflows":{"title":"Flujos de trabajo","descriptionLong":"Diseña, publica y supervisa automatizaciones de desarrollo duraderas.","workflowsTab":"Flujos de trabajo","allRuns":"Todas las ejecuciones","newWorkflow":"Nuevo flujo","search":"Buscar flujos y ejecuciones","refresh":"Actualizar","import":"Importar","export":"Exportar","duplicate":"Duplicar","actions":"Acciones","edit":"Editar","archive":"Archivar","enable":"Activar","enabled":"Activado","disabled":"Desactivado","pauseDefinition":"Pausar flujo","run":"Ejecutar","workflow":"Flujo","status":"Estado","trigger":"Desencadenador","generation":"Generación","started":"Iniciado","queued":"En cola","worktreeQueue":"Cola del árbol de trabajo","workflowQueue":"Cola","worktreeQueueDescription":"Orden combinado de admisión de flujos, planes y sesiones para este árbol. Las colas de planes y sesiones pueden avanzar por separado hasta que un flujo exclusivo llegue al inicio.","workflowQueueDescription":"Ejecuciones en cola del flujo y ejecuciones de IA iniciadas por él. Las posiciones son relativas a todo el trabajo en cola de cada árbol.","runQueueDescription":"Orden de admisión actual para el árbol de esta ejecución. Esta ejecución del flujo aparece resaltada en la lista.","queueEmpty":"La cola está vacía","queueEmptyDescription":"El trabajo nuevo puede comenzar sin esperar detrás de otra ejecución en cola.","queuePosition":"Posición","queueItem":"Ejecución","queueState":"Estado","queueWorktree":"Árbol de trabajo","queuedAt":"En cola","exclusive":"Exclusivo","currentRun":"Ejecución actual","empty":"No hay flujos que coincidan con esta vista.","noRuns":"Todavía no hay ejecuciones de flujos.","noDescription":"Sin descripción","versionCount":"{count, plural, one {# versión} other {# versiones}}","runCount":"{count, plural, one {# ejecución} other {# ejecuciones}}","editor":"Editor de flujos","editorDescription":"Arrastra pasos al lienzo, conecta controles tipados, valida y publica.","saveDraft":"Guardar borrador","saved":"Borrador guardado.","publish":"Publicar","published":"Versión inmutable del flujo publicada.","saveBeforePublish":"Guarda el flujo antes de publicarlo.","validationPassed":"Validación correcta.","validationFailed":"La validación encontró problemas que deben corregirse.","invalidImport":"El archivo importado no es una definición de flujo.","importLoaded":"Definición importada cargada como borrador.","workflowSettings":"Ajustes del flujo","settings":"Ajustes","lockToFit":"Fijar al encuadre","unlockView":"Desbloquear la vista","showSessionData":"Mostrar los datos de sesión","hideSessionData":"Ocultar los datos de sesión","lockSteps":"Fijar los pasos","unlockSteps":"Desbloquear los pasos","name":"Nombre","description":"Descripción","overlapPolicy":"Política de solapamiento","maxConcurrentRuns":"Máximo de ejecuciones simultáneas","exclusiveWorktree":"Reservar el árbol de trabajo para este flujo","exclusiveWorktreeHelp":"La ejecución espera a que termine el trabajo anterior y luego pone en cola otros flujos, planes y sesiones de este árbol hasta completarse. Sus propios pasos continúan normalmente.","completionNotifications":"Notificar cuando este flujo de trabajo finalice correctamente","completionNotificationsHelp":"Desactiva esta opción para omitir las notificaciones de finalización correcta. Las notificaciones de errores y de atención permanecen activadas.","connectorLayout":"Conectores de los pasos","connectorLayouts":{"SIDES":"En los lados","TOP_BOTTOM":"Arriba y abajo"},"displayLayout":"Diseño del visor","displayLayouts":{"REGULAR":"Normal","BASIC":"Básico"},"displayLayoutHelp":{"REGULAR":"Las vistas de solo lectura usan las posiciones creadas en el lienzo.","BASIC":"Las vistas de solo lectura alinean los pasos automáticamente según el ancho disponible. Las posiciones creadas no cambian."},"previewBasicLayout":"Vista previa del diseño básico","exitBasicPreview":"Salir de la vista previa","validate":"Validar","steps":"Pasos","outline":"Esquema","viewOutline":"Ver esquema","viewPalette":"Ver paleta","searchSteps":"Buscar pasos","triggers":"Desencadenadores","mutates":"Modifica","diagnostics":"Diagnósticos de validación","configurationJson":"Configuración (JSON)","applyConfiguration":"Aplicar configuración","requiredPaths":"Rutas requeridas adicionales","providedPaths":"Rutas proporcionadas adicionales","addsToSession":"Añade a los datos de sesión","seedsSession":"Inicializa los datos de sesión","addsToSessionEmpty":"Este paso no añade datos de sesión.","maxAttempts":"Intentos máximos","failurePolicy":"Política de fallo","idempotencyWarning":"Este paso cambia estado externo. Configura una estrategia de idempotencia y no reintentes a ciegas un resultado incierto.","duplicateNode":"Duplicar paso","deleteNode":"Eliminar nodo","deleteConnection":"Eliminar conexión","configuration":"Configuración","notSet":"Sin definir","noConfiguration":"Sin configuración","noRequiredPaths":"Este paso no requiere rutas de sesión.","retryStrategy":"Estrategia de reintento","retryStrategies":{"FIXED":"Espera fija","EXPONENTIAL":"Espera exponencial"},"retryDelay":"Espera de reintento","seconds":"{count, plural, one {# segundo} other {# segundos}}","advancedJson":"Avanzado (JSON sin formato)","advancedJsonHelp":"Edita como JSON los campos sin control de formulario.","extraKeys":"{count, plural, one {# clave adicional} other {# claves adicionales}}","configMustBeObject":"La configuración debe ser un objeto JSON.","selectPlaceholder":"Selecciona una opción","searchPlaceholder":"Buscar","noOptions":"Sin coincidencias","addRow":"Agregar","removeRow":"Quitar","recordKeyPlaceholder":"Clave","recordValuePlaceholder":"Valor","conditionMatchMode":"Coincidencia","conditionMatchAll":"Todas se cumplen","conditionMatchAny":"Alguna se cumple","conditionField":"Valor de sesión","conditionOperator":"Comparación","conditionValue":"Valor comparado","conditionValuePlaceholder":"Valor","addCondition":"Añadir comparación","conditionEmpty":"Todavía no hay comparaciones. Añade una para decidir qué rama se ejecuta.","conditionHelp":"La salida «true» se ejecuta cuando hay coincidencia; en caso contrario se ejecuta la salida «false». Los números y true/false se comparan con su tipo; entrecomilla un valor para compararlo como texto.","conditionAdvanced":"Esta condición anida grupos que el editor no puede mostrar. Edítala como JSON.","conditionOperators":{"EQ":"es igual a","NE":"no es igual a","CONTAINS":"contiene","NOT_CONTAINS":"no contiene","MATCHES":"coincide con la regex","NOT_MATCHES":"no coincide con la regex","GT":"es mayor que","GTE":"es al menos","LT":"es menor que","LTE":"es como máximo","EXISTS":"tiene valor","NOT_EXISTS":"no tiene valor"},"choiceOptionLabel":"Texto del botón","choiceOptionDescription":"Descripción (opcional)","addChoiceOption":"Añadir botón","choiceOptionsEmpty":"Todavía no hay botones. Añade las opciones que ofrece este paso.","choiceOptionsHelp":"Se muestran como botones mientras la ejecución espera una respuesta.","choiceOptionsAdvanced":"Estas opciones no son entradas simples de texto y descripción. Edítalas como JSON.","valueModeToggle":"Cambiar la fuente del valor","valueModeLiteral":"Usar un valor fijo","valueModeSession":"Vincular a datos de sesión","sessionBindingLabel":"Ruta de sesión","sessionPathPlaceholder":"p. ej. ticket.key","sessionBindingHelp":"Lee este valor de los datos de sesión al ejecutar.","interpolationHelp":"Usa {token} para insertar datos de sesión al ejecutar; por ejemplo, {example}.","modelProvider":"Proveedor","modelModel":"Modelo","modelEffort":"Esfuerzo","overlap":{"QUEUE":"Poner en cola cada evento","CONCURRENT":"Ejecutar simultáneamente","COALESCE_LATEST":"Conservar el último evento pendiente"},"overlapPolicies":{"QUEUE":"En cola","CONCURRENT":"Concurrente","COALESCE_LATEST":"Solo el último"},"failure":{"FAIL":"Hacer fallar el flujo","CONTINUE":"Continuar"},"statuses":{"QUEUED":"En cola","PENDING":"Pendiente","READY":"Listo","RUNNING":"En ejecución","WAITING":"En espera","BLOCKED":"Bloqueado","PAUSING":"Pausando","PAUSED":"En pausa","SUCCEEDED":"Completado","FAILED":"Fallido","CANCELLED":"Cancelado","SKIPPED":"Omitido","SUPERSEDED":"Reemplazado","TIMED_OUT":"Tiempo agotado"},"eventTypes":{"RUN_STARTED":"Ejecución iniciada","RUN_PAUSING":"Pausando la ejecución","RUN_PAUSED":"Ejecución en pausa","RUN_RESUMED":"Ejecución reanudada","RUN_CANCELLED":"Ejecución cancelada","RUN_SUCCEEDED":"Ejecución completada","RUN_FAILED":"Ejecución fallida","RUN_DATA_REPAIRED":"Datos reparados","RUN_REPLAYED":"Ejecución repetida","STEP_SUCCEEDED":"Paso completado","STEP_FAILED":"Paso fallido","STEP_BLOCKED":"Paso bloqueado","STEP_WAITING":"Paso en espera","STEP_RETRY_SCHEDULED":"Reintento programado","STEP_RECOVERY_BLOCKED":"Recuperación bloqueada","STEP_WAITING_FOR_RESOURCE":"Esperando el repositorio"},"diagnosticCodes":{"SCHEMA_INVALID":"Esquema no válido","DUPLICATE_NODE_ID":"ID de paso duplicado","DUPLICATE_EDGE_ID":"ID de conexión duplicado","EDGE_ENDPOINT_MISSING":"Falta un extremo de la conexión","TRIGGER_HAS_INPUT":"El activador tiene una entrada","TRIGGER_REQUIRED":"Se requiere un activador","STEP_REQUIRED":"Se requiere un paso","EXPLICIT_JOIN_REQUIRED":"Se requiere un paso de unión","DAG_CYCLE":"Ciclo en el gráfico","UNREACHABLE_STEP":"Paso inalcanzable","SECRET_LITERAL":"Secreto en texto plano","UNRESOLVED_REFERENCE":"Referencia sin resolver","SESSION_BINDING_INVALID":"Vínculo de sesión no válido","SUBWORKFLOW_VERSION_REQUIRED":"Se requiere la versión del subflujo","TRIGGER_DISCONNECTED":"Activador desconectado","RESOURCE_KIND_REQUIRED":"Se requiere el tipo de recurso","ISSUE_COMMAND_ALLOWLIST_REQUIRED":"Se requiere una lista de comandos permitidos","ISSUE_COMMAND_PATTERN_ANCHORED":"El patrón de comando debe estar anclado","REQUIREMENT_UNSATISFIED":"Requisito no satisfecho","PARALLEL_WRITE_CONFLICT":"Conflicto de escritura paralela","TRIGGER_CHOICES_REQUIRED":"Se requieren opciones del activador","TRIGGER_CHOICE_HANDLE_UNKNOWN":"Opción de activador desconocida"},"notFound":"Flujo no encontrado.","publishedVersion":"Versión publicada","runs":"Ejecuciones","graph":"Grafo del flujo","recentRuns":"Ejecuciones recientes","versionHistory":"Historial de versiones","version":"Versión","hash":"Hash del contenido","publishedAt":"Publicado","exportVersion":"Exportar versión {version}","unpublished":"Este flujo aún no se ha publicado.","runNotFound":"Ejecución de flujo no encontrada.","generationValue":"Generación {generation}","pause":"Pausar","resume":"Reanudar","cancelRun":"Cancelar ejecución","runGraph":"Grafo de ejecución en directo","repairData":"Reparar datos de sesión bloqueados","repairDataDescription":"Aplica un parche JSON atómico y reanuda la planificación desde el paso bloqueado.","applyRepair":"Aplicar reparación","questionFrom":"Pregunta de {step}","answer":"Responder","customAnswer":"Respuesta personalizada","answerOnRunPage":"Responder en la página de la ejecución","replay":"Repetir y rebobinar","replayDescription":"Previsualiza los descendientes afectados antes de crear una nueva generación inmutable.","selectReplayStep":"Seleccionar un paso","prepareReplay":"Preparar repetición","replayAffected":"{count, plural, one {Se repetirá # paso} other {Se repetirán # pasos}}","externalEffectsWarning":"Los efectos externos se conservan y no se revertirán:","replayWithoutRestore":"Repetir sin restaurar Git","restoreAndReplay":"Restaurar Git y repetir","stashRestoreReplay":"Guardar, restaurar y repetir","timeline":"Cronología","stepAttempts":"Intentos de paso","sessionData":"Datos de sesión","resources":"Recursos","noEvents":"No hay eventos registrados.","noResources":"No hay recursos enlazados.","open":"Abrir","step":"Paso","iteration":"Iteración","attempt":"Intento","duration":"Duración","error":"Error","resourceWorkflows":"Flujos enlazados","resourceWorkflowsDescription":"Ejecuta un flujo compatible o sigue este recurso durante una ejecución activa.","manageWorkflows":"Gestionar flujos","quickActions":"Acciones rápidas","quickActionsDescription":"Elige dónde aparece este flujo como acción rápida.","quickActionIcon":"Icono del botón","quickActionStyle":"Estilo del botón","quickActionStyles":{"default":"Predeterminado","outline":"Contorno","secondary":"Secundario","destructive":"Destructivo"},"quickActionKind":"Tipo de acción","quickActionKinds":{"STANDARD":"Estándar","MERGE_CONFLICT":"Conflicto de fusión","GITHUB_ACTIONS":"Acciones de GitHub","NONE":"Ninguna"},"quickActionKindHelp":{"STANDARD":"Mostrar con las acciones estándar del worktree.","MERGE_CONFLICT":"Mostrar cuando un rebase se detiene por conflictos.","GITHUB_ACTIONS":"Mostrar en los menús de pipelines y trabajos de GitHub.","NONE":"No mostrar como acción rápida."},"repositoryQuickActions":"Disponibilidad por repositorio","repositoryQuickActionsHelp":"Sin selección se permiten todos los repositorios; una selección crea una lista permitida.","noQuickActionRepositories":"Añade una base de código antes de asignar acciones rápidas por repositorio.","quickActionEligibility":"La acción aparece cuando el flujo está publicado, activado y tiene un disparador de recurso que coincide con el tipo de acción seleccionado.","saveQuickActions":"Guardar acciones rápidas","quickActionStarted":"Se inició {name}.","quickActionView":"Ver","runNamed":"Ejecutar {name}","fullRun":"Ejecución completa","openLinkedResource":"Abrir detalles vinculados","addTriggerChoice":"Añadir opción","triggerChoiceLabel":"Texto de la opción","triggerChoiceKey":"Clave de salida","triggerChoiceKeyDuplicate":"Otra opción ya usa esta clave.","triggerChoiceDescription":"Descripción (opcional)","triggerChoicesHelp":"Cada opción se convierte en un elemento del menú bajo el botón de ejecución y en una salida propia del activador.","triggerChoicesEmpty":"Aún no hay opciones. Añade las que se ofrecerán al iniciar este flujo de trabajo.","triggerChoicesAdvanced":"Estas opciones no son entradas simples de clave, texto y descripción. Edítalas como JSON.","active":"Activo","all":"Todos","archived":"Archivado","archiveFilter":"Filtro de archivo","cancel":"Cancelar","delete":"Eliminar","deleteRunDescription":"Se eliminarán la ejecución y todo su historial de pasos. Esta acción no se puede deshacer.","deleteRunTitle":"Eliminar ejecución del flujo de trabajo","done":"Hecho","editRuns":"Editar","restore":"Restaurar","selectAll":"Seleccionar todo","selectDay":"Seleccionar todo del {day}","selectRun":"Seleccionar ejecución #{id}","selectedRuns":"{count, plural, one {# ejecución seleccionada} other {# ejecuciones seleccionadas}}"},"runs":{"actions":"Acciones","active":"Activo","activeUsage":"Intentos activos","activity":"Actividad","activityDescription":"Actividad en directo y con búsqueda del proveedor y las herramientas para esta ejecución.","age":"Antigüedad","all":"Todos","allOrigins":"Todos los orígenes","allProviders":"Todas las herramientas","answerNeeded":"Respuesta necesaria","answer":"Respuesta","answeredQuestions":"Preguntas respondidas","archive":"Archivar","archiveFilter":"Filtro de archivo","archived":"Archivado","attachFiles":"Adjuntar archivos","attachmentLimits":"Hasta 25 MB por archivo y 100 MB en total.","attachments":"Archivos adjuntos","attachmentsTooLarge":"Los archivos seleccionados superan el límite de entrada de 100 MB.","auto":"Automático","cacheReadTokens":"Caché leída","cacheTokens":"Tokens de caché","cacheWriteTokens":"Caché escrita","cancel":"Cancelar","cancelAndTransfer":"Cancelar la ejecución principal y transferir el árbol de trabajo","changesSnapshots":"Cambios","changesSnapshotsDescription":"Puntos de control de Git capturados durante esta ejecución.","checkpointKinds":{"ANSWER_ROLLBACK":"Reversión de la respuesta","CONTINUE":"Continuación","FINAL":"Final","PRE_ANSWER_REVISION":"Antes de la revisión","QUESTION":"Pregunta","START":"Inicio"},"chooseModel":"Elegir un modelo","continue":"Continuar","copied":"Copiado","copy":"Copiar","cost":"Coste","crossProviderWarning":"El estado oculto del proveedor no se puede transferir entre herramientas. Elige como contexto la transcripción visible o el resumen final.","customAnswer":"Respuesta personalizada","delete":"Eliminar","deleted":"Eliminado","deleteDescription":"El historial nativo del proveedor se eliminará antes que este registro local. Esta acción no se puede deshacer.","deleteDraftDescription":"¿Eliminar de forma permanente el borrador seleccionado? Esta acción no se puede deshacer.","deleteDraftTitle":"Eliminar borrador","deleteTitle":"Eliminar ejecución","detached":"HEAD desacoplado","done":"Hecho","drafts":"Borradores","draftsDescription":"Prompts guardados que puedes iniciar más tarde como plan o sesión.","edit":"Editar","editAnswer":"Editar respuesta","editDraft":"Editar borrador","effort":"Esfuerzo","empty":"No hay elementos: {kind}","emptyDescription":"No se encontraron ejecuciones coincidentes.","estimatedCost":"Coste estimado","eventTypes":{"ASSISTANT":"Asistente","ERROR":"Error","QUESTION":"Pregunta","RESULT":"Resultado","SYSTEM":"Sistema","TOOL":"Herramienta","USER":"Usuario"},"export":"Exportar","exportJson":"Exportar como JSON","exportMarkdown":"Exportar como Markdown","exportSession":"Exportar sesión de {tool} (JSONL)","exportSessionFile":"Descargar archivo original de {tool}","fileTooLarge":"{name} supera el límite de 25 MB por archivo.","followUp":"Seguimiento","followUpDescription":"Crea una ejecución relacionada con contexto reanudado, nuevo o reenviado.","followUpModes":{"ANSWER_REVISION":"Revisión de la respuesta","FRESH":"Nuevo","PLAN_PLAY":"Ejecución del plan","RESEND":"Reenviar","RESUME":"Reanudar"},"followUpPrompt":"Prompt de seguimiento","fresh":"Nuevo","id":"ID","imported":"Importado","importedCollisionWarning":"Esta sesión administrada externamente está activa en un árbol de trabajo reservado por otra sesión administrada. La aplicación no puede controlar su concurrencia.","inputTokens":"Tokens de entrada","jiraTicket":"Incidencia de Jira","linkedItems":"Elementos vinculados","linkedItemsDescription":"Plan de origen y ejecuciones principales y secundarias relacionadas con esta ejecución.","loading":"Cargando…","loadMore":"Cargar más","loadingMore":"Cargando más…","managed":"Administrado","mode":"Modo","model":"Modelo","modelEffort":"Modelo / esfuerzo","newDraft":"Nuevo borrador","newRun":"Nuevo: {kind}","noActivity":"Ninguna actividad coincide con esta búsqueda.","noChanges":"No hay puntos de control de Git disponibles.","noDetail":"Sin detalles adicionales","noDrafts":"No se encontraron borradores coincidentes.","noRollbackChanges":"No se deshará ningún cambio de contenido del árbol de trabajo.","normalizedContext":"Transcripción visible","origin":"Origen","outputTokens":"Tokens de salida","parentRun":"Ejecución principal","pause":"Pausar","pausedFollowUpDescription":"Al iniciar una ejecución secundaria reanudada, se cancela esta sesión pausada y se transfiere atómicamente su reserva del árbol de trabajo.","pausedFollowUpTitle":"Transferir sesión pausada","phases":{"ANSWER_FAILED":"Error al responder","ANSWER_REVISION_PREPARING":"Preparando revisión","ANSWER_REVISION_QUEUED":"Revisión en cola","ANSWER_REVISION_READY":"Revisión lista","CANCELLED":"Cancelado","CANCEL_FAILED":"Error al cancelar","CANCEL_REQUESTED":"Cancelación solicitada","COMPLETED":"Completado","CONTINUE_FAILED":"Error al continuar","DELETE_NATIVE_FAILED":"Error al eliminar en la herramienta","DELETE_REQUESTED":"Eliminación solicitada","FAILED":"Fallido","IMPORTED_ACTIVE_COLLISION":"Importado: conflicto de árbol de trabajo","IMPORTED_SYNCED":"Importado y sincronizado","IN_PROGRESS":"En curso","PAUSED":"Pausado","PAUSE_FAILED":"Error al pausar","PAUSE_REQUESTED":"Pausa solicitada","PLAY_PLAN_FAILED":"Error al ejecutar el plan","PREPARE_ANSWER_REVISION_FAILED":"Error al preparar la revisión","QUEUED":"En cola","RECOVERY_PAUSED":"Pausado tras la recuperación","REVISE_ANSWER_FAILED":"Error en la revisión","RUNNING":"En ejecución","START_FAILED":"Error al iniciar","STEER_FAILED":"Error al guiar","SUPERSEDED_BY_ANSWER_REVISION":"Reemplazado por la revisión de la respuesta","SUPERSEDED_BY_FOLLOW_UP":"Reemplazado por un seguimiento","WAITING_FOR_ANSWER":"Esperando respuesta","WAITING_FOR_WORKTREE":"Esperando el árbol de trabajo"},"pinPreset":"Fijar como preajuste","plan":"Plan","planMutationWarning":"Este plan de solo lectura modificó inesperadamente el árbol de trabajo seleccionado.","plans":"Planes","plansDescription":"Planes de solo lectura que analizan un código y proponen trabajo sin modificarlo.","play":"Ejecutar plan","presets":"Preajustes","recentModels":"Recientes","prompt":"Prompt","promptPlaceholder":"Describe lo que debe hacer el agente…","prepareRevision":"Preparando la reversión…","provider":"Herramienta","raw":"Sin procesar","reasoningTokens":"Tokens de razonamiento","revisionDescription":"El árbol de trabajo seleccionado se restaurará al punto de control inmediatamente anterior a esta pregunta y una nueva sesión vinculada continuará con la respuesta revisada. La sesión anterior permanecerá disponible como historial de auditoría.","revisionDescriptionNoRollback":"El árbol de trabajo conservará sus cambios actuales y una nueva sesión vinculada continuará con la respuesta revisada. La sesión anterior permanecerá disponible como historial de auditoría.","rollbackChanges":"Deshacer los cambios del árbol de trabajo posteriores a esta pregunta","rollbackChangesHint":"Desactívalo para conservar los cambios actuales del árbol de trabajo en lugar de restaurar el punto de control anterior a esta pregunta.","rollbackDiff":"Cambios que se desharán","removeAttachment":"Eliminar {name}","rendered":"Renderizado","repoBranch":"Repositorio / rama","resend":"Reenviar","resendPrompt":"Edita el prompt original antes de reenviarlo sin el contexto anterior.","restore":"Restaurar","resume":"Reanudar","run":"Ejecutado","runNotFound":"No se encontró la ejecución.","saveDraft":"Guardar borrador","confirmRevision":"Iniciar sesión revisada","search":"Buscar {kind}","searchActivity":"Buscar actividad","searchDrafts":"Buscar borradores","searchWorktrees":"Buscar árboles de trabajo","selectDraft":"Seleccionar borrador","selected":"{count, plural, one {# seleccionado} other {# seleccionados}}","selectRun":"Seleccionar ejecución #{id}","selectWorktree":"Seleccionar un árbol de trabajo","send":"Enviar","session":"Sesión","showingCount":"Se muestran {count} de {total}","sessions":"Sesiones","sessionsDescription":"Sesiones gestionadas del proveedor que se ejecutan sobre un worktree.","start":"Iniciar","startDescription":"Inicia un plan o una sesión administrados en el árbol de trabajo seleccionado.","mcpPresets":"Preajustes de herramientas MCP","mcpPresetsDescription":"Concede a esta ejecución solo las herramientas integradas de los preajustes seleccionados. No hay ninguna selección predeterminada.","playPlan":"Ejecutar plan","playPlanDescription":"Elige preajustes MCP habilitados para sesiones para la nueva ejecución de implementación.","startFollowUp":"Iniciar seguimiento","startTitle":"Iniciar un prompt","status":"Estado","statuses":{"CANCELLED":"Cancelado","COMPLETED":"Completado","FAILED":"Fallido","IN_PROGRESS":"En curso","PAUSED":"Pausado","QUEUED":"En cola"},"stashBeforeRollback":"Guardar en el stash los cambios actuales, con y sin seguimiento, antes de restaurar","stashCreated":"Stash creado","steer":"Guiar","steerDescription":"Envía instrucciones al turno activo del proveedor. Las instrucciones esperan detrás de las preguntas pendientes.","steerPlaceholder":"Añade instrucciones para el agente en ejecución…","submitAnswers":"Enviar respuestas","summary":"Resumen","summaryOnly":"Solo el resumen final","superseded":"Reemplazado","ticket":"Incidencia","tool":"Herramienta","toolCallStatuses":{"COMPLETED":"Completado","FAILED":"Fallido","OBSERVED":"Observado"},"toolCalls":"Llamadas a herramientas","unpinPreset":"Quitar preajuste","unrestrictedWarning":"Las sesiones se ejecutan sin solicitudes de aprobación y con acceso sin restricciones mientras mantienen una reserva exclusiva del árbol de trabajo.","uploadFailed":"No se pudo subir el archivo adjunto.","usageCost":"Uso y coste estimado","usageState":"Uso de los intentos","webSearch":"Búsqueda web","webSearchDescription":"Activa la herramienta nativa de búsqueda web del proveedor cuando sea compatible.","worktree":"Árbol de trabajo","reportedCost":"Informado por el proveedor","catalogCost":"Catálogo de costes de modelos","selectAll":"Seleccionar todo","selectDay":"Seleccionar todo del {day}"},"notifications":{"title":"Notificaciones","description":"Consulta el historial y elige cómo recibir cada evento.","deliverySetup":"Entrega en el navegador","deliverySetupDescription":"El permiso del navegador y la suscripción Web Push se configuran por separado para este navegador.","browserAlerts":"Alertas del navegador","browserUnsupported":"Las alertas del navegador no son compatibles aquí.","enabled":"Activado","enable":"Activar","webPush":"Push web","pushUnsupported":"Web Push requiere un navegador compatible y un contexto HTTPS seguro.","pushSubscribed":"Este navegador está suscrito.","pushNotSubscribed":"Este navegador no está suscrito.","subscriptionCount":"{count, plural, one {# navegador suscrito} other {# navegadores suscritos}}","subscribedBrowsers":"Navegadores suscritos","subscribedBrowsersDescription":"Envía una notificación de prueba o elimina navegadores que ya no deban recibir Web Push.","browser":"Navegador","pushService":"Servicio push","locale":"Configuración regional","lastSeen":"Última actividad","actions":"Acciones","noSubscribedBrowsers":"No hay navegadores suscritos a Web Push.","current":"Actual","test":"Probar","testSent":"Enviada","remove":"Eliminar","removeBrowser":"Eliminar {browser}","removeBrowserTitle":"¿Eliminar este navegador suscrito?","removeBrowserDescription":"Este navegador dejará de recibir notificaciones Web Push. Podrá volver a suscribirse más adelante.","unknownBrowser":"Navegador desconocido","subscribe":"Suscribirse","unsubscribe":"Cancelar suscripción","permissionRequired":"Se requiere permiso de notificaciones para Web Push.","pushKeyUnavailable":"La clave pública de Web Push no está disponible.","pushSubscriptionInvalid":"El navegador devolvió una suscripción push no válida.","iosInstallHelp":"En iPhone o iPad, instala esta app desde Compartir → Añadir a pantalla de inicio antes de suscribirte a Web Push.","preferences":"Tipos de notificación","preferencesDescription":"Los canales son independientes. Navegador y Web Push pueden mostrar ambas alertas.","notificationType":"Tipo","sidebarChannel":"Barra lateral","browserChannel":"Navegador","pushChannel":"Push web","toggleChannel":"Cambiar {channel} para {type}","history":"Historial","settingsTab":"Configuración","refresh":"Actualizar","historyCount":"{count, plural, one {# notificación} other {# notificaciones}}","historyEmpty":"Todavía no hay notificaciones.","notification":"Notificación","channels":"Canales","received":"Recibida","edit":"Editar","done":"Listo","deleteSelected":"Eliminar selección","deleteAll":"Eliminar todo","deleteAllTitle":"¿Eliminar todo el historial de notificaciones?","deleteAllDescription":"Esto elimina permanentemente todas las notificaciones de la base de datos.","selectedCount":"{count} seleccionadas","allSelected":"Todas las notificaciones seleccionadas","selectAll":"Seleccionar todas las notificaciones","selectDay":"Seleccionar notificaciones del {day}","selectNotification":"Seleccionar {title}","dismiss":"Descartar","dismissOne":"Descartar {title} de la barra lateral","openBuild":"Abrir compilación","openWorktree":"Abrir árbol de trabajo","delete":"Eliminar","confirmDelete":"Confirmar eliminación","mute":"Silenciar sonidos de notificación","unmute":"Activar sonidos de notificación","clearAll":"Limpiar todo","clearSidebar":"Limpiar barra lateral","clearSidebarTitle":"¿Limpiar la barra de notificaciones?","clearSidebarDescription":"Las notificaciones se quitarán de la barra lateral, pero permanecerán en el historial.","sidebarEmpty":"No hay notificaciones nuevas.","cancel":"Cancelar","permissions":{"default":"El permiso aún no se ha solicitado.","granted":"Permiso concedido para este navegador.","denied":"El permiso está bloqueado en la configuración del navegador."},"types":{"IOS_BUILD_SUCCEEDED":{"title":"Compilación de iOS completada","description":"Una compilación de iOS termina correctamente."},"IOS_BUILD_FAILED":{"title":"Error en la compilación de iOS","description":"Una compilación de iOS termina con un error."},"COMMAND_RUN_SUCCEEDED":{"title":"Ejecución de comando completada","description":"Un comando guardado finaliza correctamente."},"COMMAND_RUN_FAILED":{"title":"Ejecución de comando fallida","description":"Un comando guardado finaliza con un error."},"GITHUB_ACTIONS_SUCCEEDED":{"title":"GitHub Actions completado","description":"Un flujo de GitHub Actions termina correctamente."},"GITHUB_ACTIONS_FAILED":{"title":"Error en GitHub Actions","description":"Un flujo de GitHub Actions termina con un error."},"RUN_NEEDS_ANSWER":{"title":"El plan o la sesión necesita una respuesta","description":"Un plan o una sesión gestionada solicita datos al usuario."},"RUN_COMPLETED":{"title":"Plan o sesión completada","description":"Un plan o una sesión gestionada se completa correctamente."},"RUN_FAILED":{"title":"Plan o sesión fallida","description":"Un plan o una sesión gestionada falla."},"RUN_CANCELLED":{"title":"Plan o sesión cancelada","description":"Un plan o una sesión gestionada se cancela."},"RUN_RECOVERY_PAUSED":{"title":"Plan o sesión en pausa tras la recuperación","description":"Un plan o una sesión gestionada se pausa tras reiniciarse su agente."},"WORKFLOW_MESSAGE":{"title":"Mensaje de flujo de trabajo","description":"Un flujo de trabajo envía una notificación genérica."},"WORKFLOW_NEEDS_ATTENTION":{"title":"El flujo de trabajo necesita atención","description":"Un flujo de trabajo espera datos o una decisión."},"WORKFLOW_COMPLETED":{"title":"Flujo de trabajo completado","description":"Una ejecución de flujo de trabajo se completa correctamente."},"WORKFLOW_FAILED":{"title":"Flujo de trabajo fallido","description":"Una ejecución de flujo de trabajo falla."},"WORKFLOW_RECOVERY_PAUSED":{"title":"Flujo de trabajo en pausa tras la recuperación","description":"Un flujo de trabajo se pausa mientras recupera trabajo duradero."}},"categories":{"BUILDS":"Compilaciones","COMMANDS":"Comandos","GITHUB":"GitHub","RUNS":"Planes y sesiones","WORKFLOWS":"Flujos de trabajo"}},"credentialEncryption":{"title":"Las credenciales de la base de datos no están cifradas","description":"Los secretos guardados en la base de datos de la aplicación están actualmente en texto plano. Genera una clave de 32 bytes con este comando:","instructionsPrefix":"Configura el valor generado como","instructionsSuffix":"en el entorno del servidor y reinícialo. Las credenciales existentes en texto plano se cifrarán juntas después del reinicio.","backup":"Guarda una copia segura de esta clave durante toda la vida de las filas cifradas. Si se pierde o cambia, esas credenciales quedarán ilegibles."},"credentials":{"title":"Credenciales","description":"Consulta el backend activo, el estado de protección y un inventario que solo contiene metadatos. Los valores secretos nunca se muestran aquí.","refresh":"Actualizar","loading":"Cargando el inventario de credenciales…","loadFailed":"No se pudo cargar el inventario de credenciales","storageTitle":"Almacenamiento de credenciales","storageDescription":"Configuración de ejecución y detalles seguros de ubicación del backend seleccionado.","backend":"Sistema de almacenamiento","protection":"Protección","itemCount":"Elementos guardados","mismatchCount":"Incompatibilidades de backend","inventoryTitle":"Credenciales guardadas","inventoryDescription":"Esta tabla solo contiene identificadores y metadatos de protección. Gestiona cada valor desde su configuración correspondiente.","feature":"Función propietaria","kind":"Tipo de credencial","updated":"Actualizado","emptyTitle":"No hay credenciales guardadas","emptyDescription":"Las credenciales aparecerán aquí después de guardarlas desde su formulario de configuración.","emptyDescriptionVault":"No se encontraron credenciales en el punto de montaje y el prefijo de ruta de Vault configurados. Guarda una desde su formulario de configuración o comprueba que el montaje y el prefijo coincidan con el Vault que las contiene.","states":{"READY":"Listo","WARNING":"Advertencia","ERROR":"Error"},"backends":{"DATABASE":"Base de datos","VAULT":"Vault de HashiCorp","KEYCHAIN":"Llavero de macOS","UNKNOWN":"Desconocido"},"encryptionStates":{"ENCRYPTED":"Cifrado","PLAINTEXT":"Texto plano","EXTERNAL":"Backend externo","ERROR":"No disponible"},"protections":{"ENCRYPTED":"Cifrado AES-256-GCM","PLAINTEXT":"Texto plano","VAULT":"Almacén Vault KV v2","KEYCHAIN":"Llavero"},"features":{"jira":"Integración con Jira","github":"Integración con GitHub","cache":"Caché de Actions","mcp":"Servidor MCP externo","ios":"Dispositivos iOS","push":"Notificaciones push","notifications":"Notificaciones"},"kinds":{"jira-api-token":"Token de API","github-personal-access-token":"Token de acceso personal","github-app-private-key":"Clave privada de GitHub App","github-app-webhook-secret":"Secreto del webhook de GitHub App","cache-server-api-key":"Clave de API","cache-server-headers":"Paquete de cabeceras personalizadas","external-mcp-server-headers":"Paquete de cabeceras","ios-profile-signer-private-key":"Clave privada del firmante de perfiles","app-store-connect-private-key":"Clave privada de App Store Connect","apns-token-private-key":"Clave privada del token APNs","apns-certificate-bundle":"Paquete de certificado APNs","web-push-vapid-private-key":"Clave privada VAPID de push web"},"details":{"configuredValue":"Valor configurado","location":"Ubicación","encryptionKey":"Clave de cifrado","service":"Servicio","hostPlatform":"Plataforma del host","address":"Dirección","mount":"Montaje KV v2","pathPrefix":"Prefijo de ruta","namespace":"Espacio de nombres","authenticationToken":"Token de autenticación","additionalHeaders":"Nombres de cabeceras adicionales","customCa":"CA personalizada","tlsServerName":"Nombre de servidor TLS","vaultAccess":"Acceso a Vault"},"detailValues":{"configured":"Configurado","notConfigured":"Sin configurar","none":"Ninguna","invalid":"No válido","applicationDatabase":"Base de datos de la aplicación","readOnly":"Solo lectura","readWrite":"Lectura y escritura"},"warningTitles":{"DATABASE_UNENCRYPTED":"El cifrado de la base de datos está desactivado","CREDENTIAL_ENCRYPTION_KEY_INVALID":"La clave de cifrado no es válida","CREDENTIAL_ENCRYPTION_KEY_MISSING":"Falta la clave de cifrado","CREDENTIAL_ENCRYPTION_KEY_MISMATCH":"La clave de cifrado no coincide","CREDENTIAL_DATA_INVALID":"Los datos de credenciales no son válidos","CREDENTIAL_STORAGE_TYPE_INVALID":"El tipo de almacenamiento no es válido","CREDENTIAL_STORE_UNAVAILABLE":"El almacén de credenciales no está disponible","CREDENTIAL_STORE_READ_ONLY":"El almacén de credenciales es de solo lectura","VAULT_CONFIGURATION_INVALID":"La configuración de Vault no es válida","VAULT_INSECURE_HTTP":"Vault usa HTTP sin cifrar","VAULT_TLS_VERIFICATION_DISABLED":"La verificación del certificado de Vault está desactivada","VAULT_READ_ONLY_IGNORED":"La opción de solo lectura no se aplica","VAULT_ADOPTION_FAILED":"No se pudieron adoptar las credenciales existentes","KEYCHAIN_UNSUPPORTED_PLATFORM":"El llavero no es compatible con este host","BACKEND_MISMATCH":"Hay credenciales en otro backend"},"warnings":{"DATABASE_UNENCRYPTED":"Las credenciales de la base de datos se guardan en texto plano hasta que se configure una clave de cifrado.","CREDENTIAL_ENCRYPTION_KEY_INVALID":"CREDENTIAL_ENCRYPTION_KEY debe ser una codificación Base64 estricta de exactamente 32 bytes. Corrígela y reinicia el servidor; una clave no válida nunca usa texto plano como alternativa.","CREDENTIAL_ENCRYPTION_KEY_MISSING":"Hay credenciales cifradas, pero falta la clave. Restaura la clave original y reinicia el servidor.","CREDENTIAL_ENCRYPTION_KEY_MISMATCH":"La clave configurada no coincide con las credenciales existentes. Restaura la clave original y reinicia el servidor.","CREDENTIAL_DATA_INVALID":"Uno o más registros de credenciales contienen metadatos no válidos y no se pueden utilizar.","CREDENTIAL_STORAGE_TYPE_INVALID":"CREDENTIAL_STORAGE_TYPE debe ser database, vault o keychain.","CREDENTIAL_STORE_UNAVAILABLE":"No se pudo inicializar el almacén de credenciales. Revisa la configuración y los registros del servidor.","CREDENTIAL_STORE_READ_ONLY":"Esta instalación puede leer las credenciales de Vault, pero no modificarlas. Gestiona los secretos desde una instalación con permisos de escritura o borra CREDENTIAL_VAULT_READ_ONLY y concede capacidades de escritura al token.","VAULT_CONFIGURATION_INVALID":"Vault no puede iniciarse con las variables de entorno actuales. Revisa la dirección, las cabeceras, la ruta y la configuración TLS.","VAULT_INSECURE_HTTP":"El tráfico de Vault, los secretos y las cabeceras de autenticación no están protegidos durante el tránsito por HTTP.","VAULT_TLS_VERIFICATION_DISABLED":"VAULT_SKIP_VERIFY permite certificados no confiables y expone el tráfico de Vault a interceptación.","VAULT_READ_ONLY_IGNORED":"CREDENTIAL_VAULT_READ_ONLY solo se aplica al almacenamiento en Vault y el backend actual lo ignora. Las credenciales de esta instalación se pueden seguir modificando.","VAULT_ADOPTION_FAILED":"Las credenciales que ya estaban en el backend externo no se pudieron leer al iniciar, por lo que faltan en este inventario. Comprueba la conexión con el backend y las capacidades del token, y reinicia el servidor.","KEYCHAIN_UNSUPPORTED_PLATFORM":"El llavero de macOS solo está disponible cuando el host de Next.js se ejecuta en macOS. El servidor sigue disponible, pero las operaciones de credenciales fallarán.","BACKEND_MISMATCH":"{count} credencial(es) se guardaron con otro backend. Vuelve a introducirlas desde sus formularios de configuración; los valores no se mueven ni eliminan automáticamente."},"readOnlyBadge":"Solo lectura","readOnlyNotice":"Esta instalación tiene acceso de solo lectura a Vault, por lo que este secreto no se puede cambiar aquí. Actualízalo desde una instalación con permisos de escritura.","adopted":"{count} credencial(es) se adoptaron del backend externo al iniciar el servidor."},"agents":{"title":"Agentes","description":"Gestiona los Macs inscritos y los trabajos duraderos desde un único plano de control.","refresh":"Actualizar","enroll":"Registrar agente","enrollmentTitle":"Comando de registro de un solo uso","enrollmentDescription":"Ejecuta este comando en el Mac después de instalar control-agent. El Mac se conecta de forma saliente; no abre ningún puerto de escucha.","serverAddress":"Dirección del servidor","customServerAddress":"Dirección de servidor personalizada","headers":"Cabeceras de Cloudflare Access","headersDescription":"Estos valores solo se añaden al comando y se guardan en la configuración local del agente.","addHeader":"Añadir cabecera","header":"cabecera","headerName":"Clave de cabecera","headerValue":"Valor de cabecera","removeHeader":"Eliminar {name}","copy":"Copiar comando","copyFailed":"No se pudo copiar el comando. Selecciónalo y cópialo manualmente.","expires":"El token caduca el {date}","loading":"Cargando agentes…","emptyTitle":"No hay agentes registrados","emptyDescription":"Crea un comando de registro para vincular tu primer Mac.","version":"Versión","platform":"Plataforma","lastSeen":"Visto por última vez","never":"Nunca"},"usage":{"title":"Uso","description":"Consulta el uso de tokens y el coste de todos los Macs registrados.","refresh":"Actualizar uso","agentFilterLabel":"Filtrar uso por agente","allAgents":"Todos los agentes","searchAgents":"Buscar agentes…","noAgentsFound":"No se encontraron agentes.","rangeLabel":"Intervalo de uso","allData":"Todos los datos","last7Days":"7 días","last30Days":"30 días","loading":"Cargando agentes…","noAgents":"No hay agentes registrados","noAgentsDescription":"Registra un Mac antes de recopilar el uso.","noCompatible":"No hay agentes compatibles en línea","noCompatibleDescription":"Actualiza control-agent en un Mac en línea para añadir la función ccusage.","noOnline":"No hay agentes en línea","noOnlineDescription":"Conecta un Mac registrado antes de recopilar el uso.","collectionFailed":"Falló la recopilación de uso","collectionFailedDescription":"Ningún agente devolvió un informe ccusage válido. Revisa los errores anteriores e inténtalo de nuevo.","zeroUsage":"No se encontró uso","zeroUsageDescription":"Los agentes respondieron correctamente, pero ccusage no encontró uso diario.","noUsageInRange":"No hay uso en este intervalo","noUsageInRangeDescription":"Elige un intervalo más amplio para ver el uso anterior.","progress":"{complete} de {total} agentes compatibles informaron","offlineAgents":"Sin conexión: {agents}","unsupportedAgents":"Actualización necesaria: {agents}","failedAgents":"Con errores: {agents}","costChartTitle":"Coste diario por modelo","costChartDescription":"Uso diario acumulado en USD para el intervalo seleccionado.","costChartLegendHint":"Selecciona un modelo en la leyenda para mostrarlo por separado.","costChartShowingOnly":"Se muestra solo {model}. Selecciónalo de nuevo para mostrar todos los modelos.","costChartShowOnlyModel":"Mostrar solo {model}","costChartShowAllModels":"Mostrar todos los modelos","summaryFilteredByModel":"Los totales siguientes corresponden solo a {model}.","totalCost":"Coste total","totalTokens":"Tokens totales","inputTokens":"Tokens de entrada","outputTokens":"Tokens de salida","cacheCreationTokens":"Tokens de creación de caché","cacheReadTokens":"Tokens de lectura de caché","usage":"Uso","input":"Entrada","output":"Salida","cacheCreation":"Creación de caché","cacheRead":"Lectura de caché","total":"Total","cost":"Coste","grandTotal":"Total general","unattributedTokens":"Tokens sin atribuir","modelCount":"{count} modelos","agentCount":"{count} agentes","showModels":"Mostrar modelos del {date}","hideModels":"Ocultar modelos del {date}","showAgents":"Mostrar agentes que usan {model}","hideAgents":"Ocultar agentes que usan {model}"},"agentDetail":{"loading":"Cargando agente…","notFound":"No se encontró el agente.","version":"Versión","lastSeen":"Visto por última vez","never":"Nunca","generalInformation":"Información general","generalInformationDescription":"El hardware y el uso de recursos se actualizan con cada señal del agente.","cpuModel":"Modelo de CPU","operatingSystem":"Sistema operativo","architecture":"Arquitectura","ipAddress":"Dirección IP","memory":"Memoria","disk":"Espacio en disco","used":"Usado","free":"Libre","unavailable":"No disponible","capabilities":"Capacidades","capabilitiesDescription":"Busca las capacidades anunciadas por este agente, ejecuta una e inspecciona su respuesta en vivo.","searchCapabilities":"Buscar capacidades","searchCapabilitiesPlaceholder":"Buscar nombres de capacidades…","noMatchingCapabilities":"Ninguna capacidad coincide con esta búsqueda.","capability":"Capacidad","kind":"Tipo","event":"Evento","job":"Trabajo","expandCapability":"Expandir {capability}","collapseCapability":"Contraer {capability}","eventCapabilityDescription":"Este evento solicita una reconciliación inmediata de las bases de código y no acepta datos.","payload":"Datos (objeto JSON)","invoke":"Ejecutar capacidad","invokeOffline":"Conecta este agente antes de ejecutar una capacidad.","noCapabilityResponse":"Ejecuta la capacidad para ver su respuesta.","codebases":"Bases de código","codebasesDescription":"Bases de código registradas en este agente.","noCodebases":"No hay bases de código registradas en este agente.","repository":"Repositorio","status":"Estado","created":"Creado","finished":"Finalizado","selectJob":"Seleccionar {kind}","queuing":"Añadiendo a la cola…","run":"Ejecutar","history":"Historial de trabajos","noJobs":"No se ha ejecutado ningún trabajo en este agente.","cadenceSettings":"Frecuencia del agente","cadenceSettingsDescription":"Ajusta la frecuencia con la que este agente realiza tareas periódicas del plano de control y de los repositorios. El análisis y fetch parten de los valores globales; al guardar se establecen los valores de este agente. Todos los valores están en segundos.","codebaseScanCadence":"Análisis de código base (segundos)","codebaseScanCadenceHelp":"Inspecciona los repositorios registrados e informa del estado de ramas, sincronización, disponibilidad y worktrees. Elige un entero de {min} a {max}.","jobReconciliationCadence":"Conciliación de trabajos duraderos (segundos)","jobReconciliationCadenceHelp":"Consulta el plano de control en busca de trabajos en cola, en ejecución o cancelados para recuperar el trabajo tras eventos perdidos o un reinicio del agente. Elige un entero de {min} a {max}.","gitFetchCadence":"Git fetch (segundos)","gitFetchCadenceHelp":"Ejecuta git fetch origin cuando un código base registrado no se ha actualizado dentro de este intervalo. Elige un entero de {min} a {max}.","heartbeatCadence":"Latido del agente (segundos)","heartbeatCadenceHelp":"Informa al plano de control sobre la conexión, el inventario del agente y el uso actual de recursos. Elige un entero de {min} a {max}.","saveCadenceSettings":"Guardar frecuencia","cadenceSettingsSaved":"Frecuencia del agente guardada.","baseRepoDirectory":"Directorio base de repositorios","baseRepoDirectoryDescription":"Elige la carpeta de este agente que contiene sus repositorios. Las rutas de los worktrees que estén dentro se mostrarán relativas a esta carpeta.","currentDirectory":"Directorio actual","notConfigured":"Sin configurar","useDirectory":"Usar este directorio","clearDirectory":"Borrar directorio","directoryBrowsingUnavailable":"Conecta este agente y actualízalo si es necesario para explorar directorios.","derivedDataLocation":"Derived Data de Xcode","derivedDataLocationDescription":"Elige dónde guarda este agente el DerivedData de Xcode.","derivedDataMode":"Modo de ubicación","derivedDataDefault":"Ubicación predeterminada de Xcode","derivedDataAbsolute":"Directorio absoluto personalizado","derivedDataRelative":"Relativo a cada árbol de trabajo","derivedDataAbsolutePath":"Directorio absoluto","derivedDataRelativePath":"Ruta de carpeta relativa","derivedDataAbsoluteHelp":"Introduce una ruta absoluta en este agente o elige un directorio existente.","derivedDataRelativeHelp":"Esta carpeta se comprueba bajo cada árbol de trabajo activo registrado.","saveDerivedDataSettings":"Guardar configuración de Derived Data","buildsDirectory":"Directorio de compilaciones","buildsDirectoryDescription":"Los registros, productos copiados, archivos y exportaciones se guardan en una carpeta por compilación. De forma predeterminada se añade /Builds al directorio base de repositorios, salvo que se indique otro aquí.","browseBuildsDirectory":"Explorar directorio de compilaciones","effectiveDirectory":"Directorio efectivo","agentDefault":"Valor predeterminado del repositorio base","customBuildsDirectory":"Directorio absoluto personalizado","saveBuildsDirectory":"Guardar directorio de compilaciones","useAgentDefault":"Usar valor predeterminado del repositorio base","deleteAgent":"Eliminar agente","deleteAgentTitle":"¿Eliminar este agente?","deleteAgentDescription":"Eliminar permanentemente {name} y todos sus trabajos y registros de bases de código. Esta acción no se puede deshacer."},"diskSpace":{"title":"Monitor de espacio en disco","description":"Supervisa cada volumen de agente y recupera automáticamente los Derived Data seguros más antiguos cuando queda poco espacio.","loading":"Cargando informes de disco…","settings":"Configuración","normalThreshold":"Umbral de limpieza (GiB)","pressureThreshold":"Umbral de presión (GiB)","saveThresholds":"Guardar umbrales","monitorAgent":"Supervisar agente","pressureModeControl":"Modo de presión","noReport":"Todavía no hay un informe de disco disponible.","notMonitored":"Sin supervisión","observedAt":"Observado {value}","volume":"Volumen","freeOf":"libres de","free":"libres","freeDiskSpace":"Espacio libre en disco","noEnabledAgents":"No hay agentes supervisados","usageToday":"Uso de hoy","thresholdSummary":"Limpieza por debajo de {normal} GiB · crítico a {pressure} GiB","recentDeletions":"Eliminaciones recientes","noRecentDeletions":"No hay eliminaciones automáticas ni manuales recientes.","mainDisk":"Disco principal","baseRepoDisk":"Disco del repositorio base","baseRepoDiskDescription":"Se muestra por separado porque el repositorio base está en otro sistema de archivos.","disabled":"La supervisión de disco está desactivada para este agente.","usageLabel":"{percent}% del disco usado","role":{"MAIN":"Disco principal","BASE_REPO":"Repositorio base","DERIVED_DATA":"Datos derivados"},"status":{"DISABLED":"Desactivado","STALE":"Desactualizado","IDLE":"Inactivo","CLEANUP_REQUIRED":"Requiere limpieza","DELETING":"Eliminando","PRESSURE":"Presión","CRITICAL":"Crítico","ERROR":"Error"},"pressureMode":{"NORMAL":"Normal","MANUAL":"Presión manual","AUTOMATIC":"Presión automática"}},"buildData":{"title":"Datos de compilación","description":"Inspecciona y limpia el DerivedData de Xcode en los agentes registrados.","derivedDataTitle":"Datos derivados","derivedDataDescription":"Productos de compilación, índices, registros y cachés de Xcode por proyecto.","deviceSupportTitle":"Soporte de dispositivos iOS","deviceSupportDescription":"Símbolos y archivos de soporte conservados para las versiones de iOS conectadas a cada agente.","deviceSupportVersion":"Versión de iOS","selectAllDeviceSupport":"Seleccionar todo el soporte de dispositivos iOS","noDeviceSupport":"No se encontraron carpetas de soporte de dispositivos iOS.","deleteDeviceSupportTitle":"¿Eliminar soporte de dispositivos iOS?","deleteDeviceSupportDescription":"¿Eliminar permanentemente {count} carpetas de soporte? Xcode puede recrearlas al conectar un dispositivo compatible.","refresh":"Actualizar","calculateSizes":"Calcular tamaños","loading":"Buscando Derived Data…","emptyTitle":"No se encontró Derived Data","emptyDescription":"Los directorios DerivedData configurados no contienen entradas.","progress":"Se analizaron {complete} de {total} agentes aptos","selected":"{count} seleccionados","deleteSelected":"Eliminar seleccionados","selectAll":"Seleccionar todas las entradas de Derived Data","selectEntry":"Seleccionar {name}","folder":"Carpeta","worktree":"Ruta del árbol de trabajo","size":"Uso de disco","agent":"Agente","modified":"Modificado","locked":"Bloqueado","lock":"Proteger de la limpieza automática","unlock":"Permitir limpieza automática","protectedDeleteWarning":"Eliminación de alto riesgo: las siguientes carpetas están bloqueadas o tienen trabajo en ejecución. Eliminarlas puede interrumpir recursos activos.\\n\\n{details}\\n\\n¿Eliminar de todos modos?","actions":"Acciones","entryActions":"Acciones para {name}","deleteEntry":"Eliminar {name}","confirmDeleteEntry":"Confirmar eliminación de {name}","confirmDelete":"Confirmar","delete":"Eliminar","deleteTitle":"¿Eliminar Derived Data?","deleteDescription":"¿Eliminar permanentemente {count} entradas seleccionadas? Esta acción no se puede deshacer.","history":"Historial de eliminaciones","historyDescription":"Derived Data eliminado de los agentes registrados durante los últimos 90 días.","clearHistory":"Borrar historial","clearHistoryTitle":"¿Borrar el historial?","clearHistoryDescription":"¿Eliminar todos los registros conservados? Esto no afecta a los archivos de los agentes.","loadingHistory":"Cargando historial…","noHistory":"Todavía no se ha eliminado Derived Data.","deleted":"Eliminado","sourceLabel":"Origen","loadMore":"Cargar más","status":{"UNLINKED":"Sin vincular","PENDING":"Compilación iniciándose","SHARED_CACHE":"Caché compartida"},"source":{"USER":"Usuario","AUTOMATIC":"Automático"},"agentStatus":{"QUEUING":"en cola","QUEUED":"en cola","RUNNING":"analizando","SUCCEEDED":"completado","FAILED":"falló","CANCELLED":"cancelado","TIMED_OUT":"tiempo agotado","OFFLINE":"sin conexión","UNSUPPORTED":"se requiere actualizar el agente","INVALID":"respuesta no válida"}},"cacheServerSettings":{"title":"Servidor de caché de Acciones","description":"Conéctate a un servidor de caché de GitHub Actions para gestionar sus entradas de caché.","configured":"Configurado","notConfigured":"Sin configurar","loading":"Cargando configuración…","saved":"Configuración del servidor de caché guardada.","connectionSucceeded":"Conectado correctamente al servidor de caché.","removed":"Configuración del servidor de caché eliminada.","baseUrl":"URL base","baseUrlHelp":"La URL base de la API de gestión, incluido cualquier prefijo de ruta.","setupHelp":"Obtén la URL base de la API de gestión y la clave de API de la configuración del despliegue o del administrador del servidor de caché. La clave configurada se envía como encabezado x-api-key.","apiKey":"Clave de API","apiKeyPlaceholder":"Introduce la clave de API del servidor de caché","apiKeyPlaceholderConfigured":"Déjalo en blanco para conservar la clave actual","apiKeyHelp":"Se envía como el encabezado x-api-key en cada solicitud.","apiKeyKeepHelp":"Hay una clave almacenada. Introduce un valor nuevo para reemplazarla.","headers":"Encabezados personalizados","addHeader":"Añadir encabezado","headersHelp":"Los valores de los encabezados se guardan localmente, se envían con cada solicitud al servidor de caché y nunca vuelven al navegador.","headersSetupHelp":"Añade encabezados personalizados solo si los exige un proxy de autenticación; solicita sus nombres y valores al administrador del proxy.","noHeaders":"No hay encabezados personalizados configurados.","headerName":"Nombre","headerValue":"Valor","headerValuePlaceholderConfigured":"Déjalo en blanco para conservar el valor actual","removeHeader":"Eliminar encabezado","remove":"Eliminar","confirmRemove":"¿Eliminar la configuración del servidor de caché?","confirmRemoveDescription":"Se eliminarán los datos de conexión y la clave de API. La página de Caché de Acciones se ocultará hasta que se vuelva a configurar.","test":"Probar","save":"Guardar"},"cacheServer":{"title":"Caché de Acciones","description":"Explora y gestiona las entradas del servidor de caché de GitHub Actions.","matchLookup":"Búsqueda de coincidencias","refresh":"Actualizar","close":"Cerrar","filtersTitle":"Filtros","filtersDescription":"Filtra las entradas de caché por clave, versión, ámbito o repositorio.","key":"Clave","keyPlaceholder":"Clave de caché","version":"Versión","versionPlaceholder":"Versión de caché","scope":"Ámbito","scopePlaceholder":"Referencia o ámbito","repoId":"ID de repo","repoIdPlaceholder":"ID del repositorio","itemsPerPage":"Por página","deleteMatching":"Eliminar coincidencias","confirmDeleteMatching":"¿Eliminar todas las entradas coincidentes?","confirmDeleteMatchingDescription":"Se eliminarán todas las entradas de caché que coincidan con los filtros aplicados. Esta acción no se puede deshacer.","reset":"Restablecer","applyFilters":"Aplicar","entriesTitle":"Entradas de caché","entriesDescription":"Entradas de caché almacenadas en el servidor.","loading":"Cargando entradas de caché…","noEntries":"Ninguna entrada de caché coincide con los filtros actuales.","updatedAt":"Actualizado","actions":"Acciones","viewDetails":"Ver detalles","delete":"Eliminar","confirmDeleteEntry":"¿Eliminar esta entrada de caché?","edit":"Editar","doneEditing":"Listo","selected":"{count} seleccionados","selectAll":"Seleccionar todas las entradas de caché","selectEntry":"Seleccionar {name}","deleteSelected":"Eliminar seleccionados","confirmDeleteSelected":"¿Eliminar {count} entradas de caché?","showing":"Mostrando {start}–{end} de {total}","previous":"Anterior","next":"Siguiente","notConfiguredTitle":"Servidor de caché sin configurar","notConfiguredDescription":"Configura el servidor de caché de GitHub Actions en la página de Configuración para gestionar sus entradas.","goToSettings":"Ir a Configuración","detailTitle":"Entrada de caché","detailDescription":"La entrada de caché completa y la ubicación de almacenamiento que la respalda.","entryNotFound":"Esta entrada de caché ya no existe.","entrySection":"Entrada","id":"Identificador","locationId":"ID de ubicación","locationSection":"Ubicación de almacenamiento","deleteLocation":"Eliminar ubicación","confirmDeleteLocation":"¿Eliminar esta ubicación de almacenamiento?","confirmDeleteLocationDescription":"Se eliminarán la carpeta de almacenamiento y sus datos. Esta acción no se puede deshacer.","folderName":"Nombre de carpeta","partCount":"Recuento de partes","sizeBytes":"Tamaño","mergeStartedAt":"Combinación iniciada","mergedAt":"Combinado","partsDeletedAt":"Partes eliminadas","lastDownloadedAt":"Última descarga","noLocation":"No hay ninguna ubicación de almacenamiento vinculada a esta entrada.","matchTitle":"Coincidir entrada de caché","matchDescription":"Encuentra la entrada que el servidor de caché restauraría para un conjunto de claves.","primaryKey":"Clave principal","restoreKeys":"Claves de restauración","commaSeparated":"Separado por comas","scopes":"Ámbitos","matchFound":"Coincidencia encontrada","matchTypes":{"EXACT_PRIMARY":"Principal exacta","PREFIXED_PRIMARY":"Principal con prefijo","EXACT_RESTORE":"Restauración exacta","PREFIXED_RESTORE":"Restauración con prefijo"},"noMatch":"Ninguna entrada de caché coincidió con las claves proporcionadas.","runMatch":"Ejecutar coincidencia"},"jobs":{"open":"Abrir trabajo","cancel":"Cancelar","loading":"Cargando trabajo…","notFound":"No se encontró el trabajo.","waiting":"Esperando la salida…"},"jiraTickets":{"title":"Incidencias de Jira","description":"Consulta por estado los proyectos, tableros y consultas JQL guardados.","refresh":"Actualizar","manage":"Administrar","showBoardLayout":"Vista de tablero","showTableLayout":"Vista de tabla","collapseStatus":"Contraer {status}","expandStatus":"Expandir {status}","issueType":"Tipo de incidencia","priority":"Prioridad","loading":"Cargando proyectos de Jira…","loadingTickets":"Cargando incidencias…","loadingTicket":"Cargando detalles de la incidencia…","emptyProjects":"Aún no hay proyectos de Jira","emptyProjectsDescription":"Configura Jira y después añade un proyecto con su primera fuente.","emptySources":"Este proyecto no tiene fuentes","emptySourcesDescription":"Añade una consulta JQL con nombre o una URL de tablero.","emptyTickets":"Ninguna incidencia coincide con esta fuente.","addProject":"Añadir proyecto","addSource":"Añadir fuente","projectTabs":"Proyectos de Jira","sourceTabs":"Fuentes de incidencias","staleWarning":"No se pudo contactar con Jira; se muestran datos caducados de la caché.","truncatedWarning":"Esta fuente supera las 1000 incidencias. Refínala para ver el resto.","issue":"Incidencia","unassigned":"Sin asignar","manageTitle":"Administrar proyectos y fuentes de Jira","manageDescription":"Los proyectos vienen de Jira y cada fuente se valida antes de guardarse.","projects":"Proyectos","availableProjects":"Proyectos disponibles en Jira","selectProject":"Selecciona un proyecto","sourceCount":"{count} fuentes","removeProject":"Quitar proyecto","confirmRemoveProject":"¿Quitar este proyecto y todas sus fuentes guardadas?","sourcesFor":"Fuentes de {project}","displaySettings":"Configuración de visualización","displaySettingsDescription":"Esta configuración solo se aplica a este proyecto.","ticketsToShow":"Incidencias que mostrar","allTickets":"Todas las incidencias","unassignedOrSelfAssigned":"Sin asignar o asignadas a mí","selfAssignedInProgress":"Mis incidencias en curso","hideCompletedTickets":"Ocultar incidencias completadas","hideCompletedTicketsDescription":"Elige qué estados del proyecto cuentan como completados.","completedStatuses":"Estados completados","doneStatus":"Estado final de Auto Merge","noDoneStatus":"Sin configurar","doneStatusDescription":"Auto Merge mueve los tickets vinculados a este estado después de que GitHub fusione la solicitud.","loadingStatuses":"Cargando estados…","selectCompletedStatuses":"Seleccionar estados completados","saveDisplaySettings":"Guardar configuración de visualización","branchNaming":"Nombres de ramas","branchNamingDescription":"Esta función se usa al crear una rama de worktree desde un ticket de este proyecto.","branchNamingFunction":"Función JavaScript para nombrar ramas","branchNamingFunctionHelp":"Recibe ticketKey, type, title y alreadyTaken. Devuelve un nombre de rama Git válido; alreadyTaken se omite en la primera llamada.","saveBranchNaming":"Guardar nombres de ramas","sourceName":"Nombre de la fuente","sourceType":"Tipo de fuente","boardUrl":"URL del tablero","editSource":"Editar fuente","deleteSource":"Eliminar fuente","confirmDeleteSource":"¿Eliminar esta fuente y sus entradas de caché relacionadas?","saveSource":"Guardar fuente","cancel":"Cancelar","done":"Listo","ticket":"Incidencia","staleTicket":"Algunos datos están caducados porque Jira no respondió.","openInJira":"Abrir en Jira","worktreeAction":"Crear worktree","ticketWorktreeTitle":"Crear desde {issueKey}","ticketWorktreeDescription":"Crea un worktree nuevo en un agente o crea la rama del ticket y cambia un worktree existente a ella.","newWorktree":"Worktree nuevo","existingWorktree":"Worktree existente","agentAndCodebase":"Agente y base de código","selectWorktreeDestination":"Seleccionar un destino","searchWorktreeDestinations":"Buscar worktrees, agentes y bases de código","noWorktreeDestinations":"No hay destinos compatibles y conectados disponibles.","chooseWorktreeDestination":"Elige dónde se debe crear la rama del ticket.","loadingWorktreeDestinations":"Cargando destinos de worktree…","ticketWorktreeCreated":"Se creó el worktree del ticket.","ticketBranchChanged":"Se creó la rama del ticket y el worktree cambió a ella.","createTicketWorktree":"Crear worktree del ticket","createAndSwitchBranch":"Crear y cambiar de rama","ticketStashRetryHelp":"Git no pudo cambiar con los cambios actuales. Guarda en stash los cambios rastreados y no rastreados y vuelve a intentarlo.","stashAndRetry":"Guardar en stash y reintentar","detachedBranch":"HEAD separado","descriptionTitle":"Descripción","classification":"Clasificación","labels":"Etiquetas","components":"Componentes","fixVersions":"Versiones de corrección","sprints":"Sprints","relatedIssues":"Incidencias relacionadas","attachments":"Archivos adjuntos","comments":"Comentarios ({count})","noComments":"Esta incidencia no tiene comentarios.","unknownUser":"Usuario desconocido","assignee":"Responsable","reporter":"Informador","created":"Creada","updated":"Actualizada","due":"Vencimiento","resolved":"Resuelta","affectedVersions":"Versiones afectadas","openFullDetails":"Abrir detalles completos","renderFormat":"Formato de visualización","markdown":"Formato Markdown","jiraWiki":"Wiki de Jira","viewRendered":"Ver formato","viewRaw":"Ver texto original","rendered":"Formato","raw":"Original","copied":"Copiado","copy":"Copiar","commentActions":"Acciones del comentario","copyRaw":"Copiar contenido original","copyFailed":"No se pudo copiar el contenido.","authoringFormat":"Formato de escritura","preview":"Vista previa","hidePreview":"Ocultar vista previa","commentBody":"Comentario","commentPlaceholder":"Escribe un comentario…","saving":"Guardando…","addComment":"Añadir comentario","changeAssignee":"Cambiar responsable","searchAssignees":"Buscar usuarios asignables","loadingAssignees":"Cargando usuarios…","noAssignees":"No se encontraron usuarios asignables.","status":"Estado","changeStatus":"Cambiar estado","requiresJira":"Requiere Jira"},"jiraTicketDetail":{"loading":"Cargando incidencia de Jira…","notFound":"Incidencia no encontrada","notFoundDescription":"No se pudo cargar la incidencia de Jira.","back":"Volver a incidencias de Jira","summary":"Resumen","save":"Guardar","editSummary":"Editar resumen","refresh":"Actualizar","edit":"Editar","saveDescription":"Guardar descripción","descriptionHistory":"Historial de la descripción","descriptionHistoryDescription":"Selecciona dos versiones de la actividad de Jira para comparar su texto.","currentVersion":"Versión actual","beforeChange":"Antes de {date}","afterChange":"Después de {date}","loadingHistory":"Cargando historial…","noDescriptionHistory":"No hay versiones anteriores de la descripción.","compareFrom":"Comparar desde","compareTo":"Comparar hasta","compareVersions":"Comparar versiones","descriptionComparison":"Comparación de la descripción","selectVersions":"Selecciona dos versiones diferentes para comparar.","activity":"Actividad","comments":"Comentarios","history":"Historial","worklogs":"Registros de trabajo","unknownUser":"Usuario desconocido","noHistory":"No hay historial disponible.","loadMore":"Cargar más","started":"Iniciado {date}","noWorklogs":"No hay registros de trabajo.","allFields":"Todos los campos de Jira","expandFields":"Mostrar campos","collapseFields":"Ocultar campos","searchFields":"Buscar campos","field":"Campo","value":"Valor","custom":"Personalizado","details":"Detalles","editDetails":"Editar detalles de la incidencia","editDetailsDescription":"Solo se muestran los campos que Jira permite editar.","none":"Ninguno","commaSeparated":"Valores separados por comas","pickDate":"Elegir una fecha","clearDate":"Borrar fecha","saving":"Guardando…"},"githubCache":{"title":"Caché de GitHub","description":"Inspecciona lecturas GraphQL en caché, costes exactos, uso de API, latencia y límites.","ttl":"TTL de caché en minutos","saveTtl":"Guardar TTL","overridesTitle":"TTL de GraphQL personalizadas","overridesDescription":"Sustituye la TTL global de caché para nombres exactos de operaciones GraphQL.","overrideOperation":"Operación GraphQL","overrideTtl":"TTL en segundos","overrideType":"Tipo","noOperationMatches":"No coincide ninguna operación almacenada. Introduce un nombre exacto para añadirla.","selectOperation":"Selecciona o introduce una operación","searchOperations":"Busca o introduce una operación","addOverride":"Añadir excepción","overridesHelp":"Las excepciones se aplican a todos los modos de autenticación, orígenes y variables. La TTL controla la vigencia de la caché, no la frecuencia de consulta de una página.","builtInOverride":"Integrada","customOverride":"Personalizada","overrideTtlFor":"TTL en segundos para {operation}","saveOverride":"Guardar TTL para {operation}","deleteOverride":"Eliminar excepción","confirmDeleteOverride":"¿Eliminar la excepción de TTL para {operation}? La operación usará la TTL global.","deleteOverrideFor":"Eliminar excepción de TTL para {operation}","clearCache":"Vaciar caché","confirmClear":"¿Vaciar todas las respuestas GraphQL de GitHub? El historial y los límites se conservarán.","loading":"Cargando actividad de la API de GitHub…","average":"Promedio {ms} ms","live":"En vivo","cache":"Caché","errors":"Errores","points":"{used} puntos usados · {avoided} evitados","graphqlRateTitle":"Límites de GraphQL","graphqlRateDescription":"Últimos encabezados del límite principal por modo de autenticación.","restRateTitle":"Límites de REST","restRateDescription":"Últimos recursos REST; las respuestas REST no se almacenan en caché.","noRateData":"Aún no se han observado encabezados de límite.","limit":"Límite","remaining":"Restante","used":"Usado","estimated":"Estimado","reset":"Reinicio","resource":"Recurso","observed":"Observado","operationsTitle":"Operaciones de la API de GitHub","operationsDescription":"Llamadas GraphQL y REST, incluido el uso de puntos, en cada intervalo móvil.","sourcesTitle":"Llamadas por origen","sourcesDescription":"Llamadas a la API de GitHub y uso de puntos por función solicitante en cada intervalo móvil.","noMetrics":"No hubo actividad de la API de GitHub en las últimas 24 horas.","operation":"Operación","recentTitle":"Llamadas recientes a la API de GitHub","recentDescription":"Todas las llamadas GraphQL y REST mediante PAT o GitHub App, incluidas las almacenadas, en vivo y fallidas.","clearCalls":"Borrar llamadas recientes","confirmClearCalls":"¿Borrar todas las llamadas recientes a la API de GitHub? Se conservarán las respuestas en caché y las instantáneas de límites.","noCalls":"No se han registrado llamadas a la API de GitHub.","filterApiType":"Filtrar llamadas por tipo de API","allApiTypes":"GraphQL y REST","filterRequestSource":"Filtrar llamadas por origen","allRequestSources":"Todos los orígenes","filterCallSource":"Filtrar llamadas por directo o caché","liveAndCache":"Directo y caché","time":"Hora","source":"Origen","callInfo":"Información de la llamada","status":"Estado","statuses":{"LIVE":"En vivo","CACHE":"Caché","ERROR":"Error"},"requestSources":{"GITHUB_API":"Histórico / desconocido","GITHUB_SETTINGS":"Configuración de GitHub","COMMENTS_PAGE":"Página de comentarios","CODEBASE_REPOSITORY":"Repositorio de código base","PULL_REQUESTS_PAGE":"Página de pull requests","PULL_REQUEST_DETAILS":"Detalles del pull request","ACTIONS_PAGE":"Página de Actions","WORKTREES":"Árboles de trabajo","WORKTREE_PIPELINES":"Pipelines de árboles de trabajo","WORKTREE_AUTOMATION":"Automatización de árboles de trabajo","AUTO_RETRY":"Reintento automático de Actions","WORKFLOW_AUTOMATION":"Automatización de flujos","ACTIONS_NOTIFICATIONS":"Notificaciones de Actions","CACHE_MANAGEMENT":"Página de caché de GitHub"},"authentication":"Autenticación","cost":"Coste en puntos","pointRate":"Puntos y límite","avoided":"{count} evitados","rate":"Recurso del límite","duration":"Duración","error":"Error","entriesTitle":"Entradas GraphQL en caché","entriesDescription":"Respuestas persistentes separadas por autenticación y variables.","noEntries":"No hay respuestas GraphQL de GitHub en caché.","freshness":"Frescura","fresh":"Reciente","stale":"Obsoleta","lastFetched":"Última consulta","lastCost":"Último coste","actions":"Acciones","open":"Abrir","refresh":"Forzar actualización","delete":"Eliminar","confirmDeleteEntry":"¿Eliminar la respuesta en caché de {operation}?","showing":"Mostrando {start}–{end} de {total}","previous":"Anterior","next":"Siguiente"},"githubCacheDetail":{"title":"Entrada GraphQL en caché","description":"Respuesta GraphQL de GitHub en caché","refresh":"Forzar actualización","delete":"Eliminar de la caché","confirmDelete":"¿Eliminar esta respuesta GraphQL en caché?","loading":"Cargando respuesta en caché…","notFound":"Esta respuesta no está en la caché de GitHub.","authentication":"Autenticación","freshness":"Frescura","fresh":"Reciente","stale":"Obsoleta","lastCost":"Último coste exacto en puntos","fetchedAt":"Consultada el","query":"Consulta GraphQL","variables":"Variables","response":"Datos de respuesta"},"jiraCache":{"title":"Caché de Jira","description":"Inspecciona datos almacenados, uso de API, latencia y errores.","ttl":"TTL de caché en minutos","saveTtl":"Guardar TTL","clearCache":"Vaciar caché","confirmClear":"¿Vaciar todas las respuestas e incidencias de Jira? Se conservará el historial.","loading":"Cargando actividad de la caché…","average":"Media de {ms} ms","live":"Directas","cache":"Caché","errors":"Errores","operationsTitle":"Operaciones de API","operationsDescription":"Recuentos por operación y origen en cada periodo móvil.","noMetrics":"No hubo actividad de la API de Jira en las últimas 24 horas.","operation":"Operación","recentTitle":"Llamadas recientes a la API","recentDescription":"Cada operación almacenada del SDK, empezando por la más reciente.","clearCalls":"Borrar llamadas recientes","confirmClearCalls":"¿Borrar todas las llamadas recientes a la API de Jira? Se conservarán las respuestas y los tickets en caché.","noCalls":"No se ha registrado ninguna llamada a Jira.","time":"Hora","fetched":"Datos obtenidos","source":"Origen","sources":{"LIVE":"Directa","CACHE":"Caché","ERROR":"Error"},"duration":"Duración","error":"Error","stale":"Caducada","ticketsTitle":"Incidencias en caché","ticketsDescription":"Cobertura de resumen, detalle y comentarios para incidencias de Jira.","noTickets":"No hay incidencias de Jira almacenadas.","ticket":"Incidencia","status":"Estado","coverage":"Cobertura","freshness":"Vigencia","fresh":"Vigente","lastFetched":"Última obtención","actions":"Acciones","open":"Abrir","refresh":"Actualizar","delete":"Eliminar","confirmDeleteTicket":"¿Eliminar {issueKey} y todas las entradas que la referencian?","showing":"Mostrando {start}–{end} de {total}","previous":"Anterior","next":"Siguiente"},"jiraCacheDetail":{"description":"Datos almacenados de la incidencia","refresh":"Actualizar incidencia","delete":"Eliminar de la caché","confirmDelete":"¿Eliminar {issueKey} y sus entradas relacionadas?","loading":"Cargando incidencia almacenada…","notFound":"Esta incidencia no está en la caché de Jira.","coverage":"Cobertura","freshness":"Vigencia","fresh":"Vigente","stale":"Caducada","detailFetched":"Detalle obtenido","commentsFetched":"Comentarios obtenidos","summaryData":"Respuesta de resumen","detailData":"Respuesta de detalle completo","commentsData":"Respuesta completa de comentarios","notFetched":"Este nivel de datos todavía no se ha obtenido.","relatedEntries":"Entradas de caché relacionadas","noEntries":"Ninguna entrada referencia esta incidencia.","operation":"Operación","fetchedAt":"Obtenido el","entryId":"ID de entrada de caché"},"jiraSettings":{"title":"Configuración","description":"Configura la cuenta de Jira Cloud que usa esta aplicación.","loading":"Cargando configuración de Jira…","credentials":"Credenciales de Jira","configured":"Token configurado","notConfigured":"Token sin configurar","siteUrl":"URL del sitio de Jira Cloud","siteUrlHelp":"Usa la URL base *.atlassian.net de tu sitio Jira.","email":"Correo de la cuenta Jira","accountHelp":"Abre Jira en el navegador y copia únicamente el origen https://*.atlassian.net. Usa el correo de esa misma cuenta de Atlassian.","apiToken":"Token de API de Jira","tokenPlaceholder":"Pega un token de API de Atlassian","tokenPlaceholderConfigured":"Déjalo vacío para conservar el token","tokenHelp":"El token se guarda en SQLite local y nunca vuelve al navegador.","tokenKeepHelp":"Déjalo vacío salvo que quieras sustituir el token guardado.","tokenAcquireHelp":"Crea un token de API estándar de Atlassian que pueda autenticarse directamente en este sitio Jira.","createToken":"Crear token de API de Jira","save":"Guardar configuración","test":"Probar conexión","remove":"Quitar credenciales","saved":"Configuración de Jira guardada.","connectionSucceeded":"La conexión con Jira se realizó correctamente.","removed":"Credenciales eliminadas y datos de Jira en caché borrados.","confirmSiteChange":"Cambiar de sitio elimina proyectos, fuentes y caché. ¿Continuar?","confirmRemove":"¿Quitar el correo y token guardados y borrar la caché de Jira?","webhookTitle":"Webhook de Jira","webhookDescription":"Opcional. Envía los cambios de Jira a los disparadores de flujos y a las actualizaciones en vivo de incidencias, sin esperar a que algo consulte una incidencia.","webhookConfigured":"Webhook configurado","webhookNotConfigured":"Webhook sin configurar","webhookRegistered":"Registrado en Jira","webhookRegisteredAs":"Registrado en Jira como webhook {id}. Edita la URL o el JQL de arriba y vuelve a registrarlo para actualizarlo.","webhookUrl":"URL del webhook","webhookUrlHelp":"Jira debe poder acceder a esta URL por HTTPS público. Edítala si este servidor es público en otra dirección. Las entregas se rechazan si no van firmadas con el secreto de abajo.","webhookJql":"Filtro JQL","webhookJqlHelp":"Opcional. Limita las entregas a los proyectos que automatizas. Cada evento de incidencia cuesta una llamada a la API de Jira, así que ajusta bien el filtro.","webhookSecret":"Secreto de firma","webhookSecretHelp":"Cópialo en el campo Secret del webhook en Jira. Se muestra una sola vez y no se vuelve a devolver: genera otro si lo pierdes.","webhookSecretPending":"Genera un secreto para terminar de configurar el webhook en Jira.","webhookSecretRegistered":"Guardado aquí y en Jira. No hay nada que copiar: al rotarlo se reemplaza en ambos lados.","copy":"Copiar","copied":"Copiado","enableWebhook":"Generar secreto","registerWebhook":"Registrar en Jira","updateRegistration":"Actualizar registro","rotateWebhook":"Renovar secreto","disableWebhook":"Desactivar webhook","webhookEnabled":"Secreto del webhook de Jira generado.","webhookRotated":"Secreto del webhook de Jira renovado. Actualízalo en Jira antes de la próxima entrega.","webhookDisabled":"Webhook de Jira desactivado.","webhookRegisteredNotice":"Webhook de Jira registrado. Las entregas empiezan de inmediato.","webhookReregistered":"Registro del webhook de Jira actualizado.","webhookRotatedInJira":"Secreto del webhook de Jira rotado aquí y en Jira.","confirmRotateRegisteredDescription":"¿Generar un secreto de firma nuevo y actualizarlo en Jira? Las entregas firmadas con el secreto anterior se rechazan.","confirmRotate":"¿Renovar el secreto de firma del webhook de Jira?","confirmRotateDescription":"Las entregas firmadas con el secreto anterior se rechazan hasta que pegues el nuevo en Jira.","confirmDisable":"¿Desactivar el webhook de Jira?","confirmDisableDescription":"Se elimina el secreto de firma y dejan de aceptarse las entregas entrantes. Elimina también el webhook en Jira.","lastWebhook":"Última entrega: {date} ({outcome})","viewDeliveries":"Ver entregas","setupTitle":"Termina la configuración en Jira","manualIntro":"¿No eres administrador de Jira? Genera un secreto y añade el webhook a mano:","setupStep1":"En Jira, abre Configuración → Sistema → WebHooks y elige Create a WebHook.","setupStep2":"Pega la URL de arriba en URL y el secreto en Secret.","setupStep3":"Selecciona estos eventos: {events}","setupStep4":"Define un filtro JQL como {jql} para que solo envíen entregas los proyectos que automatizas.","webhookDocs":"Documentación de webhooks de Jira"},"settings":{"title":"Configuración","description":"Configura las herramientas de desarrollo, los servicios de Apple y las integraciones externas.","developmentGroup":"Desarrollo","developmentGroupDescription":"Elige las herramientas utilizadas con los checkouts locales y los worktrees.","appleGroup":"Servicios de Apple","appleGroupDescription":"Administra la inscripción de iOS y las credenciales de App Store Connect y APNs.","integrationsGroup":"Integraciones","integrationsGroupDescription":"Conecta las cuentas de Jira y GitHub utilizadas en toda la aplicación."},"editorSettings":{"title":"Editor de worktrees","description":"Elige la edición de VS Code que abre los worktrees u oculta esas acciones.","loading":"Cargando ajustes del editor…","label":"Editor","code":"Visual Studio Code (versión estable)","insiders":"Visual Studio Code (canal Insiders)","none":"Ninguno (ocultar botones)","setupHelp":"Instala la edición seleccionada en el Mac que aloja el worktree:","downloadCode":"Descargar Visual Studio Code","downloadInsiders":"Descargar VS Code Insiders","save":"Guardar editor","saved":"Se guardó el ajuste del editor."},"githubSettings":{"title":"Credenciales de GitHub","description":"Conecta la cuenta utilizada para cargar solicitudes de extracción y GitHub Actions.","loading":"Cargando la configuración de GitHub…","configured":"Token configurado","notConfigured":"Token no configurado","apiToken":"Token de acceso personal de GitHub","tokenPlaceholder":"Pega un token de acceso personal de GitHub","tokenPlaceholderConfigured":"Déjalo en blanco para conservar el token guardado","tokenHelp":"Concede acceso de lectura y escritura a las solicitudes de extracción y acceso de lectura a Actions en los repositorios que quieras usar. El token permite ver solicitudes, actuar en hilos de revisión y consultar ejecuciones.","tokenKeepHelp":"Déjalo en blanco salvo que quieras reemplazar el token guardado.","tokenAcquireHelp":"Crea un token específico limitado a los repositorios usados aquí. Concede Actions: lectura, Checks: lectura, Pull requests: lectura y escritura, y Contents: lectura y escritura para fusionar. La lectura de direcciones de correo es opcional para elegir el correo de los commits.","createToken":"Crear token específico","pollInterval":"Intervalo de notificaciones y reintento automático de Actions (segundos)","pollIntervalHelp":"Controla el sondeo de reintentos automáticos y, cuando no hay un webhook firmado de GitHub App disponible, el sondeo de notificaciones. Elige un entero de 30 a 3600.","save":"Guardar configuración","test":"Probar conexión","remove":"Eliminar credenciales","saved":"Configuración de GitHub guardada.","connectionSucceeded":"La conexión con GitHub se realizó correctamente.","removed":"Se eliminaron las credenciales de GitHub. Se conservaron los repositorios gestionados.","confirmRemove":"¿Eliminar las credenciales de GitHub?","confirmRemoveDescription":"Se eliminará el token guardado. Se conservarán los repositorios gestionados y las expresiones de Jira."},"githubAppSettings":{"title":"Reintentos de canalización con GitHub App","description":"Usa tu propia GitHub App para volver a ejecutar flujos de GitHub Actions.","loading":"Cargando la configuración de la GitHub App…","verified":"Verificada","notConfigured":"Sin configurar","setupTitle":"Configura tu propia GitHub App","stepRegister":"Registra una GitHub App con un nombre único, como «Reintentos del entorno de IA», desde","registerLink":"Crear una GitHub App","stepHomepage":"Usa","stepHomepageSuffix":" como URL de inicio. Deja vacía la URL de retorno.","stepPermissions":"Configura Repository permissions → Actions como Read and write. Para actualizaciones en vivo mejoradas, concede también lectura de Checks y Commit statuses.","stepWebhook":"Activa los webhooks, selecciona Workflow run y usa","stepWebhookSuffix":" como URL del webhook. Al guardar se configuran el secreto y la URL mediante GitHub.","stepInstall":"Crea la app, genera una clave privada e instálala solo en los repositorios que deba controlar este despliegue.","stepInstallationId":"Después de instalarla, abre la página Configure de la app. El ID de instalación es el último número de la URL, por ejemplo","stepInstallationIdSuffix":". Sustituye Organization-name por tu organización y copia el valor ID final.","stepCredentials":"Copia el ID de la app y el ID de instalación, y pega ambos junto con el PEM descargado.","appId":"ID de la GitHub App","appIdPlaceholder":"Introduce el ID numérico de la app","installationId":"ID de la instalación","installationIdPlaceholder":"Introduce el ID numérico de instalación","webhookUrl":"URL del webhook","webhookUrlHelp":"Reemplaza el endpoint HTTPS público cuando este despliegue esté detrás de un proxy o túnel.","enhancedWebhooks":"Webhooks de canalización mejorados","enhancedWebhooksHelp":"Recibe actualizaciones de comprobaciones, trabajos y estados de commit cuando GitHub las entrega. Activa los permisos y eventos indicados, aprueba los cambios de instalación y guarda para verificar.","openAppSettings":"Abrir la configuración de la GitHub App","privateKey":"Clave privada en PEM","privateKeyDropZone":"Zona para soltar la clave privada PEM","pemDropHint":"Suelta aquí un archivo .pem o pega la clave debajo.","pemFileLoaded":"Se cargó {filename}. Guarda y verifica para usar esta clave.","pemFileInvalid":"Suelta un archivo .pem válido que contenga una clave privada RSA.","pemFileReadError":"No se pudo leer el archivo PEM soltado.","privateKeyPlaceholder":"Pega el PEM descargado de la GitHub App","privateKeyPlaceholderConfigured":"Déjalo vacío para conservar la clave configurada","privateKeyHelp":"La clave solo se envía al servidor Next.js y nunca se devuelve al navegador.","privateKeyKeepHelp":"Hay una clave privada configurada. Pega otro PEM solo cuando quieras rotarla.","connectedAs":"Conectada a {app} en {account}","connectionDetails":"Actions: {permission}; repositorios: {selection}","pipelinePermissions":"Checks: {checks}; estados de commit: {statuses}","lastVerified":"Última verificación: {date}","webhookConfigured":"Webhook configurado en {url}","webhookNeedsSetup":"Las credenciales de la GitHub App están verificadas, pero GitHub indica que los webhooks no están activados. Activa los webhooks, selecciona el evento Workflow run y vuelve a guardar.","webhookUnavailable":"El webhook requiere un origen HTTPS público; el sondeo con token personal sigue disponible.","lastWebhook":"Último webhook: {date} ({outcome})","viewDeliveries":"Ver entregas","save":"Guardar y verificar","rotate":"Rotar clave y verificar","test":"Probar conexión","remove":"Eliminar GitHub App","saved":"La GitHub App se guardó y verificó.","rotated":"La clave privada de la GitHub App se rotó y verificó.","connectionSucceeded":"Se verificó la conexión de la GitHub App.","removed":"Se eliminaron las credenciales de la GitHub App. Se conservaron el token personal y los repositorios gestionados.","confirmRemove":"¿Eliminar las credenciales de la GitHub App?","confirmRemoveDescription":"Se eliminarán el ID de app, el ID de instalación y la clave privada. Se conservarán las credenciales de solicitudes y los repositorios gestionados."},"polling":{"title":"Sondeo","description":"Consulta las operaciones en segundo plano del servidor y los agentes, su frecuencia, actualidad y errores.","refresh":"Actualizar","loading":"Cargando operaciones de sondeo…","serverTitle":"Operaciones del servidor","agentTitle":"Operaciones de agentes","empty":"No hay operaciones registradas.","operation":"Operación","agent":"Agente","status":"Estado","cadence":"Frecuencia","lastStarted":"Último inicio","lastCompleted":"Última finalización","nextPoll":"Próximo sondeo","details":"Detalles","serverRuntime":"Servidor","agentRuntime":"Agente","everySeconds":"Cada {seconds}s","duration":"{milliseconds} ms","kinds":{"GITHUB_ACTIONS_NOTIFICATIONS":"Notificaciones de GitHub actions","GITHUB_AUTO_RETRY":"Reintento automático de GitHub","APNS_RECOVERY":"Recuperación de lotes APNs","AGENT_HEARTBEAT":"Latido del agente","AGENT_JOB_RECONCILIATION":"Conciliación de trabajos duraderos","AGENT_DISK_SPACE":"Espacio en disco del agente","SIDEBAR_USAGE":"Uso de la barra lateral","CODEBASE_SCAN":"Exploración del código","GIT_FETCH":"Git fetch","WORKTREE_AUTOMATION":"Automatización de worktrees"},"statuses":{"DISABLED":"Desactivado","HEALTHY":"Correcto","RUNNING":"En ejecución","STALE":"Obsoleto","ERROR":"Error"}},"githubWebhooks":{"title":"Webhooks de GitHub","description":"Revisa las entregas de webhooks recibidas de GitHub y cómo se procesó cada evento.","deliveryCount":"{count, plural, one {# entrega} other {# entregas}}","refresh":"Actualizar","clearHistory":"Borrar historial","confirmClearHistory":"¿Borrar todo el historial de entregas de webhooks? Las nuevas entregas seguirán apareciendo aquí.","received":"Recibido","event":"Evento","repository":"Repositorio","outcome":"Resultado","details":"Detalles","workflowRun":"Ejecución de flujo {id}","processed":"Procesado","showing":"Mostrando {start}–{end} de {total}","previous":"Anterior","next":"Siguiente","empty":"Aún no hay entregas de webhooks.","emptyDescription":"Los eventos aparecerán aquí cuando GitHub los envíe al webhook configurado.","outcomes":{"received":"Recibido","processed":"Procesado","ignored":"Ignorado","error":"Error"}},"jiraWebhooks":{"title":"Webhooks de Jira","description":"Revisa las entregas de webhooks recibidas de Jira y cómo se procesó cada evento.","deliveryCount":"{count, plural, one {# entrega} other {# entregas}}","refresh":"Actualizar","clearHistory":"Borrar historial","confirmClearHistory":"¿Borrar todo el historial de entregas de webhooks? Las nuevas entregas seguirán apareciendo aquí.","received":"Recibido","event":"Evento","issue":"Incidencia","outcome":"Resultado","details":"Detalles","change":"cambio","changes":"cambios","retry":"Reintento {count}","processed":"Procesado","showing":"Mostrando {start}–{end} de {total}","previous":"Anterior","next":"Siguiente","empty":"Aún no hay entregas de webhooks.","emptyDescription":"Los eventos aparecerán aquí cuando Jira los envíe al webhook configurado.","outcomes":{"received":"Recibido","processed":"Procesado","ignored":"Ignorado","error":"Error"}},"pullRequests":{"title":"Solicitudes de extracción","description":"Revisa tus solicitudes de GitHub y los repositorios supervisados en un solo lugar.","refresh":"Actualizar","manage":"Gestionar","loading":"Cargando la configuración de GitHub…","credentialsRequired":"Conecta GitHub para ver solicitudes de extracción","credentialsRequiredDescription":"Añade un token de acceso personal en Configuración antes de cargar datos de GitHub.","openSettings":"Abrir Configuración","tabsLabel":"Vistas de solicitudes de extracción","mine":"Mías","reviewRequests":"Solicitudes de revisión","repositories":"Repositorios","stateFilter":"Estado de la solicitud de extracción","repositoryFilter":"Repositorio","selectRepository":"Seleccionar un repositorio","searchRepositories":"Buscar repositorios","searchAvailableRepositories":"Buscar repositorios disponibles","noRepositoryMatches":"Ningún repositorio coincide con la búsqueda.","truncated":"La búsqueda de GitHub devuelve como máximo 1000 resultados. Ajusta tu carga de trabajo en GitHub para ver los resultados que superen este límite.","loadingPullRequests":"Cargando solicitudes de extracción…","loadingMore":"Cargando más…","retryLoad":"Intentar de nuevo","empty":"No hay solicitudes de extracción","emptyDescription":"Actualmente no hay solicitudes de extracción que coincidan con esta vista.","repository":"Repositorio","number":"Número","pullRequest":"Solicitud de extracción","pullRequestAndRepository":"Solicitud de extracción / Repositorio","labels":"Etiquetas","ticket":"Incidencia","pipeline":"Canalización","approval":"Aprobación","openComments":"Comentarios abiertos","viewOpenComments":"Ver {count} comentarios abiertos","age":"Antigüedad","actions":"Acciones","details":"Detalles","openInGitHub":"Abrir en GitHub","merge":"Fusionar","mergePullRequest":"Fusionar pull request","mergePullRequestDescription":"Fusiona {repository} #{number} después de revisar los detalles del commit.","loadingMergeOptions":"Comprobando requisitos de fusión…","mergeType":"Tipo de fusión","selectMergeType":"Seleccionar un tipo de fusión","mergeTypes":{"SQUASH":"Combinar commits y fusionar","MERGE":"Crear un commit de fusión","REBASE":"Rebase y fusión"},"commitMessage":"Mensaje del commit","commitDescription":"Descripción del commit","commitEmail":"Correo del commit","githubDefaultEmail":"Usar el valor predeterminado de GitHub","cancelMerge":"Cancelar","merging":"Fusionando…","pipelineStates":{"ACTION_REQUIRED":"Acción necesaria","CANCELLED":"Cancelado","ERROR":"Error","EXPECTED":"Esperado","FAILURE":"Fallido","IN_PROGRESS":"En curso","NEUTRAL":"Neutral","PENDING":"Pendiente","QUEUED":"En cola","SKIPPED":"Omitido","STALE":"Obsoleto","STARTUP_FAILURE":"Error de inicio","SUCCESS":"Correcto","TIMED_OUT":"Tiempo agotado","NONE":"Sin comprobaciones"},"pipelineMenuTitle":"Estado de las canalizaciones","noPipelines":"No se han informado comprobaciones de canalización.","retry":"Reintentar","retrying":"Reintentando…","retryUnavailable":{"GITHUB_APP_NOT_CONFIGURED":"Configura y verifica una GitHub App en Ajustes para volver a ejecutar este flujo.","NOT_COMPLETED":"Solo se pueden reintentar los flujos completados.","NOT_GITHUB_ACTIONS":"Solo se pueden reintentar ejecuciones de GitHub Actions.","WORKFLOW_RUN_UNAVAILABLE":"GitHub no proporcionó una ejecución para este conjunto de comprobaciones.","HISTORICAL_ATTEMPT":"Los intentos anteriores son de solo lectura."},"reviewStates":{"APPROVED":"Aprobada","CHANGES_REQUESTED":"Cambios solicitados","REVIEW_REQUIRED":"Revisión necesaria","NONE":"Sin decisión"},"pullRequestStates":{"ALL":"Todas","OPEN":"Abierta","CLOSED":"Cerrada","MERGED":"Fusionada"},"mergeableStates":{"CONFLICTING":"Con conflictos","MERGEABLE":"Se puede fusionar","UNKNOWN":"Calculando"},"manageTitle":"Gestionar repositorios de GitHub","manageDescription":"Elige las pestañas de repositorio y configura cómo se extraen las claves de Jira de los títulos.","manageCredentialsRequired":"Configura las credenciales de GitHub antes de añadir repositorios.","managedRepositories":"Repositorios gestionados","noManagedRepositories":"Todavía no hay repositorios gestionados.","addRepository":"Añadir repositorio","browse":"Explorar","enterManually":"Introducir manualmente","privateRepository":"Repositorio privado","managed":"Gestionado","add":"Añadir","loadingRepositories":"Cargando repositorios…","loadMore":"Cargar más","repositoryName":"Propietario/nombre del repositorio","jiraKeyRegex":"Expresión regular de clave de Jira","jiraKeyRegexHelp":"Se usa el primer grupo de captura si existe; de lo contrario, se usa la coincidencia completa. Borra el campo para desactivar el análisis.","defaultJiraKeyRegex":"Expresión predeterminada de clave de ticket","defaultJiraKeyRegexHelp":"Se usa en cada repositorio administrado sin una configuración propia. Se usa el primer grupo de captura si existe.","jiraKeyRegexOverrideHelp":"Déjalo vacío para heredar la expresión predeterminada.","saveDefaultRegex":"Guardar expresión predeterminada","invalidRegex":"Introduce una expresión regular válida para la clave de Jira.","done":"Listo","removeRepository":"Eliminar repositorio","confirmRemoveRepository":"¿Eliminar este repositorio gestionado?","confirmRemoveRepositoryDescription":"Se eliminarán su pestaña de solicitudes y su configuración de expresión regular de Jira.","saveRegex":"Guardar expresión de Jira"},"githubComments":{"title":"Comentarios","description":"Revisa y responde a los hilos de revisión de GitHub en tus solicitudes abiertas.","refresh":"Actualizar","layout":"Diseño de comentarios","cards":"Diseño de tarjetas","table":"Diseño de tabla","loadingConfiguration":"Cargando la configuración de GitHub…","credentialsRequired":"Conecta GitHub para ver comentarios","credentialsDescription":"Añade en Configuración un token personal con acceso de lectura y escritura a solicitudes.","openSettings":"Abrir Configuración","allPullRequests":"Todas las solicitudes abiertas","searchPullRequests":"Buscar solicitudes abiertas","noPullRequestMatches":"Ninguna solicitud abierta coincide con la búsqueda.","currentUser":"Usuario actual","otherUsers":"Otros usuarios","unresolved":"Sin resolver","truncated":"La búsqueda de GitHub devuelve como máximo 1000 solicitudes. Es posible que falten hilos de revisión.","loading":"Cargando comentarios de revisión…","empty":"No hay comentarios de revisión","emptyDescription":"Ningún hilo coincide con la solicitud y los filtros seleccionados.","reviewThreads":"Comentarios de revisión","reviewThreadsDescription":"{count, plural, =0 {Ningún hilo de revisión coincide con los filtros actuales.} one {# hilo de revisión coincide con los filtros actuales.} other {# hilos de revisión coinciden con los filtros actuales.}}","author":"Autor","pullRequest":"Solicitud de extracción","comment":"Comentario","date":"Fecha","replies":"Respuestas","github":"Servicio GitHub","rendered":"Vista renderizada","markdown":"Fuente Markdown","viewRaw":"Original","viewRendered":"Formato","copy":"Copiar","copied":"Copiado","copyFailed":"No se pudo copiar el Markdown.","unknownAuthor":"Autor desconocido","fileComment":"Comentario de archivo","outdated":"Desactualizado","resolved":"Resuelto","openInGitHub":"Abrir en GitHub","openReplyInGitHub":"Abrir respuesta en GitHub","reply":"Responder","replyPlaceholder":"Responder con Markdown…","replyUnavailable":"GitHub no permite que esta cuenta responda a este hilo.","reopen":"Reabrir hilo","resolve":"Resolver hilo","replying":"Respondiendo…","sendReply":"Enviar respuesta"},"pullRequestDetail":{"back":"Solicitudes de extracción","loading":"Cargando detalles de la solicitud…","notFound":"Solicitud de extracción no encontrada","notFoundDescription":"Esta solicitud no está disponible o el token de GitHub configurado no puede acceder a ella.","refresh":"Actualizar","openInGitHub":"Abrir en GitHub","viewWorktree":"Ver worktree","draft":"Borrador","description":"Descripción","noDescription":"No se proporcionó ninguna descripción.","comments":"Comentarios","noComments":"No hay comentarios de revisión","noCommentsDescription":"Esta solicitud de extracción no tiene hilos de revisión.","pipelines":"Canalizaciones","pipelineCount":"{count} canalizaciones y contextos de estado","viewAll":"Ver todo","pipelineName":"Canalización","pipelineStatus":"Estado","pipelineDetails":"Detalles","viewPipeline":"Ver","jobCount":"{count} trabajos","noJobs":"No se informaron trabajos para esta ejecución.","viewJob":"Ver {job} en GitHub","jobActions":"Acciones para {job}","retryJob":"Reintentar {job}","showJobSteps":"Mostrar los pasos de {job}","hideJobSteps":"Ocultar los pasos de {job}","steps":"Pasos","noSteps":"Aún no se han informado pasos para este trabajo.","details":"Detalles de la solicitud","branches":"Ramas","changes":"Cambios","files":"Archivos modificados","commits":"Confirmaciones","mergeable":"Capacidad de fusión","openComments":"Comentarios abiertos","created":"Creada","updated":"Actualizada","merged":"Fusionada","people":"Personas","author":"Autor","assignees":"Asignados","unassigned":"Sin asignar","unknown":"Desconocido"},"actionsPage":{"title":"Acciones de GitHub","description":"Supervisa ejecuciones de flujos de trabajo en las bases de código registradas en GitHub.","refresh":"Actualizar","loadingConfiguration":"Cargando la configuración de GitHub…","credentialsRequired":"Conecta GitHub para ver Actions","credentialsRequiredDescription":"Añade en Configuración un token de acceso personal con permiso de lectura de Actions.","openSettings":"Abrir Configuración","repositoryFilter":"Repositorio","allRepositories":"Todos los repositorios","searchRepositories":"Buscar repositorios","noRepositoryMatches":"Ningún repositorio coincide con la búsqueda.","branchFilter":"Rama","branchFilterPlaceholder":"Introduce el nombre exacto de la rama","applyBranchFilter":"Aplicar","clearBranchFilter":"Borrar el filtro de rama","pipelineFilter":"Flujo de trabajo","allPipelines":"Todos los pipelines","searchPipelines":"Buscar pipelines","noPipelineMatches":"Ningún pipeline coincide con la búsqueda.","loadingRuns":"Cargando ejecuciones…","noCodebases":"No hay bases de código de GitHub","noCodebasesDescription":"Registra una base de código con un origen github.com para ver sus ejecuciones.","empty":"No hay ejecuciones","emptyDescription":"GitHub no devolvió ejecuciones para la selección de repositorios.","expand":"Expandir","repository":"Repositorio","workflowRun":"Ejecución","trigger":"Desencadenador","status":"Estado","pullRequest":"Solicitud de extracción","ticket":"Incidencia","worktree":"Árbol de trabajo","started":"Iniciada","duration":"Duración: {duration}","actions":"Acciones","runNumber":"Ejecución n.º {number}","autoRetry":"Reintento automático","attempt":"Intento {attempt}","view":"Ver","viewWorktree":"Ver","cancel":"Cancelar","cancelling":"Cancelando…","forceCancel":"Forzar cancelación","forceCancelling":"Forzando cancelación…","forceCancelTitle":"¿Forzar la cancelación de esta ejecución?","forceCancelDescription":"La cancelación forzada omite las condiciones que normalmente impiden que GitHub detenga esta ejecución. Úsala solo si la cancelación normal está bloqueada.","keepRunning":"Mantener en ejecución","showJobs":"Mostrar trabajos de {run}","hideJobs":"Ocultar trabajos de {run}","jobs":"Trabajos","jobCount":"{count} trabajos","loadingJobs":"Cargando trabajos…","retryLoad":"Reintentar","noJobs":"No se informaron trabajos para esta ejecución.","showJobSteps":"Mostrar los pasos de {job}","hideJobSteps":"Ocultar los pasos de {job}","retryJob":"Reintentar {job}","steps":"Pasos","noSteps":"Aún no se han informado pasos para este trabajo.","loadMore":"Cargar más","loadingMore":"Cargando más…"},"githubAutomation":{"autoRetry":"Reintento automático","title":"Configurar reintento automático","description":"Vuelve a ejecutar automáticamente los flujos de trabajo o trabajos seleccionados de GitHub Actions.","loading":"Cargando flujos de trabajo y reglas guardadas…","credentialsRequired":"Configura un token de acceso personal y verifica una GitHub App con acceso de escritura a Actions antes de crear reglas.","scope":"Se aplica a","currentRuns":"Ejecuciones actuales","futureRuns":"Ejecuciones futuras","targets":"Pipelines y trabajos","allWorkflows":"Todos los flujos de trabajo, incluidos los que se añadan después","noWorkflows":"No se encontraron flujos de trabajo de GitHub Actions.","mode":"Modo de reintento","failureMode":"Reintentar fallos","countMode":"Reintentar ejecuciones correctas por cantidad","retryLimit":"Límite de reintentos","unlimited":"Ilimitado","failureStrategy":"Cuando ocurre un fallo","failedJobs":"Reintentar solo los trabajos fallidos","allJobs":"Reintentar todos los trabajos","savedRules":"Reglas guardadas","edit":"Editar regla","ruleProgress":"{retries} reintentos automáticos en {executions} ejecuciones","pause":"Pausar regla","resume":"Reanudar regla","delete":"Eliminar regla","close":"Cerrar","save":"Guardar regla","limitError":"Introduce un límite de reintentos entre 1 y 100.","targetRequired":"Selecciona al menos un flujo de trabajo o trabajo.","attemptSelector":"Intento del flujo de trabajo","latestAttempt":"Último — Intento {attempt}","attempt":"Intento {attempt}","attemptStartedBy":"Iniciado por @{actor}","pipelines":"Canalizaciones","pipelineCount":"{count} pipelines de GitHub Actions","pipeline":"Canalización","status":"Estado","actions":"Acciones","view":"Ver","noJobs":"No se informaron trabajos para este intento.","statuses":{"ACTIVE":"Activa","PAUSED":"Pausada","COMPLETED":"Completada","EXHAUSTED":"Agotada","ERROR":"Error"},"scopes":{"WORKFLOW_RUN":"Ejecución actual","WORKTREE_BRANCH":"Rama del worktree","PULL_REQUEST":"Pull request","REPOSITORY":"Repositorio"}},"codebases":{"title":"Bases de código","description":"Supervisa repositorios Git y copias de trabajo en todos los agentes registrados.","refreshAll":"Actualizar todo","fetchAll":"Descargar todo","add":"Añadir base de código","groupBy":"Agrupar bases de código por","agents":"Agentes","repositories":"Repositorios","loading":"Cargando bases de código…","emptyTitle":"Aún no hay bases de código","emptyDescription":"Añade un repositorio Git existente desde un agente conectado.","skipped":"Se omitieron {count} bases de código desconectadas, incompatibles o no disponibles.","fetchQueued":"La descarga comenzó para las bases de código disponibles.","refreshQueued":"La actualización comenzó para las bases de código disponibles.","online":"Conectado","offline":"Desconectado","edit":"Editar","view":"Ver","folder":"Carpeta","origin":"Origen","branch":"Rama","upstream":"Rama remota","lastChecked":"Última comprobación","lastFetched":"Última descarga","never":"Nunca","unknown":"Desconocido","none":"Ninguna","ahead":"Adelantada {count}","behind":"Atrasada {count}","sync":{"IN_SYNC":"Sincronizada","AHEAD":"Adelantada","BEHIND":"Atrasada","DIVERGED":"Divergente","NO_UPSTREAM":"Sin rama remota","DETACHED":"Desacoplada","UNKNOWN":"Desconocido"},"availability":{"AVAILABLE":"Disponible","MISSING":"Falta la carpeta","NOT_REPOSITORY":"No es un repositorio Git","ORIGIN_MISMATCH":"El origen cambió","ERROR":"No disponible"},"operationRunning":"Operación Git en curso…","fetch":"Descargar","addTitle":"Añadir una base de código","addDescription":"Explora un agente, inspecciona un repositorio Git y confirma su origen antes de guardarlo.","agent":"Agente","selectAgent":"Selecciona un agente conectado","browseHome":"Explorar la carpeta personal","home":"Inicio","showHidden":"Mostrar carpetas ocultas","truncated":"Solo se muestran las primeras 1.000 carpetas.","addFolder":"Añadir esta carpeta","detached":"HEAD desacoplado","existingOrigin":"Este origen ya usa el nombre compartido «{name}».","name":"Nombre del repositorio","repositoryDescription":"Descripción del repositorio","cancel":"Cancelar","confirm":"Confirmar base de código","editTitle":"Editar detalles del repositorio","loadingRepository":"Cargando repositorio…","repositoryNotFound":"Repositorio no encontrado","repositoryNotFoundDescription":"Es posible que este repositorio lógico ya no tenga una copia de trabajo registrada.","backToCodebases":"Volver a bases de código","repositorySharedDescription":"Estos detalles, configuraciones de compilación y scripts permitidos pertenecen al repositorio lógico y se aplican a todas las copias de agentes y árboles de trabajo.","repositoryDetails":"Detalles del repositorio","repositoryDetailsDescription":"Administra los ajustes compartidos por todas las copias registradas de este repositorio.","repositorySaved":"Detalles del repositorio guardados.","autoRetry":"Reintento automático","autoRetryDescription":"Configura reglas de reintento duraderas para los flujos de trabajo de GitHub Actions de este repositorio.","autoRetryGitHubOnly":"El reintento automático solo está disponible para repositorios alojados en GitHub.","skillGroups":"Grupos de habilidades","skillGroupsHelp":"Elige los grupos que se sincronizan en todos los checkouts y worktrees de este repositorio.","noSkillGroups":"No hay grupos disponibles.","quickActions":"Acciones rápidas","repositoryQuickActionsDescription":"Flujos heredados por este repositorio. Abre un flujo para cambiar su tipo o alcance.","quickActionKinds":{"STANDARD":"Estándar","MERGE_CONFLICT":"Conflicto de fusión","GITHUB_ACTIONS":"Acciones de GitHub"},"allRepositories":"Todos los repositorios","limitedRepositories":"{count, plural, one {Limitado a # repositorio} other {Limitado a # repositorios}}","workflowPaused":"Pausado","noWorkflows":"No hay flujos disponibles.","quickActionEligibility":"Los flujos configurados siguen visibles cuando están pausados; las acciones solo aparecen si están publicados, activados y vinculados al recurso actual.","saveQuickActions":"Guardar acciones rápidas","keepBaseBranchUpToDate":"Mantener actualizada la rama base","keepBaseBranchUpToDateHelp":"Después de una obtención correcta, la rama base avanza mediante fast-forward cuando no hay cambios preparados. Esta configuración del repositorio se aplica a todos los agentes.","save":"Guardar","remove":"Eliminar","confirmRemoveTitle":"¿Eliminar el registro de la base de código?","confirmRemoveDescription":"Se eliminará el registro de {folder}. La carpeta y todos sus archivos permanecerán intactos en el agente.","removed":"Se eliminó el registro de la base de código.","settings":"Configuración","settingsTitle":"Configuración del estado de las bases de código","settingsDescription":"Define con qué frecuencia los agentes actualizados inspeccionan las carpetas registradas e informan del estado de Git.","refreshInterval":"Intervalo de actualización del agente (segundos)","refreshIntervalHelp":"Elige un número entero entre {min} y {max}. Cada agente espera este tiempo tras completar un análisis. No se contacta con los servidores remotos de Git.","fetchInterval":"Intervalo de descarga automática (segundos)","fetchIntervalHelp":"Elige un entero entre {min} y {max}. El agente descarga origin cuando vence este intervalo.","defaultJiraBranchRegex":"Expresión Jira predeterminada para ramas","jiraBranchRegex":"Expresión Jira específica del origen","jiraBranchRegexHelp":"Se usa el primer grupo capturado; si no existe, se usa toda la coincidencia de la rama.","inheritDefaultRegex":"Heredar la expresión predeterminada","settingsSaved":"Se guardaron los ajustes de las bases de código."},"codebaseDetail":{"iosApp":"Aplicación iOS","loading":"Cargando base de código…","notFound":"Base de código no encontrada","notFoundDescription":"Es posible que se haya eliminado este registro de base de código.","back":"Volver a las bases de código","operationQueued":"Operación de Git en cola.","operationSucceeded":"Operación de Git completada.","operationFailed":"La operación de Git falló.","offlineReadOnly":"Este agente está desconectado. La información de ramas guardada estará disponible en modo de solo lectura hasta que vuelva a conectarse.","unsupportedReadOnly":"Actualiza este agente para inspeccionar y administrar ramas y stashes. La información de ramas guardada se muestra en modo de solo lectura.","dirty":"Cambios sin confirmar","refresh":"Actualizar","fetch":"Obtener origin","repositorySettings":"Ajustes del repositorio","origin":"Origen","currentBranch":"Rama actual","upstream":"Rama remota","lastFetched":"Última descarga","activeOperation":"{kind} está en ejecución…","branches":"Ramas ({count})","stashes":"Guardados Git ({count})","branchesTruncated":"Solo se muestran las primeras 1.000 ramas.","localBranches":"Ramas locales","remoteBranches":"Ramas remotas de origin","noLocalBranches":"No se encontraron ramas locales.","noRemoteBranches":"No se encontraron ramas de origin. Obtén origin y vuelve a intentarlo.","branchName":"Rama","branchStatus":"Estado","actions":"Acciones","current":"Actual","default":"Predeterminada","protected":"Protegida","otherWorktree":"Otro árbol de trabajo","localAvailable":"Existe una rama local","switch":"Cambiar","stashAndSwitch":"Guardar y cambiar","confirmDirtySwitchTitle":"¿Guardar los cambios y cambiar de rama?","confirmDirtySwitchDescription":"Los cambios preparados, sin preparar y sin seguimiento se guardarán en un stash nuevo antes de cambiar a {branch}. El stash se conservará.","checkout":"Cambiar a esta rama","stashAndCheckout":"Guardar y cambiar","confirmDirtyCheckoutTitle":"¿Guardar los cambios y cambiar a esta rama?","confirmDirtyCheckoutDescription":"Los cambios preparados, sin preparar y sin seguimiento se guardarán en un stash nuevo antes de cambiar a {branch}. El stash se conservará.","pull":"Traer","deleteRemote":"Eliminar remota","confirmDeleteRemoteBranchTitle":"¿Eliminar la rama remota?","confirmDeleteRemoteBranchDescription":"origin/{branch} se eliminará permanentemente. Las ramas locales y los árboles de trabajo con el mismo nombre permanecerán intactos.","delete":"Eliminar","cancel":"Cancelar","confirmDeleteBranchTitle":"¿Eliminar la rama local?","confirmDeleteBranchDescription":"Git eliminará {branch} de forma segura solo si sus commits ya se fusionaron. No se puede eliminar la rama actual, la predeterminada ni la de otro árbol de trabajo.","noStashes":"No hay stashes","noStashesDescription":"Este checkout no tiene stashes de Git actualmente.","preview":"Vista previa","hidePreview":"Ocultar vista previa","loadingPreview":"Cargando parche del stash…","emptyPatch":"Este stash no tiene un parche de texto que mostrar.","copyPatch":"Copiar parche","patchCopied":"Parche copiado","copyPatchFailed":"No se pudo copiar el parche.","patchTruncated":"Este parche se truncó a 256 KiB.","stashesTruncated":"Solo se muestran los primeros 200 stashes.","apply":"Aplicar","confirmDeleteStashTitle":"¿Eliminar el stash?","confirmDeleteStashDescription":"{stash} se eliminará permanentemente. Aplícalo primero si necesitas conservar sus cambios.","stashesTitle":"Stashes","stashMessage":"Stash","searchBranches":"Buscar ramas","searchBranchesPlaceholder":"Filtrar por nombre de rama","noMatchingBranches":"Ninguna rama coincide con tu búsqueda.","sortBranches":"Ordenar ramas","sortByName":"Nombre","sortByNewestCommit":"Commit más reciente","searchStashes":"Buscar stashes","searchStashesPlaceholder":"Filtrar por mensaje o selector","noMatchingStashes":"Ningún stash coincide con tu búsqueda."},"worktrees":{"title":"Árboles de trabajo","description":"Gestiona worktrees de Git principales y vinculados en todos los agentes inscritos.","agentOffline":"El agente está desconectado.","worktreeUnavailable":"Este árbol de trabajo no está disponible.","agentUnsupported":"Actualiza el agente para habilitar compilaciones de iOS.","iosBuildNotConfigured":"Añade primero un proyecto de aplicación iOS y una configuración de compilación en los ajustes del repositorio.","filters":"Filtros de worktrees","searchWorktrees":"Buscar worktrees","searchWorktreesPlaceholder":"Buscar ramas, agentes, repositorios, incidencias o bases de código…","filterByAgent":"Filtrar por agente","allAgents":"Todos los agentes","filterByRepository":"Filtrar por repositorio","allRepositories":"Todos los repositorios","noMatchingWorktrees":"No hay worktrees coincidentes","noMatchingWorktreesDescription":"Prueba otra búsqueda o filtro.","refresh":"Actualizar","fetchNow":"Descargar ahora","fetchStarted":"Se inició la descarga para las bases de código disponibles.","createWorktree":"Crear worktree","worktreeCreated":"Worktree creado.","repositoryCheckout":"Checkout del repositorio","selectCodebase":"Seleccionar agente y repositorio","selectCodebaseHelp":"Elige el checkout del agente que será propietario de este worktree.","searchCodebases":"Buscar repositorios y agentes","noEligibleCodebases":"No hay checkouts de repositorios compatibles y conectados.","newBranch":"Rama nueva","existingBranch":"Rama existente","fromTicket":"Desde ticket","branchName":"Nombre de rama","ticketKey":"Clave del ticket","loadingTicketBranch":"Cargando ticket y nombre de rama…","selectExistingBranch":"Seleccionar una rama existente","selectBaseBranch":"Seleccionar una rama base","searchBranches":"Buscar ramas","noMatchingBranches":"No hay ramas coincidentes.","localBranch":"Local","originBranch":"Rama remota","localAndOrigin":"Local y origin","remoteDefault":"Predeterminada remota","changeBranch":"Cambiar rama","viewCodebase":"Ver base de código","viewRepository":"Ver repositorio","refreshPullRequest":"Actualizar solicitud de extracción","moveToAgent":"Mover a agente","moveWorktree":"Mover árbol de trabajo","moveDescription":"Envía {branch} y cámbialo en otro agente.","destinationAgent":"Agente y copia de destino","selectDestinationAgent":"Seleccionar agente de destino","searchDestinationAgents":"Buscar agentes y copias","noMoveDestinations":"No hay copias de destino compatibles disponibles.","destinationWorktree":"Árbol de trabajo de destino","createDestinationWorktree":"Crear un árbol de trabajo nuevo","dirtyDestinationWarning":"Este destino tiene cambios sin confirmar. Git los llevará a la rama entrante cuando sea posible.","deleteOldWorktree":"Eliminar el árbol anterior después de mover","deleteOldWorktreeDisabled":"Los árboles de trabajo principales no se pueden eliminar.","moveFailed":"No se pudo mover el árbol de trabajo.","moveCompleted":"Árbol de trabajo movido.","moveCompletedWithWarning":"El destino está listo, pero la limpieza del origen requiere atención.","moveCancelled":"Movimiento cancelado. La rama de origen sigue enviada y se conservó el árbol de origen.","moveNeedsStash":"Los cambios del destino impiden cambiar de rama.","moveStashHelp":"Guarda los cambios rastreados y no rastreados del destino, continúa y conserva el stash para restaurarlo manualmente.","moveProgress":"Moviendo {branch}","stashAndContinue":"Guardar y continuar","cancelMove":"Cancelar movimiento","cancel":"Cancelar","moveStatus":{"PUSHING":"Enviando la rama de origen…","CHECKING_OUT":"Cambiando el destino…","AWAITING_STASH":"Esperando una decisión sobre el stash…","CLEANING_UP":"Eliminando el árbol anterior…","SUCCEEDED":"Movimiento completado.","SUCCEEDED_WITH_WARNING":"Movimiento completado con una advertencia de limpieza.","FAILED":"Movimiento fallido.","CANCELLED":"Movimiento cancelado."},"moveBlocked":{"agent":"El agente de origen está desconectado o debe actualizarse.","busy":"Hay otra operación activa para este repositorio.","detached":"Se necesita una rama de origen con nombre.","dirty":"Confirma o descarta los cambios del origen antes de mover.","behind":"Integra los cambios de origin antes de mover.","diverged":"Resuelve la divergencia con origin antes de mover.","unknown":"No se puede verificar que la rama se pueda enviar de forma segura.","destination":"No hay ningún agente de destino compatible disponible."},"deleteWorktree":"Eliminar árbol de trabajo","deleteWorktreeDescription":"Elimina permanentemente {path} y su rama local.","deleteWorktreeWarning":"Se perderán permanentemente todos los cambios preparados, no preparados y no rastreados de este árbol.","deleteRemoteBranch":"Eliminar también origin/{branch}","defaultRemoteProtected":"La rama predeterminada del repositorio no se puede eliminar de origin.","stashAndRetry":"Guardar en stash y reintentar","stashRetryHelp":"Git no pudo cambiar con los cambios actuales. Guarda los cambios rastreados y no rastreados en stash, reintenta y conserva el stash para restaurarlo manualmente.","hidden":"Ocultos ({count})","cards":"Vista de tarjetas","table":"Vista de tabla","loading":"Cargando worktrees…","emptyTitle":"No se encontraron worktrees","emptyDescription":"Añade una base de código y conecta su agente para descubrir sus worktrees.","online":"En línea","offline":"Sin conexión","lastFetched":"Última descarga: {value}","neverFetched":"nunca","secondsAgo":"hace {count} s","branch":"Rama","path":"Ruta","baseBranch":"Rama base","editBase":"Editar rama base","saveBase":"Guardar rama base","inheritBase":"Heredar valor remoto","baseUnavailable":"Rama remota predeterminada no disponible","upstreamStatus":"Estado upstream","baseStatus":"Actualidad de la base","baseCurrent":"Actual · {count} por delante","baseBehind":"{count} detrás de la base","yes":"Sí","notUpToDate":"No · {count} commits detrás de la base","ahead":"{count} por delante","behind":"{count} por detrás","diverged":"Divergente","upToDate":"Actualizada","origin":"Origen","inSync":"Sincronizada","dirty":"Modificado","branchCommits":"Confirmaciones: {count}","unpublished":"Sin publicar","detached":"HEAD separado","unknown":"Desconocido","primary":"Principal","tags":"Etiquetas","manageTags":"Gestionar etiquetas","manageTagsDescription":"Crea etiquetas globales reutilizables y elige los colores de sus insignias.","highlight":"Resaltado","clearHighlight":"Quitar resaltado","customize":"Personalizar worktree","edit":"Editar","editTag":"Editar etiqueta","createTag":"Crear etiqueta","saveTag":"Guardar etiqueta","openCode":"Abrir en VS Code","openInsiders":"Abrir en VS Code Insiders","forcePush":"Forzar push","sync":"Sincronizar","rebase":"Rebasar","rebasePaused":"Rebase en pausa","rebaseConflicts":"Resuelve los conflictos con un flujo o cancela para restaurar el estado anterior al rebase.","rebaseIncomplete":"Hay un rebase en curso. Cancélalo para restaurar el estado anterior de la rama.","cancelRebase":"Cancelar rebase","push":"Push","publish":"Publicar","reset":"Restablecer","stashAll":"Guardar todo en stash","stageAll":"Preparar todo","unstageAll":"Quitar todo del área de preparación","autoSync":"Sincronización automática","autoSyncing":"Auto Sync activo","autoSyncPaused":"Auto Sync en pausa","autoSyncTitle":"Configurar Auto Sync","autoSyncDescription":"Rebasa automáticamente esta rama cuando cambia la rama de destino y fuerza el envío con lease.","useConflictWorkflow":"Ejecutar un flujo de acción rápida para resolver conflictos automáticamente","selectConflictWorkflow":"Flujo de conflictos de fusión","noWorkflow":"Sin flujo","conflictWorkflowChoice":"Opción de activación del flujo","defaultWorkflowTrigger":"Activador predeterminado","saveAutoSync":"Activar Auto Sync","resumeAutoSync":"Reanudar Auto Sync","cancelAutoSync":"Cancelar Auto Sync","autoMerge":"Fusión automática","autoMerging":"Auto Merge activo","autoMergePaused":"Auto Merge en pausa","autoMergeComplete":"Auto Merge completado","autoMergeTitle":"Configurar Auto Merge","autoMergeDescription":"GitHub fusionará la solicitud cuando se cumplan las comprobaciones, revisiones y reglas de rama requeridas.","deleteAfterMerge":"Eliminar este worktree después de la fusión","moveTicketToDone":"Mover el ticket de Jira vinculado al estado final configurado","saveAutoMerge":"Activar Auto Merge","resumeAutoMerge":"Reanudar Auto Merge","cancelAutoMerge":"Cancelar Auto Merge","confirmAction":"Confirmar","operationRunning":"Operación en curso…","loadingDetails":"Cargando commits y cambios…","commits":"Confirmaciones ({count})","changes":"Cambios ({count})","noCommits":"Ningún commit difiere de la rama base.","noChanges":"El worktree está limpio.","conflicted":"En conflicto","staged":"Preparado","unstaged":"Sin preparar","untracked":"Sin seguimiento","truncated":"Solo se muestran los primeros resultados compatibles.","status":"Estado","pullRequest":"Pull request","latestBuild":"Última compilación","openInGitHub":"Abrir en GitHub","openDetails":"Abrir detalles","openWorktreeDetails":"Abrir detalles de {branch}","hiddenTitle":"Worktrees ocultos","hiddenDescription":"Los worktrees ausentes se conservan siete días. Volver a detectarlos restaura sus metadatos.","noHidden":"No hay worktrees ocultos.","purge":"Purgar","purgeAll":"Purgar todo","review":{"APPROVED":"Aprobada","CHANGES_REQUESTED":"Cambios solicitados","REVIEW_REQUIRED":"Revisión necesaria","NONE":"Sin decisión"},"comments":"Comentarios: {count}"},"worktreeDetail":{"loading":"Cargando detalles del worktree…","notFound":"Worktree no encontrado","notFoundDescription":"Este worktree está ausente, oculto o ya no está disponible.","back":"Volver a worktrees","linked":"Vinculado","refresh":"Actualizar","inspectionOffline":"El agente está sin conexión. Los metadatos guardados siguen disponibles, pero no se pueden inspeccionar los commits ni los cambios.","inspectionUnavailable":"Este worktree no está disponible para inspección en vivo.","inspectionBusy":"Los commits y cambios se actualizarán cuando termine la operación activa.","inspectionUnsupported":"Actualiza el agente para inspeccionar commits y cambios.","inspectionFailed":"No se pudieron cargar los commits ni los cambios.","actions":"Acciones","workingTree":"Árbol de trabajo","overview":"Resumen","repository":"Repositorio","origin":"Origen","agent":"Agente","folder":"Carpeta","head":"Commit HEAD","upstream":"Rama ascendente","originStatus":"Estado del origen","baseStatus":"Actualidad de la base","lastChecked":"Última comprobación","lastFetched":"Última descarga","management":"Gestión","branchChanges":"Cambios de la rama","noBranchChanges":"No hay cambios confirmados en la rama","diffTruncated":"Algunos archivos modificados no se muestran porque el resultado fue truncado.","codeCoverage":"Cobertura de código","noCoverageReports":"No se han generado informes de cobertura para este árbol de trabajo.","coverageBuild":"Compilación","coverageStatus":"Estado del informe","coverageStatuses":{"PENDING":"Pendiente","READY":"Listo","FAILED":"Fallido"},"overallCoverage":"Cobertura total","changedCoverage":"Cobertura de cambios","generated":"Generado","viewReport":"Ver informe","loadingDiff":"Cargando cambios…","binaryFileChanged":"Archivo binario modificado","noTextChanges":"No hay cambios de texto","diffTooLarge":"La diferencia supera el límite de visualización de 2 MiB","diffLimit":"Diferencia truncada a 2 MiB.","sideBySide":"Lado a lado","overlap":"Superponer","imageTransparency":"Transparencia de imagen","before":"Antes","after":"Después","noImageSide":"No hay imagen en este lado"},"mcpPresets":{"title":"Preajustes de herramientas MCP","description":"Crea conjuntos reutilizables de privilegio mínimo para planes, sesiones y clientes MCP directos.","create":"Crear preajuste","createTitle":"Crear preajuste de herramientas MCP","editTitle":"Editar preajuste de herramientas MCP","dialogDescription":"Elige herramientas explícitas. Seleccionar un grupo incluye sus descendientes actuales y no concede automáticamente herramientas añadidas después.","name":"Nombre","optionalDescription":"Descripción (opcional)","icon":"Icono","availableForPlans":"Mostrar para planes","availableForSessions":"Mostrar para sesiones","plans":"Planes","sessions":"Sesiones","directOnly":"Solo URL directa","tools":"Herramientas integradas","searchTools":"Buscar herramientas integradas…","noMatchingTools":"Ninguna herramienta integrada coincide con la búsqueda.","selectedToolCount":"{count, plural, one {# herramienta seleccionada} other {# herramientas seleccionadas}}","toolCount":"{count, plural, one {# herramienta} other {# herramientas}}","save":"Guardar preajuste","loading":"Cargando preajustes MCP…","noneAvailable":"No hay preajustes MCP disponibles para este tipo de ejecución.","empty":"Todavía no se han creado preajustes de herramientas MCP.","copyUrl":"Copiar URL del preajuste","edit":"Editar preajuste","delete":"Eliminar preajuste","deleteTitle":"¿Eliminar el preajuste de herramientas MCP?","deleteDescription":"¿Eliminar {name}? Las referencias en borradores y flujos se ignorarán en futuras ejecuciones."},"tools":{"title":"Herramientas","description":"Explora, configura y ejecuta herramientas MCP internas y externas.","toolsTab":"Herramientas","auditTab":"Auditoría","auditTitle":"Auditoría de llamadas a herramientas","auditDescription":"Revisa los registros ToolCallAudit redactados más recientes. Los argumentos solo se representan mediante hashes SHA-256.","auditRefresh":"Actualizar auditoría","auditClear":"Borrar auditoría","auditClearTitle":"¿Borrar la auditoría de herramientas?","auditClearDescription":"¿Eliminar todos los registros de auditoría completados? Las llamadas en curso se conservarán.","auditClearAction":"Eliminar registros de auditoría","auditSearch":"Buscar en la auditoría de herramientas","auditSearchPlaceholder":"Buscar herramientas, autores, orígenes, ID o hashes…","auditLoading":"Cargando auditoría de herramientas…","auditEmpty":"No se ha auditado ninguna llamada a herramientas.","auditNoMatches":"Ningún registro de auditoría coincide con la búsqueda.","auditStarted":"Inicio","auditFinished":"Fin","auditTool":"Herramienta","auditStatus":"Estado","auditSource":"Origen","auditCaller":"Autor","auditGroup":"Grupo","auditDuration":"Duración","auditCorrelationId":"ID de correlación","auditArgumentsHash":"SHA-256 de argumentos","auditId":"ID de auditoría","auditSucceeded":"Correcto","auditFailed":"Fallido","auditRunning":"En curso","auditToolsPage":"Página de herramientas","auditWorkflow":"Flujo de trabajo","connectTitle":"Conectar clientes externos","connectDescription":"Otros clientes MCP pueden llamar a todas las herramientas integradas de este servidor mediante Streamable HTTP.","toolApiToken":"Token de la API de herramientas (opcional)","toolApiTokenPlaceholder":"Introduce TOOLS_API_TOKEN","toolApiTokenHelp":"Solo es necesario cuando TOOLS_API_TOKEN está configurado en el servidor. Se conserva únicamente en la memoria de esta página.","serverUrl":"URL del servidor","copyUrl":"Copiar la URL del servidor","clientConfig":"Configuración del cliente","clientConfigHelp":"Añadir esto a la configuración MCP de Claude Code, Cursor o cualquier otro cliente Streamable HTTP.","copyConfig":"Copiar la configuración","connectCopied":"Copiado","connectCopyFailed":"No se pudo copiar al portapapeles.","connectWarning":"La autenticación se desactiva cuando TOOLS_API_TOKEN no está configurado. Si se activa, mantén el token fuera del control de versiones y de las capturas de pantalla.","serverHost":"Host del servidor","customServerHost":"Host personalizado","addServer":"Añadir servidor MCP","search":"Buscar herramientas","searchPlaceholder":"Busca nombres, descripciones o servidores…","serversTitle":"Servidores MCP externos","serversDescription":"Administra proveedores HTTP con transmisión y SSE heredado.","loadingServers":"Cargando servidores MCP…","noServers":"No hay servidores MCP externos configurados.","name":"Nombre","url":"Dirección URL","transport":"Transporte","prefix":"Prefijo del nombre","actions":"Acciones","http":"HTTP (transmisión)","sse":"SSE (heredado)","editServer":"Editar {name}","delete":"Eliminar","deleteServer":"Eliminar {name}","confirmDelete":"¿Eliminar el servidor MCP?","confirmDeleteDescription":"¿Eliminar {name} y sus encabezados personalizados guardados?","catalogTitle":"Catálogo de herramientas","catalogDescription":"Expande una herramienta, introduce sus parámetros y revisa la respuesta completa.","refresh":"Actualizar herramientas","loadingTools":"Cargando herramientas…","noMatchingTools":"Ninguna herramienta coincide con la búsqueda.","addServerTitle":"Añadir servidor MCP externo","editServerTitle":"Editar servidor MCP externo","serverDialogDescription":"Los datos de conexión solo los usa el cliente MCP del servidor.","prefixHelp":"El prefijo se aplica literalmente al mostrar e invocar herramientas.","headers":"Encabezados personalizados","headersHelp":"Los valores se guardan localmente y nunca vuelven al navegador.","addHeader":"Añadir encabezado","noHeaders":"No hay encabezados personalizados.","headerName":"Nombre del encabezado","headerValue":"Valor del encabezado","keepHeaderValue":"Déjalo vacío para conservar el valor guardado","removeHeader":"Quitar encabezado","saveServer":"Guardar servidor","toolCount":"{count} herramientas","tool":"Herramienta","toolDescription":"Descripción","expandTool":"Expandir {name}","collapseTool":"Contraer {name}","noDescription":"No se proporcionó ninguna descripción.","readOnlyBadge":"Solo lectura","writeBadge":"Escritura","destructiveBadge":"Destructiva","externalEffectBadge":"Efecto externo","confirmWriteTitle":"¿Ejecutar una herramienta de escritura?","confirmWriteDescription":"{name} puede cambiar el estado de la aplicación o de servicios externos. Revisa los argumentos antes de continuar.","confirmDestructiveTitle":"¿Ejecutar una herramienta destructiva?","confirmDestructiveDescription":"{name} puede eliminar o sobrescribir datos de forma permanente. Es posible que esta acción no se pueda recuperar.","confirmRun":"Ejecutar herramienta","confirmDestructiveAction":"Ejecutar herramienta destructiva","cancelRun":"Cancelar","parameters":"Parámetros","noParameters":"Esta herramienta no tiene parámetros.","run":"Ejecutar herramienta","running":"Ejecutando…","response":"Respuesta","copyResponse":"Copiar respuesta","copied":"Respuesta copiada","copyFailed":"No se pudo copiar la respuesta.","noResponse":"Ejecuta la herramienta para ver su respuesta.","selectValue":"Selecciona un valor","unset":"Sin definir","true":"Verdadero","false":"Falso","jsonArguments":"Argumentos (objeto JSON)","invalidJson":"Introduce un JSON válido.","invalidJsonObject":"Introduce un objeto JSON.","jsonObjectPlaceholder":"Introduce pares clave-valor como un objeto JSON","jsonPlaceholder":"Introduce JSON, por ejemplo []"},"skills":{"title":"Habilidades","description":"Gestiona paquetes reutilizables de habilidades de IA en la base de datos, clientes, agentes y repositorios.","manageGroups":"Gestionar grupos","settings":"Configuración","addSkill":"Añadir habilidad","syncAll":"Sincronizar todo","search":"Buscar habilidades","searchPlaceholder":"Buscar nombres, descripciones, grupos, repositorios, agentes o rutas…","database":"Base de datos","skillSource":"Origen de habilidades","databaseSkills":"Habilidades de la base de datos","databaseSkillsDescription":"Paquetes de habilidades canónicos almacenados en el plano de control.","clientSkills":"Habilidades del cliente","clientSkillsDescription":"Paquetes de habilidades detectados en el cliente de IA seleccionado.","loading":"Cargando habilidades…","name":"Nombre","skillDescription":"Descripción","scope":"Ámbito","groups":"Grupos","files":"Archivos","updated":"Actualizado","global":"Global","project":"Proyecto","groupOnly":"Solo grupo","noSkills":"Ninguna habilidad coincide con la búsqueda.","agent":"Agente","location":"Ubicación","status":"Estado","tracked":"Rastreado","inSync":"Sincronizado","toDatabase":"A la base de datos","conflict":"Conflicto","noClientSkills":"No se encontraron habilidades para este cliente.","settingsTitle":"Configuración de habilidades","settingsDescription":"Elige los clientes participantes y la sincronización automática de grupos.","autoSync":"Sincronizar automáticamente grupos de proyecto","autoSyncHelp":"Mantén los grupos asignados actualizados en todos los checkouts y worktrees.","enabledTools":"Clientes de IA habilitados","configured":"Configurado","configuredAgents":"{count} agentes configurados","notDetected":"No detectado","saveSettings":"Guardar configuración","skillNotFound":"Habilidad no encontrada.","loadingSkill":"Cargando habilidad…","newSkill":"Nueva habilidad","editorDescription":"Edita los metadatos y todos los archivos del paquete.","delete":"Eliminar","cancel":"Cancelar","deleteSkillDescription":"¿Eliminar {name} de la base de datos y sus copias gestionadas durante la sincronización?","deleteSkill":"¿Eliminar habilidad?","saveSkill":"Guardar habilidad","syncGlobally":"Sincronizar globalmente","syncGloballyHelp":"Incluye esta habilidad en la sincronización personal/global.","noGroups":"Todavía no hay grupos de habilidades.","packageFiles":"Archivos del paquete","addFiles":"Añadir o reemplazar archivos","download":"Descargar","removeFile":"Eliminar","rename":"Renombrar","executable":"Ejecutable","binaryFile":"Archivo binario. Descárgalo o reemplázalo para editarlo.","selectFile":"Selecciona un archivo","duplicateFile":"Ya existe un archivo con esa ruta.","skillGroups":"Grupos de habilidades","groupsDescription":"Agrupa habilidades de proyecto y asígnalas a repositorios.","groupsTableDescription":"Grupos de habilidades del proyecto y sus habilidades y repositorios asignados.","addGroup":"Añadir grupo","loadingGroups":"Cargando grupos…","skillsCount":"Habilidades","repositoriesCount":"Repositorios","newGroup":"Nuevo grupo","newGroupDescription":"Crea el grupo y luego elige habilidades y repositorios.","createGroup":"Crear grupo","groupNotFound":"Grupo no encontrado.","loadingGroup":"Cargando grupo…","groupSettingsDescription":"Gestiona miembros, repositorios y despliegue.","deleteGroupDescription":"¿Eliminar {name} y las copias que ningún otro grupo necesite?","deleteGroup":"¿Eliminar grupo?","syncGroup":"Sincronizar grupo","saveGroup":"Guardar grupo","groupSkills":"Habilidades del grupo","searchSkills":"Buscar habilidades…","groupRepositories":"Repositorios que usan este grupo","searchRepositories":"Buscar repositorios…","syncRunNotFound":"Sincronización no encontrada.","loadingSync":"Cargando sincronización…","syncTitle":"Sincronización de habilidades","syncGroupName":"Sincronizando el grupo {name} en sus repositorios.","syncAllDescription":"Conciliando habilidades de base de datos, personales y de proyecto.","applySync":"Aplicar sincronización","skipPendingClients":"Omitir clientes pendientes","unknownAgent":"Agente desconocido","syncAgents":"Estado de sincronización de agentes","syncAgentsDescription":"Estado de conexión y sincronización de cada agente participante.","connection":"Conexión","operation":"Operación","syncStatus":"Estado de sincronización","syncChanges":"Cambios propuestos","syncChangesDescription":"Revisa los cambios y resuelve los conflictos antes de aplicar esta sincronización.","change":"Cambio","resolution":"Resolución","newSharedLocation":"Nueva ubicación compartida","chooseGroup":"Elige un grupo","useDatabase":"Usar base de datos","useTarget":"Usar copia del cliente","deleteClientCopy":"Eliminar copia del cliente","editManually":"Editar manualmente","compareAndResolve":"Comparar y resolver","skip":"Omitir","scanningAgents":"Buscando clientes habilitados…","noSyncChanges":"No se requieren cambios.","manualResolution":"Resolución manual","manualResolutionDescription":"Compara paquetes completos y edita el resultado canónico, incluidos archivos de texto, binarios y ejecutables.","startFromDatabase":"Empezar con la base de datos","startFromTarget":"Empezar con la copia del cliente","databaseVersion":"Versión de la base de datos","targetVersion":"Versión del cliente","resultVersion":"Resultado canónico","binaryPreview":"Archivo binario; compara el tamaño y los metadatos de ejecución.","missingFile":"Esta versión no contiene el archivo seleccionado.","filePath":"Ruta del archivo","missingResultFile":"Añade este archivo al resultado o selecciona otro archivo del paquete.","useManualVersion":"Usar versión editada"},"builds":{"title":"Compilaciones","description":"Configura, ejecuta, inspecciona, instala y exporta compilaciones de iOS en bases de código y worktrees.","build":"Compilar","history":"Historial","buildScripts":"Scripts de compilación","status":"Estado","destination":"Destino","duration":"Duración","durationValue":"Duración {duration}","actionsLabel":"Acciones","selectBuilds":"Seleccionar compilaciones","selectBuild":"Seleccionar compilación {id}","selectDate":"Seleccionar todas las compilaciones de {date}","deleteSelected":"Eliminar seleccionadas ({count})","deleteBuilds":"Eliminar compilaciones","deleteBuildsTitle":"¿Eliminar {count, plural, one {la compilación} other {# compilaciones}}?","deleteBuildsDescription":"Esto elimina permanentemente los registros y las carpetas de compilación seleccionados.","filterStatus":"Filtrar compilaciones por estado","allStatuses":"Todos los estados","loading":"Cargando compilaciones…","emptyTitle":"Todavía no hay compilaciones","emptyDescription":"Inicia una compilación desde un worktree para crear el primer registro inmutable.","durationSeconds":"{count} segundos","artifactCount":"{count, plural, one {# artefacto} other {# artefactos}}","viewBuild":"Ver compilación","loadMore":"Cargar más","newScript":"Nuevo script de compilación","noScripts":"No hay scripts de compilación","noScriptsDescription":"Crea hooks de JavaScript reutilizables y autorízalos después para repositorios concretos.","defaultEnabled":"Activado de forma predeterminada","preBuild":"Antes de compilar","postBuild":"Después de compilar","timeoutSeconds":"Tiempo límite de {count} segundos","edit":"Editar","deleteScript":"Eliminar script de compilación","editScript":"Editar script de compilación","scriptDescription":"Los hooks ESM de Node.js de confianza se ejecutan desde la raíz del worktree seleccionado con un entorno mínimo.","name":"Nombre","preBuildScript":"JavaScript previo a la compilación","postBuildScript":"JavaScript posterior a la compilación","preBuildScriptHelp":"Exporta de forma predeterminada una función que reciba buildId, branch, destination, action y la instantánea de URL de telemetría.","postBuildScriptHelp":"Exporta de forma predeterminada una función que también reciba buildFolder, failed, cancelled, errorCode, error y la misma instantánea de URL de telemetría.","timeout":"Tiempo límite en segundos","failureBehavior":"Comportamiento ante fallos","enabledByDefault":"Preseleccionar este script para las compilaciones","save":"Guardar","cancel":"Cancelar","startBuild":"Iniciar compilación","startBuildDescription":"Elige una configuración guardada y un destino. El comando se ejecuta desde la raíz de este worktree.","configuration":"Configuración","configurationInvalid":"El origen, esquema o configuración guardados no están disponibles en este worktree.","noConfigurations":"Crea una configuración de compilación de iOS válida en los ajustes del repositorio antes de iniciar una compilación.","reparse":"Volver a analizar","action":"Acción","destinationType":"Tipo de destino","simulator":"Simulador","physicalDevice":"Dispositivo físico","device":"Dispositivo","selectDevice":"Selecciona un dispositivo","anySimulator":"Cualquier simulador iOS","anyPhysicalDevice":"Cualquier dispositivo iOS físico","scripts":"Scripts de compilación","advancedSettings":"Ajustes avanzados","priorBuildForTesting":"Compilación previa para pruebas","selectPriorBuildForTesting":"Selecciona una compilación para pruebas compatible","noPriorBuildForTesting":"Ejecuta primero una compilación para pruebas correcta con esta configuración.","priorBuildSummary":"usa la compilación para pruebas {id}","developmentTeam":"Equipo de desarrollo","testPlan":"Plan de pruebas","schemeDefaultTestPlan":"Predeterminado del esquema","packageResolution":"Resolución de paquetes","disablePackageRepositoryCache":"Desactivar la caché del repositorio de paquetes","signingStyle":"Estilo de firma","codeSignIdentity":"Identidad de firma de código","provisioningProfileSpecifier":"Perfil de aprovisionamiento","productBundleIdentifier":"Identificador del paquete del producto","codeCoverage":"Activar cobertura de código","parseTestResults":"Analizar los resultados de las pruebas después de la compilación","allowProvisioningDeviceRegistration":"Permitir el registro de dispositivos de aprovisionamiento","parallelTesting":"Pruebas en paralelo","parallelTestingWorkers":"Procesos de pruebas en paralelo","onlyTesting":"Probar únicamente","skipTesting":"Omitir pruebas","priorTestProductsPath":"Ruta de productos de pruebas previas","priorXctestrunPath":"Ruta de xctestrun previa","settingsEnabled":"Activado","settingsDisabled":"Desactivado","advancedSettingsNotCaptured":"No se capturaron ajustes avanzados para esta compilación.","generateWorktreeCoverage":"Generar cobertura de código","startWorktreeCoverage":"Ejecutar cobertura del árbol de trabajo","startWorktreeCoverageDescription":"Ejecuta pruebas con cobertura y mide las líneas ejecutables modificadas en la rama y el árbol de trabajo.","startBuildFailed":"No se pudo iniciar la compilación.","parseTestResultsAction":"Analizar resultados de pruebas","retryParseTestResults":"Reintentar análisis de pruebas","generateCoverageReport":"Generar informe de cobertura","retryCoverageReport":"Reintentar informe de cobertura","viewCoverageReport":"Ver informe de cobertura","testResults":"Resultados de pruebas","testResultsFailed":"No se pudieron analizar los resultados de las pruebas.","testTotal":"{count} pruebas","testPassed":"{count} aprobadas","testFailed":"{count} fallidas","testSkipped":"{count} omitidas","testResultFilters":"Filtros de resultados de pruebas","testFilterAll":"Todas ({count})","testFilterPassed":"Aprobadas ({count})","testFilterFailed":"Fallidas ({count})","testFilterSkipped":"Omitidas ({count})","testsWithoutSuite":"Pruebas sin conjunto","testsWithoutFile":"Pruebas sin archivo","expandTestSuite":"Expandir conjunto de pruebas {suite}","collapseTestSuite":"Contraer conjunto de pruebas {suite}","expandTestFile":"Expandir archivo de pruebas {file}","collapseTestFile":"Contraer archivo de pruebas {file}","testSuitePassed":"{passed} de {total} aprobadas ({percent})","testStatus":"Resultado","testName":"Prueba","testSuite":"Conjunto","testBundle":"Paquete","testDuration":"Duración","coverageReport":"Informe de cobertura de código","viewChangesWithCoverage":"Ver cambios con cobertura","loadingCoverageReport":"Cargando informe de cobertura…","coverageReportNotFound":"Informe de cobertura no encontrado","coverageReportNotFoundDescription":"Primero genera un informe de cobertura desde la página de detalles de la compilación.","backToBuild":"Volver a la compilación","overallCoverage":"Cobertura total","changedCoverage":"Cobertura de cambios","coveredLines":"Líneas cubiertas","executableLines":"Líneas ejecutables","uncoveredLines":"Líneas sin cubrir","changedFilesCoverage":"Cobertura de archivos modificados","allCoverageFiles":"Todos los archivos de cobertura","expandCoverageFiles":"Expandir todos los archivos de cobertura","collapseCoverageFiles":"Contraer todos los archivos de cobertura","searchCoverageFiles":"Buscar objetivos, archivos o rutas","searchChangedCoverageFiles":"Buscar archivos modificados o rutas","sortCoverageFiles":"Ordenar archivos de cobertura por {column}","coverageTarget":"Objetivo","coverageFile":"Archivo","coverage":"Cobertura","changeType":"Cambio","allowProvisioningUpdates":"Permitir actualizaciones de aprovisionamiento","buildSettingOverrides":"Sobrescrituras permitidas de ajustes de compilación (JSON)","commandPreview":"Vista previa del comando","overridesInvalid":"Las sobrescrituras de ajustes de compilación deben ser un objeto JSON.","advancedJsonInvalid":"Los ajustes avanzados deben ser JSON válido.","buildNotFound":"Compilación no encontrada","buildNotFoundDescription":"Este registro de compilación no existe o ya no está disponible.","backToBuilds":"Volver a las compilaciones","buildId":"ID de compilación","deleteBuild":"Eliminar compilación","deleteBuildTitle":"¿Eliminar esta compilación?","deleteBuildDescription":"Esto elimina permanentemente el registro y su carpeta de compilación.","downloadArtifact":"Descargar","downloadIpa":"Descargar IPA","installOnDevice":"Instalar en el dispositivo","installPreparing":"Preparando la descarga…","installRequiresHttps":"La instalación inalámbrica requiere una dirección HTTPS pública. Abra esta página mediante HTTPS o defina PUBLIC_BASE_URL.","installNotSupportedForAppStore":"Las compilaciones de App Store Connect no se pueden instalar de forma inalámbrica. Exporte con Debugging, Release Testing o Enterprise en su lugar.","installMissingBundleIdentifier":"El identificador del paquete no está disponible. Vuelva a exportar el archivo para habilitar la instalación.","installOpenOnDevice":"Abra esta página en un iPhone o iPad para instalar.","installFailed":"No se pudo iniciar la instalación.","copyInstallLink":"Copiar enlace de instalación","installLinkCopied":"Enlace de instalación copiado","ipaBundleIdentifier":"Identificador del paquete","ipaBundleVersion":"Versión","cancelBuild":"Cancelar compilación","rebuild":"Volver a compilar","outOfDate":"Desactualizada","configureBuilds":"Ve a los ajustes del repositorio para configurar las compilaciones","selectedDevices":"{count} dispositivos","selectRunDevices":"Dispositivos de ejecución","noCompatibleDevices":"No hay destinos conectados compatibles disponibles.","run":"Ejecutar","exportArchive":"Exportar archivo","logs":"Registros","expandLogs":"Expandir registros","collapseLogs":"Contraer registros","noLogs":"No se han recibido eventos de registro.","followOutput":"Seguir salida","fitTerminal":"Ajustar terminal","viewRawOutput":"Ver salida sin formato","searchTerminal":"Buscar en la terminal","previousTerminalMatch":"Coincidencia anterior","nextTerminalMatch":"Coincidencia siguiente","scrollLogsToTop":"Ir al inicio de los registros","scrollLogsToBottom":"Ir al final de los registros","commandSummary":"Resumen del comando","copyCommand":"Copiar resumen del comando","commandCopied":"Resumen del comando copiado","copyFailed":"No se pudo copiar al portapapeles.","noScriptExecutions":"No se seleccionaron scripts de compilación.","overview":"Resumen","scheme":"Esquema","head":"Confirmación","startedAt":"Inicio","finishedAt":"Fin","artifactDirectory":"Carpeta de compilación","artifacts":"Artefactos","noArtifacts":"No se capturaron artefactos.","runsAndExports":"Ejecuciones y exportaciones","archiveExport":"Exportación del archivo","noRunsOrExports":"Esta compilación aún no se ha ejecutado ni exportado.","exportArchiveDescription":"Exporta localmente el .xcarchive capturado sin subirlo.","distributionMethod":"Método de distribución","exportMethod":{"DEBUGGING":"Depuración","RELEASE_TESTING":"Pruebas de versión","ENTERPRISE":"Empresa","APP_STORE_CONNECT":"App Store Connect"},"selectTeam":"Seleccione un equipo","noTeams":"No se encontraron equipos de desarrollo en el agente de compilación.","signingCertificate":"Certificado de firma","certificateAutomatic":"Elegido automáticamente","certificateMayNotMatch":"Puede no coincidir con los perfiles seleccionados","provisioningProfiles":"Perfiles de aprovisionamiento","parseProvisioningProfiles":"Analizar proyecto","reparseProvisioningProfiles":"Analizar de nuevo","parseProvisioningProfilesHelp":"Lee los destinos firmables del esquema seleccionado y busca perfiles instalados compatibles.","parseProvisioningProfilesEmpty":"Analiza el proyecto para sustituir el JSON por un selector de perfil para cada app y extensión.","noSigningRequirements":"No se encontraron destinos de app o extensión que requieran firma.","selectSigningSourceFirst":"Selecciona primero una fuente de Xcode, un esquema y una configuración.","selectProfile":"Seleccione un perfil","profileMayNotMatch":"Puede no coincidir con este identificador","manualBundleIdentifier":"Identificador de paquete para añadir","manualBundleIdentifierPlaceholder":"com.ejemplo.app.extension","manualBundleIdentifierHelp":"Añade cualquier identificador que no se haya detectado y elige entre todos los perfiles disponibles.","addBundleIdentifier":"Añadir identificador","removeBundleIdentifier":"Eliminar {bundleId}","showAllProfiles":"Mostrar todos","showMatching":"Mostrar coincidentes","noMatchingProfiles":"Ningún perfil instalado coincide con este paquete para el método seleccionado.","noArchiveBundles":"No se encontraron paquetes firmables en el archivo.","profileExpired":"caducado","signingOptionsFailed":"No se pudieron leer las opciones de firma desde el agente.","automatic":"Automático","manual":"Manual","autoExport":"Exportar automáticamente los archivos correctos","exportWhenComplete":"Exportar al finalizar","uploadSymbols":"Subir símbolos","manageBuildNumber":"Gestionar versión y número de compilación","internalTestFlightOnly":"Solo TestFlight interno","stripSwiftSymbols":"Eliminar símbolos de Swift","thinning":"Optimización de la app","iCloudEnvironment":"Entorno del contenedor iCloud","distributionBundleIdentifier":"Identificador de paquete de distribución","localExportOnly":"Las exportaciones se guardan localmente como IPA y nunca se suben a App Store Connect.","signingAssetCoverageWarning":"Esta identidad está instalada en {installed} de {total} agentes compatibles. Las compilaciones asignadas a otros agentes pueden fallar al exportar.","iosApp":"App iOS","parseCheckout":"Copia usada para analizar","parseCheckoutDescription":"Las configuraciones guardadas se comparten en todo el repositorio. El descubrimiento, la validación y el estado de análisis usan la copia del agente seleccionada.","checkoutUnavailable":"no disponible","addIosProject":"Añadir proyecto de aplicación iOS","addIosProjectDescription":"Activa configuraciones de compilación de Xcode reutilizables para cada checkout y worktree de este repositorio.","sharedProjectDescription":"Las definiciones del proyecto y los scripts permitidos se comparten en el repositorio. El estado de análisis inferior procede de este checkout del agente.","buildConfigurations":"Configuraciones de compilación","newConfiguration":"Nueva configuración","lastParsed":"Analizado: {value}","neverParsed":"Nunca analizado","stale":"metadatos desactualizados","savedValueUnavailable":"valor guardado no disponible","deleteConfiguration":"Eliminar configuración de compilación","allowedScripts":"Scripts de compilación permitidos","createScriptsOnBuildsPage":"Crea scripts reutilizables en la página Compilaciones y vuelve aquí para autorizarlos.","editConfiguration":"Editar configuración de compilación","configurationDescription":"Selecciona un origen de Xcode relativo al repositorio y guarda su esquema, configuración, acción y ajustes avanzados opcionales.","icon":"Icono","configurationIcons":{"none":"Sin icono","apple":"Plataforma Apple","app-window":"Ventana de app","archive":"Archivo","beaker":"Experimento","box":"Caja","bug":"Error","code":"Código","gauge":"Rendimiento","hammer":"Compilación","layers":"Capas","package":"Paquete","play":"Ejecutar","rocket":"Lanzamiento","shield":"Seguridad","smartphone":"App móvil","sparkles":"Función","terminal":"Línea de comandos","test-tube":"Pruebas","wrench":"Herramientas"},"source":"Origen de Xcode","selectSource":"Selecciona un proyecto, workspace o Package.swift de la raíz","loadingSources":"Buscando orígenes…","defaultAction":"Acción predeterminada","advancedJson":"Ajustes avanzados normalizados (JSON)","statuses":{"QUEUED":"En cola","PREPARING":"Preparando","RUNNING":"En curso","SUCCEEDED":"Correcta","FAILED":"Fallida","CANCELLED":"Cancelada"},"parseStatuses":{"UNPARSED":"Sin analizar","PARSING":"Analizando","VALID":"Válido","INVALID":"No válido","ERROR":"Error"},"actions":{"BUILD":"Compilar","TEST":"Probar","ANALYZE":"Analizar","ARCHIVE":"Archivar","BUILD_FOR_TESTING":"Compilar para pruebas","TEST_WITHOUT_BUILDING":"Probar sin compilar"},"failureBehaviors":{"FAIL_BUILD":"Hacer fallar la compilación","CONTINUE":"Continuar con una advertencia"}},"devices":{"title":"Dispositivos","description":"Inscribe iPhone y iPad, revisa el historial de conexión y registra en Apple los dispositivos aprobados.","export":"Exportar TSV para Apple","addDevice":"Añadir dispositivo","filterStatus":"Filtrar dispositivos por estado","allStatuses":"Todos los estados","sort":"Ordenar dispositivos","sortOption":{"NEWEST":"Inscripción más reciente","NAME":"Nombre del dispositivo","LAST_SEEN":"Visto por última vez"},"loading":"Cargando dispositivos…","emptyTitle":"No hay dispositivos inscritos","emptyDescription":"Crea un perfil de inscripción en un iPhone o iPad para recopilar su identificador.","device":"Dispositivo","statusLabel":"Estado","hardware":"Producto","lastIp":"Última IP","enrolled":"Inscrito","registered":"Registro en Apple","lastSeen":"Última conexión","viewDevice":"Ver {name}","unavailable":"No disponible","status":{"PENDING":"Pendiente","REGISTERING":"Registrando","REGISTERED":"Registrado","REGISTRATION_FAILED":"Error de registro","REJECTED":"Rechazado"},"back":"Volver a dispositivos","enrollTitle":"Inscribir un dispositivo iOS","enrollDescription":"Instala un perfil temporal firmado para enviar de forma segura el identificador de desarrollo del dispositivo.","httpsRequired":"La inscripción está desactivada porque esta dirección no usa HTTPS público. Usa un proxy inverso HTTPS con confianza pública o configura PUBLIC_BASE_URL.","collectedTitle":"Información recopilada","collectUdid":"El UDID del dispositivo utilizado para el registro de desarrollo de Apple.","collectProduct":"El modelo de producto Apple indicado por iOS.","collectVersion":"La versión instalada de iOS o iPadOS.","collectIp":"La dirección IP observada durante la descarga y la respuesta del perfil, incluida la cabecera del proxy que la proporcionó.","deviceLabel":"Etiqueta del dispositivo","deviceLabelPlaceholder":"Por ejemplo, iPhone","deviceLabelHelp":"Elige una etiqueta reconocible. El servicio de perfiles de Apple no puede leer el nombre asignado en Ajustes.","consent":"Consiento la recopilación y el almacenamiento del identificador, producto, versión de software y direcciones IP observadas para gestionar el dispositivo.","downloadProfile":"Descargar perfil de inscripción","notFound":"No se encontró este dispositivo.","rebuildWarning":"Este dispositivo está registrado en Apple. Las IPA existentes no obtienen acceso automáticamente; crea un nuevo perfil de aprovisionamiento y exporta una nueva IPA.","openBuilds":"Abrir Compilaciones","configureAppleFirst":"Configura y verifica las credenciales de App Store Connect antes de registrar este dispositivo.","openSettings":"Abrir Ajustes","generalInformation":"Información general","deviceModel":"Modelo del dispositivo","saveName":"Guardar etiqueta","udid":"UDID del dispositivo","hideUdid":"Ocultar UDID del dispositivo","revealUdid":"Mostrar UDID del dispositivo","copyUdid":"Copiar UDID del dispositivo","osVersion":"Versión de software","appleDeviceId":"ID de recurso de Apple","retryRegistration":"Reintentar registro","registerWithApple":"Registrar en Apple","reject":"Rechazar","delete":"Eliminar","ipHistory":"Historial de IP","ipAddress":"Dirección IP","source":"Paso de inscripción","forwardedBy":"Cabecera de dirección","observed":"Observada","noIpHistory":"No hay observaciones de IP guardadas para este dispositivo.","ipSource":{"PROFILE_DOWNLOAD":"Descarga del perfil","PROFILE_RESPONSE":"Respuesta del perfil"},"ipHeaderSource":{"CLOUDFLARE":"Cloudflare (cabecera CF-Connecting-IP)","FORWARDED":"Proxy (cabecera X-Forwarded-For)","REAL_IP":"Proxy de origen (cabecera X-Real-IP)"},"enrollmentHistory":"Historial de inscripciones","noEnrollmentHistory":"No hay intentos de inscripción guardados para este dispositivo.","firmwareTitle":"Firmware de iOS","firmwareDescription":"Versiones de firmware y estado actual de firma proporcionados por IPSW.me.","firmwareLoading":"Cargando información del firmware…","firmwareLoadFailed":"No se pudo cargar la información del firmware: {error}","signingStatus":"Estado de firma","firmwareVersion":"Versión","releaseDate":"Fecha de lanzamiento","fileSize":"Tamaño","firmwareDownload":"Descarga","signed":"Firmado","unsigned":"Sin firmar","downloadFirmware":"Descargar","copyFirmwareUrl":"Copiar URL de descarga para iOS {version}","noFirmware":"No hay información de firmware disponible para este dispositivo.","created":"Creada","completed":"Completada","failure":"Fallo","enrollmentStatus":{"ISSUED":"Emitida","DOWNLOADED":"Descargada","COMPLETED":"Completada","EXPIRED":"Caducada","FAILED":"Fallida"},"registerTitle":"¿Registrar este dispositivo en Apple?","registerDescription":"Se conciliará el dispositivo por UDID y, si hace falta, se añadirá a tu cuenta de Apple Developer. Esto no recompila una IPA.","confirmRegister":"Registrar dispositivo","rejectTitle":"¿Rechazar este dispositivo?","rejectDescription":"El dispositivo seguirá en el historial local y no se podrá registrar. Elimínalo localmente e inscríbelo de nuevo si quieres reconsiderarlo.","confirmReject":"Rechazar dispositivo","deleteTitle":"¿Eliminar este dispositivo?","deleteDescription":"Esto elimina el dispositivo local, los intentos de inscripción y el historial de IP. El registro anual de Apple no se elimina.","confirmDelete":"Eliminar dispositivo"},"iosDeviceSettings":{"title":"Inscripción de dispositivos iOS","description":"Configura perfiles de inscripción firmados y el registro opcional de dispositivos en Apple.","loading":"Cargando ajustes de dispositivos iOS…","unavailable":"No disponible","profileTitle":"Perfil de inscripción","profileDescription":"Estos valores identifican el perfil temporal que aparece en Ajustes de iOS.","signerReady":"Firmante listo","signerNotGenerated":"Firmante sin generar","organizationName":"Nombre de la organización","profileOrganizationHelp":"Usa un nombre reconocible; iOS muestra esta organización mientras se instala el perfil de inscripción.","profileIdentifier":"Identificador del perfil","profileIdentifierHelp":"Usa un identificador DNS inverso estable, como com.example.ai-development-environment.enrollment.","signerCreated":"Creado el {date}","signerExpires":"Caduca el {date}","unverifiedWarning":"El certificado generado es autofirmado, por lo que iOS muestra el perfil como No verificado. Revisa la organización mostrada antes de instalarlo.","regenerateSigner":"Regenerar firmante","regenerateTitle":"¿Regenerar el firmante del perfil?","regenerateDescription":"Los perfiles nuevos usarán otra clave privada y otro certificado. Los perfiles ya descargados podrán responder hasta que caduque su token.","saveProfile":"Guardar ajustes del perfil","profileSaved":"Se guardaron los ajustes del perfil de inscripción.","signerRegenerated":"Se generó un nuevo firmante del perfil.","appleTitle":"API de dispositivos de App Store Connect","appleDescription":"Usa una clave API con acceso a Certificados, Identificadores y Perfiles. La clave privada se guarda en el servidor y nunca vuelve al navegador.","appleSetupHelp":"En Usuarios y acceso → Integraciones, crea una clave API de equipo con acceso a Certificados, Identificadores y Perfiles. Copia el ID del emisor y el ID de clave, y descarga y conserva el archivo .p8; Apple solo lo ofrece una vez.","openApiKeys":"Abrir claves API de App Store Connect","verified":"Verificado","notVerified":"Sin verificar","issuerId":"ID del emisor","keyId":"ID de la clave","privateKey":"Clave privada .p8 de App Store Connect","p8DropZone":"Zona para soltar la clave privada de App Store Connect","p8DropHint":"Pega la clave abajo, suelta aquí un archivo .p8 o elige un archivo.","chooseP8":"Elegir archivo .p8 de App Store Connect","privateKeyPlaceholder":"Pega aquí la clave privada PKCS#8","privateKeyConfiguredPlaceholder":"Hay una clave privada guardada. Déjalo vacío para conservarla.","privateKeyHelp":"Solo se aceptan claves ES256 PKCS#8 descargadas de App Store Connect.","privateKeyKeepHelp":"Déjalo vacío para conservar la clave guardada o proporciona una nueva clave .p8 para sustituirla.","lastVerified":"Credenciales verificadas el {date}","lastTestFailed":"La prueba de credenciales falló el {date}","clear":"Borrar credenciales","clearTitle":"¿Borrar las credenciales de App Store Connect?","clearDescription":"El registro de dispositivos quedará desactivado hasta guardar y verificar otra clave API.","retest":"Probar de nuevo","saveAndVerify":"Guardar y verificar","appleSaved":"Las credenciales de App Store Connect se guardaron y verificaron.","appleTestSucceeded":"Las credenciales de App Store Connect se verificaron correctamente.","appleCleared":"Se borraron las credenciales de App Store Connect.","p8Invalid":"Elige un archivo .p8 válido que contenga una clave privada PKCS#8.","p8ReadError":"No se pudo leer el archivo .p8 seleccionado.","p8Loaded":"Se cargó {filename}. Guarda y verifica para usar esta clave."},"telemetry":{"consoleTitle":"Registros de consola","consoleDescription":"Examina las salidas de consola recopiladas de compilaciones y dispositivos.","analyticsTitle":"Eventos de analítica","analyticsDescription":"Examina los eventos de analítica del producto y sus parámetros a medida que llegan.","unifiedTitle":"Vista unificada","unifiedDescription":"Revisa registros de consola y eventos de analítica en una única cronología en vivo.","separator":"Separador","deleteSeparator":"Eliminar separador {name}","settings":"Configuración","refresh":"Actualizar","search":"Buscar telemetría","searchPlaceholder":"Buscar texto, patrón glob o expresión regular","searchMode":"Modo de búsqueda","searchModes":{"text":"Texto","glob":"Patrón glob","regex":"Expresión regular"},"caseSensitive":"Distinguir mayúsculas y minúsculas","filters":"Filtros","columnsAction":"Columnas","removeColumn":"Quitar columna {column}","export":"Exportar","edit":"Editar","done":"Listo","on":"activado","off":"desactivado","allCollection":"Todo","consoleCollection":"Consola","analyticsCollection":"Analítica","count":"{matching} de {total}","allResultsSelected":"Todas las filas coincidentes están seleccionadas","selectedCount":"{count} seleccionadas","clearSelected":"Borrar selección","clearAll":"Borrar todo","confirmClearRecords":"Borrar registros","confirmClearWithSeparators":"Borrar con separadores","clearBeforeSeparator":"Borrar antes del separador más reciente","confirmClearBefore":"Confirmar borrado antes del separador","cancel":"Cancelar","selectAll":"Seleccionar todas las filas coincidentes","expand":"Expandir fila","collapse":"Contraer fila","selectRow":"Seleccionar fila","selectDay":"Seleccionar todas las filas del {day}","selectSeparator":"Seleccionar filas encima de {name}","loading":"Cargando telemetría…","empty":"No hay telemetría coincidente.","loadMore":"Cargar más","highlight":"Resaltar","clearHighlight":"Quitar resaltado","advancedFilters":"Filtros avanzados","advancedFiltersDescription":"Combina condiciones reutilizables entre campos estándar y rutas de parámetros.","match":"Coincidencia","allConditions":"Todas las condiciones","anyCondition":"Cualquier condición","filterField":"Campo de filtro","operator":"Operador de comparación","removeCondition":"Quitar condición","filterValue":"Valor","appliesTo":"Se aplica a","console":"Consola","analytics":"Analítica","addCondition":"Añadir condición","savedFilters":"Filtros guardados","noSavedFilters":"No hay filtros guardados.","load":"Cargar","delete":"Eliminar","filterName":"Nombre del filtro","saveFilter":"Guardar filtro","updateFilter":"Actualizar filtro","editSavedFilter":"Editar {name}","applyFilters":"Aplicar filtros","clearFilters":"Borrar filtros","manageColumns":"Administrar columnas","manageColumnsDescription":"Elige, ordena, restablece y guarda las columnas utilizadas por esta vista.","availableColumns":"Columnas disponibles","resetColumns":"Restablecer columnas","columnPresets":"Preajustes de columnas","noColumnPresets":"No hay preajustes de columnas.","default":"Predeterminado","setDefault":"Establecer como predeterminado","presetName":"Nombre del preajuste","setAsDefault":"Establecer como predeterminado","savePreset":"Guardar preajuste","updatePreset":"Actualizar preajuste","editPreset":"Editar {name}","saveAs":"Guardar como","applyColumns":"Aplicar columnas","telemetrySettings":"Configuración de observabilidad","apiHelp":"Ayuda de la API","consoleApiHelpTitle":"Enviar registros de consola","analyticsApiHelpTitle":"Enviar eventos de analítica","apiHelpDescription":"Consulta el contrato de ingesta REST y copia una referencia de Markdown lista para usar.","copyMarkdownDocs":"Copiar documentación Markdown","markdownDocsCopied":"Markdown copiado","settingsDescription":"Configura los orígenes de ingesta detectados y reemplazados que comparten todas las vistas.","localBaseUrl":"URL base local","remoteBaseUrl":"URL base remota","override":"Reemplazo","detected":"Detectada: {value}","effective":"Efectiva: {value}","localConsoleEndpoint":"Extremo local de consola","localAnalyticsEndpoint":"Extremo local de analítica","remoteConsoleEndpoint":"Extremo remoto de consola","remoteAnalyticsEndpoint":"Extremo remoto de analítica","copyEndpoint":"Copiar {label}","clearValues":"Borrar valores","noValues":"Sin valores","copyColumnValue":"Copiar {label}: valor","copyValue":"Copiar valor","filterByValue":"Filtrar por valor","copyJsonDictionary":"Copiar diccionario JSON","copyPathValues":"Copiar pares de ruta y valor","copyParameterValue":"Copiar {key}: valor","addColumn":"Añadir columna {key}","filterParameter":"Filtrar por {key}","saveSettings":"Guardar configuración","addSeparator":"Añadir separador","addSeparatorDescription":"Inserta un límite compartido en la cronología. El nombre es opcional.","optionalName":"Nombre opcional","exportTitle":"Exportar telemetría","exportSelectedDescription":"Exporta las {count} filas seleccionadas.","exportAllDescription":"Exporta todas las filas que coinciden con la búsqueda y los filtros actuales.","format":"Formato del archivo","exportFields":"Campos","exportFailed":"La exportación falló. Inténtalo de nuevo.","columns":{"time":"Hora","source":"Origen","level":"Nivel","category":"Categoría","message":"Mensaje","buildId":"ID de compilación","sessionId":"ID de sesión","deviceIp":"IP del dispositivo","receivedAt":"Recibido","attributes":"Atributos","kind":"Tipo","levelKind":"Nivel / Tipo","name":"Nombre del evento","screenName":"Nombre de pantalla","parameters":"Parámetros","defaultParameters":"Parámetros predeterminados","additionalParameters":"Parámetros adicionales","detail":"Detalle","attribute":"Atributo","defaultParameter":"Valor predeterminado","additionalParameter":"Valor adicional"},"operators":{"CONTAINS":"contiene","DOES_NOT_CONTAIN":"no contiene","IS":"es igual a","IS_NOT":"no es igual a","MATCHES_GLOB":"coincide con el patrón glob","MATCHES_REGEX":"coincide con la expresión regular","NO_REGEX_MATCH":"no coincide con la expresión regular","IS_EMPTY":"está vacío","IS_NOT_EMPTY":"no está vacío"}},"provisioningProfiles":{"title":"Perfiles de aprovisionamiento","description":"Inspecciona, sincroniza, importa y elimina recursos de firma de Apple en agentes y en el portal de Apple Developer.","refresh":"Actualizar inventario","refreshProgress":"Actualizando inventario: {complete} de {total} agentes finalizados.","noRefreshAgents":"No hay agentes compatibles con firma disponibles para actualizar.","refreshStatus":{"QUEUED":"En cola","RUNNING":"Escaneando","SUCCEEDED":"Completado","FAILED":"Fallido","CANCELLED":"Cancelado","TIMED_OUT":"Tiempo agotado"},"agents":"Agentes de destino","agentsDescription":"Los agentes antiguos siguen visibles, pero deben actualizarse para recibir operaciones de firma.","unsupported":"No compatible","uploadProfile":"Instalar un perfil","uploadProfileDescription":"Instala un archivo .mobileprovision en todos los agentes seleccionados.","chooseMobileprovision":"Elegir .mobileprovision","importIdentity":"Importar identidad de firma","importIdentityDescription":"Envía un .p12 cifrado mediante permisos de un solo uso y lo importa para codesign.","passphrase":"Contraseña del .p12","chooseP12":"Elegir .p12 cifrado","localProfiles":"Perfiles locales","localCertificates":"Identidades locales","applePortal":"Portal de Apple","profilesDescription":"Los perfiles se agrupan entre agentes por UUID y hash de contenido.","deleteExpired":"Eliminar vencidos","deleteExpiredDescription":"¿Eliminar todos los perfiles locales vencidos de los agentes seleccionados?","name":"Nombre","bundleId":"ID del paquete","type":"Tipo","team":"Equipo","devices":"Dispositivos","expires":"Vence","installedAgents":"Agentes instalados","expired":"Vencido","syncMissing":"Sincronizar faltantes","viewProfile":"Ver detalles de {name}","download":"Descargar perfil","delete":"Eliminar","deleteProfile":"¿Eliminar perfil?","deleteProfileDescription":"Elimina este perfil de todos los agentes indicados. Xcode puede volver a descargar perfiles administrados.","fingerprints":"Huellas","privateKey":"Clave privada","available":"Disponible","missing":"Falta","deleteIdentity":"¿Eliminar identidad de firma?","deleteIdentityDescription":"Elimina esta identidad y su clave privada del llavero de inicio de sesión de cada agente.","portalProfiles":"Perfiles del portal","portalCertificates":"Certificados del portal","createPortalProfile":"Crear perfil del portal","createPortalProfileDescription":"Crea un perfil con un ID de paquete, certificado y los dispositivos registrados aplicables. Nunca genera claves privadas.","profileName":"Nombre del perfil","selectBundleId":"Elegir ID del paquete","selectCertificate":"Elegir certificado","create":"Crear","confirmPortalDelete":"Confirmar cambio en Apple","portalDeleteDescription":"Este cambio afecta inmediatamente a la cuenta de Apple Developer y puede interrumpir firmas en otros equipos.","none":"No se encontró ninguno.","operations":"Operaciones recientes","certificatesDescription":"Identidades de firma agrupadas por huella del certificado entre agentes.","noLocalProfiles":"No se encontraron perfiles de aprovisionamiento locales.","noLocalCertificates":"No se encontraron identidades de firma locales.","loadingPortal":"Cargando recursos de Apple Developer…","loadingProfile":"Cargando perfil de aprovisionamiento…","profileNotFound":"Este perfil de aprovisionamiento ya no está instalado en ningún agente.","profileDetails":"Detalles del perfil","platforms":"Plataformas","created":"Creado","acceptedCertificates":"Huellas de certificados aceptados","provisionedDevices":"Dispositivos aprovisionados","provisionedDevicesDescription":"Este perfil contiene {count} identificadores de dispositivo.","deviceListPendingRefresh":"Actualiza el inventario de firma para cargar los identificadores guardados en este perfil.","noProvisionedDevices":"Este perfil de distribución no está limitado a dispositivos individuales.","device":"Dispositivo","udid":"UDID del dispositivo","status":"Estado","unknownDevice":"No inscrito en esta aplicación"},"apnsDevices":{"title":"Dispositivos APNs","description":"Registros de tokens de apps y MDM disponibles para notificaciones.","loading":"Cargando dispositivos APNs…","empty":"Ninguna app ha registrado un token APNs.","device":"Dispositivo / app","topic":"Tema","environment":"Entorno","pushTypes":"Tipos push","token":"Token oculto","status":"Estado","lastRegistration":"Último registro","lastSend":"Último envío","rename":"Renombrar","renameDescription":"Elige una etiqueta fácil de reconocer.","displayName":"Nombre visible","save":"Guardar","activate":"Activar","deactivate":"Desactivar","delete":"Eliminar","deleteTitle":"¿Eliminar registro APNs?","deleteDescription":"¿Eliminar este registro de token y desvincularlo del historial conservado?","apiHelp":"Ayuda de API","apiHelpTitle":"Registrar un dispositivo APNs","apiHelpDescription":"Envía JSON estricto al endpoint público. Los tokens pueden ser HEX o Base64; MDM también requiere pushMagic."},"pushSettings":{"title":"Notificaciones push","tokenAuthentication":"Autenticación por token (.p8)","tokenDescription":"Recomendada para apps, Live Activities, VoIP y otros tipos que no sean MDM.","tokenSetupHelp":"Crea una clave con el servicio de notificaciones push de Apple (APNs) activado, copia su ID de clave y descarga y conserva el archivo .p8; Apple solo lo ofrece una vez.","createTokenKey":"Crear una clave APNs","configured":"Configurado","notConfigured":"Sin configurar","teamId":"ID de equipo","keyId":"ID de clave","teamIdHelp":"Copia el ID de equipo de los datos de suscripción de Apple Developer.","openMembership":"Abrir datos de suscripción","privateKey":"Clave privada .p8 de APNs","p8DropZone":"Zona para soltar la clave privada de APNs","p8DropHint":"Pega la clave abajo, suelta aquí un archivo .p8 o elige un archivo.","chooseP8":"Elegir archivo .p8 de APNs","privateKeyPlaceholder":"Pega aquí la clave privada PKCS#8","privateKeyConfiguredPlaceholder":"Hay una clave privada guardada. Déjalo en blanco para conservarla.","privateKeyHelp":"Solo se aceptan claves ES256 PKCS#8 descargadas del portal de Apple Developer.","privateKeyKeepHelp":"Deja esto en blanco para conservar la clave guardada, o proporciona una nueva clave .p8 para sustituirla.","p8Invalid":"Elige un archivo .p8 válido que contenga una clave privada PKCS#8.","p8ReadError":"No se pudo leer el archivo .p8 seleccionado.","p8Loaded":"Se cargó {filename}. Guarda para usar esta clave.","tokenConfiguredOn":"Clave configurada el {date}","tokenLastUsed":"Último uso: {date}","tokenSaved":"Clave de token APNs guardada.","remove":"Eliminar","removeToken":"¿Eliminar clave APNs?","removeTokenDescription":"Los envíos con autenticación por token se detendrán hasta configurar otro .p8.","tokenRemoved":"Clave de token APNs eliminada.","save":"Guardar","certificateAuthentication":"Autenticación por certificado (.p12)","certificateDescription":"Se admiten varios certificados por tema y son obligatorios para MDM.","certificateSetupHelp":"Crea el certificado push adecuado, instálalo con su clave privada en Acceso a Llaveros y exporta ambos como un .p12 protegido por contraseña. Usa el tema del certificado (el ID del paquete de la app o el tema MDM) y selecciona su entorno de pruebas o producción.","createCertificate":"Crear un certificado APNs","name":"Nombre de credencial","topic":"Tema","environment":"Entorno","certificate":"Paquete de certificado .p12 de APNs","p12DropZone":"Zona para soltar el certificado de APNs","p12DropHint":"Pega el paquete codificado abajo, suelta aquí un archivo .p12 o elige un archivo.","p12Placeholder":"Paquete .p12 codificado en base64","chooseP12":"Elegir archivo .p12 de APNs","certificateHelp":"Soltar o elegir un archivo .p12 lo codifica automáticamente; pega base64 solo si el paquete ya está codificado.","p12Selected":"{filename} listo para guardar.","p12Invalid":"Elige un paquete de certificado .p12 o .pfx válido.","p12ReadError":"No se pudo leer el archivo .p12 seleccionado.","p12Loaded":"Se cargó {filename}. Añade el certificado para guardarlo.","passphrase":"Contraseña del .p12","addCertificate":"Añadir certificado","certificateAdded":"Certificado APNs añadido.","expires":"Vence {date}","lastTested":"Última prueba {date}","retest":"Probar de nuevo","removeCertificate":"¿Eliminar certificado APNs?","removeCertificateDescription":"Los envíos que usen este certificado fallarán al eliminarlo."},"pushNotifications":{"title":"Notificaciones push","description":"Crea, valida, dirige, encola e inspecciona notificaciones de Apple.","editor":"Editor de notificaciones","editorDescription":"La forma del payload, cabeceras, límites y dispositivos aptos cambian con el tipo push.","presetName":"Nombre del ajuste","savePreset":"Guardar actual","presetSaved":"Ajuste guardado.","content":"Contenido","headers":"Cabeceras","advanced":"aps avanzado","specialized":"Especializado","pushType":"Tipo push","titleField":"Título","subtitle":"Subtítulo","body":"Cuerpo","badge":"Insignia","sound":"Sonido","category":"Categoría","threadId":"ID del hilo","contentAvailable":"Contenido disponible","mutableContent":"Contenido mutable","criticalSound":"Sonido crítico","soundVolume":"Volumen","topic":"Tema APNs","priority":"Prioridad","apnsId":"ID APNs","expiration":"Caducidad","collapseId":"ID de agrupación","certificateCredential":"Credencial de certificado","selectCredential":"Elegir certificado","titleLocKey":"Clave de localización del título","titleLocArgs":"Argumentos del título","subtitleLocKey":"Clave de localización del subtítulo","subtitleLocArgs":"Argumentos del subtítulo","bodyLocKey":"Clave de localización del cuerpo","bodyLocArgs":"Argumentos del cuerpo","launchImage":"Imagen de inicio","summaryArg":"Argumento de resumen","summaryArgCount":"Cantidad del resumen","targetContentId":"ID de contenido destino","interruptionLevel":"Nivel de interrupción","relevanceScore":"Puntuación de relevancia","customJson":"JSON raíz personalizado","timestamp":"Marca de tiempo","event":"Evento","attributesType":"Tipo de atributos","contentState":"JSON del estado","attributes":"JSON de atributos","staleDate":"Fecha de obsolescencia","dismissalDate":"Fecha de cierre","inputPushToken":"Solicitar token push de entrada","mdmHelp":"MDM usa el certificado elegido y el PushMagic de cada registro. El payload solo contiene mdm, sin diccionario aps.","specializedHelp":"Usa JSON raíz personalizado para el payload de {type}; las cabeceras y límites de APNs se validan igualmente.","payloadPreview":"Vista JSON en vivo","recipients":"Destinatarios","directDevices":"Tokens directos","directToken":"Token único de Live Activity","liveActivityToken":"Token push de Live Activity","allEligibleDevices":"Todos los dispositivos aptos ({count})","selectedDevices":"{count} dispositivos seleccionados","searchDevices":"Buscar dispositivos…","noEligibleDevices":"No hay registros activos compatibles.","saveDraft":"Guardar borrador","draftSaved":"Borrador guardado en el historial.","send":"Enviar","queued":"Lote push encolado.","broadcastChannels":"Canales de difusión de Live Activity","broadcastDescription":"La política de almacenamiento no puede cambiar tras crear el canal.","bundleId":"ID del paquete","noStorage":"Sin almacenamiento","mostRecent":"Mensaje más reciente","createChannel":"Crear canal","deleteChannel":"¿Eliminar canal?","deleteChannelDescription":"Elimina este canal; los ajustes e historial conservan solo su identificador.","delete":"Eliminar","history":"Historial","presets":"Ajustes","created":"Creado","deliveryMode":"Entrega","result":"Éxitos / fallos","status":"Estado","payload":"Carga útil","attempts":"intentos","load":"Cargar en editor","saveAsPreset":"Guardar como ajuste","presetFromHistory":"Historial","resend":"Reenviar","deleteHistory":"¿Eliminar elemento?","deleteHistoryDescription":"Elimina este lote, su payload y resultados.","clearHistory":"Borrar historial","clearHistoryDescription":"¿Eliminar todos los envíos completados y borradores? Los lotes activos se conservan.","name":"Nombre","updated":"Actualizado","loadEdit":"Cargar / editar","deletePreset":"¿Eliminar ajuste?","deletePresetDescription":"Elimina este payload y sus cabeceras reutilizables.","historyDescription":"Lotes enviados, borradores y resultados APNs por destinatario.","presetsDescription":"Contenido y cabeceras reutilizables; los destinatarios se eligen al enviar.","noHistory":"Todavía no hay historial de notificaciones push.","noPresets":"Todavía no hay ajustes de notificaciones push guardados."},"status":{"online":"En línea","offline":"Sin conexión","queued":"En cola","running":"En ejecución","succeeded":"Completado","failed":"Fallido","cancelled":"Cancelado","timed_out":"Tiempo agotado"},"commands":{"title":"Commands","description":"Create reusable shell commands and inspect their durable runs.","newCommand":"New command","runCustom":"Ejecutar personalizado","customCommandDescription":"Ejecuta un comando de shell puntual sin guardar una definición reutilizable.","customCommandPlaceholder":"Introduce un comando o script de shell","customCommandWarning":"El comando se ejecuta con todos los permisos de la cuenta del agente seleccionado y se conserva en el historial inmutable de esta ejecución.","runIn":"Ejecutar en","running":"Ejecutando…","editCommand":"Edit command","editorDescription":"Saved commands run with the full permissions of the selected agent account.","runs":"Runs","definitions":"Definitions","search":"Search commands","active":"Active","archived":"Archived","all":"All","done":"Done","edit":"Edit","refresh":"Refresh","selected":"{count, plural, one {# run selected} other {# runs selected}}","archive":"Archive","restore":"Restore","delete":"Delete","cancel":"Cancel","selectAll":"Select all completed runs","selectDay":"Seleccionar las ejecuciones completadas del {day}","number":"Run","command":"Command","status":"Status","agent":"Agent","worktree":"Worktree","started":"Started","finished":"Finished","home":"Agent home","agentHome":"Agent home directory","terminate":"Terminate","rerun":"Rerun","run":"Run","noRuns":"No command runs match this view.","noDescription":"No description","quickAction":"Quick action","deleteRunsTitle":"Delete command runs?","deleteRunsDescription":"Completed runs and all retained terminal output will be permanently deleted.","name":"Name","commandDescription":"Description","script":"Shell script","scriptHelp":"The script runs through the agent user\'s non-interactive login shell. Interactive input and PTY applications are not supported.","target":"Target","scope":"Target scope","anyAgentHome":"Any agent home","specificAgentHome":"Specific agent home","anyWorktree":"Any worktree","repositoryWorktree":"Worktree in a repository","selectAgent":"Select an agent","selectRepository":"Select a repository","repository":"Repository","restart":"Restart","restartPolicy":"Restart policy","restartLimit":"Failed restart limit","restartHelp":"Attempts that run for at least one minute reset the burst counter before their next exit is evaluated.","never":"Never","onFailure":"On failure","always":"Always","unlimited":"Unlimited restarts","notifications":"Notificaciones","enableNotifications":"Notificar cuando finalice este comando","notificationsHelp":"Los canales de entrega se configuran en la página Notificaciones. Desactiva esta opción para los comandos que no necesiten alertas de finalización.","enableQuickAction":"Show this command as a quick action","icon":"Icon","style":"Button style","defaultStyle":"Default","outlineStyle":"Outline","secondaryStyle":"Secondary","destructiveStyle":"Destructive","save":"Save","saving":"Saving…","runNotFound":"Command run not found.","runNumber":"Command run #{number}","runError":"Command failed","nextRestart":"Next restart","overview":"Resumen","timing":"Timing","duration":"Duración","terminalOutput":"Terminal output","noOutput":"No se ha notificado ninguna salida.","followOutput":"Follow output","fitTerminal":"Fit terminal","viewRawOutput":"Ver salida sin formato","searchTerminal":"Buscar en la terminal","previousTerminalMatch":"Coincidencia anterior","nextTerminalMatch":"Coincidencia siguiente","attempts":"Attempts","result":"Result","snapshot":"Immutable command snapshot","copyCommand":"Copiar","commandCopied":"Copiado","copyFailed":"No se pudo copiar el comando. Selecciónalo y cópialo manualmente.","runCommand":"Ejecutar {name}","chooseAgentTarget":"Elige el directorio de inicio concreto del agente donde se ejecutará este comando.","chooseWorktreeTarget":"Elige el árbol de trabajo concreto donde se ejecutará este comando.","upgradeAgent":"Actualizar agente","upgradeAgentTitle":"Actualiza este agente para ejecutar comandos guardados","upgradeAgentDescription":"Actualiza este agente antes de iniciar comandos guardados.","noEligibleTargets":"No hay destinos aptos disponibles.","noEligibleCommands":"No hay comandos aptos.","view":"Ver","manage":"Administrar","recentRuns":"Ejecuciones recientes","resourceDescriptionAgent":"Comandos guardados aptos y ejecuciones recientes para este agente.","resourceDescriptionWorktree":"Comandos guardados aptos y ejecuciones recientes para este árbol de trabajo.","commandQuickActions":"Acciones rápidas de comandos","agentQuickActionsDescription":"Comandos guardados del directorio de inicio disponibles en este agente.","statusQueued":"En cola","statusRunning":"En ejecución","statusRestarting":"Reiniciando","statusCancelling":"Cancelando","statusSucceeded":"Correcto","statusFailed":"Fallido","statusCancelled":"Cancelado","statusTimedOut":"Tiempo agotado","originManual":"Manual","originQuickAction":"Acción rápida","originWorkflow":"Flujo de trabajo","originRerun":"Reejecución","attemptDivider":"Intento {number}","exitCode":"Salida {code}","targetUnavailable":"Destino no disponible"},"costs":{"title":"Costes","description":"Precios de modelos usados para estimar el coste de los planes y las sesiones.","sourceTitle":"Catálogo de precios","sourceDescription":"De dónde se obtienen los precios de los modelos. Deja el campo vacío para usar el catálogo predeterminado. Los precios se actualizan automáticamente una vez al día.","catalogUrl":"URL de costes de modelos","save":"Guardar","useDefault":"Usar el predeterminado","fetchLatest":"Obtener lo último","lastFetched":"Última obtención","never":"Nunca","modelCount":"{count, plural, =0 {Sin modelos} one {# modelo} other {# modelos}}","customSource":"Fuente personalizada","defaultSource":"Fuente predeterminada","staleCatalog":"Actualización pendiente","lastFetchFailed":"La última obtención falló: {error}","modelsTitle":"Precios de modelos","modelsDescription":"Precios por millón de tokens, según los publica el catálogo.","searchModels":"Buscar modelos","model":"Modelo","provider":"Proveedor","inputPrice":"Entrada / MTok","outputPrice":"Salida / MTok","cacheReadPrice":"Lectura de caché / MTok","cacheWritePrice":"Escritura de caché / MTok","contextWindow":"Contexto","noModels":"No se encontraron modelos coincidentes.","showingCount":"Mostrando {shown} de {total}","sortBy":"Ordenar por {column}","loadingMore":"Cargando más…"},"diffView":{"truncated":"Diferencia recortada en 2 MiB.","binary":"Archivo binario modificado","empty":"Sin cambios de texto","largeDiff":"Esta diferencia tiene {count} líneas y no se ha dibujado.","renderAnyway":"Dibujarla de todos modos","addComment":"Comentar en esta línea","noNewline":"Sin salto de línea al final del archivo","sideBySide":"Lado a lado","overlap":"Superposición","transparency":"Transparencia de la imagen","difference":"Diferencia","sensitivity":"Sensibilidad de la diferencia","differenceColor":"Color de la diferencia","differenceColorRed":"Rojo","differenceColorGreen":"Verde","differenceColorWhite":"Rojo sobre blanco atenuado","differenceSummary":"{percent} % de los píxeles difieren","comparingPixels":"Comparando píxeles…","differenceNeedsBothSides":"Se necesitan ambas revisiones para comparar los píxeles","differenceFailed":"No se han podido comparar estas imágenes","imagesIdentical":"No hay píxeles diferentes","before":"Antes","after":"Después","missingImage":"No hay imagen en este lado"},"diffs":{"title":"Cambios","description":"Revisa cada cambio de un árbol de trabajo, con la cobertura sobre el código.","loading":"Cargando cambios…","loadingDiff":"Cargando la diferencia…","loadingCoverage":"Cargando cobertura…","refresh":"Actualizar","files":"Archivos","selectWorktree":"Elige un árbol de trabajo","searchWorktrees":"Buscar árboles de trabajo…","noWorktrees":"No se encontraron árboles de trabajo","selectAWorktree":"Elige un árbol de trabajo para revisar sus cambios.","selectAFile":"Elige un archivo para ver su diferencia.","searchFiles":"Buscar archivos","searchFilesPlaceholder":"Filtrar por ruta o módulo…","sortFiles":"Ordenar archivos por","sortAscending":"Orden ascendente","sortDescending":"Orden descendente","fileCount":"{count, plural, one {# archivo} other {# archivos}}","fileListTruncated":"lista recortada","noFiles":"No hay cambios en este ámbito.","noMatchingFiles":"Ningún archivo coincide con ese filtro.","noTextChanges":"Sin cambios de texto","binaryFile":"Archivo binario modificado","diffTooLarge":"Esta diferencia supera el límite de visualización.","commits":"Confirmaciones","noCommits":"Esta rama no tiene confirmaciones más allá de su base.","unifiedView":"Vista unificada","splitView":"Vista en paralelo","toggleWrap":"Alternar el ajuste de línea","linkedPullRequest":"Solicitud de incorporación n.º {number}: {title}","selectCoverageReport":"Informe de cobertura","noCoverageOverlay":"Sin superposición de cobertura","coverageStale":"Medido en otra revisión.","coverageOverall":"{percent} total","coverageChanged":"{percent} modificado","scope":{"STAGED":"Preparados","UNSTAGED":"Sin preparar","UNTRACKED":"Sin seguimiento","BRANCH":"Rama","COMMIT":"Confirmaciones"},"fileSort":{"name":"Nombre","module":"Módulo","coverage":"Cobertura","additions":"Adiciones","deletions":"Eliminaciones","changeType":"Tipo de cambio"}}}')}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=messages_es_json_%5Bjson%5D_cjs_082yukd._.js.map
|