@wrongstack/webui 0.308.1 → 0.308.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/dist/assets/{AgentRosterView-BTbwL6nH.js → AgentRosterView-z7sAuWGe.js} +1 -1
  2. package/dist/assets/{AnalyticsDashboard-ETUD_m7R.js → AnalyticsDashboard-Ch1DX7tR.js} +1 -1
  3. package/dist/assets/{AudienceMemoryPanel-BosVQjIW.js → AudienceMemoryPanel-Cec0V4--.js} +1 -1
  4. package/dist/assets/{ChangesView-DQK4FtLh.js → ChangesView-CzvRJS2F.js} +1 -1
  5. package/dist/assets/{ChronicleDashboard-By8HsUSe.js → ChronicleDashboard-Dc5cQH7A.js} +1 -1
  6. package/dist/assets/{CodeEditor-CbdYsnzn.js → CodeEditor-C1xScB5M.js} +1 -1
  7. package/dist/assets/{CodeMap-BXgrpv5t.js → CodeMap-BMcY8qXe.js} +1 -1
  8. package/dist/assets/{ConfirmModal-lPWvstcy.js → ConfirmModal-i2BGY0ev.js} +1 -1
  9. package/dist/assets/{CronJobsPanel-CScZrguV.js → CronJobsPanel-D4VNa-Kl.js} +1 -1
  10. package/dist/assets/{DeadCodeScanPanel-DYJRfj4d.js → DeadCodeScanPanel-DyV2LHm_.js} +1 -1
  11. package/dist/assets/{DebugDashboard-b9gkedN0.js → DebugDashboard-C_T68C0f.js} +1 -1
  12. package/dist/assets/{DesignGalleryView-Bxqluim4.js → DesignGalleryView-CVmV-AU2.js} +1 -1
  13. package/dist/assets/{GoalView-CD0amyz6.js → GoalView-DQa9PklT.js} +1 -1
  14. package/dist/assets/{KanbanView-D2ZkvBAt.js → KanbanView-CDp4gTML.js} +1 -1
  15. package/dist/assets/{MailboxDetailView-DvZk7zUu.js → MailboxDetailView-D7aRTWS8.js} +1 -1
  16. package/dist/assets/{MemoryDrawer-Bx3dEdNU.js → MemoryDrawer-Bivx9AXj.js} +1 -1
  17. package/dist/assets/{MemoryManager-CN4Hywz0.js → MemoryManager-DOTxwo0l.js} +1 -1
  18. package/dist/assets/{ModelPicker-CBOKANNP.js → ModelPicker-MpC6-gWQ.js} +1 -1
  19. package/dist/assets/{OfficeMapPanel-bpCNnMzk.js → OfficeMapPanel-Q8nQfQVb.js} +1 -1
  20. package/dist/assets/{ProcessMonitor-BDV0vAQh.js → ProcessMonitor-C8GH1q2B.js} +1 -1
  21. package/dist/assets/{PromptJournalView-Bb5ot9Ty.js → PromptJournalView-BdOYPAjU.js} +1 -1
  22. package/dist/assets/{QueuePanel-w5a4slQa.js → QueuePanel-RBW9Sh9b.js} +1 -1
  23. package/dist/assets/{RefreshDebugView-DUleI5Wz.js → RefreshDebugView-1lZduXKE.js} +1 -1
  24. package/dist/assets/{RequirementIntakeView-BxY6z83Q.js → RequirementIntakeView-BtKuq_F4.js} +1 -1
  25. package/dist/assets/SageTabs-D2_mTlcJ.js +2 -0
  26. package/dist/assets/{SddFlowGraph-CwrPsUbP.js → SddFlowGraph-BdaItHkB.js} +1 -1
  27. package/dist/assets/{SddHub-DMCa8gys.js → SddHub-DVO0JGWk.js} +1 -1
  28. package/dist/assets/{SessionInspectView-CccHo_-4.js → SessionInspectView-xchxZrHA.js} +1 -1
  29. package/dist/assets/{SessionList-CXzEUHkx.js → SessionList-2W7mKbcZ.js} +1 -1
  30. package/dist/assets/{SessionsDashboard-DZp3WVEz.js → SessionsDashboard-6QJsVGap.js} +1 -1
  31. package/dist/assets/{SetupScreen-Bo_XAjrP.js → SetupScreen-DM2KCb23.js} +1 -1
  32. package/dist/assets/{SkillDetailView-DVAlzbDj.js → SkillDetailView-Cx2z8hyp.js} +1 -1
  33. package/dist/assets/{SpecsView-CctUPWlo.js → SpecsView-D-qbN6F5.js} +1 -1
  34. package/dist/assets/{TechStackView-DlWg2aCJ.js → TechStackView-C7XFcAls.js} +1 -1
  35. package/dist/assets/{TerminalPanel-Yb-lQFDz.js → TerminalPanel-DZs5mkPP.js} +1 -1
  36. package/dist/assets/{Toaster-BB1yPhku.js → Toaster-ChF897Tc.js} +1 -1
  37. package/dist/assets/{activity-CnuG3uZL.js → activity-C6pIBHte.js} +1 -1
  38. package/dist/assets/{activity-K2WIjlQo.js → activity-CA5G03Kw.js} +1 -1
  39. package/dist/assets/{activity-DFBPo9d3.js → activity-CezOSNBd.js} +1 -1
  40. package/dist/assets/{activity-BCIzGgqa.js → activity-CkGBp_I-.js} +1 -1
  41. package/dist/assets/{activity-BZIZDVJp.js → activity-CxnlCaZu.js} +1 -1
  42. package/dist/assets/{activity-CQqsspgO.js → activity-DYwBIByU.js} +1 -1
  43. package/dist/assets/{activity-ChTE_hao.js → activity-l8lDAw8a.js} +1 -1
  44. package/dist/assets/{i18n-DxZ0s97D.js → i18n-DiD9Wcep.js} +2 -2
  45. package/dist/assets/{index-CWC2RBlq.js → index-Cnerffls.js} +6 -6
  46. package/dist/assets/{index-DBU8t21H.css → index-D2tx76V0.css} +1 -1
  47. package/dist/assets/{roster-ws-C_u0NB5k.js → roster-ws-XgkT9mo8.js} +1 -1
  48. package/dist/assets/settings-50uwXQIW.js +1 -0
  49. package/dist/assets/settings-BPT8LWkU.js +1 -0
  50. package/dist/assets/settings-BmJI-gam.js +1 -0
  51. package/dist/assets/settings-CqFe8Jtz.js +1 -0
  52. package/dist/assets/settings-DeM0wvCG.js +1 -0
  53. package/dist/assets/settings-DijFr-kZ.js +1 -0
  54. package/dist/assets/settings-L9mLQIIP.js +1 -0
  55. package/dist/assets/{stores-JAIPqBZz.js → stores-CzgPPQlG.js} +1 -1
  56. package/dist/assets/{useWebSocket-BepkW6iB.js → useWebSocket-DvMcAAgU.js} +1 -1
  57. package/dist/assets/vector-memory-panel-C6iWDhkJ.js +1 -0
  58. package/dist/assets/ws-client-BVq0hf0a.js +1 -0
  59. package/dist/components/MemoryManager/SageTabs.d.ts +1 -1
  60. package/dist/components/vector-memory-panel/ForgetVectorMemoryDialog.d.ts +13 -0
  61. package/dist/components/vector-memory-panel/model.d.ts +11 -0
  62. package/dist/index.html +11 -11
  63. package/dist/index.js +2420 -2123
  64. package/dist/lib/ws-client-utils.d.ts +7 -6
  65. package/dist/types/connections.d.ts +10 -0
  66. package/dist/types/server-message.d.ts +4 -1
  67. package/package.json +8 -8
  68. package/dist/assets/SageTabs-CimVRiPq.js +0 -2
  69. package/dist/assets/settings-CcZ8Byag.js +0 -1
  70. package/dist/assets/settings-DmEF3l3H.js +0 -1
  71. package/dist/assets/settings-Evj_2PTQ.js +0 -1
  72. package/dist/assets/settings-ZtdXzV5f.js +0 -1
  73. package/dist/assets/settings-fv8qo7sz.js +0 -1
  74. package/dist/assets/settings-xB2OG18R.js +0 -1
  75. package/dist/assets/settings-xIdfpBZZ.js +0 -1
  76. package/dist/assets/vector-memory-panel-CjqIA8Vf.js +0 -1
  77. package/dist/assets/ws-client-BWKbZ1w0.js +0 -1
@@ -2,7 +2,7 @@ var e={chat:`Sesión`,agents:`Agentes`,history:`Historial`,files:`Archivos`,chan
2
2
 
3
3
  Doble clic para renombrar`,unfavorite:`Quitar de favoritos`,markFavorite:`Marcar como favorito`,deleteSessionConfirmTitle:`¿Eliminar la sesión?`,deleteSessionConfirmBody:`"{{name}}" se eliminará del disco. Esto no se puede deshacer.`,deleteSessionTitle:`Eliminar sesión`,rename:`Renombrar sesión`,renameAction:`Renombrar`,resume:`Reanudar sesión`,resumeShort:`Reanudar`,workspaceEyebrow:`Control de sesión`,workspaceTitle:`Sesiones`,workspaceHint:`Busca, inspecciona, fija y reanuda todas las conversaciones del proyecto.`,tabs:{history:`Historial`,live:`Sesiones activas`},filters:{all:`Todas`,favorites:`Favoritas`,active:`Activas`,completed:`Completadas`,issues:`Problemas`},status:{active:`Activa`,completed:`Completada`,error:`Error`,timeout:`Tiempo agotado`,aborted:`Abortada`,saved:`Sesión guardada`},sort:{label:`Ordenar sesiones`,recent:`Más recientes`,tokens:`Más tokens`,activity:`Más actividad`},stats:{sessions:`Sesiones`,tokens:`Tokens`,tools:`Llamadas a herramientas`,files:`Archivos modificados`,errors:`Errores`},inspect:`Inspeccionar sesión`},f={actions:{abort:`Detener`,newSession:`Nueva sesión`,export:`Exportar`,compact:`Comprimir`,newSessionConfirm:`¿Está seguro?`,newSessionConfirmMessage:`Todavía hay un trabajo en curso. ¿Iniciar una nueva sesión de todos modos?`,newSessionTitle:`Iniciar una nueva sesión (Ctrl+N)`,exportTitle:`Exportar el chat como markdown (Ctrl+E)`,compactTitle:`Comprimir la ventana de contexto`,clearTitle:`Borrar el contexto (Ctrl+L)`},model:`Modelo`,modelTitle:`Cambiar de modelo (Ctrl+M)`,context:`Contexto`,contextTitle:`Haz clic para un desglose del contexto`,sessionLabel:`Sesión`,stats:{messages:`Mensajes`,elapsed:`Transcurrido`,tokens:`Tokens`,cost:`Coste`,iteration:`Iteración`,agents:`Agentes`,tokensSub:`{{in}} entra / {{out}} sale`,iterationOf:`de {{max}}`,agentsRunning:`{{count}} en ejecución`},plan:`Plan`,planComplete:`{{pct}}% completado`,pinned:`Fijados`,quickSettings:`Ajustes rápidos`,autonomy:`Autonomía`,autonomyTitle:`Detener la ejecución automática de los siguientes pasos. Desactívalo para parar el bucle autónomo del agente`,autonomyOptions:{off:`Desactivado`,suggest:`Sugerir`,auto:`Auto`,eternal:`Perpetuo`,"eternal-parallel":`Perpetuo Paralelo`},yolo:`Modo YOLO`,yoloTitle:`Omitir los diálogos de confirmación de herramientas`,refine:`Refinar prompts`,refineTitle:`Reescribir los prompts antes de enviar`,sound:`Sonido al completar`,soundTitle:`Reproducir un suave tono al terminar una ejecución`,sessionId:`sesión {{id}}`},p={status:{running:`en ejecución`,completed:`hecho`,failed:`fallido`,timeout:`tiempo agotado`,stopped:`detenido`},leader:`líder`,providerModel:`Proveedor / Modelo`,elapsed:`Transcurrido`,running:`en ejecución…`,iterations:`Iteraciones`,toolCalls:`Llamadas`,cost:`Coste`,budgetExtensions:`Ampliaciones de presupuesto`,activity:`Actividad`,contextWindow:`Ventana de contexto`,tokensUsed:`{{used}} / {{max}} tokens`,toolRunning:`en ejecución…`,lastTool:`última herramienta`,error:`Error`,finalOutput:`Salida final`,copyOutput:`Copiar salida`,liveOutput:`Salida en vivo`,waitingOutput:`Esperando salida…`,outputHint:`La salida aparece aquí a medida que el agente transmite texto.`,toolLog:`Registro de herramientas ({{count}} llamadas)`,fail:`fallo`,moreTools:`+{{count}} herramientas más`,cardRunning:`en ejecución {{tool}}`,cardLastTool:`última: {{tool}}`,contextPercent:`Contexto {{pct}}%`,doneCount:`{{count}} hechos`,errCount:`{{count}} err`,statusRunning:`en ejecución`,statusDone:`completado`,statusFailed:`fallido`,statusTimeout:`tiempo agotado`,statusStopped:`detenido`,hittingLimitTitle:`⚡ alcanza el límite {{kind}} ({{used}}/{{limit}})`,budgetExt_one:`{{count}} extensión de presupuesto`,budgetExt_other:`{{count}} extensiones de presupuesto`,extendedTimes_one:`El agente amplió su presupuesto {{count}} vez por tareas largas`,extendedTimes_other:`El agente amplió su presupuesto {{count}} veces por tareas largas`,errorLabel:`Error`,failureReason:`Motivo de fallo`,failed:`Fallido`},m={wsNotConnected:`WebSocket no conectado`,noData:`No se recibieron datos de depuración. El servidor podría no admitir depuración de contexto.`,title:`Desglose del contexto`,windowUsage:`Uso de ventana`,contextMode:`Modo de contexto`,fetching:`Obteniendo el desglose del contexto…`,systemPrompt:`Prompt del sistema`,tools:`Herramientas`,messages:`Mensajes`,tokenAllocation:`Asignación de tokens`,systemTitle:`Sistema: {{tokens}}`,toolsTitle:`Herramientas: {{tokens}}`,messagesTitle:`Mensajes: {{tokens}}`,system:`Sistema`,toolBreakdown:`Desglose de herramientas`,messagesSummary:`Mensajes ({{count}}) — {{total}} tok`,barWithTokens:`Ventana de contexto: {{tokens}} / {{max}} tokens ({{pct}})`,barPct:`Ventana de contexto: {{pct}}`,barClick:` — clic para el desglose`},h={header:`✨ Refinar prompt`,autoSend:`envío automático en {{count}} s`,cancelTitle:`Cancelar (Esc)`,editLabel:`Editar el prompt refinado:`,editPlaceholder:`Editar el prompt refinado...`,useEdit:`Usar edición`,original:`Original`,refined:`Refinado`,yourLanguage:`(tu idioma)`,refinedTitle:`Haz clic o pulsa Intro para usar esta versión`,copyToInputTitle:`Copiar al campo de entrada sin enviar`,english:`Inglés`,englishTitle:`Pulsa e para la versión en inglés`,hintRefined:`refinado`,hintEnglish:`Inglés`,hintOriginal:`original`,hintEdit:`editar`,hintRetry:`reintentar`,edit:`Editar`,useRefined:`Usar refinado`,langOriginal:`Original`,langEnglish:`English`,languageTitle:`Cambiar el idioma de refinamiento predeterminado: original o inglés`,yolo:`YOLO`,yoloTitle:`Omitir las confirmaciones de herramientas`,refining:`Refining…`,sendAsIs:`Send as-is`,failedHeader:`Refinement failed`,retry:`Retry (more time)`,retryBetter:`Intentar mejor`,retryFallback:`Retry with {{model}}`,pickModel:`Another model…`,pickModelTitle:`Reintentar el refinamiento con otro modelo`,pickModelHint:`Elige un proveedor o modelo para volver a ejecutar este refinamiento. El modelo de tu sesión no cambia.`,countdownHeader:`✨ El refinamiento comienza en…`,countdownYourMessage:`Tu mensaje`,countdownHint:`El refinamiento comienza en {{seconds}}s. Haz clic en "Enviar tal cual" para omitir.`,countdownStartNow:`Refinar ahora`,countdownSendAsIs:`Enviar tal cual`,cancelRefineSendOriginal:`Cancelar y enviar original`},g={heading:`Especificaciones`,subtitle:`Ver y gestionar el desarrollo guiado por especificaciones`,empty:`No se encontraron specs. Usa {{command}} para crear una.`,tasks:`Tareas ({{count}})`,doneCount:`{{count}} hechas`,runningCount:`{{count}} en ejecución`,pendingCount:`{{count}} pendientes`,runTitle:`Ejecutar esta spec como un trabajo multi-agente en vivo`,run:`Ejecutar`,runAsSdd:`Ejecutar como SDD`,runAsSddTitle:`Iniciar un run SDD multi-agente en paralelo (worktrees, verificación, tablero en vivo)`,runAsGoal:`Ejecutar como Goal`,runAsGoalTitle:`Iniciar un Goal por fases desde las columnas de tareas de esta spec`,list:`Lista`,graph:`Grafo`,loadingTasks:`Cargando tareas…`},_={heading:`Verificador de resiliencia F5`,subtitle:`Confirma que la última sesión activa, la transcripción y el estado de la UI sobreviven a una recarga de página. Abre esta vista y pulsa F5 — cada fila verde debe seguir verde.`,recordProbe:`Registrar sonda`,latestSession:`Última sesión activa`,restoredLocal:`Restaurado desde localStorage`,sessionIdExtra:`id de sesión: {{id}}`,noSessionYet:`todavía no se ha iniciado ninguna sesión`,activePointer:`Puntero de sesión activa`,lastVisited:`marca de tiempo lastVisitedAt`,never:`nunca`,persistedEnv:`Entorno persistido`,transcriptRehydrate:`Rehidratación de transcripción`,localTranscript:`Transcripción local recuperada`,messagesExtra:`{{count}} mensajes, {{queued}} en cola`,noMessages:`0 mensajes`,noBleed:`Sin fuga entre sesiones`,bleedExtra:`ligado={{bound}} vs activo={{active}}`,transcriptBinds:`la transcripción se liga a la sesión activa`,uiWorkspace:`Espacio de trabajo UI`,noneValue:`(ninguno)`,payloadSize:`Carga de localStorage (4 claves): {{count}} caracteres`,probeLog:`Registro de sondas`,noProbes:`Aún no hay sondas — pulsa el botón "Registrar sonda" arriba, o F5 en esta vista, para registrar una comprobación de rehidratación.`,simulatedF5:`F5 simulado: reejecutar persist rehydrate`},v={status:{pending:`Pendiente`,in_progress:`En progreso`,review:`Revisión`,failed:`Fallido`,completed:`Hecho`,queued:`En cola`,blocked:`Bloqueado`,cancelled:`Cancelado`},newTaskTitle:`Nueva tarea`,newTaskPlaceholder:`Título de tarea…`,addTask:`Añadir tarea`,empty:`Aún no hay fases — inicia una ejecución Goal para rellenar el tablero.`,summary:`{{phases}} fases · {{tasks}} tareas`,phases:`Fases`,statusTab:`Estado`,dropHere:`Suelta las tareas aquí`,emptySpec:`Aún no hay tareas en esta spec.`,depGraphHeading:`Grafo de dependencias`,worktreePrefix:`worktree: {{branch}}`},y={trendUp:`Aumentando`,trendDown:`Disminuyendo`,trendStable:`Estable`,heading:`Panel de depuración`,subtitle:`Monitorización en tiempo real para WrongStack WebUI`,refreshLabel:`Actualizar:`,lastUpdated:`Última actualización: {{time}}`,fetchFailed:`Error al obtener las métricas`,fileWatcher:`Observador de archivos`,watcherStatus:`Estado del observador`,running:`En ejecución`,stopped:`Detenido`,activeProjects:`Proyectos activos`,projectsWatched:`Proyectos observados`,fileChanges:`Cambios de archivos`,totalDetected:`Total detectado`,filesProcessed:`Archivos procesados`,afterHash:`Tras filtro hash`,broadcastsSent:`Difusiones enviadas`,toClients:`A clientes WebUI`,debounceResets:`Reinicios de antirrebote`,rapidWrites:`Escrituras rápidas sucesivas`,avgDebounce:`Retardo antirrebote medio`,actualDelay:`Retardo real aplicado`,totalDelay:`Retardo total`,sumDelays:`Suma de todos los retardos`,browserPerf:`Rendimiento del navegador`,heapUsed:`Memoria usada`,jsHeap:`Memoria JavaScript`,heapTotal:`Memoria total`,totalHeap:`Tamaño total de memoria`,pageUptime:`Tiempo de actividad`,sinceLoad:`Desde la carga`,rawData:`Datos sin procesar`},b={allowlistTitle:`Lista de modelos permitidos`,modelCount_one:`{{count}} modelo`,modelCount_other:`{{count}} modelos`,using:`En uso`,noModelPicked:`(ningún modelo elegido)`,clearAllowlist:`Borrar lista permitida`,clearAllowlistAria:`Borrar la lista permitida guardada para {{provider}}`,refresh:`Actualizar del servidor`,refreshAria:`Actualizar la lista de modelos para {{provider}}`,probing:`Comprobando…`,searchPlaceholder:`Buscar modelos…`,use:`Usar`,useModelAria:`Usar el modelo {{model}} para {{provider}}`},x={expandChip:`Expandir {{label}}`,collapseChip:`Contraer {{label}}`,ahead:`{{count}} por delante`,behind:`{{count}} por detrás`,linesAdded:`{{count}} líneas añadidas`,linesDeleted:`{{count}} líneas eliminadas`,untrackedFiles:`{{count}} archivos sin rastrear`,customizeTitle:`Personalizar chips del dock`,dockChips:`Chips del dock`,noActiveGoal:`Ningún objetivo activo`,noActiveGoalDetail:`Inicia un objetivo desde el chat o el comando goal.`,closeWorkspaceInspector:`Cerrar el inspector del espacio de trabajo`,goal:`Objetivo`,goalState:`Estado del objetivo`,goalStateDetail:`Objetivo activo y progreso`,fleet:`Flota`,fleetDetail:`Plantilla de agentes en vivo y actividad`,work:`Trabajo`,workDetail:`Pendientes, tareas y plan`,worktrees:`Worktrees`,worktreesDetail:`Ramas y carriles paralelos`,collab:`Colab.`,collabDetail:`Participantes de la sesión y controles`,inspector:`Inspector del espacio de trabajo`,inspectorNamed:`Inspector del espacio de trabajo {{name}}`,workspace:`Espacio de trabajo`,workspaceDetails:`Detalles del espacio de trabajo`},S={leaderBadge:`LÍDER`,iters:`Iter.`,tools:`Herramientas`,activityBins:`Actividad (12 contenedores)`,streamingOutput:`Salida en streaming`,recentTools:`Herramientas recientes`,finalOutput:`Salida final`,heading:`Monitor de agentes`,prevAgent:`Agente anterior`,nextAgent:`Agente siguiente`,closeAria:`Cerrar monitor de agentes`,hintPage:`←→ página`,hintNavigate:`↑↓ navegar lista`,hintEsc:`Esc cerrar`},C={resize:`Cambiar tamaño de terminales`,labelSingular:`Terminal`,labelPlural:`Terminales`,projectShell:`Shell del proyecto`,maxTerminals:`Máximo {{count}} terminales`,newTerminal:`Nuevo terminal`,restart:`Reiniciar terminal activo`,closeAll:`Cerrar todos los terminales`,closeDock:"Cerrar el dock de terminal (Ctrl+`)",closeTab:`Cerrar {{name}}`,processExited:`[proceso terminado con código {{code}}]`},w={liveStream:`Transmisión en vivo`,events_one:`{{count}} evento`,events_other:`{{count}} eventos`,interruptTitle:`Detener cooperativamente a este agente en su próximo paso (no es un kill)`,interrupt:`⏸ Interrumpir`,interrupting:`…`,loading:`Cargando sesión…`,done:`✓✓ hecho`,read:`✓ leído`,delivered:`⏳ entregado`,agent:`Agente`,you:`Tú`,working:`{{name}} · trabajando`,claude:`Claude`,priority:`Prioridad`,placeholder:`{{label}} → esta sesión…`,send:`Enviar`,sendHint:`⌘/Ctrl+Enter para enviar · visible en la próxima iteración del agente`,msgType:{steerLabel:`🔄 Dirigir`,steerHint:`Ajustar el comportamiento durante la tarea`,askLabel:`❓ Preguntar`,askHint:`Pregunta — espera respuesta`,assignLabel:`📋 Asignar`,assignHint:`Una tarea en la que actuar`,noteLabel:`💬 Nota`,noteHint:`Para tu información, no urgente`},sentRunning:`Entregado — el agente en ejecución lo verá en su próximo paso`,sentIdle:`Entregado — el objetivo está inactivo; aparece en su buzón, leído en su próxima ejecución`,sentFailed:`Falló: {{error}}`,interruptReason:`El operador solicitó la detención desde Fleet HQ`,interruptSent:`Interrupción enviada — el agente se detiene en su próximo paso (no es un kill)`,interruptFailed:`Interrupción fallida: {{error}}`},T={empty:`Aún no se han registrado efectos secundarios.`,emptyHint:`Los comandos bash, las instalaciones de paquetes y las solicitudes de red aparecerán aquí.`,heading:`Efectos secundarios`,exportTitle:`Exportar los efectos secundarios filtrados como CSV`,all:`Todos`,colTime:`Hora`,colTool:`Herramienta`,colRisk:`Riesgo`,colDetail:`Detalle`,colOutcome:`Resultado`},E={elapsedHm:`hace {{h}}h {{m}}m`,elapsedMs:`hace {{m}}m {{s}}s`,elapsedS:`hace {{s}}s`,heading:`Monitor de flota`,clientsHeading:`Clientes conectados`,terminal:`Terminal`,webui:`IU Web`,repl:`REPL`,totalConnected:`conectados en total`,mailQueue:`Cola de correo`,total:`Total`,open:`Abiertos`,unread:`No leídos`,agents:`Agentes`,messagesSub:`mensajes`,uncompletedSub:`sin completar`,waitingSub:`en espera`,ofTotal:`de {{count}} en total`,agentRoster:`Lista de agentes`,liveMailActivity:`Actividad de correo en vivo`,noActivity:`Sin actividad reciente`,mailboxAgents:`Agentes del buzón`,noMailboxAgents:`Ningún agente registrado`,moreCount:`+{{count}} más`,agentFallback:`agente`,fleetAgents:`Agentes de la flota`,noFleetAgents:`Ningún agente de flota en ejecución`,iter:`iter.`,mailType:{sent:`Enviado`,delivered:`Entregado`,read:`Leído`,completed:`Completado`}},D={status:{pending:`pendiente`,queued:`en cola`,in_progress:`en ejecución`,blocked:`bloqueado`,review:`revisión`,failed:`fallido`,completed:`hecho`,cancelled:`cancelado`},activityHeading:`Actividad`,feedEmpty:`Aún nada — los eventos aparecen aquí a medida que los agentes toman y completan tareas.`,destroyTitle:`¿Destruir el proyecto SDD?`,destroyDesc:`Esto borra el run y su trabajo. No se puede deshacer (el revert opcional preserva el historial).`,stopRun:`Detener el run`,stopRunAgents_one:`Detener el run ({{count}} agente activo)`,stopRunAgents_other:`Detener el run ({{count}} agentes activos)`,removeWorktreesAll:`Eliminar todos los worktrees git + ramas wstack/ap/* — incluido el trabajo sin mergear`,removeWorktreesCount_one:`Eliminar {{count}} worktree git + ramas wstack/ap/* — incluido el trabajo sin mergear`,removeWorktreesCount_other:`Eliminar {{count}} worktrees git + ramas wstack/ap/* — incluido el trabajo sin mergear`,deleteArtifacts:`Eliminar todos los artefactos SDD (specs, grafo de tareas, board, sesión)`,revertMerged_one:`Revertir también {{count}} commit mergeado`,revertMerged_other:`Revertir también {{count}} commits mergeados`,revertHint:`Añade commits de revert (historial preservado). Se rechaza si el árbol de trabajo está sucio.`,baseBranchFallback:`la rama base`,noteLeaveMerged:`Los commits mergeados quedarán en la rama base. Marca la casilla de arriba para deshacerlos también.`,noteAbandon:`Asegúrate de que realmente quieres abandonar este run.`,destroying:`Destruyendo…`,destroyAll:`Destruir todo`,kanbanBacklog:`Backlog`,kanbanReady:`Listo`,kanbanRunning:`En ejecución`,kanbanReview:`Revisión`,kanbanFailed:`Fallido`,kanbanDone:`Completado`,kanbanEmpty:`vacío`},O={collapseToLines:`Contraer a las primeras {{count}} líneas`,showAllLines:`Mostrar las {{total}} líneas ({{more}} más)`,exitCode:`código de salida:`,jsonLines:`JSON · {{count}} líneas`,collapse:`contraer`,expand:`expandir`},k={heading:`Design Studio — Galería`,kitsCount:`{{count}} kits`,searchPlaceholder:`Buscar kits…`,stackTitle:`Stack para Use + Materialize`,wrote:`Escrito {{path}}`,materializeFailed:`Materialize falló: {{error}}`,verifyError:`Verificar: {{error}}`,verifyOffPalette:`Verificar: {{pct}}% en paleta — {{count}} fuera de paleta en {{files}} archivo(s)`,verifyClean:`Verificar: limpio ✓ ({{files}} archivo(s) en paleta)`,writing:`Escribiendo archivo de tema…`,scanning:`Escaneando archivos de UI…`,active:`Activo`,reapply:`Reaplicar`,use:`Usar`,materializeTitle:`Escribir tokens en un archivo de tema {{stack}}`,materialize:`Materializar`,verifyTitle:`Escanear archivos de UI en busca de colores fuera de paleta`,verify:`Verificar`,colors:`Colores`},A={summary_one:`{{count}} fase · {{pct}}% completado`,summary_other:`{{count}} fases · {{pct}}% completado`,switchBoard:`Cambiar tablero`,boardsCount_one:`{{count}} tablero…`,boardsCount_other:`{{count}} tableros…`,toggleAutonomousTitle:`Activar/desactivar modo autónomo`,autonomous:`Autónomo`,manual:`Manual`,resumeTitle:`Reanudar la ejecución`,pauseTitle:`Pausar la ejecución`,resume:`Reanudar`,pause:`Pausar`,stopTitle:`Detener la ejecución — aborta los agentes en vuelo inmediatamente`,stop:`Detener`,newTitle:`Limpiar este tablero e iniciar una nueva ejecución Goal`,newLabel:`Nuevo`,revertConfirm:`¿Revertir los commits de la ejecución?`,revertTitle:`Deshacer esta ejecución — git-revert de los commits y eliminar sus worktrees`,revert:`Revertir`,goal:`Objetivo`,planning:`Planificando fases…`,planningBody:`Tu objetivo fue recibido. WrongStack lo desglosa en fases y tareas — el tablero aparece aquí en cuanto el plan está listo.`,startHeading:`Iniciar un plan de fases`,startBody:`Describe lo que quieres construir. WrongStack planificará fases y tareas, luego las ejecutará — observa y dirige la ejecución en el tablero.`,startPlaceholder:`p.ej. Crea una API REST de gestión de usuarios con Express y SQLite...`,isolateLabel:`Aislar cada fase en su propio worktree de git`,startButton:`Iniciar Goal`,ctrlHint:`Ctrl+Enter para iniciar`,isolateOn:`las fases se ejecutan en worktrees aislados, fusionados con squash`,isolateOff:`las fases se ejecutan directamente en la rama actual`,lanes:`Carriles`,graph:`Grafo`,planningAck:`🚀 **Goal** — entendido. Planificando fases para tu objetivo…`,assess:{analyzing:`Analizando alcance de la meta…`,realistic:`✓ El alcance parece realista`,durationConcern:`⚠ Problema de duración`,durationClaimed:`Duración indicada: {{duration}}`,recommendation:`Recomendado: {{duration}}`,concerns:`Preocupaciones`,analysisFailed:`No se pudo analizar el alcance de la meta`,override:`Iniciar de todas formas`,overrideTitle:`Limpiar la advertencia y habilitar el botón de inicio`,disableTitle:`Esta meta tiene una duración poco realista — use "Iniciar de todas formas" para sobrescribir`},multiBoardLabel:`Dividir en múltiples tableros kanban`,verifyTasksLabel:`Requerir verificación para cada tarea`,chimeraReviewLabel:`Habilitar revisión automática chimera`},j={noObservers:`Sin observadores en vivo`,observerTitle:`Unirse como observador de solo lectura (Fase 1)`,observerRole:`observador`,annotatorTitle:`Unirse como anotador — deja notas en las llamadas (Fase 2)`,annotatorRole:`anotador`,controllerTitle:`Unirse como controlador — puede pausar el agente (Fase 3)`,controllerRole:`controlador`,errorPrefix:`Collab: {{error}}`,dismiss:`cerrar`,observers_one:`{{count}} observador`,observers_other:`{{count}} observadores`,annotationsTitle:`{{count}} anotación(es) abierta(s) — anotadores revisando`,notes_one:`{{count}} nota`,notes_other:`{{count}} notas`,pausedTitle:`El agente está en pausa — un controlador está revisando`,paused:`en pausa`,joinedTitle:`Se unió {{time}}`,grantTitle:`Ceder control — promocionar a este participante a controlador`,injectTitle:`Inyectar un resultado sintético para una llamada en curso`,inject:`Inyectar`,resumeTitle:`Reanudar el agente`,resume:`Reanudar`,pauseTitle:`Pausar el agente antes de la próxima llamada`,pauseAgent:`Pausar agente`,leaveTitle:`Salir de la sesión de observación`,leave:`Salir`,injectToolResult:`Inyectar resultado`,close:`cerrar`,targetTool:`id tool_use objetivo`,targetPlaceholder:`elige una llamada en curso o escribe un id tool_use`,toolFallback:`herramienta`,noPendingTools:`Sin llamadas en curso — escribe un id tool_use o pausa el agente primero.`,resultContent:`Contenido del resultado`,resultPlaceholder:`Resultado sintético dado al agente en lugar de ejecutar la herramienta`,markError:`marcar como error`,reasonPlaceholder:`razón (registro de auditoría)`,queueInjection:`Encolar inyección`,controllerInjection:`inyección controlador`},M={connected:`Conectado`,reconnecting:`Reconectando al backend (intento {{attempt}}) — reintentando en {{remaining}} s`,disconnected:`Desconectado del backend`,retry:`Reintentar ahora`,retryTitle:`Reintentar conexión ahora`,dismissTitle:`Cerrar (el chip de la barra superior sigue mostrando el estado)`},N={modePrefix:`modo:`,activeTitle:`Modo activo`,heading:`Modo`,defaultName:`Predeterminado`,defaultDesc:`Comportamiento estándar del agente`},P={clickTitle:`Haz clic para el desglose de costes por turno`,heading:`Desglose de costes`,noPricing:`Sin tarifa para el modelo actual — los valores de coste son cero.`,noTurns:`Aún no hay turnos completados. Ejecuta un prompt para ver el coste por turno aquí.`,topExpensive_one:`Turno más caro`,topExpensive_other:`Los {{count}} turnos más caros`},F={runDefault:`Predeterminado del run`,useRunDefault:`Usar predeterminado del run`,filterPlaceholder:`Filtrar modelos…`,loading:`Cargando modelos…`,noMatch:`Sin coincidencias`},I={heading:`Cambiar modelo`,filterPlaceholder:`Filtrar proveedores y modelos…`,providerFilter:`Proveedor`,providerFilterAll:`Todos los proveedores`,noSavedProviders:`Sin proveedores guardados — registra primero una clave en Ajustes.`,noMatch:`Ningún modelo coincide`,active:`activo`},L={todos:`Por hacer`,tasks:`Tareas`,plan:`Plan`},R={toggleAria:`Alternar: {{content}}`,removeTitle:`Eliminar tarea`,removeAria:`Eliminar "{{content}}"`,completedCount_one:`{{count}} completada`,completedCount_other:`{{count}} completadas`,blockedBy:`Esperando a: {{work}}`},z={start:`Iniciar`,complete:`Completar`,retry:`Reintentar`,assign:`Asignar`,assignTitle:`Asignar agente`,unassigned:`Sin asignar`,statusPending:`Pendiente`,statusInProgress:`En curso`,statusBlocked:`Bloqueado`,statusFailed:`Fallido`,statusReview:`Revisión`,statusDone:`Completado`,startTitle:`Iniciar`,completeTitle:`Completar`,fail:`Fallar`,failTitle:`Marcar como fallido`,boardCount:`{{total}} tareas · {{done}} completadas`},B={toolCalls_one:`{{count}} llamada`,toolCalls_other:`{{count}} llamadas`},V={removeTitle:`Eliminar referencia`,linesCount_one:`{{count}} línea`,linesCount_other:`{{count}} líneas`},H={statusOpen:`Abierto`,statusInProgress:`En curso`,statusDone:`Completado`,startTitle:`Iniciar`,doneTitle:`Marcar como completado`,reopenTitle:`Reabrir`,reopen:`Reabrir`},U={heading:`@ Archivos`,noMatch:`Ningún archivo coincide con "{{query}}"`,searching:`Buscando en el proyecto…`,selectInsertEscDismiss:`↑/↓ seleccionar · ↵ insertar · Esc cerrar`},W={dismiss:`Cerrar`},G={placeholder:`Buscar en el chat…`,prevHit:`Coincidencia anterior`,nextHit:`Coincidencia siguiente`,close:`Cerrar (Esc)`},K={statusPending:`Pendiente`,statusReady:`Listo`,statusRunning:`En ejecución`,statusPaused:`En pausa`,statusCompleted:`Completado`,statusFailed:`Fallido`,statusSkipped:`Omitido`,heading:`Fases`,autonomousOn:`● Autónomo`,autonomousOff:`○ Manual`,autonomousOnTitle:`Modo autónomo activo — clic para pausar`,autonomousOffTitle:`Modo manual — clic para activar el autónomo`,overallProgress:`Progreso general`,tasksSuffix:`{{done}}/{{total}} tareas`,agentsSuffix_one:`{{count}} agente`,agentsSuffix_other:`{{count}} agentes`},q={triggerTitle:`Modo de ventana de contexto`,ctxPrefix:`ctx:`,opsHeading:`Operaciones de contexto`,compactNow:`Compactar ahora`,compactNowDesc:`Elidir salida de herramienta antigua`,compactAggressive:`Compactación agresiva`,compactAggressiveDesc:`Elisión máxima ahora`,repairContext:`Reparar contexto`,repairDesc:`Corregir bloques tool-use huérfanos`,debugContext:`Depurar contexto`,debugDesc:`Desglose de tamaño por sección`,windowHeading:`Ventana de contexto`,keepElide:`mantener {{k}} recientes · elidir {{t}}+ tokens`,fallbackName:`Equilibrado`,fallbackDesc:`Compacción rolling por defecto`},J={kindAssistant:`Asistente`,kindThinking:`Pensando`,kindToolCall:`Llamada de herramienta`,kindToolResult:`Resultado de herramienta`,kindError:`Error`,kindStatus:`Estado`,kindSystem:`Sistema`,title:`Historial del chat`,copyTitle:`Copiar historial de chat del agente`,empty:`Aún no hay historial de chat para este agente.`},Y={heading:`Modo de autonomía`,titlePrefix:`Autonomía: {{label}}`,descOff:`Control manual total — el agente espera tu entrada.`,descSuggest:`El agente sugiere los siguientes pasos pero espera aprobación.`,descAuto:`El agente continúa automáticamente tras una breve espera de confirmación.`,descEternal:`El agente funciona de forma autónoma hasta completar el objetivo.`,descEternalParallel:`Ejecución autónoma multi-agente — modo flota.`,labelOff:`Desactivado`,labelSuggest:`Sugerir`,labelAuto:`Auto`,labelEternal:`Eterno`,labelEternalParallel:`Eterno paralelo`},X={heading:`Cola de mensajes`,subtitle:`{{count}} en cola · mensajes enviados antes de que el agente termine`,btwTitle:`Por cierto — enviado como seguimiento sin interrumpir el agente en ejecución`,steerTitle:`Guiar — interrumpe el agente en ejecución y lo redirige con este mensaje`,queueTitle:`En cola — retenido hasta que termine el run del agente, luego enviado en orden`,sortNewestTitle:`Ordenado del más reciente — clic para ordenar del más antiguo`,sortOldestTitle:`Ordenado del más antiguo — clic para ordenar del más reciente`,newest:`Más reciente`,oldest:`Más antiguo`,clear:`Vaciar`,clearTitle:`Borrar todos los mensajes en cola`,closeTitle:`Cerrar`,emptyTitle:`La cola está vacía`,emptyBody:`Usa los botones btw / steer / añadir a cola junto a la entrada para añadir mensajes. Los elementos en cola se envían en orden cuando termina el run del agente.`,removeTitle:`Quitar de la cola`,clearDispatchedTitle:`Borrar mensajes en cola — las notas ya enviadas no se pueden retractar`,dispatchedTitle:`Ya enviado al agente`,dispatchedLabel:`Enviado`,footer:`Los mensajes se envían en orden de llegada cuando termina el run del agente. Usa el orden para ver los más recientes primero.`},Z={heading:`Puntos de control de sesión`,countSuffix_one:`{{count}} punto de control`,countSuffix_other:`{{count}} puntos de control`,description:`Rebobina la sesión a cualquier punto de control. Los mensajes y cambios de archivos revierten a ese punto — el LLM continúa desde allí como si nada hubiera pasado después.`,emptyTitle:`Aún no hay puntos de control`,emptyBody:`Los puntos de control se crean automáticamente cada vez que envías un mensaje. Envía algunos mensajes y vuelve.`,latest:`reciente`,msgSuffix_one:`{{count}} msg`,msgSuffix_other:`{{count}} msgs`,footerPre:`Clic en cualquier punto de control para rebobinar`,footerPost:`para cerrar`},Q={statusActive:`Activo`,statusPaused:`En pausa`,statusDone:`Completado`,statusFailed:`Fallido`,statusAbandoned:`Abandonado`,heading:`Objetivo`,refined:`Refinado`,progress:`Progreso`,iterations:`iteraciones`,deliverables:`Entregables`,recentActivity:`Actividad reciente`},$={cleanTitle_one:`¿Limpiar {{count}} worktree huérfano?`,cleanTitle_other:`¿Limpiar {{count}} worktrees huérfanos?`,cleanMessage:`Elimina a la fuerza cada worktree git + rama wstack/ap sobrante de runs anteriores. El trabajo sin mergear en ellos se pierde.`,cleanConfirm:`Limpiar huérfanos`,orphanCount_one:`{{count}} worktree huérfano de runs anteriores`,orphanCount_other:`{{count}} worktrees huérfanos de runs anteriores`,andMore:`…y {{count}} más`,cleanButtonTitle:`Eliminar a la fuerza todos los worktrees + ramas huérfanos`,removed_one:`✓ {{count}} worktree huérfano eliminado.`,removed_other:`✓ {{count}} worktrees huérfanos eliminados.`,cleanupFailed:`limpieza fallida`,lanesHeading:`Worktrees`,base:`base`,isolatedCount_one:`{{count}} aislado`,isolatedCount_other:`{{count}} aislados`,statusAllocating:`asignando`,statusActive:`activo`,statusCommitting:`commitiendo`,statusMerging:`mergeando`,statusMerged:`mergeado`,statusConflict:`conflicto`,statusFailed:`fallido`,conflictBadge:`CONFLICTO`,graphAria:`Grafo de ramas worktree desde {{base}}`,mergedLabel:`✓ mergeado → {{base}}`},ee={heading:`Procesos en ejecución`,subtitle:`{{active}} activos · {{total}} total`,killAll:`Matar todos`,emptyTitle:`Sin procesos rastreados`,emptyBody:`Los procesos aparecen aquí cuando el agente ejecuta herramientas bash o exec. Los procesos activos muestran un LED pulsante.`,pidLabel:`PID {{pid}}`,protected:`protegido`,protectedTitle:`Protegido — sobrevive a kill/killAll`,background:`en segundo plano`,backgroundTitle:`Tarea desvinculada — continúa tras cerrar la CLI/WebUI`,confirmKillBackground:`¿Terminar el proceso desvinculado en segundo plano {{pid}}?`,confirmKillAll:`¿Terminar los {{count}} procesos en ejecución?`,killTitle:`Matar PID {{pid}}`},te={tooLarge:`Diff omitido (archivo demasiado grande para mostrar en línea).`},ne={placeholder:`Añadir modelo de respaldo…`,emptyHint:`Se prueban en orden cuando el modelo principal limita o se atasca.`,moveUp:`Subir`,moveDown:`Bajar`},re={loading:`Cargando sesiones...`,apiUnavailable:`API de sesión no disponible:`,empty:`Sin sesiones en vivo. Abre otra instancia wstack para verla aquí.`,heading:`Sesiones en vivo ({{count}})`,autoRefresh:`actualización cada 5 s`,pidLabel:`PID {{pid}}`,agentMeta:`{{iter}} iter · {{tools}} herramientas · {{ago}}`,andMore:`... y {{count}} más`,noAgents:`Sin agentes`},ie={applyTitle:`Escribir la versión editada al disco`,applying:`Aplicando…`,applied:`Aplicado`,apply:`Aplicar`},ae={showStack_one:`Mostrar rastreo de pila ({{count}} marco)`,showStack_other:`Mostrar rastreo de pila ({{count}} marcos)`,hideStack_one:`Ocultar rastreo de pila ({{count}} marco)`,hideStack_other:`Ocultar rastreo de pila ({{count}} marcos)`},oe={liveHeading:`Live`,clients:`Clientes`,agents:`Agentes`,model:`Modelo`,mode:`Modo`,toolCalls:`Llamadas`,displayHeading:`Visualización`,statsHud:`HUD de stats`,legends:`Leyendas`,minimap:`Minimapa`,zoomControls:`Controles de zoom`,animateWires:`Animar cables`,backgroundHeading:`Fondo`,bgDots:`Puntos`,bgLines:`Líneas`,bgCross:`Cruz`,bgNone:`Ninguno`},se={noParams:`(sin parámetros)`,itemCount_one:`{{count}} elemento`,itemCount_other:`{{count}} elementos`,keyCount_one:`{{count}} clave`,keyCount_other:`{{count}} claves`},ce={roleYou:`Tú`,roleTool:`Herramienta`,roleThinking:`Pensando`,roleAssistant:`Asistente`,inputLabel:`Entrada`,downloadTitle:`Descargar como archivo`,empty:`(vacío)`,hideDetails:`Ocultar detalles`,showDetails:`Mostrar detalles`,showDetailsLines_one:`Mostrar detalles ({{count}} línea)`,showDetailsLines_other:`Mostrar detalles ({{count}} líneas)`,editHint:`⌘/Ctrl+Enter para guardar · Esc para cancelar`,saveResend:`Guardar y reenviar`,thinkingProcess:`Proceso de pensamiento`,thinkingMeta:`iter {{iter}} · {{dur}} · {{lines}}`,replay:`repetición`,linesSuffix_one:`{{count}} línea`,linesSuffix_other:`{{count}} líneas`,copyLog:`Copiar registro`,showFullLog:`Mostrar registro completo`,typing:`Escribiendo…`,noContent:`Sin contenido`,imageNotRetained:`La vista previa de la imagen no se conserva tras recargar`,failedToSend:`⚠ Error al enviar`,autoPaused:`⚠️ _Avance automático en pausa — alcanzado el máximo de turnos automáticos consecutivos. Escribe algo para continuar (la autonomía permanece activa)._`,autoLoopHalted:`⚠️ _Envío automático detenido porque se repitió el mismo mensaje. La autonomía sigue activa; escribe un mensaje nuevo para reiniciar la protección contra bucles._`,rsIterations:`Iteraciones: {{n}}`,rsTools:`Llamadas: {{n}}`,rsElapsed:`Transcurrido: {{s}}`,rsCost:`Coste: {{c}}`,useInput:`Entrada: {{n}}`,useOutput:`Salida: {{n}}`,useCacheRead:`Lectura cache: {{n}}`,useCost:`Coste: {{c}}`,renderedLabel:`Renderizado`,rawLabel:`Raw`,showRenderedTitle:`Mostrar markdown renderizado`,showRawTitle:`Mostrar fuente markdown pura`,editTitle:`Editar y reenviar este prompt`,editLabel:`Editar`,unpinTitle:`Desfijar`,pinTitle:`Fijar esta respuesta`,pinnedLabel:`Fijado`,pinLabel:`Fijar`,regenerateTitle:`Regenerar esta respuesta`,retryLabel:`Reintentar`},le={toolFallback:`herramienta`,toolFailed:`Herramienta fallida`},ue={heading:`Atajos de teclado`,footerPre:`Pulsa`,footerPost:`en cualquier momento para reabrir esta lista.`,sectionGlobal:`Global`,sectionTuiParity:`Paridad de panel TUI`,sectionFleet:`Flota y agentes`,sectionChatInput:`Entrada del chat`,sectionChat:`Chat`,sectionChatNav:`Navegación del chat (al no escribir)`,dCommandPalette:`Abrir paleta de comandos`,dShowOverlay:`Mostrar este overlay de atajos`,dToggleSidebar:`Alternar barra lateral`,dOpenPanel:`Abrir panel lateral (Sesión, Agentes, Historial, Archivos, Cambios, Buzón, Skills, Office Map)`,dDesignStudio:`Abrir panel de Design Studio`,dWorktrees:`Abrir panel de Worktrees`,dSettings:`Abrir Configuración`,dMemory:`Abrir Memory`,dFocusInput:`Focalizar la entrada de mensajes`,dSessionPanel:`Panel de sesión`,dFleetOverlay:`Overlay del monitor de flota`,dAgentsOverlay:`Overlay del monitor de agentes`,dWorktreeMonitor:`Monitor de worktrees`,dPlanPanel:`Panel de plan`,dTodosPanel:`Panel de tareas`,dQueuePanel:`Panel de cola`,dProcessMonitor:`Monitor de procesos`,dGoalPanel:`Panel de objetivo`,dSessionsDashboard:`Panel de sesiones`,dOfficeMap:`Office map del coordinador`,dDockPicker:`Selector de chips del dock`,dOpenFleet:`Abrir overlay del monitor de flota`,dOpenAgents:`Abrir overlay del monitor de agentes`,dNavigateAgents:`Navegar agentes en el monitor`,dSelectAgent:`Seleccionar agente focalizado`,dCloseOverlay:`Cerrar overlay activo`,dSendMessage:`Enviar mensaje`,dNewline:`Insertar salto de línea`,dRecallPrev:`Recuperar prompt anterior (entrada vacía)`,dRecallNext:`Recuperar prompt siguiente`,dSlashPopup:`Abrir popup de comandos slash`,dAutocomplete:`Autocompletar comando resaltado`,dDismissPopup:`Cerrar popup / limpiar entrada`,dSearchChat:`Buscar en el chat actual`,dClearContext:`Limpiar contexto (igual que /clear)`,dNewSession:`Iniciar nueva sesión (igual que /new)`,dExportMarkdown:`Exportar chat como markdown`,dModelSwitcher:`Overlay selector rápido de modelo`,dCompactDensity:`Alternar densidad UI compacta`,dAbortRun:`Abortar el run actual (durante ejecución)`,dFocusNext:`Focalizar mensaje siguiente (alias: ↓)`,dFocusPrev:`Focalizar mensaje anterior (alias: ↑)`,dJumpFirst:`Ir al primer mensaje`,dJumpLast:`Ir al último mensaje`,dCopyFocused:`Copiar texto del mensaje focalizado`,dClearFocused:`Borrar mensaje focalizado`},de={titleFallback:`Board SDD en vivo`,defaultModelTitle:`Modelo worker por defecto del run (los overrides por tarea tienen prioridad)`,graphLabel:`Grafo`,kanbanLabel:`Kanban`,retryAllTitle:`Volver a poner cada tarea fallida en pending`,retryFailed:`Reintentar fallidas ({{count}})`,resume:`Reanudar`,pause:`Pausar`,stop:`Detener`,cleanTitle:`Eliminar los worktrees git + ramas wstack/ap del run`,cleanWorktrees:`Limpiar worktrees`,rollbackTitle:`Revertir {{count}} commit(s) mergeado(s) en {{base}}`,rollback:`Rollback ({{count}})`,stopping:`Deteniendo…`,destroying:`Destruyendo…`,destroyTitle:`Detener, eliminar todos los worktrees, revertir opcionalmente los commits mergeados y borrar el proyecto SDD`,destroy:`Destruir`,statDone:`hechos`,statRunning:`en curso`,statFailed:`fallidos`,statWave:`oleada`,statElapsed:`transcurrido`,noActiveWorkers:`sin workers activos`,deadlock:`Interbloqueo — tareas bloqueadas por trabajo fallido:`,noRunTitle:`Sin run SDD activo.`,noRunBody:`Inicia uno desde el asistente New SDD Project o vía /sdd execute en la CLI — los agentes aparecen aquí en vivo, cada uno en un worktree aislado.`,clickTaskHint:`clic en una tarea para detalles`,lcClean:`Limpieza`,lcRollback:`Rollback`,lcDestroy:`Destrucción`,lcFailed:`{{op}} falló: {{reason}}`,lcUnknownError:`error desconocido`,lcWorktrees_one:`{{count}} worktree eliminado`,lcWorktrees_other:`{{count}} worktrees eliminados`,lcCommits_one:`{{count}} commit revertido`,lcCommits_other:`{{count}} commits revertidos`,lcDeleted:`borrado {{items}}`,lcNothing:`nada que hacer`,lcNote:`{{op}}: {{body}} — nota: {{reason}}`,lcOk:`{{op}}: {{body}}`},fe={backTitle:`Volver a la actividad`,expandTitle:`Ampliar detalles de la tarea`,collapseTitle:`Contraer detalles de la tarea`,eventLog:`Registro de eventos de la tarea`,newestFirst:`más reciente primero`,noEvents:`Aún no se ha registrado actividad para esta tarea.`,workingOn:`trabajando en esta tarea`,assigned:`asignado`,metaPriority:`Prioridad`,metaType:`Tipo`,metaDuration:`Duración`,metaElapsed:`Transcurrido`,metaRetries:`Reintentos`,metaWorktree:`Worktree`,workerModel:`Modelo worker`,runDefault:`predeterminado del run: {{model}}`,runDefaultPlaceholder:`Predeterminado del run`,runDefaultPlaceholderModel:`Predeterminado del run ({{model}})`,verificationCmd:`Comando de verificación`,gatesCompletion:`valida la finalización (exit 0)`,verifyPlaceholder:`ej. pnpm vitest run path/to/file`,addVerify:`+ Añadir comando de verificación`,description:`Descripción`,timeline:`Cronología`,dependsOn:`Depende de`,blocks:`Bloquea`,newWorkerPlaceholder:`Nombre del nuevo worker…`,confirmStop:`¿Detener esta tarea en ejecución?`,confirmDelete:`¿Eliminar esta tarea del run?`,retryTitle:`Volver a poner esta tarea en pending`,reassign:`Reasignar`,stopTitle:`Abortar el worker en esta tarea`,splitTitle:`Dividir esta tarea en subtareas delegadas a workers separados`,split:`Dividir`,splitHint:`Una subtarea por línea — Título :: descripción (descripción opcional)`,splitPlaceholder:`Escribe la capa de datos :: añade el repositorio
4
4
  Conecta la UI`,splitInto:`Dividir en subtareas`,deleteTitle:`Quitar esta tarea no iniciada del run`},pe={phaseStart:`Iniciar`,phaseInterview:`Entrevista`,phaseSpecReview:`Revisión spec`,phasePlanning:`Planificación`,phaseTaskReview:`Revisión tareas`,phaseRunning:`En ejecución`,phaseDone:`Completado`,titleFallback:`Nuevo proyecto SDD`,questionsSuffix:`{{cur}}/{{max}} preguntas`,tasksSuffix:`{{count}} tareas`,runCfgTitle:`Config del run — modelo por defecto + cadena de respaldo`,modelsLabel:`Modelos`,startRun:`Iniciar run`,defaultWorkerModel:`Modelo worker por defecto`,leaderDefaultPlaceholder:`Leader / defecto de sesión`,useSessionDefault:`Usar defecto de sesión`,fallbackChain:`Cadena de respaldo`,appliesToAll:`Se aplica a cada tarea. Override por tarea desde el board live tras iniciar.`,parallelAgents:`Agentes paralelos`,isolateWorktrees:`Aislar en worktrees git`,worktreeOn:`Cada tarea corre en su propio worktree, squash-mergeado al completar.`,worktreeOff:`Las tareas corren directamente en la rama actual (sin aislamiento).`,planDecompose:`Dividir tareas grandes automáticamente`,planDecomposeOn:`Antes del despacho, divide las tareas que el motor de atomicidad marca como demasiado grandes.`,planDecomposeOff:`Mantén el grafo de tareas aprobado tal cual (aún puede dividirse en runtime si una tarea falla).`,goalPrompt:`¿Qué quieres construir?`,goalPlaceholder:`ej. Añadir login OAuth (Google + GitHub) con gestión de sesión`,startingInterview:`Iniciando entrevista…`,startInterview:`Iniciar entrevista`,introBody:`Un agente aislado te entrevista para construir una spec, la descompone en un grafo de tareas ordenado por dependencias, luego una flota multi-agente real lo ejecuta — síguelo en vivo en el board. Si refrescas o reinicias, la entrevista se reanuda automáticamente.`,taskGraphSummary:`Grafo de tareas · {{count}} tareas, ordenadas por dependencias`,dragToExplore:`arrastra para explorar`,show:`mostrar`,goalLabel:`Objetivo`,implementationPlan:`Plan de implementación`,approveSpec:`Aprobar spec → planificar implementación`,approveTasks:`Aprobar tareas`,approvePlan:`Aprobar plan`,backToQuestions:`Volver a las preguntas`,backToQuestionsTitle:`Rechazar la spec y volver a las preguntas`,backToSpec:`Volver a la spec`,backToSpecTitle:`Rechazar el plan y volver a la revisión de la spec`,rewindToPhaseTitle:`Volver a esta fase para revisar`,quickBestPractice:`Usar mejores prácticas`,quickBestPracticeDirective:`Utiliza las mejores prácticas estándar de la industria para esto.`,generateSpecNow:`Generar spec ahora`,generateSpecNowTitle:`Generar la especificación ahora con los requisitos recopilados`,interviewProgress:`Progreso de la entrevista`,questionOf:`Pregunta {{current}} de {{max}}`,minRequiredMet:`Preguntas mínimas cumplidas ✓`,minRequiredRemaining:`{{count}} más requeridas`,answerPlaceholder:`Responde a la pregunta…`,changePlaceholder:`Pedir un cambio…`,resumeBanner:`Entrevista reanudada desde una sesión anterior — continúa donde lo dejaste.`,openLiveBoard:`Abrir tablero en vivo`,discardInterview:`Descartar y empezar de nuevo`,discardTitle:`Abandonar esta entrevista y borrar la sesión guardada`},me={emptyDir:`vacío`,loadFailed:`Error al cargar archivos: {{error}}`,expandAllTitle:`Expandir todas las carpetas`,expandAll:`Expandir todo`,collapseAllTitle:`Contraer todas las carpetas`,collapse:`Contraer`,folders_one:`{{count}} carpeta`,folders_other:`{{count}} carpetas`,currentDirTitle:`Directorio actual: {{path}}`,navigateToTitle:`Navegar a {{path}}`,filesSuffix_one:`{{count}} archivo`,filesSuffix_other:`{{count}} archivos`,goToDir:`ir al directorio`,navigateParentTitle:`Navegar al directorio padre de {{path}}`,parentDirectory:`directorio padre`,noFiles:`No se encontraron archivos`,copyAbsPath:`Copiar ruta absoluta`,copyRelPath:`Copiar ruta relativa`,openInTerminal:`Abrir en terminal`,openInFileManager:`Abrir en gestor de archivos`,mentionInChat:`Mencionar en el chat`,copyPath:`Copiar ruta`,newFile:`Nuevo archivo`,newFolder:`Nueva carpeta`,newFileTitle:`Crear nuevo archivo`,newFolderTitle:`Crear nueva carpeta`,delete:`Eliminar`,confirmDeleteDir:`¿Eliminar "{{name}}" y todo su contenido?`,rename:`Renombrar`,renameTitle:`Introducir nuevo nombre`,sortByName:`Nombre`,sortByNameTitle:`Ordenar por nombre (predeterminado)`,sortBySize:`Tamaño`,sortBySizeTitle:`Ordenar por tamaño de archivo (mayor primero)`,search:`Buscar archivos`,searchPlaceholder:`Filtrar…`},he={sendSelectionAction:`Enviar selección al chat`,noFilesOpen:`Sin archivos abiertos`,selectToEdit:`Selecciona un archivo del explorador para editar`,sendSelectedTitle:`Enviar líneas seleccionadas al chat`,mentionFileTitle:`Mencionar este archivo en el chat`,sendToChat:`Enviar al chat`,mentionFile:`Mencionar archivo`,loadingEditor:`Cargando editor…`,selectTab:`Selecciona una pestaña para ver su contenido`},ge={title:`Actividad del archivo`,overview:`Resumen`,changes:`Cambios`,context:`Contexto`,logs:`Registros`,memory:`Memoria`,lines:`líneas`,resizeHint:`Arrastra para redimensionar · doble clic para restablecer`,refresh:`Actualizar evidencia del archivo`,evidenceCount_one:`{{count}} evento`,evidenceCount_other:`{{count}} eventos`,mutations30m:`Ediciones · 30 min`,sessions:`Sesiones`,actors:`Actores`,linkedWork:`Trabajo vinculado`,workLinks:`Kanban / tarea`,recentActivity:`Actividad reciente del archivo`,events:`eventos`,noEvidence:`Aún no hay actividad atribuida a este archivo.`,noSessions:`Aún no hay atribución de sesión.`,noActors:`Aún no hay atribución de actor.`,noWorkLinks:`No hay vínculo Kanban, SDD o tarea registrado.`,taskOrTodo:`Task / tarea`,loadingEvidence:`Cargando evidencia del archivo…`,gitToBuffer:`Git HEAD → búfer actual de Monaco`,savedToBuffer:`Última versión guardada → búfer actual de Monaco`,unsaved:`búfer sin guardar`,lifetimeTitle:`Todo el historial`,lifetimeChanges:`cambios`,lifetimeSessions:`sesiones`,lifetimeTasks:`tareas`,lifetimeBoards:`tableros`,lifetimeSince:`desde {{date}}`,lifetimeTools:`mediante {{tools}}`,level:{quiet:`estable`,active:`activo`,churn:`alta rotación`},analysisTitle:{quiet:`Sin rotación reciente`,active:`Este archivo está cambiando`,churn:`Cambios repetidos detectados`},analysisBody:{quiet:`No se registraron cambios atribuidos en los últimos 30 minutos.`,active:`{{mutations}} cambios de {{actors}} actores en {{sessions}} sesiones durante los últimos 30 minutos.`,churn:`Alta rotación: {{mutations}} cambios de {{actors}} actores en {{sessions}} sesiones. Revisa el trabajo solapado antes de la siguiente edición.`}},_e={loading:`Cargando analíticas…`,heading:`Panel de analíticas`,autoRefresh:`actualización cada 10 s`,liveSessions:`Sesiones en vivo`,agents:`Agentes`,agentsActive:`{{count}} activos`,totalEvents:`Eventos totales`,categoriesSub:`{{count}} categorías`,toolCalls:`Llamadas`,iterationsSub:`{{count}} iteraciones`,sessionCost:`Coste de sesión`,tokensSub:`{{input}} entrada / {{output}} salida`,sessionDuration:`Duración de sesión`,messagesSub:`{{count}} mensajes`,eventsByCategory:`Eventos por categoría`,noEvents:`Aún no hay eventos registrados.`,topEvents:`Eventos principales`,activeSessionUsage:`Uso de sesión activa`,provider:`Proveedor`,model:`Modelo`,inputTokens:`Tokens de entrada`,outputTokens:`Tokens de salida`,cacheRatio:`Ratio de caché`,filesRead:`Archivos leídos`,noSession:`Sin sesión activa o esperando datos…`,healthErrors:`Salud y errores`,errorEvents:`Eventos de error`,warningEvents:`Eventos de aviso`,cacheHitRate:`Tasa de aciertos de caché`,totalCategories:`Categorías totales`,waitingData:`Esperando datos…`,recentEvents:`Eventos recientes`,noRecentEvents:`Sin eventos recientes. Interactúa con la UI para generar eventos.`},ve={heading:`Biblioteca de prompts`,searchPlaceholder:`Buscar prompts…`,newPrompt:`+ Nuevo prompt`,all:`Todos`,recent:`🕘 Recientes`,favorites:`★ Favoritos`,noMatch:`Ningún prompt coincide.`,newPromptHeading:`Nuevo prompt`,titlePlaceholder:`Título *`,descPlaceholder:`Descripción de una línea`,categoryPlaceholder:`Categoría`,tagsPlaceholder:`etiquetas, separadas, por coma`,contentPlaceholder:`Contenido del prompt * — usa {{name}} para variables`,variables:`Variables`,addVar:`+ var`,varNamePlaceholder:`nombre`,varDescPlaceholder:`descripción`,removeVarTitle:`Eliminar variable`,required:`obligatorio`,multiline:`multilínea`,enumPlaceholder:`enum: a, b, c`,savePrompt:`Guardar prompt`,saveFailed:`No se pudo guardar el prompt.`,titleContentRequired:`El título y el contenido son obligatorios.`,toggleFavoriteTitle:`Alternar favorito`,selectOption:`— elegir —`,fillMissing:`Rellenar: {{missing}}`,insertIntoChat:`Insertar en el chat`,selectPromptHint:`Selecciona un prompt para previsualizar e insertar.`},ye={scopeProject:`Proyecto`,scopeGlobal:`Global`,scopeBundled:`Integrado`,timeoutError:`Tiempo de espera agotado. Inténtalo de nuevo.`,updateFailed:`Actualización fallida`,saveFailed:`Guardado fallido`,uninstallFailed:`Desinstalación fallida`,noSkillSelected:`Ninguna habilidad seleccionada`,selectSkillHint:`Selecciona una habilidad de la barra lateral para ver su documentación`,goToChat:`Ir al chat`,openSourceRepo:`Abrir repo de origen`,copySourceUrl:`Copiar URL de origen`,updatedLabel:`↑ Actualizado: {{list}}`,upToDateLabel:`— Actualizado: {{list}}`,errorsLabel:`✗ {{list}}`,checkUpdatesTitle:`Buscar actualizaciones`,exportTitle:`Exportar habilidad como .md`,editTitle:`Editar habilidad`,uninstallTitle:`Desinstalar habilidad`,closeTitle:`Cerrar e ir al chat`,backTitle:`Atrás`,forwardTitle:`Adelante`,relatedFiles:`Archivos relacionados`,references:`Referencias`,goToSkillTitle:`Ir a {{name}}`,loadingContent:`Cargando contenido…`,editingLabel:`Editando {{name}}`,editStats:`{{lines}} líneas · {{words}} palabras · {{chars}} caracteres`,charsWarningFmt:`⚠ {{used}} MB / {{limit}} MB`,draftSaved:`Borrador guardado`,draftRestored:`Borrador restaurado`,discardDraft:`Descartar borrador`,splitViewTitle:`Vista dividida`,hidePreviewTitle:`Ocultar vista previa`,contentPlaceholder:`Contenido de la habilidad (markdown)...`,loadFailed:`Error al cargar el contenido`,noContent:`Sin contenido disponible`,uninstallSkillHeading:`Desinstalar habilidad`,uninstallConfirm:`¿Desinstalar {{name}}?`,uninstallRemovePath:`Esto eliminará la habilidad de {{path}} y no se puede deshacer.`,uninstallAction:`Desinstalar`},be={sessionStats:`Estadísticas de sesión`,clients:`Clientes`,input:`Entrada`,output:`Salida`,cost:`Coste`,agentsSuffix:`agentes`,upPrefix:`activo {{time}}`,webuiClient:`Cliente WebUI`,disconnected:`Desconectado`,connected:`Conectado`,tuiClient:`Cliente TUI`,terminal:`Terminal`,repl:`REPL`,coordinator:`COORDINADOR`,fleetSummary:`Resumen de flota`,toolCallsLabel:`Llamadas`,tokensLabel:`Tokens`,coordinatingFleet:`Coordinando flota`,donePrefix:`✓ hecho ·`,failedPrefix:`✕ fallido ·`,seenPrefix:`visto hace {{time}}`,availableDesk:`Escritorio disponible`,mailboxHub:`Centro de correo`,unreadSuffix_one:`{{count}} sin leer`,unreadSuffix_other:`{{count}} sin leer`,allClear:`Todo leído`,total:`Total`,unreadLabel:`Sin leer`,liveActivity:`Actividad en vivo`,waitingActivity:`Esperando actividad…`,now:`ahora`,fleetHq:`Cuartel General de Flota WrongStack`,live:`EN VIVO`,legendStatus:`Estado`,legendActive:`Activo`,legendIdle:`Inactivo`,legendError:`Error`,legendConnections:`Conexiones`,legendMail:`Correo`,legendTask:`Tarea`,legendStatusConn:`Estado`,arrange:`Organizar`,arrangeTitle:`Organizar los nodos para ajustarlos al lienzo disponible`,feed:`Feed`,feedTitle:`Alternar el feed de actividad en vivo`,broadcast:`Difundir`,broadcastTitle:`Difundir un mensaje a cada sesión en vivo del proyecto`,broadcastToAll:`Difundir a todas las sesiones`,broadcastPlaceholder:`Mensaje a cada agente en vivo del proyecto…`,broadcastSendHint:`⌘/Ctrl+Enter para enviar`,openFullView:`Abrir vista completa de operaciones`,rowStatus:`Estado`,rowModel:`Modelo`,rowTool:`Herramienta`,rowIterations:`Iteraciones`,rowToolCalls:`Llamadas`,rowTokensIn:`Tokens entrada`,rowTokensOut:`Tokens salida`,rowTokensTotal:`Tokens totales`,rowContext:`Contexto`,rowCost:`Coste`,rowLastSeen:`Visto por última vez`,rowSurface:`Superficie`,rowBranch:`Rama`,rowPid:`PID`,rowDir:`Dir.`,rowAgents:`Agentes`,rowUptime:`Tiempo activo`,rowConnections:`Conexiones`,rowTotalMessages:`Mensajes totales`,rowUnread:`Sin leer`,recent:`Recientes`,noSubject:`(sin asunto)`,fullOperationStream:`Flujo completo de operaciones`,closeEsc:`Cerrar (Esc)`,idleDesk:`Escritorio inactivo`,fleetHqLabel:`Cuartel General de Flota`,clientsSuffix_one:`{{count}} cliente`,clientsSuffix_other:`{{count}} clientes`,taskFallback:`tarea`,controlLabel:`control`},xe={installTitle:`Instalar habilidad`,createTitle:`Crear habilidad`,exportTitle:`Exportar todas las habilidades como .zip`,checkUpdatesTitle:`Buscar actualizaciones (todas)`,searchPlaceholder:`Buscar habilidades…`,loading:`Cargando…`,noSkills:`Sin habilidades instaladas`,noMatch:`Ninguna habilidad coincide con el filtro`,noDescription:`Sin descripción`,scopeForeign:`Externa`,installHeading:`Instalar Habilidad`,installHint:`Introduce una referencia de repo GitHub (owner/repo) o URL completa.`,installPlaceholder:`ej. wrongstack/skill-name o https://github.com/owner/repo`,installScope:`Ámbito de instalación:`,installBtn:`Instalar`,installedMsg:`Instalada: {{names}}`,installFailed:`Instalación fallida`,createHeading:`Crear Habilidad`,createHint:`Scaffold una nueva habilidad. La primera línea es el trigger.`,nameLabel:`Nombre`,namePlaceholder:`ej. mi-nueva-habilidad`,descLabel:`Descripción / Trigger`,descPlaceholder:`Usa esta habilidad cuando <situación>.
5
- Triggers: el usuario dice "palabra clave", "otra".`,saveIn:`Guardar en:`,createBtn:`Crear Habilidad`,createdMsg:`Creada: {{name}}`,createFailed:`Creación fallida`},Se={noEvents:`Sin eventos.`},Ce={pickHint:`Elige un kit — el agente se ceñirá a él.`,gallery:`Galería`,galleryTitle:`Abrir galería de vista previa en vivo`,stackTitle:`Stack objetivo`,loading:`Cargando kits…`,notFound:`No se encontraron kits de diseño.`,bestFor:`Ideal para:`,light:`Claro`,dark:`Oscuro`,tune:`Ajustar`,font:`Fuente`,set:`Aplicar`,spaceGrotesk:`Space Grotesk…`,aaHeading:`Aa Encabezado`,theQuickBrownFoxJumpsOver:`El veloz murciélago hindú comía feliz cardillo y kiwi.`,primary:`Principal`,ghost:`Fantasma`,badge:`Insignia`,inputField:`Campo de entrada…`,radius:`Radio`,density:`Densidad`,motion:`Movimiento`},we={detached:`(separado)`,count_one:`{{count}} worktree`,count_other:`{{count}} worktrees`,baseSuffix:` · base {{base}}`,baseLabel:`base`,cleanOrphans:`Limpiar huérfanos`,cleanOrphansTitle:`Eliminar todos los worktrees huérfanos`,liveBusyTitle:`Un run está activo — deténlo primero`,rescanTitle:`Re-escanear`,removed_one:`Eliminado {{count}} worktree.`,removed_other:`Eliminados {{count}} worktrees.`,failed:`Falló`,mergedIntoBase:`{{branch}} fusionado en la base.`,conflictMerge:`Conflicto al fusionar {{branch}}: {{files}}`,seeGit:`ver git`,mergeFailed:`Fusión fallida: {{reason}}`,unknownReason:`desconocido`,mergeConfirmTitle:`¿Fusionar {{branch}} en {{base}}?`,mergeConfirmMsg:`Squash-fusiona este branch al branch base. Se cancela limpiamente si hay conflicto.`,mergeAction:`Fusionar`,removeConfirmTitle:`¿Eliminar {{branch}}?`,removeConfirmMsg:`Elimina forzosamente el checkout del worktree y borra su branch. El trabajo sin fusionar se descarta.`,empty:`Sin worktrees.`,emptyHint:`Los runs SDD / Goal crean worktrees aislados aquí. Los huérfanos de runs caídos también aparecen.`,actOpenTerm:`Abrir en terminal`,actOpenFolder:`Abrir carpeta`,actViewChanges:`Ver cambios`,actMerge:`Fusionar a la base`,actRemove:`Eliminar / descartar`,live:`activo`,noUncommitted:`Sin cambios sin confirmar`,commitsAhead_one:`{{count}} commit adelante`,commitsAhead_other:`{{count}} commits adelante`,more:`…{{count}} más`},Te={heading:`Mapa de Oficina`,headingHint:`Visualiza tu flota como un plano de oficina con el estado de los agentes en vivo.`,statAgents:`Agentes`,statMail:`Correo`,unreadSuffix:` sin leer`,sectionView:`Vista`,sectionDisplay:`Visualización`,sectionBackground:`Fondo`,sectionRecent:`Actividad Reciente`,eventsTrackedSuffix:` eventos rastreados`,recentHint:`Envíos de correo, spawns de agentes y cambios de estado aparecen aquí.`,sectionShortcuts:`Atajos`,sectionLegend:`Leyenda`,hudLabel:`HUD`,hudDesc:`Mostrar overlay de estadísticas de sesión en tiempo real`,hudToggle:`Activar HUD`,minimapLabel:`Minimapa`,minimapDesc:`Mostrar el minimapa de resumen`,minimapToggle:`Activar minimapa`,controlsLabel:`Controles`,controlsDesc:`Mostrar controles de zoom y ajuste`,controlsToggle:`Activar controles`,animateLabel:`Animar aristas`,animateDesc:`Animar el flujo en conexiones activas`,animateToggle:`Activar animación de aristas`,legendLabel:`Mostrar leyenda`,legendDesc:`Mostrar leyenda de estado y conexión`,legendToggle:`Activar leyenda`,feedLabel:`Feed en vivo`,feedDesc:`Banda inferior de actividad reciente entre procesos`,feedToggle:`Activar feed en vivo`,fitView:`Ajustar`,zoomIn:`Acercar`,zoomOut:`Alejar`,resetZoom:`Reiniciar zoom`,legendActive:`Activo (en ejecución)`,legendIdle:`Inactivo`,legendError:`Error`,legendOffline:`Desconectado`,bg:{dots:`Puntos`,lines:`Líneas`,cross:`Cruz`,none:`Ninguno`}},Ee={liveProjectOffice:`Oficina del proyecto en vivo`,agents:`agentes`,working:`trabajando`,toolCalls:`llamadas de herramientas`,office:`Oficina`,topology:`Topología`,officeDescription:`Mesas y trabajo de agentes en vivo`,topologyDescription:`Clientes, agentes y conexiones`,team:`Equipo`,liveDesk:`Escritorio en vivo y trabajo entrante`,lastActions:`Trabajos recientes`,leadAgent:`Agente principal`,agent:`Agente`,callsCount:`{{count}} llamadas`,recent:`Recientes`,noCalls:`Aún no hay llamadas completadas`,telemetryReconnect:`Reconecta este terminal para iniciar el historial de herramientas`,thinking:`Pensando`,waiting:`Esperando trabajo`,preparing:`Preparando la siguiente acción…`,deskReady:`El escritorio está listo`,toolCall:`Llamada de herramienta`,execution:`Ejecución`,started:`Inicio`,duration:`Duración`,session:`Sesión`,target:`Objetivo`,resultSize:`Tamaño del resultado`,lines:`líneas`,bytes:`bytes`,tokens:`tokens`,input:`Entrada`,outputPreview:`Vista previa de salida`,readyTitle:`La oficina está lista`,readyBody:`Los agentes ocuparán un escritorio en cuanto se unan a este proyecto.`,liveEvent:`flujo de eventos en vivo`,connectedSessions_one:`{{count}} sesión conectada`,connectedSessions_other:`{{count}} sesiones conectadas`,detailHint:`haz clic en una acción para ver la entrada y el resultado exactos`,officeBriefing:`Resumen de la oficina`,leaderPrompt:`Último prompt del líder`,activeInstruction:`Instrucción activa`,telemetryWaiting:`Reconecta este terminal para recibir instrucciones en vivo`,syncWaiting:`esperando sincronización`,todoTelemetryWaiting:`Reconecta este terminal para recibir la lista de tareas en vivo`,taskNotReported:`El agente trabaja, pero no informó una descripción de la tarea`,noPrompt:`Aún no se recibió ningún prompt en esta sesión`,activeTodos:`Tareas activas`,todoProgress:`{{done}}/{{total}} completadas`,allTodosDone:`Todas las tareas completadas`,noActiveTodos:`Aún no hay tareas activas`,moreTodos:`+{{count}} más`,currentTask:`Tarea actual`,task:`Tarea`,promptReceived:`Recibido`,todos:`Tareas`,todoStatus:{pending:`Pendiente`,in_progress:`En curso`,completed:`Completada`},breakRoom:`Sala de descanso`,onBreak:`{{count}} en descanso`,desksEmpty:`Todos están en descanso — los escritorios están listos para la próxima tarea`,files:`ARCHIVOS`,read:`LECTURA`,write:`ESCRITURA`,edit:`EDICIÓN`,term:`TERM`,live:`EN VIVO`,uniqueFilesTouched:`Archivos únicos tocados`,fileReads:`Lecturas de archivos`,filesWritten:`Archivos escritos`,filesEdited:`Archivos editados`,linesAddedAndRemoved:`Líneas añadidas y eliminadas`,terminalCommands:`Comandos de terminal`,incomingAndOutgoingMail:`Correo entrante y saliente`,sessionActivityTotals:`Totales de actividad de la sesión`,closeToolDetails:`Cerrar detalles de la herramienta`,closeDetails:`Cerrar detalles`,closeMailDetails:`Cerrar detalles del correo`,closeTaskDetails:`Cerrar detalles de la tarea`,closeOfficeBriefing:`Cerrar el resumen de la oficina`,priority:`Prioridad`,route:`Ruta`},De={injectedHeading:`Memoria SAGE inyectada`,memoriesLabel_one:`{{count}} memoria`,memoriesLabel_other:`{{count}} memorias`},Oe={tabProject:`Proyecto SDD`,tabBoard:`Tablero SDD en vivo`,tabSpecs:`Especificaciones`},ke={label:`Panel lateral`},Ae={deleteTitle:`¿Eliminar esta memoria?`,backToList:`Volver a la lista de memorias`,copyId:`Copiar ID de memoria`,deletedMemory:`Memoria eliminada`,anchorCursorHint:`El rango de líneas del cursor coincide con el ancla de esta memoria`,statusDeleted:`eliminada`,statusSuperseded:`reemplazada`,restoreTitle:`Restaurar esta memoria al estado activo`,supersededJumpTitle:`Esta versión está reemplazada — saltar a la versión activa`,acceptSuggestionTitle:`Aceptar la sugerencia de eliminación de higiene — la memoria será olvidada`,rejectSuggestionTitle:`Rechazar la sugerencia — la memoria queda tal cual y puede volver a sugerirse`,updateTitle:`Actualizar el contenido de la memoria — el versionado crea un nuevo registro activo`,promoteTitle:"Promover a `permanent` — la higiene nunca volverá a mostrarlo",openRecordTitle:`Abrir el registro completo en MemoryManager`,fileDrawerAria:`Cajón de memoria de archivo`,requeryTitle:`Volver a consultar este archivo`,closeDrawerAria:`Cerrar cajón`,closeDrawerTitle:`Cerrar cajón de memoria`,showRecoverable:`Mostrar recuperables (eliminadas)`,cursorBoostTitle:`Impulso de cursor`,fileScopedTitle:`Alcance de archivo`,mentionedInTitle:`Mencionado en`,editorKnowledge:`Conocimiento`,editorContentPlaceholder:`Ejemplo: el estado de la WebUI pertenece a los stores de Zustand; los mensajes del servidor actualizan esos stores a través de manejadores WebSocket singleton.`,editorImportance:`Importancia`,editorConfidence:`Confianza`,editorFreshness:`Frescura`,editorAnchors:`Anclas`,editorSymbolPlaceholder:`Nombre del símbolo`,editorRelationships:`Relaciones`,searchAria:`Buscar memorias`,searchPlaceholder:`Buscar contenido, IDs, etiquetas, anclas…`,clearSearchAria:`Borrar búsqueda`,audienceFilterAria:`Filtrar solo ámbito de audiencia`,audienceFilterTitle:`Mostrar solo memorias de ámbito de audiencia`,clearFiltersAria:`Borrar todos los filtros`,clearFiltersTitle:`Borrar todos los filtros`,allStatuses:`Todos los estados`,allKinds:`Todos los tipos`,tagsLabel:`Etiquetas`,popularTags:`Etiquetas populares`,graphAria:`Grafo de relaciones de memoria`,graphFullscreenAria:`Abrir grafo a pantalla completa`,clearTracesTitle:`Borrar todas las trazas`,closePanelTitle:`Cerrar panel`,traceMatched:`coincidente`,traceInjected:`inyectado`,traceFiltered:`filtrado`,traceActive:`activo`,traceExited:`salido`,traceScore:`puntuación`,traceError:`error`,lifecycleAria:`Registro en vivo del ciclo de vida de memoria`,listAria:`Memorias`,emptyTitle:`El contexto a largo plazo de tu proyecto`,emptyVerifiedAnchors:`Anclas verificadas`,emptyTypedRelations:`Relaciones tipadas`,emptyAgentRecall:`Recuerdo del agente`,lensesAria:`Lentes de memoria SAGE`,loadingSage:`Cargando SAGE`,loadingAudience:`Cargando memorias de audiencia`,storeUnavailable:`Almacén de memoria no disponible`,backToChat:`Volver al chat`,sageHeading:`SAGE`,refreshAria:`Actualizar memorias`,tabMemories:`Memorias`,tabActive:`Activas`,tabReview:`Revisión`,tabNeedsReview:`Requiere revisión`,reviewLoading:`Cargando cola de revisión…`,reviewLoadTimeout:`La cola de revisión no respondió a tiempo.`,reviewEmptyTitle:`No hay revisiones pendientes`,reviewEmptyHint:`Las propuestas de higiene y triage aparecen aquí para aceptar/rechazar.`,reviewPendingCount_one:`{{count}} revisión pendiente`,reviewPendingCount_other:`{{count}} revisiones pendientes`,reviewSelectAll:`Seleccionar todo`,reviewClearSelection:`Borrar selección`,reviewSelectOne:`Seleccionar elemento de revisión`,reviewBulkAccept:`Aceptar selección`,reviewBulkKeep:`Mantener selección`,tabGraphEdges:`Aristas del grafo`,libraryAria:`Biblioteca de memorias`,viewAria:`Vista de memorias`,detailAria:`Detalle de memoria`,fileForDrawerAria:`Archivo para cajón de memoria`,cursorLabel:`cursor`,reviewLabel:`revisión`,hygieneReviewTitle:`Revisión de higiene: {{reason}} ({{days}} d)`,updatedSuffix:`actualizada {{date}}`,actionRecover:`Recuperar`,actionGoToActive:`Ir a la versión activa`,actionAcceptDeletion:`Aceptar eliminación`,actionKeep:`Conservar`,actionUpdate:`Actualizar`,actionMarkPermanent:`Marcar como permanente`,actionShowFull:`Mostrar todo`,itemLabel:`memorias`,noFile:`(sin archivo)`,memoriesCount_one:`{{count}} memoria`,memoriesCount_other:`{{count}} memorias`,pendingReviewCount_one:`{{count}} revisión pendiente`,pendingReviewCount_other:`{{count}} revisiones pendientes`,supersededCount:`{{count}} reemplazada(s)`,linesRange:`líneas {{start}}–{{end}}`,emptyOpenFile:`Abre un archivo para ver sus memorias.`,loadingMemories:`Cargando memorias…`,errorPrefix:`Error: {{message}}`,emptyNoMemories:`Aún no hay memorias adjuntas a {{file}}.`,pendingAccepting:`aceptando…`,pendingKeeping:`conservando…`,pendingUpdating:`actualizando…`,pendingMarking:`marcando…`,pendingRecovering:`recuperando…`,deletedNeverPolicy:`Este registro es solo de auditoría y conlleva una prohibición absoluta: nunca puede entrar en el contexto del LLM.`,deletedEligiblePolicy:`El registro está inactivo y no se puede editar, pero sigue siendo elegible como evidencia histórica cuando la recuperación lo encuentra relevante.`,deletingLabel:`Eliminando…`,actionDeleteMemory:`Eliminar memoria`,copiedNotice:`ID de memoria copiado.`,revisionSuffix:`revisión {{n}}`,memoryRelationships:`Relaciones de memoria`,captureMemory:`Capturar una memoria`,editMemory:`Editar memoria`,editorCreateHint:`Añade conocimiento duradero con metadatos de recuperación.`,editorEditHint:`Actualiza el contenido sin perder la procedencia.`,createMemory:`Crear memoria`,saveChanges:`Guardar cambios`,addAnchor:`Añadir ancla`,noAnchors:`Aún no hay anclas — añade una para mejorar la precisión de recuperación`,loadingGraph:`cargando grafo real…`,graphStats:`{{nodes}} nodos · {{edges}} aristas`,lifecycleHeading:`Ciclo de vida de la memoria`,statusWaiting:`esperando`,statusLive:`en vivo · {{count}}/100`,noMatching:`No hay memorias coincidentes`,buildGraph:`Construye tu grafo de memorias`,clearFilters:`Borrar filtros`,createFirst:`Crear la primera memoria`,captureButton:`Capturar memoria`,memoryCaptured:`Memoria capturada.`,memoryUpdated:`Memoria actualizada.`,liveStore:`almacén en vivo`,reconnecting:`reconectando`,newMemory:`Nueva memoria`,hideFileDrawer:`Ocultar cajón de memoria de archivo`,showFileDrawer:`Mostrar cajón de memoria de archivo`,hideDrawer:`Ocultar cajón`,showDrawer:`Mostrar cajón`,editorCharCount:`{{count}} caracteres`,editorContentLabel:`Contenido de la memoria`,editorKind:`Tipo`,editorScope:`Alcance`,editorLifecycleStatus:`Estado del ciclo de vida`,editorSupersedes:`Sustituye a`,editorContradicts:`Contradice`,filterByStatus:`Filtrar por estado`,filterByKind:`Filtrar por tipo`,graphHeading:`Mapa de relaciones`,graphHeadingFull:`Mapa de relaciones — {{id}}`,graphOpenFullscreen:`Abrir a pantalla completa`,projectKnowledge:`conocimiento del proyecto`,sageSubtitle:`Inspecciona, conecta, organiza y retira el contexto duradero usado entre sesiones de agentes.`,emptyBody:`Selecciona una memoria para inspeccionar sus metadatos y su mapa de relaciones, o captura conocimiento que los futuros agentes deban recuperar automáticamente.`,tabDeleted:`Eliminadas`,fileDrawerLabel:`Cajón de archivos`,selectFilePlaceholder:`— selecciona un archivo —`,memoryCountSummary:`{{shown}} de {{total}} memorias`,updatedSortLabel:`actualizado ↓`,searchBreakdownAria:`Desglose de búsqueda`,searchBreakdownTitle:`Búsqueda: {{query}}`,searchBreakdownDual:`doble canal`,searchBreakdownLexicalOnly:`solo léxico`,searchBreakdownLoading:`Ejecutando búsqueda de doble canal…`,searchBreakdownEmpty:`Sin coincidencias en ninguno de los canales.`,searchBreakdownSourceLabel:`Fuente: {{source}}`,tabAllMemories:`Todas las memorias`,tabAllMemoriesHint:`Inspeccionar, organizar, retirar`,tabAudience:`Con audiencia`,tabAudienceHint:`Guía enrutada a los agentes`,editorRelationshipsHint:`Referencia IDs de memoria exactos. Las relaciones se validan y las aristas del grafo las reconstruye SAGE.`,editorTaskTypes:`Tipos de tarea`,createAction:`Crear`,mutationTimeout:`{{verb}} agotado. Tu borrador sigue aquí.`,loadingSageContent:`Cargando contenido SAGE`,injectorActiveInContext:`Activo en el contexto`,injectorInjectionHistory:`Historial de inyecciones`,injectorContextTransitions:`Transiciones de contexto`,metaCreated:`Creada`,metaUpdated:`Actualizada`,metaLastAccessed:`Último acceso`,metaLastVerified:`Última verificación`,referencedUnavailable:`Memoria referenciada no disponible`,emptyFiltered:`Cambia los filtros o borra la consulta de búsqueda.`,emptyCapture:`Captura hechos duraderos, decisiones, convenciones y notas vinculadas a archivos para cada agente.`,memoryUnavailable:`La memoria no está disponible o se ha eliminado.`,staleConflicts:`obsoletas + conflictos`},je={enableLayer:`Habilitar esta capa de límite`,outsideScope:`Fuera de alcance`,askPermission:`Pedir permiso`,alwaysBlock:`Bloquear siempre`,allow:`Permitir`,allowSelectors:`Selectores permitidos`,denySelectors:`Selectores denegados`,crossPathSelectors:`La shell «Permitir» es opaca y puede cruzar selectores de ruta.`,removeLayer:`Eliminar capa`,taskInspector:`Inspector de tareas`,task:`Tarea`,dispatched:`Despachada`,collapseDetails:`Contraer detalles de la tarea`,taskBoundary:`Límite de tarea`,title:`Título`,managedStage:`Etapa gestionada`,status:`Estado`,priority:`Prioridad`,type:`Tipo`,labelsCommaSeparated:`Etiquetas (separadas por comas)`,dueDatePlaceholder:`Fecha de vencimiento (ISO o YYYY-MM-DD)`,estimatedHours:`Horas estimadas`,actualHours:`Horas reales`,selectBlockingTasks:`Seleccionar tareas bloqueantes…`,selectSequentialChain:`Agregar tareas a una cadena secuencial…`,enforceChainOrder:`Aplicar el orden de la cadena como dependencias`,assignmentReason:`Motivo de cambio / asignación (persistido en la actividad)`,managedLifecycle:`Transición de ciclo de vida gestionada`,kanbanAgentTransition:`Transición del Agente Kanban`,completedAction:`Acción completada / acción del revisor`,progressComment:`Comentario de progreso veraz (obligatorio)`,evidenceUrl:`URL del adjunto de evidencia`,source:`Origen`,taskId:`ID de tarea`,run:`Ejecutar`,column:`Columna`,primaryModelSource:`Origen del modelo principal`,selectProviderModel:`Seleccionar proveedor / modelo exacto…`,fallbackProfile:`Perfil de respaldo (el primer modelo es el principal)`,selectProfile:`Seleccionar perfil configurado…`,fallbackModels:`Modelos de respaldo`,addFallbackModel:`Agregar modelo de respaldo…`,role:`Rol`,selectRole:`Seleccionar un rol…`,assignSkills:`Asignar habilidades requeridas…`,restrictTools:`Restringir a herramientas específicas…`,agentNameOptional:`Nombre del agente (opcional)`,retryPolicy:`Política de reintentos`,maxAttempts:`Intentos máximos`,costCeilingUsd:`Techo de costo USD`,grantCapability:`Conceder una capacidad…`,targetBoard:`Tablero destino`,boardPresence:`Presencia en el tablero`,liveBoardUsers:`Usuarios activos en el tablero`,kanbanAgent:`Agente Kanban`,watchThisBoard:`Vigilar este tablero`,supervisorEngine:`Motor supervisor`,kanbanAgentModelSource:`Origen del modelo del Agente Kanban`,supervisorSkills:`Habilidades del supervisor`,forceLoadSkills:`Forzar carga de habilidades agénticas…`,extraFallbackModels:`Modelos de respaldo adicionales`,optionalFallbacks:`Respaldos opcionales ordenados…`,queueHealth:`Salud de la cola`,claimableTasks:`Tareas reclamables`,runningAssignments:`Asignaciones en ejecución`,inReview:`En revisión`,manuallyBlocked:`Bloqueadas manualmente`,failedTasks:`Tareas fallidas`,blockedByDeps:`Tareas listas/pendientes bloqueadas por dependencias`,expiredLeases:`Asignaciones con concesión expirada`,healthy:`saludable`,costCeilingSum:`Suma de costCeilingUsd para tareas en ejecución / en cola`,liveRunSteer:`Ejecución en vivo — dirígela desde aquí`,openLiveRun:`Abrir la vista de ejecución en vivo (SDD Hub)`,runAsLiveJob:`Ejecutar este tablero como un trabajo de agente en vivo:`,startAsGoal:`Iniciar como Objetivo`,startAsSdd:`Iniciar como SDD`,runControls:`Controles de ejecución`,workerModel:`Modelo del trabajador`,setModelForTask:`Establecer modelo para esta tarea…`,newWorkerName:`Nuevo nombre del trabajador`,duration:`Duración`,liveRun:`Ejecución en vivo`,lastResult:`Último resultado`,definitionOfDone:`Definición de Hecho`,failingChecks:`Verificaciones fallidas`,evidenceMissing:`Evidencia faltante (verificaciones de agente/consejo sin referencias de respaldo)`,needsDecomposition:`Necesita descomposición`,decompositionPending:`Propuestas de descomposición pendientes de aprobación`,noOutstanding:`No hay problemas de verificación o descomposición pendientes en este tablero.`,kanban:`Kanban`,newBoard:`Nuevo tablero`,createBoard:`Crear tablero`,deleteTask:`Eliminar tarea`,runFailed:`ejecución fallida`,splitPendingApproval:`división pendiente de aprobación`,newTask:`Nueva tarea`,addTask:`Agregar tarea`,duplicateBoard:`Duplicar tablero`,boardHistory:`Historial del tablero`,noHistory:`Sin historial aún`,confirmDelete:`¿Confirmar?`,confirmDeleteBoard:`Haz clic de nuevo para confirmar la eliminación del tablero`,deleteBoard:`Eliminar tablero`,boardBoundary:`Límite del tablero`,noBoardSelected:`No hay ningún tablero Kanban seleccionado.`,expandDetails:`Expandir detalles de la tarea`,elapsed:`Transcurrido`,assigned:`Asignado`,configuredAgentRoute:`la ruta de agente configurada`,subagent:`Subagente`,checkedAgo:`comprobado hace {{ago}}`,notChecked:`no comprobado`,auditInterval:`Intervalo de auditoría (segundos)`,statusReady:`listo`,statusRunning:`en ejecución`,statusReview:`en revisión`,statusBlocked:`bloqueado`,statusFailed:`fallido`,statusBlockedByDeps:`bloqueado por dependencias`,statusStale:`obsoleto`,runningCost:"~${{cost}} costo en ejecución",actionPause:`Pausar`,actionResume:`Reanudar`,actionRetryFailed:`Reintentar fallidos`,actionStop:`Detener`,actionReassign:`Reasignar`,actionRunNow:`Ejecutar ahora`,deleteTaskAria:`Eliminar tarea: {{title}}`,confirmDeleteTask:`Haz clic de nuevo para confirmar la eliminación de la tarea`,confirmDeleteTaskAria:`Confirmar eliminación: {{title}}`,moveTaskToColumn:`Mover {{title}} a la columna`,activityNoteTemplate:`{{action}} de WebUI a {{target}}.`},Me={heading:`Trabajos cron`,subtitle:`Tareas recurrentes programadas gestionadas por el plugin cron.`,statusDisabled:`Desactivado`,statusOverdue:`Vencido`,statusActive:`Activo`,jobCount_one:`{{count}} trabajo`,jobCount_other:`{{count}} trabajos`,enabledCount:`{{count}} activados`,overdueCount:`{{count}} vencidos`,totalRuns:`{{count}} ejecuciones en total`,maxConcurrent:`máx. {{count}} simultáneos`,emptyTitle:`No hay trabajos cron programados.`,emptyUse:`Usa`,emptyToAdd:`para añadir uno.`,thStatus:`Estado`,thName:`Nombre`,thInterval:`Intervalo`,thRuns:`Ejecuciones`,thNextRun:`Próxima ejecución`,thLastRun:`Última ejecución`,thAction:`Acción`,lastFiredAtTitle:`Última activación a las {{time}}`,footerUse:`Usa`,footerToAdd:`para añadir,`,footerToRemove:`para eliminar.`},Ne={refreshRosterData:`Actualizar datos del roster`,liveEmpty:`Los agentes aparecen aquí cuando se generan subagentes`,fleetInspector:`Inspector de flota`,openAgentsPanel:`Abrir panel de agentes`,toolCalls:`Llamadas a herramientas`,running:`En ejecución`,projectAgents:`Agentes del proyecto`,createOrCloneTitle:`Crear o clonar agente del proyecto`,createOrCloneHint:`Hereda cualquier agente del roster como plantilla y luego desarrolla una identidad, política de ejecución e historial aprendido independientes.`,cloneFromRole:`Clonar desde rol del roster`,cloneHint:`El prompt, las herramientas, las habilidades y los valores predeterminados se heredan. El aprendizaje y las ediciones posteriores permanecen aislados al nuevo agente.`,displayName:`Nombre para mostrar`,descriptionPlaceholder:`Gestiona los flujos de trabajo X, Y y Z de este proyecto y verifica sus resultados.`,creating:`Creando…`,noCustomizations:`Aún no hay personalizaciones`,selectAgentEmpty:`Selecciona un agente para editar las personalizaciones`,saving:`Guardando…`,saveFailed:`Error al guardar`,failed:`Fallido`,learningResumed:`Aprendizaje automático reanudado`,optimizationEmptyToast:`La optimización produjo un resultado vacío. Inténtalo de nuevo.`,noActiveModelToast:`No hay modelo activo en el servidor. Optimización enviada al agente de chat.`,learningsEmpty:`Las entradas de aprendizaje aparecen cuando los agentes capturan resultados`,allRosterAgents:`Todos los agentes del roster`,optimizing:`Optimizando…`,paused:`pausado`,selectLearningAgent:`Selecciona un agente para ver los detalles del aprendizaje`,learningOn:`Aprendizaje activado`,lastCapture:`Última captura`,lifetimeCaptures:`Capturas totales`,hitRate:`Tasa de acierto`,neverUsed:`Nunca usado`,learningsLimitExceeded:`Los datos aprendidos superan el límite flexible ({{bytes}}B / 8.192B). Optimiza para sintetizar las entradas sin procesar en un documento consolidado y reducir el volumen del contexto.`,newPending:`nuevo pendiente`,viewAction:`Ver`,applying:`Aplicando…`,searchPlaceholder:`Buscar agentes por nombre, rol o descripción…`,maxIterations:`Iteraciones máx.`,maxToolCalls:`Llamadas a herramientas máx.`,projectCustomizations:`Personalizaciones del proyecto`,learnedEntries:`entradas aprendidas`,teachFailed:`Error al enseñar`,selectRoleEmpty:`Selecciona un rol para inspeccionar o editar`,captureLearned:`Capturar lo aprendido`,teachThisAgent:`Enseñar a este agente`,teachPlaceholder:`Describe qué quieres que este agente haga mejor… p. ej., «Este agente siempre debe verificar las versiones en npm antes de recomendarlas»`,heading:`Plantilla de agentes`,headerSummary:`{{customized}} personalizados · {{entries}} entradas aprendidas`,tabLive:`Flota en vivo`,tabCatalog:`Catálogo de plantilla`,tabLearning:`Autoaprendizaje`,tabCustomize:`Personalización`,learning:`aprendiendo`,learningPaused:`Aprendizaje en pausa`,autoLearningPaused:`Aprendizaje automático en pausa`,toolsCount_one:`{{count}} herramienta`,toolsCount_other:`{{count}} herramientas`,maxItShort:`máx. {{value}} iter.`,customizedBadge:`Personalizado`,needsSummary:`⚠ Requiere resumen`,timeout:`Tiempo límite`,learnedEntriesCount_one:`{{count}} entrada aprendida`,learnedEntriesCount_other:`{{count}} entradas aprendidas`,sessionCapturesCount_one:`{{count}} captura de sesión`,sessionCapturesCount_other:`{{count}} capturas de sesión`,noAgentsMatch:`Ningún agente coincide con «{{query}}»`,footerRosterRoles_one:`rol de plantilla`,footerRosterRoles_other:`roles de plantilla`,footerCustomized:`personalizados`,footerTotalLearned_one:`entrada aprendida en total`,footerTotalLearned_other:`entradas aprendidas en total`,clone:`+ Clonar`,abc:`ABC`,abcGeneratedFromName:`abc (generado a partir del nombre)`,roleIdOptional:`ID de rol (opcional)`,purpose:`Propósito`,taskTypesCommaOrOnePer:`Tipos de tarea (separados por comas o uno por línea)`,cancel:`Cancelar`,selectAnAgentToEditCustomizations:`Selecciona un agente para editar las personalizaciones`,llmImprove:`Mejora con LLM`,reset:`Restablecer`,editIdentityMd:`Editar identity.md`,editLearnedMd:`Editar learned.md`,editConfigJson:`Editar config.json`,runtimePolicy:`Política de ejecución`,retry:`Reintentar`,noSelfLearningDataYet:`Aún no hay datos de autoaprendizaje`,review:`revisar →`,selectAnAgentToViewLearning:`Selecciona un agente para ver los detalles de aprendizaje`,entries:`Entradas`,size:`Tamaño`,optimizeLearnings:`Optimizar aprendizajes`,keep:`Conservar`,drop:`Descartar`,describeACommandPatternOrBehavior:`Describe un comando, patrón o comportamiento que este agente deba recordar.`,eGAlwaysUsePnpmForThisProject:`p. ej. Usa siempre pnpm en este proyecto`,teach:`Enseñar`,noActiveFleetAgents:`No hay agentes de flota activos`,clear:`Borrar`,agentsTotal:`agentes en total`,leader:`Líder`,iterations:`Iteraciones`,cost:`Coste`,context:`Contexto`,contextWindow:`Ventana de contexto`,error:`Error`,filterAll:`Todos ({{count}})`,filterRunning:`En ejecución ({{count}})`,filterDone:`Hecho ({{count}})`,filterFailed:`Fallidos ({{count}})`,optimizeAll:`Optimizar todo ({{count}})`,policyUpdateFailed:`Error al actualizar la política`,noRawEntries:`Aún no hay entradas sin procesar que optimizar.`,optimizedOk:`Optimizado. Conocimiento consolidado actualizado.`,emptySynthesis:`El modelo devolvió un resultado vacío. No se cambió nada; inténtalo de nuevo.`,consolidatedWithModel:`Aprendizajes consolidados con {{model}}.`,consolidatedPlain:`Aprendizajes consolidados.`,resetConfirm:`¿Restablecer todos los datos específicos del proyecto del agente «{{role}}»?`,loadCustomizationFailed:`No se pudo cargar la personalización`,loadRuntimePolicyFailed:`No se pudo cargar la política de ejecución`,runtimePolicySaveFailed:`Error al guardar la política de ejecución`,llmImprovementFailed:`Falló la mejora con LLM`,agentCreationFailed:`Error al crear el agente`,noActiveModelMsg:`No hay ningún modelo activo en el servidor: la optimización se envió al agente de chat.`,optimizationFailed:`Error en la optimización`,bulkOptimizationFailed:`Error en la optimización masiva`,taskTypesPlaceholder:`Flujo X
5
+ Triggers: el usuario dice "palabra clave", "otra".`,saveIn:`Guardar en:`,createBtn:`Crear Habilidad`,createdMsg:`Creada: {{name}}`,createFailed:`Creación fallida`},Se={noEvents:`Sin eventos.`},Ce={pickHint:`Elige un kit — el agente se ceñirá a él.`,gallery:`Galería`,galleryTitle:`Abrir galería de vista previa en vivo`,stackTitle:`Stack objetivo`,loading:`Cargando kits…`,notFound:`No se encontraron kits de diseño.`,bestFor:`Ideal para:`,light:`Claro`,dark:`Oscuro`,tune:`Ajustar`,font:`Fuente`,set:`Aplicar`,spaceGrotesk:`Space Grotesk…`,aaHeading:`Aa Encabezado`,theQuickBrownFoxJumpsOver:`El veloz murciélago hindú comía feliz cardillo y kiwi.`,primary:`Principal`,ghost:`Fantasma`,badge:`Insignia`,inputField:`Campo de entrada…`,radius:`Radio`,density:`Densidad`,motion:`Movimiento`},we={detached:`(separado)`,count_one:`{{count}} worktree`,count_other:`{{count}} worktrees`,baseSuffix:` · base {{base}}`,baseLabel:`base`,cleanOrphans:`Limpiar huérfanos`,cleanOrphansTitle:`Eliminar todos los worktrees huérfanos`,liveBusyTitle:`Un run está activo — deténlo primero`,rescanTitle:`Re-escanear`,removed_one:`Eliminado {{count}} worktree.`,removed_other:`Eliminados {{count}} worktrees.`,failed:`Falló`,mergedIntoBase:`{{branch}} fusionado en la base.`,conflictMerge:`Conflicto al fusionar {{branch}}: {{files}}`,seeGit:`ver git`,mergeFailed:`Fusión fallida: {{reason}}`,unknownReason:`desconocido`,mergeConfirmTitle:`¿Fusionar {{branch}} en {{base}}?`,mergeConfirmMsg:`Squash-fusiona este branch al branch base. Se cancela limpiamente si hay conflicto.`,mergeAction:`Fusionar`,removeConfirmTitle:`¿Eliminar {{branch}}?`,removeConfirmMsg:`Elimina forzosamente el checkout del worktree y borra su branch. El trabajo sin fusionar se descarta.`,empty:`Sin worktrees.`,emptyHint:`Los runs SDD / Goal crean worktrees aislados aquí. Los huérfanos de runs caídos también aparecen.`,actOpenTerm:`Abrir en terminal`,actOpenFolder:`Abrir carpeta`,actViewChanges:`Ver cambios`,actMerge:`Fusionar a la base`,actRemove:`Eliminar / descartar`,live:`activo`,noUncommitted:`Sin cambios sin confirmar`,commitsAhead_one:`{{count}} commit adelante`,commitsAhead_other:`{{count}} commits adelante`,more:`…{{count}} más`},Te={heading:`Mapa de Oficina`,headingHint:`Visualiza tu flota como un plano de oficina con el estado de los agentes en vivo.`,statAgents:`Agentes`,statMail:`Correo`,unreadSuffix:` sin leer`,sectionView:`Vista`,sectionDisplay:`Visualización`,sectionBackground:`Fondo`,sectionRecent:`Actividad Reciente`,eventsTrackedSuffix:` eventos rastreados`,recentHint:`Envíos de correo, spawns de agentes y cambios de estado aparecen aquí.`,sectionShortcuts:`Atajos`,sectionLegend:`Leyenda`,hudLabel:`HUD`,hudDesc:`Mostrar overlay de estadísticas de sesión en tiempo real`,hudToggle:`Activar HUD`,minimapLabel:`Minimapa`,minimapDesc:`Mostrar el minimapa de resumen`,minimapToggle:`Activar minimapa`,controlsLabel:`Controles`,controlsDesc:`Mostrar controles de zoom y ajuste`,controlsToggle:`Activar controles`,animateLabel:`Animar aristas`,animateDesc:`Animar el flujo en conexiones activas`,animateToggle:`Activar animación de aristas`,legendLabel:`Mostrar leyenda`,legendDesc:`Mostrar leyenda de estado y conexión`,legendToggle:`Activar leyenda`,feedLabel:`Feed en vivo`,feedDesc:`Banda inferior de actividad reciente entre procesos`,feedToggle:`Activar feed en vivo`,fitView:`Ajustar`,zoomIn:`Acercar`,zoomOut:`Alejar`,resetZoom:`Reiniciar zoom`,legendActive:`Activo (en ejecución)`,legendIdle:`Inactivo`,legendError:`Error`,legendOffline:`Desconectado`,bg:{dots:`Puntos`,lines:`Líneas`,cross:`Cruz`,none:`Ninguno`}},Ee={liveProjectOffice:`Oficina del proyecto en vivo`,agents:`agentes`,working:`trabajando`,toolCalls:`llamadas de herramientas`,office:`Oficina`,topology:`Topología`,officeDescription:`Mesas y trabajo de agentes en vivo`,topologyDescription:`Clientes, agentes y conexiones`,team:`Equipo`,liveDesk:`Escritorio en vivo y trabajo entrante`,lastActions:`Trabajos recientes`,leadAgent:`Agente principal`,agent:`Agente`,callsCount:`{{count}} llamadas`,recent:`Recientes`,noCalls:`Aún no hay llamadas completadas`,telemetryReconnect:`Reconecta este terminal para iniciar el historial de herramientas`,thinking:`Pensando`,waiting:`Esperando trabajo`,preparing:`Preparando la siguiente acción…`,deskReady:`El escritorio está listo`,toolCall:`Llamada de herramienta`,execution:`Ejecución`,started:`Inicio`,duration:`Duración`,session:`Sesión`,target:`Objetivo`,resultSize:`Tamaño del resultado`,lines:`líneas`,bytes:`bytes`,tokens:`tokens`,input:`Entrada`,outputPreview:`Vista previa de salida`,readyTitle:`La oficina está lista`,readyBody:`Los agentes ocuparán un escritorio en cuanto se unan a este proyecto.`,liveEvent:`flujo de eventos en vivo`,connectedSessions_one:`{{count}} sesión conectada`,connectedSessions_other:`{{count}} sesiones conectadas`,detailHint:`haz clic en una acción para ver la entrada y el resultado exactos`,officeBriefing:`Resumen de la oficina`,leaderPrompt:`Último prompt del líder`,activeInstruction:`Instrucción activa`,telemetryWaiting:`Reconecta este terminal para recibir instrucciones en vivo`,syncWaiting:`esperando sincronización`,todoTelemetryWaiting:`Reconecta este terminal para recibir la lista de tareas en vivo`,taskNotReported:`El agente trabaja, pero no informó una descripción de la tarea`,noPrompt:`Aún no se recibió ningún prompt en esta sesión`,activeTodos:`Tareas activas`,todoProgress:`{{done}}/{{total}} completadas`,allTodosDone:`Todas las tareas completadas`,noActiveTodos:`Aún no hay tareas activas`,moreTodos:`+{{count}} más`,currentTask:`Tarea actual`,task:`Tarea`,promptReceived:`Recibido`,todos:`Tareas`,todoStatus:{pending:`Pendiente`,in_progress:`En curso`,completed:`Completada`},breakRoom:`Sala de descanso`,onBreak:`{{count}} en descanso`,desksEmpty:`Todos están en descanso — los escritorios están listos para la próxima tarea`,files:`ARCHIVOS`,read:`LECTURA`,write:`ESCRITURA`,edit:`EDICIÓN`,term:`TERM`,live:`EN VIVO`,uniqueFilesTouched:`Archivos únicos tocados`,fileReads:`Lecturas de archivos`,filesWritten:`Archivos escritos`,filesEdited:`Archivos editados`,linesAddedAndRemoved:`Líneas añadidas y eliminadas`,terminalCommands:`Comandos de terminal`,incomingAndOutgoingMail:`Correo entrante y saliente`,sessionActivityTotals:`Totales de actividad de la sesión`,closeToolDetails:`Cerrar detalles de la herramienta`,closeDetails:`Cerrar detalles`,closeMailDetails:`Cerrar detalles del correo`,closeTaskDetails:`Cerrar detalles de la tarea`,closeOfficeBriefing:`Cerrar el resumen de la oficina`,priority:`Prioridad`,route:`Ruta`},De={injectedHeading:`Memoria SAGE inyectada`,memoriesLabel_one:`{{count}} memoria`,memoriesLabel_other:`{{count}} memorias`},Oe={tabProject:`Proyecto SDD`,tabBoard:`Tablero SDD en vivo`,tabSpecs:`Especificaciones`},ke={label:`Panel lateral`},Ae={deleteTitle:`¿Eliminar esta memoria?`,backToList:`Volver a la lista de memorias`,copyId:`Copiar ID de memoria`,deletedMemory:`Memoria eliminada`,anchorCursorHint:`El rango de líneas del cursor coincide con el ancla de esta memoria`,statusDeleted:`eliminada`,statusSuperseded:`reemplazada`,restoreTitle:`Restaurar esta memoria al estado activo`,supersededJumpTitle:`Esta versión está reemplazada — saltar a la versión activa`,acceptSuggestionTitle:`Aceptar la sugerencia de eliminación de higiene — la memoria será olvidada`,rejectSuggestionTitle:`Rechazar la sugerencia — la memoria queda tal cual y puede volver a sugerirse`,updateTitle:`Actualizar el contenido de la memoria — el versionado crea un nuevo registro activo`,promoteTitle:"Promover a `permanent` — la higiene nunca volverá a mostrarlo",openRecordTitle:`Abrir el registro completo en MemoryManager`,fileDrawerAria:`Cajón de memoria de archivo`,requeryTitle:`Volver a consultar este archivo`,closeDrawerAria:`Cerrar cajón`,closeDrawerTitle:`Cerrar cajón de memoria`,showRecoverable:`Mostrar recuperables (eliminadas)`,cursorBoostTitle:`Impulso de cursor`,fileScopedTitle:`Alcance de archivo`,mentionedInTitle:`Mencionado en`,editorKnowledge:`Conocimiento`,editorContentPlaceholder:`Ejemplo: el estado de la WebUI pertenece a los stores de Zustand; los mensajes del servidor actualizan esos stores a través de manejadores WebSocket singleton.`,editorImportance:`Importancia`,editorConfidence:`Confianza`,editorFreshness:`Frescura`,editorAnchors:`Anclas`,editorSymbolPlaceholder:`Nombre del símbolo`,editorRelationships:`Relaciones`,searchAria:`Buscar memorias`,searchPlaceholder:`Buscar contenido, IDs, etiquetas, anclas…`,clearSearchAria:`Borrar búsqueda`,audienceFilterAria:`Filtrar solo ámbito de audiencia`,audienceFilterTitle:`Mostrar solo memorias de ámbito de audiencia`,clearFiltersAria:`Borrar todos los filtros`,clearFiltersTitle:`Borrar todos los filtros`,allStatuses:`Todos los estados`,allKinds:`Todos los tipos`,tagsLabel:`Etiquetas`,popularTags:`Etiquetas populares`,graphAria:`Grafo de relaciones de memoria`,graphFullscreenAria:`Abrir grafo a pantalla completa`,clearTracesTitle:`Borrar todas las trazas`,closePanelTitle:`Cerrar panel`,traceMatched:`coincidente`,traceInjected:`inyectado`,traceFiltered:`filtrado`,traceActive:`activo`,traceExited:`salido`,traceScore:`puntuación`,traceError:`error`,lifecycleAria:`Registro en vivo del ciclo de vida de memoria`,listAria:`Memorias`,emptyTitle:`El contexto a largo plazo de tu proyecto`,emptyVerifiedAnchors:`Anclas verificadas`,emptyTypedRelations:`Relaciones tipadas`,emptyAgentRecall:`Recuerdo del agente`,lensesAria:`Lentes de memoria SAGE`,loadingSage:`Cargando SAGE`,loadingAudience:`Cargando memorias de audiencia`,loadingVectorMemory:`Cargando memoria vectorial`,storeUnavailable:`Almacén de memoria no disponible`,backToChat:`Volver al chat`,sageHeading:`SAGE`,refreshAria:`Actualizar memorias`,tabMemories:`Memorias`,tabActive:`Activas`,tabReview:`Revisión`,tabNeedsReview:`Requiere revisión`,reviewLoading:`Cargando cola de revisión…`,reviewLoadTimeout:`La cola de revisión no respondió a tiempo.`,reviewEmptyTitle:`No hay revisiones pendientes`,reviewEmptyHint:`Las propuestas de higiene y triage aparecen aquí para aceptar/rechazar.`,reviewPendingCount_one:`{{count}} revisión pendiente`,reviewPendingCount_other:`{{count}} revisiones pendientes`,reviewSelectAll:`Seleccionar todo`,reviewClearSelection:`Borrar selección`,reviewSelectOne:`Seleccionar elemento de revisión`,reviewBulkAccept:`Aceptar selección`,reviewBulkKeep:`Mantener selección`,tabGraphEdges:`Aristas del grafo`,libraryAria:`Biblioteca de memorias`,viewAria:`Vista de memorias`,detailAria:`Detalle de memoria`,fileForDrawerAria:`Archivo para cajón de memoria`,cursorLabel:`cursor`,reviewLabel:`revisión`,hygieneReviewTitle:`Revisión de higiene: {{reason}} ({{days}} d)`,updatedSuffix:`actualizada {{date}}`,actionRecover:`Recuperar`,actionGoToActive:`Ir a la versión activa`,actionAcceptDeletion:`Aceptar eliminación`,actionKeep:`Conservar`,actionUpdate:`Actualizar`,actionMarkPermanent:`Marcar como permanente`,actionShowFull:`Mostrar todo`,itemLabel:`memorias`,noFile:`(sin archivo)`,memoriesCount_one:`{{count}} memoria`,memoriesCount_other:`{{count}} memorias`,pendingReviewCount_one:`{{count}} revisión pendiente`,pendingReviewCount_other:`{{count}} revisiones pendientes`,supersededCount:`{{count}} reemplazada(s)`,linesRange:`líneas {{start}}–{{end}}`,emptyOpenFile:`Abre un archivo para ver sus memorias.`,loadingMemories:`Cargando memorias…`,errorPrefix:`Error: {{message}}`,emptyNoMemories:`Aún no hay memorias adjuntas a {{file}}.`,pendingAccepting:`aceptando…`,pendingKeeping:`conservando…`,pendingUpdating:`actualizando…`,pendingMarking:`marcando…`,pendingRecovering:`recuperando…`,deletedNeverPolicy:`Este registro es solo de auditoría y conlleva una prohibición absoluta: nunca puede entrar en el contexto del LLM.`,deletedEligiblePolicy:`El registro está inactivo y no se puede editar, pero sigue siendo elegible como evidencia histórica cuando la recuperación lo encuentra relevante.`,deletingLabel:`Eliminando…`,actionDeleteMemory:`Eliminar memoria`,copiedNotice:`ID de memoria copiado.`,revisionSuffix:`revisión {{n}}`,memoryRelationships:`Relaciones de memoria`,captureMemory:`Capturar una memoria`,editMemory:`Editar memoria`,editorCreateHint:`Añade conocimiento duradero con metadatos de recuperación.`,editorEditHint:`Actualiza el contenido sin perder la procedencia.`,createMemory:`Crear memoria`,saveChanges:`Guardar cambios`,addAnchor:`Añadir ancla`,noAnchors:`Aún no hay anclas — añade una para mejorar la precisión de recuperación`,loadingGraph:`cargando grafo real…`,graphStats:`{{nodes}} nodos · {{edges}} aristas`,lifecycleHeading:`Ciclo de vida de la memoria`,statusWaiting:`esperando`,statusLive:`en vivo · {{count}}/100`,noMatching:`No hay memorias coincidentes`,buildGraph:`Construye tu grafo de memorias`,clearFilters:`Borrar filtros`,createFirst:`Crear la primera memoria`,captureButton:`Capturar memoria`,memoryCaptured:`Memoria capturada.`,memoryUpdated:`Memoria actualizada.`,liveStore:`almacén en vivo`,reconnecting:`reconectando`,newMemory:`Nueva memoria`,hideFileDrawer:`Ocultar cajón de memoria de archivo`,showFileDrawer:`Mostrar cajón de memoria de archivo`,hideDrawer:`Ocultar cajón`,showDrawer:`Mostrar cajón`,editorCharCount:`{{count}} caracteres`,editorContentLabel:`Contenido de la memoria`,editorKind:`Tipo`,editorScope:`Alcance`,editorLifecycleStatus:`Estado del ciclo de vida`,editorSupersedes:`Sustituye a`,editorContradicts:`Contradice`,filterByStatus:`Filtrar por estado`,filterByKind:`Filtrar por tipo`,graphHeading:`Mapa de relaciones`,graphHeadingFull:`Mapa de relaciones — {{id}}`,graphOpenFullscreen:`Abrir a pantalla completa`,projectKnowledge:`conocimiento del proyecto`,sageSubtitle:`Inspecciona, conecta, organiza y retira el contexto duradero usado entre sesiones de agentes.`,emptyBody:`Selecciona una memoria para inspeccionar sus metadatos y su mapa de relaciones, o captura conocimiento que los futuros agentes deban recuperar automáticamente.`,tabDeleted:`Eliminadas`,fileDrawerLabel:`Cajón de archivos`,selectFilePlaceholder:`— selecciona un archivo —`,memoryCountSummary:`{{shown}} de {{total}} memorias`,updatedSortLabel:`actualizado ↓`,searchBreakdownAria:`Desglose de búsqueda`,searchBreakdownTitle:`Búsqueda: {{query}}`,searchBreakdownDual:`doble canal`,searchBreakdownLexicalOnly:`solo léxico`,searchBreakdownLoading:`Ejecutando búsqueda de doble canal…`,searchBreakdownEmpty:`Sin coincidencias en ninguno de los canales.`,searchBreakdownSourceLabel:`Fuente: {{source}}`,tabAllMemories:`Todas las memorias`,tabAllMemoriesHint:`Inspeccionar, organizar, retirar`,tabAudience:`Con audiencia`,tabAudienceHint:`Guía enrutada a los agentes`,tabVectorMemory:`Memoria vectorial`,tabVectorMemoryHint:`Almacén semántico de embeddings`,editorRelationshipsHint:`Referencia IDs de memoria exactos. Las relaciones se validan y las aristas del grafo las reconstruye SAGE.`,editorTaskTypes:`Tipos de tarea`,createAction:`Crear`,mutationTimeout:`{{verb}} agotado. Tu borrador sigue aquí.`,loadingSageContent:`Cargando contenido SAGE`,injectorActiveInContext:`Activo en el contexto`,injectorInjectionHistory:`Historial de inyecciones`,injectorContextTransitions:`Transiciones de contexto`,metaCreated:`Creada`,metaUpdated:`Actualizada`,metaLastAccessed:`Último acceso`,metaLastVerified:`Última verificación`,referencedUnavailable:`Memoria referenciada no disponible`,emptyFiltered:`Cambia los filtros o borra la consulta de búsqueda.`,emptyCapture:`Captura hechos duraderos, decisiones, convenciones y notas vinculadas a archivos para cada agente.`,memoryUnavailable:`La memoria no está disponible o se ha eliminado.`,staleConflicts:`obsoletas + conflictos`},je={enableLayer:`Habilitar esta capa de límite`,outsideScope:`Fuera de alcance`,askPermission:`Pedir permiso`,alwaysBlock:`Bloquear siempre`,allow:`Permitir`,allowSelectors:`Selectores permitidos`,denySelectors:`Selectores denegados`,crossPathSelectors:`La shell «Permitir» es opaca y puede cruzar selectores de ruta.`,removeLayer:`Eliminar capa`,taskInspector:`Inspector de tareas`,task:`Tarea`,dispatched:`Despachada`,collapseDetails:`Contraer detalles de la tarea`,taskBoundary:`Límite de tarea`,title:`Título`,managedStage:`Etapa gestionada`,status:`Estado`,priority:`Prioridad`,type:`Tipo`,labelsCommaSeparated:`Etiquetas (separadas por comas)`,dueDatePlaceholder:`Fecha de vencimiento (ISO o YYYY-MM-DD)`,estimatedHours:`Horas estimadas`,actualHours:`Horas reales`,selectBlockingTasks:`Seleccionar tareas bloqueantes…`,selectSequentialChain:`Agregar tareas a una cadena secuencial…`,enforceChainOrder:`Aplicar el orden de la cadena como dependencias`,assignmentReason:`Motivo de cambio / asignación (persistido en la actividad)`,managedLifecycle:`Transición de ciclo de vida gestionada`,kanbanAgentTransition:`Transición del Agente Kanban`,completedAction:`Acción completada / acción del revisor`,progressComment:`Comentario de progreso veraz (obligatorio)`,evidenceUrl:`URL del adjunto de evidencia`,source:`Origen`,taskId:`ID de tarea`,run:`Ejecutar`,column:`Columna`,primaryModelSource:`Origen del modelo principal`,selectProviderModel:`Seleccionar proveedor / modelo exacto…`,fallbackProfile:`Perfil de respaldo (el primer modelo es el principal)`,selectProfile:`Seleccionar perfil configurado…`,fallbackModels:`Modelos de respaldo`,addFallbackModel:`Agregar modelo de respaldo…`,role:`Rol`,selectRole:`Seleccionar un rol…`,assignSkills:`Asignar habilidades requeridas…`,restrictTools:`Restringir a herramientas específicas…`,agentNameOptional:`Nombre del agente (opcional)`,retryPolicy:`Política de reintentos`,maxAttempts:`Intentos máximos`,costCeilingUsd:`Techo de costo USD`,grantCapability:`Conceder una capacidad…`,targetBoard:`Tablero destino`,boardPresence:`Presencia en el tablero`,liveBoardUsers:`Usuarios activos en el tablero`,kanbanAgent:`Agente Kanban`,watchThisBoard:`Vigilar este tablero`,supervisorEngine:`Motor supervisor`,kanbanAgentModelSource:`Origen del modelo del Agente Kanban`,supervisorSkills:`Habilidades del supervisor`,forceLoadSkills:`Forzar carga de habilidades agénticas…`,extraFallbackModels:`Modelos de respaldo adicionales`,optionalFallbacks:`Respaldos opcionales ordenados…`,queueHealth:`Salud de la cola`,claimableTasks:`Tareas reclamables`,runningAssignments:`Asignaciones en ejecución`,inReview:`En revisión`,manuallyBlocked:`Bloqueadas manualmente`,failedTasks:`Tareas fallidas`,blockedByDeps:`Tareas listas/pendientes bloqueadas por dependencias`,expiredLeases:`Asignaciones con concesión expirada`,healthy:`saludable`,costCeilingSum:`Suma de costCeilingUsd para tareas en ejecución / en cola`,liveRunSteer:`Ejecución en vivo — dirígela desde aquí`,openLiveRun:`Abrir la vista de ejecución en vivo (SDD Hub)`,runAsLiveJob:`Ejecutar este tablero como un trabajo de agente en vivo:`,startAsGoal:`Iniciar como Objetivo`,startAsSdd:`Iniciar como SDD`,runControls:`Controles de ejecución`,workerModel:`Modelo del trabajador`,setModelForTask:`Establecer modelo para esta tarea…`,newWorkerName:`Nuevo nombre del trabajador`,duration:`Duración`,liveRun:`Ejecución en vivo`,lastResult:`Último resultado`,definitionOfDone:`Definición de Hecho`,failingChecks:`Verificaciones fallidas`,evidenceMissing:`Evidencia faltante (verificaciones de agente/consejo sin referencias de respaldo)`,needsDecomposition:`Necesita descomposición`,decompositionPending:`Propuestas de descomposición pendientes de aprobación`,noOutstanding:`No hay problemas de verificación o descomposición pendientes en este tablero.`,kanban:`Kanban`,newBoard:`Nuevo tablero`,createBoard:`Crear tablero`,deleteTask:`Eliminar tarea`,runFailed:`ejecución fallida`,splitPendingApproval:`división pendiente de aprobación`,newTask:`Nueva tarea`,addTask:`Agregar tarea`,duplicateBoard:`Duplicar tablero`,boardHistory:`Historial del tablero`,noHistory:`Sin historial aún`,confirmDelete:`¿Confirmar?`,confirmDeleteBoard:`Haz clic de nuevo para confirmar la eliminación del tablero`,deleteBoard:`Eliminar tablero`,boardBoundary:`Límite del tablero`,noBoardSelected:`No hay ningún tablero Kanban seleccionado.`,expandDetails:`Expandir detalles de la tarea`,elapsed:`Transcurrido`,assigned:`Asignado`,configuredAgentRoute:`la ruta de agente configurada`,subagent:`Subagente`,checkedAgo:`comprobado hace {{ago}}`,notChecked:`no comprobado`,auditInterval:`Intervalo de auditoría (segundos)`,statusReady:`listo`,statusRunning:`en ejecución`,statusReview:`en revisión`,statusBlocked:`bloqueado`,statusFailed:`fallido`,statusBlockedByDeps:`bloqueado por dependencias`,statusStale:`obsoleto`,runningCost:"~${{cost}} costo en ejecución",actionPause:`Pausar`,actionResume:`Reanudar`,actionRetryFailed:`Reintentar fallidos`,actionStop:`Detener`,actionReassign:`Reasignar`,actionRunNow:`Ejecutar ahora`,deleteTaskAria:`Eliminar tarea: {{title}}`,confirmDeleteTask:`Haz clic de nuevo para confirmar la eliminación de la tarea`,confirmDeleteTaskAria:`Confirmar eliminación: {{title}}`,moveTaskToColumn:`Mover {{title}} a la columna`,activityNoteTemplate:`{{action}} de WebUI a {{target}}.`},Me={heading:`Trabajos cron`,subtitle:`Tareas recurrentes programadas gestionadas por el plugin cron.`,statusDisabled:`Desactivado`,statusOverdue:`Vencido`,statusActive:`Activo`,jobCount_one:`{{count}} trabajo`,jobCount_other:`{{count}} trabajos`,enabledCount:`{{count}} activados`,overdueCount:`{{count}} vencidos`,totalRuns:`{{count}} ejecuciones en total`,maxConcurrent:`máx. {{count}} simultáneos`,emptyTitle:`No hay trabajos cron programados.`,emptyUse:`Usa`,emptyToAdd:`para añadir uno.`,thStatus:`Estado`,thName:`Nombre`,thInterval:`Intervalo`,thRuns:`Ejecuciones`,thNextRun:`Próxima ejecución`,thLastRun:`Última ejecución`,thAction:`Acción`,lastFiredAtTitle:`Última activación a las {{time}}`,footerUse:`Usa`,footerToAdd:`para añadir,`,footerToRemove:`para eliminar.`},Ne={refreshRosterData:`Actualizar datos del roster`,liveEmpty:`Los agentes aparecen aquí cuando se generan subagentes`,fleetInspector:`Inspector de flota`,openAgentsPanel:`Abrir panel de agentes`,toolCalls:`Llamadas a herramientas`,running:`En ejecución`,projectAgents:`Agentes del proyecto`,createOrCloneTitle:`Crear o clonar agente del proyecto`,createOrCloneHint:`Hereda cualquier agente del roster como plantilla y luego desarrolla una identidad, política de ejecución e historial aprendido independientes.`,cloneFromRole:`Clonar desde rol del roster`,cloneHint:`El prompt, las herramientas, las habilidades y los valores predeterminados se heredan. El aprendizaje y las ediciones posteriores permanecen aislados al nuevo agente.`,displayName:`Nombre para mostrar`,descriptionPlaceholder:`Gestiona los flujos de trabajo X, Y y Z de este proyecto y verifica sus resultados.`,creating:`Creando…`,noCustomizations:`Aún no hay personalizaciones`,selectAgentEmpty:`Selecciona un agente para editar las personalizaciones`,saving:`Guardando…`,saveFailed:`Error al guardar`,failed:`Fallido`,learningResumed:`Aprendizaje automático reanudado`,optimizationEmptyToast:`La optimización produjo un resultado vacío. Inténtalo de nuevo.`,noActiveModelToast:`No hay modelo activo en el servidor. Optimización enviada al agente de chat.`,learningsEmpty:`Las entradas de aprendizaje aparecen cuando los agentes capturan resultados`,allRosterAgents:`Todos los agentes del roster`,optimizing:`Optimizando…`,paused:`pausado`,selectLearningAgent:`Selecciona un agente para ver los detalles del aprendizaje`,learningOn:`Aprendizaje activado`,lastCapture:`Última captura`,lifetimeCaptures:`Capturas totales`,hitRate:`Tasa de acierto`,neverUsed:`Nunca usado`,learningsLimitExceeded:`Los datos aprendidos superan el límite flexible ({{bytes}}B / 8.192B). Optimiza para sintetizar las entradas sin procesar en un documento consolidado y reducir el volumen del contexto.`,newPending:`nuevo pendiente`,viewAction:`Ver`,applying:`Aplicando…`,searchPlaceholder:`Buscar agentes por nombre, rol o descripción…`,maxIterations:`Iteraciones máx.`,maxToolCalls:`Llamadas a herramientas máx.`,projectCustomizations:`Personalizaciones del proyecto`,learnedEntries:`entradas aprendidas`,teachFailed:`Error al enseñar`,selectRoleEmpty:`Selecciona un rol para inspeccionar o editar`,captureLearned:`Capturar lo aprendido`,teachThisAgent:`Enseñar a este agente`,teachPlaceholder:`Describe qué quieres que este agente haga mejor… p. ej., «Este agente siempre debe verificar las versiones en npm antes de recomendarlas»`,heading:`Plantilla de agentes`,headerSummary:`{{customized}} personalizados · {{entries}} entradas aprendidas`,tabLive:`Flota en vivo`,tabCatalog:`Catálogo de plantilla`,tabLearning:`Autoaprendizaje`,tabCustomize:`Personalización`,learning:`aprendiendo`,learningPaused:`Aprendizaje en pausa`,autoLearningPaused:`Aprendizaje automático en pausa`,toolsCount_one:`{{count}} herramienta`,toolsCount_other:`{{count}} herramientas`,maxItShort:`máx. {{value}} iter.`,customizedBadge:`Personalizado`,needsSummary:`⚠ Requiere resumen`,timeout:`Tiempo límite`,learnedEntriesCount_one:`{{count}} entrada aprendida`,learnedEntriesCount_other:`{{count}} entradas aprendidas`,sessionCapturesCount_one:`{{count}} captura de sesión`,sessionCapturesCount_other:`{{count}} capturas de sesión`,noAgentsMatch:`Ningún agente coincide con «{{query}}»`,footerRosterRoles_one:`rol de plantilla`,footerRosterRoles_other:`roles de plantilla`,footerCustomized:`personalizados`,footerTotalLearned_one:`entrada aprendida en total`,footerTotalLearned_other:`entradas aprendidas en total`,clone:`+ Clonar`,abc:`ABC`,abcGeneratedFromName:`abc (generado a partir del nombre)`,roleIdOptional:`ID de rol (opcional)`,purpose:`Propósito`,taskTypesCommaOrOnePer:`Tipos de tarea (separados por comas o uno por línea)`,cancel:`Cancelar`,selectAnAgentToEditCustomizations:`Selecciona un agente para editar las personalizaciones`,llmImprove:`Mejora con LLM`,reset:`Restablecer`,editIdentityMd:`Editar identity.md`,editLearnedMd:`Editar learned.md`,editConfigJson:`Editar config.json`,runtimePolicy:`Política de ejecución`,retry:`Reintentar`,noSelfLearningDataYet:`Aún no hay datos de autoaprendizaje`,review:`revisar →`,selectAnAgentToViewLearning:`Selecciona un agente para ver los detalles de aprendizaje`,entries:`Entradas`,size:`Tamaño`,optimizeLearnings:`Optimizar aprendizajes`,keep:`Conservar`,drop:`Descartar`,describeACommandPatternOrBehavior:`Describe un comando, patrón o comportamiento que este agente deba recordar.`,eGAlwaysUsePnpmForThisProject:`p. ej. Usa siempre pnpm en este proyecto`,teach:`Enseñar`,noActiveFleetAgents:`No hay agentes de flota activos`,clear:`Borrar`,agentsTotal:`agentes en total`,leader:`Líder`,iterations:`Iteraciones`,cost:`Coste`,context:`Contexto`,contextWindow:`Ventana de contexto`,error:`Error`,filterAll:`Todos ({{count}})`,filterRunning:`En ejecución ({{count}})`,filterDone:`Hecho ({{count}})`,filterFailed:`Fallidos ({{count}})`,optimizeAll:`Optimizar todo ({{count}})`,policyUpdateFailed:`Error al actualizar la política`,noRawEntries:`Aún no hay entradas sin procesar que optimizar.`,optimizedOk:`Optimizado. Conocimiento consolidado actualizado.`,emptySynthesis:`El modelo devolvió un resultado vacío. No se cambió nada; inténtalo de nuevo.`,consolidatedWithModel:`Aprendizajes consolidados con {{model}}.`,consolidatedPlain:`Aprendizajes consolidados.`,resetConfirm:`¿Restablecer todos los datos específicos del proyecto del agente «{{role}}»?`,loadCustomizationFailed:`No se pudo cargar la personalización`,loadRuntimePolicyFailed:`No se pudo cargar la política de ejecución`,runtimePolicySaveFailed:`Error al guardar la política de ejecución`,llmImprovementFailed:`Falló la mejora con LLM`,agentCreationFailed:`Error al crear el agente`,noActiveModelMsg:`No hay ningún modelo activo en el servidor: la optimización se envió al agente de chat.`,optimizationFailed:`Error en la optimización`,bulkOptimizationFailed:`Error en la optimización masiva`,taskTypesPlaceholder:`Flujo X
6
6
  Análisis Y
7
7
  Verificación Z`},Pe={generic:{name:`Agente de proyecto genérico`,summary:`Plantilla flexible que puede clonarse en roles de proyecto con aprendizaje independiente.`},"audit-log":{name:`Registro de auditoría`,summary:`Analiza registros de sesión, flujos de eventos y trazas del sistema.`},"bug-hunter":{name:`Cazador de errores`,summary:`Analiza el código en busca de errores, code smells y antipatrones.`},"refactor-planner":{name:`Planificador de refactorización`,summary:`Analiza la estructura del código y genera planes de refactorización por fases.`},"security-scanner":{name:`Escáner de seguridad`,summary:`Analiza código, configuraciones y dependencias en busca de problemas de seguridad.`},critic:{name:`Crítico`,summary:`Evalúa decisiones, planes e implementaciones.`},"shadow-agent":{name:`Agente sombra`,summary:`Agente de monitorización en segundo plano que vigila el estado de la flota.`},executor:{name:`Ejecutor`,summary:`Ejecutor de tareas de propósito general para trabajo delegado.`},chimera:{name:`Chimera`,summary:`Revisión de calidad del código de los archivos modificados tras la sesión.`},researcher:{name:`Investigador`,summary:`Especialista en investigación web y recopilación de datos.`},"tech-stack":{name:`Validador de stack tecnológico`,summary:`Valida las elecciones de paquetes, bibliotecas y frameworks.`},orchestrator:{name:`Orquestador`,summary:`Coordina la ejecución de tareas multiagente.`},supervisor:{name:`Supervisor`,summary:`Supervisa la ejecución de subagentes y gestiona las escalaciones.`},"quality-gate":{name:`Puerta de calidad`,summary:`Aplica puertas de calidad a las implementaciones.`},architect:{name:`Arquitecto`,summary:`Toma decisiones de diseño y arquitectura.`},"prompt-engineer":{name:`Ingeniero de prompts`,summary:`Diseña y optimiza los prompts del sistema.`},mnemosyne:{name:`Mnemosyne`,summary:`Curador de memoria: revisa y mantiene la integridad de SAGE.`},autophase:{name:`AutoPhase`,summary:`Gestiona la ejecución autónoma de tareas en varias fases.`}},Fe={heading:`Plantilla personalizada`,loading:`Cargando plantilla personalizada…`,loadFailed:`No se pudo cargar la plantilla`,invalidJson:`JSON no válido`,noImprovement:`No se generó ninguna sugerencia de mejora.`,improveFailed:`Falló la mejora con LLM`,behaviorSaved:`Comportamiento guardado en learned.md`,saveFailedServer:`Error al guardar: consulta los registros del servidor`,emptyTitle:`Sin agentes de plantilla personalizada`,emptyBody:`Los agentes propios del proyecto aparecen aquí cuando creas o editas archivos en`,createExecutorIdentity:`+ Crear identidad del ejecutor`,entries:`Entradas`,size:`Tamaño`,sessionCaptures:`Capturas de sesión`,editIdentity:`Editar identity.md`,editLearned:`Editar learned.md`,editConfig:`Editar config.json`,reviewEntries:`Revisar entradas ({{count}})`,reviewLearnedEntries:`Revisar entradas aprendidas ({{kept}}/{{total}} conservadas)`,applySelection:`Aplicar selección`,keep:`✓ Conservar`,drop:`✗ Descartar`,identityPlaceholder:`# Identidad de proyecto para {{role}}
8
8
 
@@ -2,7 +2,7 @@ var e={chat:`Sessão`,agents:`Agentes`,history:`Histórico`,files:`Arquivos`,cha
2
2
 
3
3
  Clique duas vezes para renomear`,unfavorite:`Remover dos favoritos`,markFavorite:`Marcar como favorito`,deleteSessionConfirmTitle:`Excluir a sessão?`,deleteSessionConfirmBody:`"{{name}}" será removida do disco. Isso não pode ser desfeito.`,deleteSessionTitle:`Excluir sessão`,rename:`Renomear sessão`,renameAction:`Renomear`,resume:`Retomar sessão`,resumeShort:`Retomar`,workspaceEyebrow:`Controle de sessão`,workspaceTitle:`Sessões`,workspaceHint:`Pesquise, inspecione, fixe e retome todas as conversas do projeto.`,tabs:{history:`Histórico`,live:`Sessões ativas`},filters:{all:`Todas`,favorites:`Favoritas`,active:`Ativas`,completed:`Concluídas`,issues:`Problemas`},status:{active:`Ativa`,completed:`Concluída`,error:`Erro`,timeout:`Tempo esgotado`,aborted:`Cancelada`,saved:`Sessão salva`},sort:{label:`Ordenar sessões`,recent:`Mais recentes`,tokens:`Mais tokens`,activity:`Mais atividade`},stats:{sessions:`Sessões`,tokens:`Tokens`,tools:`Chamadas de ferramentas`,files:`Arquivos modificados`,errors:`Erros`},inspect:`Inspecionar sessão`},f={actions:{abort:`Interromper`,newSession:`Nova sessão`,export:`Exportar`,compact:`Compactar`,newSessionConfirm:`Tem certeza?`,newSessionConfirmMessage:`Ainda há um trabalho em andamento. Iniciar uma nova sessão mesmo assim?`,newSessionTitle:`Iniciar uma nova sessão (Ctrl+N)`,exportTitle:`Exportar o chat como markdown (Ctrl+E)`,compactTitle:`Compactar a janela de contexto`,clearTitle:`Limpar o contexto (Ctrl+L)`},model:`Modelo`,modelTitle:`Trocar de modelo (Ctrl+M)`,context:`Contexto`,contextTitle:`Clique para um detalhamento do contexto`,sessionLabel:`Sessão`,stats:{messages:`Mensagens`,elapsed:`Decorrido`,tokens:`Tokens`,cost:`Custo`,iteration:`Iteração`,agents:`Agentes`,tokensSub:`{{in}} entra / {{out}} sai`,iterationOf:`de {{max}}`,agentsRunning:`{{count}} em execução`},plan:`Plano`,planComplete:`{{pct}}% concluído`,pinned:`Fixados`,quickSettings:`Ajustes rápidos`,autonomy:`Autonomia`,autonomyTitle:`Interromper a execução automática das próximas etapas. Desative para parar o ciclo autônomo do agente`,autonomyOptions:{off:`Desativado`,suggest:`Sugerir`,auto:`Auto`,eternal:`Perpétuo`,"eternal-parallel":`Perpétuo Paralelo`},yolo:`Modo YOLO`,yoloTitle:`Ignorar os diálogos de confirmação de ferramentas`,refine:`Refinar prompts`,refineTitle:`Reescrever os prompts antes de enviar`,sound:`Som ao concluir`,soundTitle:`Tocar um leve som ao terminar uma execução`,sessionId:`sessão {{id}}`},p={status:{running:`em execução`,completed:`concluído`,failed:`falhou`,timeout:`tempo esgotado`,stopped:`parado`},leader:`líder`,providerModel:`Provedor / Modelo`,elapsed:`Decorrido`,running:`em execução…`,iterations:`Iterações`,toolCalls:`Chamadas`,cost:`Custo`,budgetExtensions:`Extensões de orçamento`,activity:`Atividade`,contextWindow:`Janela de contexto`,tokensUsed:`{{used}} / {{max}} tokens`,toolRunning:`em execução…`,lastTool:`última ferramenta`,error:`Erro`,finalOutput:`Saída final`,copyOutput:`Copiar saída`,liveOutput:`Saída ao vivo`,waitingOutput:`Aguardando saída…`,outputHint:`A saída aparece aqui conforme o agente transmite o texto.`,toolLog:`Registro de ferramentas ({{count}} chamadas)`,fail:`falha`,moreTools:`+{{count}} ferramentas a mais`,cardRunning:`em execução {{tool}}`,cardLastTool:`última: {{tool}}`,contextPercent:`Contexto {{pct}}%`,doneCount:`{{count}} concluídos`,errCount:`{{count}} err`,statusRunning:`em execução`,statusDone:`concluído`,statusFailed:`falhou`,statusTimeout:`tempo esgotado`,statusStopped:`parado`,hittingLimitTitle:`⚡ atinge o limite {{kind}} ({{used}}/{{limit}})`,budgetExt_one:`{{count}} extensão de orçamento`,budgetExt_other:`{{count}} extensões de orçamento`,extendedTimes_one:`O agente estendeu seu orçamento {{count}} vez por tarefas longas`,extendedTimes_other:`O agente estendeu seu orçamento {{count}} vezes por tarefas longas`,errorLabel:`Erro`,failureReason:`Motivo da falha`,failed:`Falhou`},m={wsNotConnected:`WebSocket não conectado`,noData:`Nenhum dado de depuração recebido. O servidor pode não oferecer suporte à depuração de contexto.`,title:`Detalhamento do contexto`,windowUsage:`Uso da janela`,contextMode:`Modo de contexto`,fetching:`Buscando o detalhamento do contexto…`,systemPrompt:`Prompt do sistema`,tools:`Ferramentas`,messages:`Mensagens`,tokenAllocation:`Alocação de tokens`,systemTitle:`Sistema: {{tokens}}`,toolsTitle:`Ferramentas: {{tokens}}`,messagesTitle:`Mensagens: {{tokens}}`,system:`Sistema`,toolBreakdown:`Detalhamento de ferramentas`,messagesSummary:`Mensagens ({{count}}) — {{total}} tok`,barWithTokens:`Janela de contexto: {{tokens}} / {{max}} tokens ({{pct}})`,barPct:`Janela de contexto: {{pct}}`,barClick:` — clique para o detalhamento`},h={header:`✨ Refinar prompt`,autoSend:`envio automático em {{count}} s`,cancelTitle:`Cancelar (Esc)`,editLabel:`Editar o prompt refinado:`,editPlaceholder:`Editar o prompt refinado...`,useEdit:`Usar edição`,original:`Original`,refined:`Refinado`,yourLanguage:`(seu idioma)`,refinedTitle:`Clique ou pressione Enter para usar esta versão`,copyToInputTitle:`Copiar para a entrada sem enviar`,english:`Inglês`,englishTitle:`Pressione e para a versão em inglês`,hintRefined:`refinado`,hintEnglish:`Inglês`,hintOriginal:`original`,hintEdit:`editar`,hintRetry:`tentar novamente`,edit:`Editar`,useRefined:`Usar refinado`,langOriginal:`Original`,langEnglish:`English`,languageTitle:`Alternar o idioma padrão de refinamento — original ou inglês`,yolo:`YOLO`,yoloTitle:`Ignorar as confirmações de ferramentas`,refining:`Refining…`,sendAsIs:`Send as-is`,failedHeader:`Refinement failed`,retry:`Retry (more time)`,retryBetter:`Tentar melhorar`,retryFallback:`Retry with {{model}}`,pickModel:`Another model…`,pickModelTitle:`Repetir o refinamento com outro modelo`,pickModelHint:`Escolha um provedor/modelo para executar novamente este refinamento. O modelo da sua sessão permanece inalterado.`,countdownHeader:`✨ Refinamento começa em…`,countdownYourMessage:`Sua mensagem`,countdownHint:`O refinamento começa em {{seconds}}s. Clique em "Enviar como está" para pular.`,countdownStartNow:`Refinar agora`,countdownSendAsIs:`Enviar como está`,cancelRefineSendOriginal:`Cancelar e enviar original`},g={heading:`Especificações`,subtitle:`Ver e gerenciar o desenvolvimento orientado por especificações`,empty:`Nenhuma spec encontrada. Use {{command}} para criar uma.`,tasks:`Tarefas ({{count}})`,doneCount:`{{count}} concluídas`,runningCount:`{{count}} em execução`,pendingCount:`{{count}} pendentes`,runTitle:`Executar esta spec como um job multiagente ao vivo`,run:`Executar`,runAsSdd:`Executar como SDD`,runAsSddTitle:`Iniciar um run SDD multiagente em paralelo (worktrees, verificação, board ao vivo)`,runAsGoal:`Executar como Goal`,runAsGoalTitle:`Iniciar um Goal por fases a partir das colunas de tarefas desta spec`,list:`Lista`,graph:`Grafo`,loadingTasks:`Carregando tarefas…`},_={heading:`Verificador de resiliência F5`,subtitle:`Confirma que a última sessão ativa, a transcrição e o estado da UI sobrevivem a um atualizar de página. Abra esta vista e pressione F5 — cada linha verde deve continuar verde.`,recordProbe:`Registrar sonda`,latestSession:`Última sessão ativa`,restoredLocal:`Restaurado do localStorage`,sessionIdExtra:`id da sessão: {{id}}`,noSessionYet:`nenhuma sessão foi iniciada ainda`,activePointer:`Ponteiro de sessão ativa`,lastVisited:`carimbo de tempo lastVisitedAt`,never:`nunca`,persistedEnv:`Ambiente persistido`,transcriptRehydrate:`Reidratação da transcrição`,localTranscript:`Transcrição local recuperada`,messagesExtra:`{{count}} mensagens, {{queued}} na fila`,noMessages:`0 mensagens`,noBleed:`Sem vazamento entre sessões`,bleedExtra:`ligado={{bound}} vs ativo={{active}}`,transcriptBinds:`a transcrição se liga à sessão ativa`,uiWorkspace:`Espaço de trabalho UI`,noneValue:`(nenhum)`,payloadSize:`Carga do localStorage (4 chaves): {{count}} caracteres`,probeLog:`Registro de sondas`,noProbes:`Nenhuma sonda ainda — pressione o botão "Registrar sonda" no topo, ou F5 nesta vista, para registrar uma verificação de reidratação.`,simulatedF5:`F5 simulado: reexecutar persist rehydrate`},v={status:{pending:`Pendente`,in_progress:`Em progresso`,review:`Revisão`,failed:`Falhou`,completed:`Concluído`,queued:`Em fila`,blocked:`Bloqueado`,cancelled:`Cancelado`},newTaskTitle:`Nova tarefa`,newTaskPlaceholder:`Título da tarefa…`,addTask:`Adicionar tarefa`,empty:`Ainda não há fases — inicie uma execução Goal para preencher o painel.`,summary:`{{phases}} fases · {{tasks}} tarefas`,phases:`Fases`,statusTab:`Status`,dropHere:`Solte as tarefas aqui`,emptySpec:`Ainda não há tarefas nesta spec.`,depGraphHeading:`Grafo de dependências`,worktreePrefix:`worktree: {{branch}}`},y={trendUp:`Aumentando`,trendDown:`Diminuindo`,trendStable:`Estável`,heading:`Painel de depuração`,subtitle:`Monitoramento em tempo real para WrongStack WebUI`,refreshLabel:`Atualizar:`,lastUpdated:`Última atualização: {{time}}`,fetchFailed:`Falha ao buscar métricas`,fileWatcher:`Observador de arquivos`,watcherStatus:`Status do observador`,running:`Em execução`,stopped:`Parado`,activeProjects:`Projetos ativos`,projectsWatched:`Projetos observados`,fileChanges:`Mudanças de arquivos`,totalDetected:`Total detectado`,filesProcessed:`Arquivos processados`,afterHash:`Após filtro de hash`,broadcastsSent:`Transmissões enviadas`,toClients:`Aos clientes WebUI`,debounceResets:`Reinícios de debounce`,rapidWrites:`Escritas rápidas sucessivas`,avgDebounce:`Atraso médio de debounce`,actualDelay:`Atraso real aplicado`,totalDelay:`Atraso total`,sumDelays:`Soma de todos os atrasos`,browserPerf:`Desempenho do navegador`,heapUsed:`Heap usado`,jsHeap:`Heap JavaScript`,heapTotal:`Heap total`,totalHeap:`Tamanho total do heap`,pageUptime:`Tempo de atividade da página`,sinceLoad:`Desde o carregamento`,rawData:`Dados brutos`},b={allowlistTitle:`Lista de modelos permitidos`,modelCount_one:`{{count}} modelo`,modelCount_other:`{{count}} modelos`,using:`Em uso`,noModelPicked:`(nenhum modelo escolhido)`,clearAllowlist:`Limpar lista permitida`,clearAllowlistAria:`Limpar a lista permitida salva para {{provider}}`,refresh:`Atualizar do servidor`,refreshAria:`Atualizar a lista de modelos para {{provider}}`,probing:`Verificando…`,searchPlaceholder:`Pesquisar modelos…`,use:`Usar`,useModelAria:`Usar o modelo {{model}} para {{provider}}`},x={expandChip:`Expandir {{label}}`,collapseChip:`Recolher {{label}}`,ahead:`{{count}} à frente`,behind:`{{count}} atrás`,linesAdded:`{{count}} linhas adicionadas`,linesDeleted:`{{count}} linhas excluídas`,untrackedFiles:`{{count}} arquivos não rastreados`,customizeTitle:`Personalizar chips do dock`,dockChips:`Chips do dock`,noActiveGoal:`Nenhum objetivo ativo`,noActiveGoalDetail:`Inicie um objetivo pelo chat ou pelo comando goal.`,closeWorkspaceInspector:`Fechar o inspetor do workspace`,goal:`Objetivo`,goalState:`Estado do objetivo`,goalStateDetail:`Objetivo ativo e progresso`,fleet:`Frota`,fleetDetail:`Elenco de agentes ao vivo e atividade`,work:`Trabalho`,workDetail:`Tarefas pendentes, tarefas e plano`,worktrees:`Worktrees`,worktreesDetail:`Ramos e faixas paralelos`,collab:`Colab.`,collabDetail:`Participantes da sessão e controles`,inspector:`Inspetor do workspace`,inspectorNamed:`Inspetor do workspace {{name}}`,workspace:`Workspace`,workspaceDetails:`Detalhes do workspace`},S={leaderBadge:`LÍDER`,iters:`Iter.`,tools:`Ferramentas`,activityBins:`Atividade (12 intervalos)`,streamingOutput:`Saída em streaming`,recentTools:`Ferramentas recentes`,finalOutput:`Saída final`,heading:`Monitor de agentes`,prevAgent:`Agente anterior`,nextAgent:`Próximo agente`,closeAria:`Fechar monitor de agentes`,hintPage:`←→ página`,hintNavigate:`↑↓ navegar lista`,hintEsc:`Esc fechar`},C={resize:`Redimensionar terminais`,labelSingular:`Terminal`,labelPlural:`Terminais`,projectShell:`Shell do projeto`,maxTerminals:`Máximo de {{count}} terminais`,newTerminal:`Novo terminal`,restart:`Reiniciar terminal ativo`,closeAll:`Fechar todos os terminais`,closeDock:"Fechar o dock de terminal (Ctrl+`)",closeTab:`Fechar {{name}}`,processExited:`[processo encerrado com código {{code}}]`},w={liveStream:`Transmissão ao vivo`,events_one:`{{count}} evento`,events_other:`{{count}} eventos`,interruptTitle:`Parar cooperativamente este agente em seu próximo passo (não é um kill)`,interrupt:`⏸ Interromper`,interrupting:`…`,loading:`Carregando sessão…`,done:`✓✓ concluído`,read:`✓ lido`,delivered:`⏳ entregue`,agent:`Agente`,you:`Você`,working:`{{name}} · trabalhando`,claude:`Claude`,priority:`Prioridade`,placeholder:`{{label}} → esta sessão…`,send:`Enviar`,sendHint:`⌘/Ctrl+Enter para enviar · visível na próxima iteração do agente`,msgType:{steerLabel:`🔄 Direcionar`,steerHint:`Ajustar o comportamento durante a tarefa`,askLabel:`❓ Perguntar`,askHint:`Pergunta — espera resposta`,assignLabel:`📋 Atribuir`,assignHint:`Uma tarefa a realizar`,noteLabel:`💬 Nota`,noteHint:`Para informação, não urgente`},sentRunning:`Entregue — o agente em execução verá no próximo passo`,sentIdle:`Entregue — o alvo está inativo; aparece em sua caixa, lido na próxima execução`,sentFailed:`Falhou: {{error}}`,interruptReason:`O operador solicitou a parada pelo Fleet HQ`,interruptSent:`Interrupção enviada — o agente para no próximo passo (não é um kill)`,interruptFailed:`Interrupção falhou: {{error}}`},T={empty:`Nenhum efeito colateral registrado ainda.`,emptyHint:`Comandos bash, instalações de pacotes e requisições de rede aparecerão aqui.`,heading:`Efeitos colaterais`,exportTitle:`Exportar efeitos colaterais filtrados como CSV`,all:`Todos`,colTime:`Hora`,colTool:`Ferramenta`,colRisk:`Risco`,colDetail:`Detalhe`,colOutcome:`Resultado`},E={elapsedHm:`há {{h}}h {{m}}m`,elapsedMs:`há {{m}}m {{s}}s`,elapsedS:`há {{s}}s`,heading:`Monitor da frota`,clientsHeading:`Clientes conectados`,terminal:`Terminal`,webui:`IU Web`,repl:`REPL`,totalConnected:`conectados no total`,mailQueue:`Fila de correio`,total:`Total`,open:`Abertos`,unread:`Não lidos`,agents:`Agentes`,messagesSub:`mensagens`,uncompletedSub:`não concluídos`,waitingSub:`aguardando`,ofTotal:`de {{count}} no total`,agentRoster:`Lista de agentes`,liveMailActivity:`Atividade de e-mail ao vivo`,noActivity:`Sem atividade recente`,mailboxAgents:`Agentes da caixa`,noMailboxAgents:`Nenhum agente registrado`,moreCount:`+{{count}} mais`,agentFallback:`agente`,fleetAgents:`Agentes da frota`,noFleetAgents:`Nenhum agente da frota em execução`,iter:`iter.`,mailType:{sent:`Enviado`,delivered:`Entregue`,read:`Lido`,completed:`Concluído`}},D={status:{pending:`pendente`,queued:`em fila`,in_progress:`em execução`,blocked:`bloqueado`,review:`revisão`,failed:`falhou`,completed:`concluído`,cancelled:`cancelado`},activityHeading:`Atividade`,feedEmpty:`Ainda nada — os eventos aparecem aqui conforme os agentes pegam e concluem tarefas.`,destroyTitle:`Destruir o projeto SDD?`,destroyDesc:`Isto apaga o run e seu trabalho. Não pode ser desfeito (o revert opcional preserva o histórico).`,stopRun:`Parar o run`,stopRunAgents_one:`Parar o run ({{count}} agente ativo)`,stopRunAgents_other:`Parar o run ({{count}} agentes ativos)`,removeWorktreesAll:`Remover todos os worktrees git + ramos wstack/ap/* — incluindo trabalho não mergedado`,removeWorktreesCount_one:`Remover {{count}} worktree git + ramos wstack/ap/* — incluindo trabalho não mergedado`,removeWorktreesCount_other:`Remover {{count}} worktrees git + ramos wstack/ap/* — incluindo trabalho não mergedado`,deleteArtifacts:`Excluir todos os artefatos SDD (specs, grafo de tarefas, board, sessão)`,revertMerged_one:`Reverter também {{count}} commit mergedado`,revertMerged_other:`Reverter também {{count}} commits mergedados`,revertHint:`Adiciona commits de revert (histórico preservado). Recusado se a árvore de trabalho estiver suja.`,baseBranchFallback:`o ramo base`,noteLeaveMerged:`Os commits mergedados ficarão no ramo base. Marque a caixa acima para desfazê-los também.`,noteAbandon:`Certifique-se de que realmente quer abandonar este run.`,destroying:`Destruindo…`,destroyAll:`Destruir tudo`,kanbanBacklog:`Backlog`,kanbanReady:`Pronto`,kanbanRunning:`Em execução`,kanbanReview:`Revisão`,kanbanFailed:`Falhou`,kanbanDone:`Concluído`,kanbanEmpty:`vazio`},O={collapseToLines:`Recolher para as primeiras {{count}} linhas`,showAllLines:`Mostrar todas as {{total}} linhas ({{more}} a mais)`,exitCode:`código de saída:`,jsonLines:`JSON · {{count}} linhas`,collapse:`recolher`,expand:`expandir`},k={heading:`Design Studio — Galeria`,kitsCount:`{{count}} kits`,searchPlaceholder:`Pesquisar kits…`,stackTitle:`Stack para Use + Materialize`,wrote:`{{path}} escrito`,materializeFailed:`Materialize falhou: {{error}}`,verifyError:`Verificar: {{error}}`,verifyOffPalette:`Verificar: {{pct}}% na paleta — {{count}} fora da paleta em {{files}} arquivo(s)`,verifyClean:`Verificar: limpo ✓ ({{files}} arquivo(s) na paleta)`,writing:`Escrevendo arquivo de tema…`,scanning:`Verificando arquivos de UI…`,active:`Ativo`,reapply:`Reaplicar`,use:`Usar`,materializeTitle:`Gravar tokens em um arquivo de tema {{stack}}`,materialize:`Materializar`,verifyTitle:`Verificar arquivos de UI em busca de cores fora da paleta`,verify:`Verificar`,colors:`Cores`},A={summary_one:`{{count}} fase · {{pct}}% concluído`,summary_other:`{{count}} fases · {{pct}}% concluído`,switchBoard:`Trocar painel`,boardsCount_one:`{{count}} painel…`,boardsCount_other:`{{count}} painéis…`,toggleAutonomousTitle:`Alternar modo autônomo`,autonomous:`Autônomo`,manual:`Manual`,resumeTitle:`Retomar a execução`,pauseTitle:`Pausar a execução`,resume:`Retomar`,pause:`Pausar`,stopTitle:`Parar a execução — aborta agentes em andamento imediatamente`,stop:`Parar`,newTitle:`Limpar este painel e iniciar uma nova execução Goal`,newLabel:`Novo`,revertConfirm:`Reverter os commits da execução?`,revertTitle:`Desfazer esta execução — git-revert dos commits feitos e remover worktrees`,revert:`Reverter`,goal:`Objetivo`,planning:`Planejando fases…`,planningBody:`Seu objetivo foi recebido. O WrongStack está dividindo-o em fases e tarefas — o painel aparece aqui assim que o plano estiver pronto.`,startHeading:`Iniciar um plano de fases`,startBody:`Descreva o que você quer construir. O WrongStack planejará fases e tarefas, depois as executará — observe e direcione a execução no painel.`,startPlaceholder:`ex. Crie uma API REST de gerenciamento de usuários com Express e SQLite...`,isolateLabel:`Isolar cada fase em seu próprio worktree git`,startButton:`Iniciar Goal`,ctrlHint:`Ctrl+Enter para iniciar`,isolateOn:`as fases rodam em worktrees isolados, com squash-merge de volta`,isolateOff:`as fases rodam diretamente no branch atual`,lanes:`Faixas`,graph:`Grafo`,planningAck:`🚀 **Goal** — entendido. Planejando fases para seu objetivo…`,assess:{analyzing:`Analisando escopo da meta…`,realistic:`✓ O escopo parece realista`,durationConcern:`⚠ Problema de duração`,durationClaimed:`Duração informada: {{duration}}`,recommendation:`Recomendado: {{duration}}`,concerns:`Preocupações`,analysisFailed:`Não foi possível analisar o escopo da meta`,override:`Iniciar mesmo assim`,overrideTitle:`Limpar aviso e habilitar o botão de iniciar`,disableTitle:`Esta meta tem uma duração irrealista — use "Iniciar mesmo assim" para sobrescrever`},multiBoardLabel:`Dividir em múltiplos quadros kanban`,verifyTasksLabel:`Exigir verificação para cada tarefa`,chimeraReviewLabel:`Habilitar revisão automática chimera`},j={noObservers:`Sem observadores ao vivo`,observerTitle:`Entrar como observador somente leitura (Fase 1)`,observerRole:`observador`,annotatorTitle:`Entrar como anotador — deixe notas nas chamadas (Fase 2)`,annotatorRole:`anotador`,controllerTitle:`Entrar como controlador — pode pausar o agente (Fase 3)`,controllerRole:`controlador`,errorPrefix:`Collab: {{error}}`,dismiss:`fechar`,observers_one:`{{count}} observador`,observers_other:`{{count}} observadores`,annotationsTitle:`{{count}} anotação(ões) aberta(s) — anotadores revisando`,notes_one:`{{count}} nota`,notes_other:`{{count}} notas`,pausedTitle:`Agente em pausa — um controlador está revisando`,paused:`em pausa`,joinedTitle:`Entrou {{time}}`,grantTitle:`Ceder controle — promover este participante a controlador`,injectTitle:`Injetar um resultado sintético para uma chamada em andamento`,inject:`Injetar`,resumeTitle:`Retomar o agente`,resume:`Retomar`,pauseTitle:`Pausar o agente antes da próxima chamada`,pauseAgent:`Pausar agente`,leaveTitle:`Sair da sessão de observação`,leave:`Sair`,injectToolResult:`Injetar resultado`,close:`fechar`,targetTool:`id tool_use alvo`,targetPlaceholder:`escolha uma chamada em andamento ou digite um id tool_use`,toolFallback:`ferramenta`,noPendingTools:`Sem chamadas em andamento — digite um id tool_use ou pause o agente primeiro.`,resultContent:`Conteúdo do resultado`,resultPlaceholder:`Resultado sintético fornecido ao agente em vez de executar a ferramenta`,markError:`marcar como erro`,reasonPlaceholder:`motivo (log de auditoria)`,queueInjection:`Enfileirar injeção`,controllerInjection:`injeção controlador`},M={connected:`Conectado`,reconnecting:`Reconectando ao backend (tentativa {{attempt}}) — tentando novamente em {{remaining}} s`,disconnected:`Desconectado do backend`,retry:`Tentar novamente`,retryTitle:`Tentar conexão novamente agora`,dismissTitle:`Fechar (o chip na barra superior ainda mostra o status)`},N={modePrefix:`modo:`,activeTitle:`Modo ativo`,heading:`Modo`,defaultName:`Padrão`,defaultDesc:`Comportamento padrão do agente`},P={clickTitle:`Clique para o detalhamento de custo por turno`,heading:`Detalhamento de custos`,noPricing:`Sem precificação para o modelo atual — os valores de custo são zero.`,noTurns:`Nenhum turno concluído ainda. Execute um prompt para ver o custo por turno aqui.`,topExpensive_one:`Turno mais caro`,topExpensive_other:`Os {{count}} turnos mais caros`},F={runDefault:`Padrão do run`,useRunDefault:`Usar padrão do run`,filterPlaceholder:`Filtrar modelos…`,loading:`Carregando modelos…`,noMatch:`Sem correspondência`},I={heading:`Trocar modelo`,filterPlaceholder:`Filtrar provedores e modelos…`,providerFilter:`Provedor`,providerFilterAll:`Todos os provedores`,noSavedProviders:`Sem provedores salvos — registre uma chave nas Configurações primeiro.`,noMatch:`Nenhum modelo correspondente`,active:`ativo`},L={todos:`A fazer`,tasks:`Tarefas`,plan:`Plano`},R={toggleAria:`Alternar: {{content}}`,removeTitle:`Remover tarefa`,removeAria:`Remover "{{content}}"`,completedCount_one:`{{count}} concluída`,completedCount_other:`{{count}} concluídas`,blockedBy:`Aguardando: {{work}}`},z={start:`Iniciar`,complete:`Concluir`,retry:`Tentar novamente`,assign:`Atribuir`,assignTitle:`Atribuir agente`,unassigned:`Não atribuído`,statusPending:`Pendente`,statusInProgress:`Em andamento`,statusBlocked:`Bloqueado`,statusFailed:`Falhou`,statusReview:`Revisão`,statusDone:`Concluído`,startTitle:`Iniciar`,completeTitle:`Concluir`,fail:`Falhar`,failTitle:`Marcar como falha`,boardCount:`{{total}} tarefas · {{done}} concluídas`},B={toolCalls_one:`{{count}} chamada`,toolCalls_other:`{{count}} chamadas`},V={removeTitle:`Remover referência`,linesCount_one:`{{count}} linha`,linesCount_other:`{{count}} linhas`},H={statusOpen:`Aberto`,statusInProgress:`Em andamento`,statusDone:`Concluído`,startTitle:`Iniciar`,doneTitle:`Marcar como concluído`,reopenTitle:`Reabrir`,reopen:`Reabrir`},U={heading:`@ Arquivos`,noMatch:`Nenhum arquivo corresponde a "{{query}}"`,searching:`Pesquisando no projeto…`,selectInsertEscDismiss:`↑/↓ selecionar · ↵ inserir · Esc fechar`},W={dismiss:`Dispensar`},G={placeholder:`Pesquisar no chat…`,prevHit:`Resultado anterior`,nextHit:`Próximo resultado`,close:`Fechar (Esc)`},K={statusPending:`Pendente`,statusReady:`Pronto`,statusRunning:`Em execução`,statusPaused:`Em pausa`,statusCompleted:`Concluído`,statusFailed:`Falhou`,statusSkipped:`Ignorado`,heading:`Fases`,autonomousOn:`● Autônomo`,autonomousOff:`○ Manual`,autonomousOnTitle:`Modo autônomo ativo — clique para pausar`,autonomousOffTitle:`Modo manual — clique para ativar o autônomo`,overallProgress:`Progresso geral`,tasksSuffix:`{{done}}/{{total}} tarefas`,agentsSuffix_one:`{{count}} agente`,agentsSuffix_other:`{{count}} agentes`},q={triggerTitle:`Modo de janela de contexto`,ctxPrefix:`ctx:`,opsHeading:`Operações de contexto`,compactNow:`Compactar agora`,compactNowDesc:`Omitir saída de ferramenta antiga`,compactAggressive:`Compactação agressiva`,compactAggressiveDesc:`Omissão máxima agora`,repairContext:`Reparar contexto`,repairDesc:`Corrigir blocos tool-use órfãos`,debugContext:`Depurar contexto`,debugDesc:`Detalhamento de tamanho por seção`,windowHeading:`Janela de contexto`,keepElide:`manter {{k}} recentes · omitir {{t}}+ tokens`,fallbackName:`Equilibrado`,fallbackDesc:`Compactação rolling padrão`},J={kindAssistant:`Assistente`,kindThinking:`Pensamento`,kindToolCall:`Chamada de ferramenta`,kindToolResult:`Resultado de ferramenta`,kindError:`Erro`,kindStatus:`Status`,kindSystem:`Sistema`,title:`Histórico do chat`,copyTitle:`Copiar histórico de chat do agente`,empty:`Ainda não há histórico de chat para este agente.`},Y={heading:`Modo de autonomia`,titlePrefix:`Autonomia: {{label}}`,descOff:`Controle manual total — o agente espera sua entrada.`,descSuggest:`O agente sugere os próximos passos mas aguarda aprovação.`,descAuto:`O agente prossegue automaticamente após um breve atraso de confirmação.`,descEternal:`O agente executa de forma autônoma até o objetivo ser concluído.`,descEternalParallel:`Execução autônoma multi-agente — modo frota.`,labelOff:`Desativado`,labelSuggest:`Sugerir`,labelAuto:`Auto`,labelEternal:`Eterno`,labelEternalParallel:`Eterno paralelo`},X={heading:`Fila de mensagens`,subtitle:`{{count}} na fila · mensagens enviadas antes do agente terminar`,btwTitle:`A propósito — enviado como acompanhamento sem interromper o agente em execução`,steerTitle:`Guiar — interrompe o agente em execução e o redireciona com esta mensagem`,queueTitle:`Na fila — retido até o run do agente terminar, depois enviado em ordem`,sortNewestTitle:`Ordenado do mais recente — clique para ordenar do mais antigo`,sortOldestTitle:`Ordenado do mais antigo — clique para ordenar do mais recente`,newest:`Mais recente`,oldest:`Mais antigo`,clear:`Limpar`,clearTitle:`Limpar todas as mensagens da fila`,closeTitle:`Fechar`,emptyTitle:`A fila está vazia`,emptyBody:`Use os botões btw / steer / adicionar à fila ao lado da entrada para adicionar mensagens. Os itens na fila são enviados em ordem quando o run do agente termina.`,removeTitle:`Remover da fila`,clearDispatchedTitle:`Limpar mensagens da fila — notas já enviadas não podem ser retractadas`,dispatchedTitle:`Já enviado ao agente`,dispatchedLabel:`Enviado`,footer:`As mensagens são enviadas em ordem de chegada quando o run do agente termina. Use a ordenação para ver as mais recentes primeiro.`},Z={heading:`Pontos de controle da sessão`,countSuffix_one:`{{count}} ponto de controle`,countSuffix_other:`{{count}} pontos de controle`,description:`Rebobine a sessão para qualquer ponto de controle. Mensagens e alterações de arquivo revertem para aquele ponto — o LLM continua de lá como se nada tivesse acontecido depois.`,emptyTitle:`Ainda não há pontos de controle`,emptyBody:`Pontos de controle são criados automaticamente a cada mensagem enviada. Envie algumas mensagens e volte.`,latest:`recente`,msgSuffix_one:`{{count}} msg`,msgSuffix_other:`{{count}} msgs`,footerPre:`Clique em qualquer ponto de controle para rebobinar`,footerPost:`para fechar`},Q={statusActive:`Ativo`,statusPaused:`Em pausa`,statusDone:`Concluído`,statusFailed:`Falhou`,statusAbandoned:`Abandonado`,heading:`Objetivo`,refined:`Refinado`,progress:`Progresso`,iterations:`iterações`,deliverables:`Entregáveis`,recentActivity:`Atividade recente`},$={cleanTitle_one:`Limpar {{count}} worktree órfão?`,cleanTitle_other:`Limpar {{count}} worktrees órfãos?`,cleanMessage:`Remove forçadamente cada worktree git + ramo wstack/ap deixado por runs anteriores. O trabalho não mergedado neles é descartado.`,cleanConfirm:`Limpar órfãos`,orphanCount_one:`{{count}} worktree órfão de runs anteriores`,orphanCount_other:`{{count}} worktrees órfãos de runs anteriores`,andMore:`…e mais {{count}}`,cleanButtonTitle:`Remover forçadamente todos os worktrees + ramos órfãos`,removed_one:`✓ {{count}} worktree órfão removido.`,removed_other:`✓ {{count}} worktrees órfãos removidos.`,cleanupFailed:`limpeza falhou`,lanesHeading:`Worktrees`,base:`base`,isolatedCount_one:`{{count}} isolado`,isolatedCount_other:`{{count}} isolados`,statusAllocating:`alocando`,statusActive:`ativo`,statusCommitting:`commitando`,statusMerging:`mergendo`,statusMerged:`mergado`,statusConflict:`conflito`,statusFailed:`falhou`,conflictBadge:`CONFLITO`,graphAria:`Grafo de ramos worktree a partir de {{base}}`,mergedLabel:`✓ mergedo → {{base}}`},ee={heading:`Processos em execução`,subtitle:`{{active}} ativos · {{total}} total`,killAll:`Matar todos`,emptyTitle:`Nenhum processo rastreado`,emptyBody:`Os processos aparecem aqui quando o agente executa ferramentas bash ou exec. Processos ativos mostram um LED pulsante.`,pidLabel:`PID {{pid}}`,protected:`protegido`,protectedTitle:`Protegido — sobrevive a kill/killAll`,background:`em segundo plano`,backgroundTitle:`Processo desvinculado — continua após o encerramento da CLI/WebUI`,confirmKillBackground:`Encerrar o processo desvinculado em segundo plano {{pid}}?`,confirmKillAll:`Encerrar todos os {{count}} processos em execução?`,killTitle:`Matar PID {{pid}}`},te={tooLarge:`Diff omitido (arquivo grande demais para renderizar em linha).`},ne={placeholder:`Adicionar modelo de fallback…`,emptyHint:`Tentados em ordem quando o modelo primário é limitado ou trava.`,moveUp:`Mover para cima`,moveDown:`Mover para baixo`},re={loading:`Carregando sessões...`,apiUnavailable:`API de sessão indisponível:`,empty:`Nenhuma sessão ativa. Abra outra instância wstack para vê-la aqui.`,heading:`Sessões ativas ({{count}})`,autoRefresh:`atualização automática a cada 5 s`,pidLabel:`PID {{pid}}`,agentMeta:`{{iter}} iterações · {{tools}} ferramentas · {{ago}}`,andMore:`... e mais {{count}}`,noAgents:`Nenhum agente`},ie={applyTitle:`Escrever a versão editada no disco`,applying:`Aplicando…`,applied:`Aplicado`,apply:`Aplicar`},ae={showStack_one:`Mostrar rastreamento de pilha ({{count}} quadro)`,showStack_other:`Mostrar rastreamento de pilha ({{count}} quadros)`,hideStack_one:`Ocultar rastreamento de pilha ({{count}} quadro)`,hideStack_other:`Ocultar rastreamento de pilha ({{count}} quadros)`},oe={liveHeading:`Ao vivo`,clients:`Clientes`,agents:`Agentes`,model:`Modelo`,mode:`Modo`,toolCalls:`Chamadas`,displayHeading:`Exibição`,statsHud:`HUD de stats`,legends:`Legendas`,minimap:`Minimapa`,zoomControls:`Controles de zoom`,animateWires:`Animar fios`,backgroundHeading:`Fundo`,bgDots:`Pontos`,bgLines:`Linhas`,bgCross:`Cruz`,bgNone:`Nenhum`},se={noParams:`(sem parâmetros)`,itemCount_one:`{{count}} item`,itemCount_other:`{{count}} itens`,keyCount_one:`{{count}} chave`,keyCount_other:`{{count}} chaves`},ce={roleYou:`Você`,roleTool:`Ferramenta`,roleThinking:`Pensamento`,roleAssistant:`Assistente`,inputLabel:`Entrada`,downloadTitle:`Baixar como arquivo`,empty:`(vazio)`,hideDetails:`Ocultar detalhes`,showDetails:`Mostrar detalhes`,showDetailsLines_one:`Mostrar detalhes ({{count}} linha)`,showDetailsLines_other:`Mostrar detalhes ({{count}} linhas)`,editHint:`⌘/Ctrl+Enter para salvar · Esc para cancelar`,saveResend:`Salvar e reenviar`,thinkingProcess:`Processo de pensamento`,thinkingMeta:`iter {{iter}} · {{dur}} · {{lines}}`,replay:`repetição`,linesSuffix_one:`{{count}} linha`,linesSuffix_other:`{{count}} linhas`,copyLog:`Copiar registro`,showFullLog:`Mostrar registro completo`,typing:`Digitando…`,noContent:`Sem conteúdo`,imageNotRetained:`A prévia da imagem não é mantida após recarregar`,failedToSend:`⚠ Falha ao enviar`,autoPaused:`⚠️ _Avanço automático pausado — máximo de turnos automáticos consecutivos atingido. Digite algo para continuar (a autonomia permanece ativa)._`,autoLoopHalted:`⚠️ _Envio automático interrompido porque o mesmo prompt se repetiu. A autonomia continua ativa; digite um novo prompt para redefinir a proteção contra loops._`,rsIterations:`Iterações: {{n}}`,rsTools:`Chamadas: {{n}}`,rsElapsed:`Decorrido: {{s}}`,rsCost:`Custo: {{c}}`,useInput:`Entrada: {{n}}`,useOutput:`Saída: {{n}}`,useCacheRead:`Leitura cache: {{n}}`,useCost:`Custo: {{c}}`,renderedLabel:`Renderizado`,rawLabel:`Bruto`,showRenderedTitle:`Mostrar markdown renderizado`,showRawTitle:`Mostrar fonte markdown bruta`,editTitle:`Editar e reenviar este prompt`,editLabel:`Editar`,unpinTitle:`Desafixar`,pinTitle:`Fixar esta resposta`,pinnedLabel:`Fixado`,pinLabel:`Fixar`,regenerateTitle:`Regenerar esta resposta`,retryLabel:`Tentar novamente`},le={toolFallback:`ferramenta`,toolFailed:`Ferramenta falhou`},ue={heading:`Atalhos de teclado`,footerPre:`Pressione`,footerPost:`a qualquer momento para reabrir esta lista.`,sectionGlobal:`Global`,sectionTuiParity:`Paridade de painel TUI`,sectionFleet:`Frota e agentes`,sectionChatInput:`Entrada do chat`,sectionChat:`Chat`,sectionChatNav:`Navegação do chat (sem digitar)`,dCommandPalette:`Abrir paleta de comandos`,dShowOverlay:`Mostrar este overlay de atalhos`,dToggleSidebar:`Alternar barra lateral`,dOpenPanel:`Abrir painel lateral (Sessão, Agentes, Histórico, Arquivos, Mudanças, Caixa, Skills, Office Map)`,dDesignStudio:`Abrir painel do Design Studio`,dWorktrees:`Abrir painel de Worktrees`,dSettings:`Abrir Configurações`,dMemory:`Abrir Memória`,dFocusInput:`Focar a entrada de mensagens`,dSessionPanel:`Painel de sessão`,dFleetOverlay:`Overlay do monitor de frota`,dAgentsOverlay:`Overlay do monitor de agentes`,dWorktreeMonitor:`Monitor de worktrees`,dPlanPanel:`Painel de plano`,dTodosPanel:`Painel de tarefas`,dQueuePanel:`Painel de fila`,dProcessMonitor:`Monitor de processos`,dGoalPanel:`Painel de objetivo`,dSessionsDashboard:`Painel de sessões`,dOfficeMap:`Office map do coordenador`,dDockPicker:`Seletor de chips do dock`,dOpenFleet:`Abrir overlay do monitor de frota`,dOpenAgents:`Abrir overlay do monitor de agentes`,dNavigateAgents:`Navegar agentes no monitor`,dSelectAgent:`Selecionar agente focado`,dCloseOverlay:`Fechar overlay ativo`,dSendMessage:`Enviar mensagem`,dNewline:`Inserir nova linha`,dRecallPrev:`Relembrar prompt anterior (entrada vazia)`,dRecallNext:`Relembrar próximo prompt`,dSlashPopup:`Abrir popup de comandos slash`,dAutocomplete:`Autocompletar comando destacado`,dDismissPopup:`Fechar popup / limpar entrada`,dSearchChat:`Pesquisar no chat atual`,dClearContext:`Limpar contexto (igual a /clear)`,dNewSession:`Iniciar nova sessão (igual a /new)`,dExportMarkdown:`Exportar chat como markdown`,dModelSwitcher:`Overlay seletor rápido de modelo`,dCompactDensity:`Alternar densidade UI compacta`,dAbortRun:`Abortar o run atual (durante execução)`,dFocusNext:`Focar próxima mensagem (atalho: ↓)`,dFocusPrev:`Focar mensagem anterior (atalho: ↑)`,dJumpFirst:`Ir para a primeira mensagem`,dJumpLast:`Ir para a última mensagem`,dCopyFocused:`Copiar texto da mensagem focada`,dClearFocused:`Limpar mensagem focada`},de={titleFallback:`Board SDD ao vivo`,defaultModelTitle:`Modelo worker padrão do run (overrides por tarefa têm precedência)`,graphLabel:`Grafo`,kanbanLabel:`Kanban`,retryAllTitle:`Recolocar cada tarefa falha em pending`,retryFailed:`Re tentar falhas ({{count}})`,resume:`Retomar`,pause:`Pausar`,stop:`Parar`,cleanTitle:`Remover os worktrees git + ramos wstack/ap do run`,cleanWorktrees:`Limpar worktrees`,rollbackTitle:`Reverter {{count}} commit(s) mergedado(s) em {{base}}`,rollback:`Rollback ({{count}})`,stopping:`Parando…`,destroying:`Destruindo…`,destroyTitle:`Parar, remover todos os worktrees, reverter opcionalmente commits mergedados e excluir o projeto SDD`,destroy:`Destruir`,statDone:`feitos`,statRunning:`em execução`,statFailed:`falhas`,statWave:`onda`,statElapsed:`decorrido`,noActiveWorkers:`sem workers ativos`,deadlock:`Impasse — tarefas bloqueadas por trabalho falho:`,noRunTitle:`Sem run SDD ativo.`,noRunBody:`Inicie um pelo assistente New SDD Project ou via /sdd execute na CLI — os agentes aparecem aqui ao vivo, cada num worktree isolado.`,clickTaskHint:`clique numa tarefa para detalhes`,lcClean:`Limpeza`,lcRollback:`Rollback`,lcDestroy:`Destruição`,lcFailed:`{{op}} falhou: {{reason}}`,lcUnknownError:`erro desconhecido`,lcWorktrees_one:`{{count}} worktree removido`,lcWorktrees_other:`{{count}} worktrees removidos`,lcCommits_one:`{{count}} commit revertido`,lcCommits_other:`{{count}} commits revertidos`,lcDeleted:`excluído {{items}}`,lcNothing:`nada a fazer`,lcNote:`{{op}}: {{body}} — nota: {{reason}}`,lcOk:`{{op}}: {{body}}`},fe={backTitle:`Voltar à atividade`,expandTitle:`Expandir detalhes da tarefa`,collapseTitle:`Recolher detalhes da tarefa`,eventLog:`Log de eventos da tarefa`,newestFirst:`mais recentes primeiro`,noEvents:`Nenhuma atividade foi registrada para esta tarefa ainda.`,workingOn:`trabalhando nesta tarefa`,assigned:`atribuído`,metaPriority:`Prioridade`,metaType:`Tipo`,metaDuration:`Duração`,metaElapsed:`Decorrido`,metaRetries:`Tentativas`,metaWorktree:`Worktree`,workerModel:`Modelo worker`,runDefault:`padrão do run: {{model}}`,runDefaultPlaceholder:`Padrão do run`,runDefaultPlaceholderModel:`Padrão do run ({{model}})`,verificationCmd:`Comando de verificação`,gatesCompletion:`valida a conclusão (exit 0)`,verifyPlaceholder:`ex. pnpm vitest run path/to/file`,addVerify:`+ Adicionar comando de verificação`,description:`Descrição`,timeline:`Linha do tempo`,dependsOn:`Depende de`,blocks:`Bloqueia`,newWorkerPlaceholder:`Nome do novo worker…`,confirmStop:`Parar esta tarefa em execução?`,confirmDelete:`Excluir esta tarefa do run?`,retryTitle:`Recolocar esta tarefa em pending`,reassign:`Reatribuir`,stopTitle:`Abortar o worker nesta tarefa`,splitTitle:`Dividir esta tarefa em subtarefas delegadas a workers separados`,split:`Dividir`,splitHint:`Uma subtarefa por linha — Título :: descrição (descrição opcional)`,splitPlaceholder:`Escreva a camada de dados :: adicione o repositório
4
4
  Conecte a UI`,splitInto:`Dividir em subtarefas`,deleteTitle:`Remover esta tarefa não iniciada do run`},pe={phaseStart:`Iniciar`,phaseInterview:`Entrevista`,phaseSpecReview:`Revisão spec`,phasePlanning:`Planejamento`,phaseTaskReview:`Revisão tarefas`,phaseRunning:`Em execução`,phaseDone:`Concluído`,titleFallback:`Novo projeto SDD`,questionsSuffix:`{{cur}}/{{max}} perguntas`,tasksSuffix:`{{count}} tarefas`,runCfgTitle:`Config do run — modelo padrão + cadeia de fallback`,modelsLabel:`Modelos`,startRun:`Iniciar run`,defaultWorkerModel:`Modelo worker padrão`,leaderDefaultPlaceholder:`Leader / padrão da sessão`,useSessionDefault:`Usar padrão da sessão`,fallbackChain:`Cadeia de fallback`,appliesToAll:`Aplica-se a cada tarefa. Override por tarefa no board live após iniciar.`,parallelAgents:`Agentes paralelos`,isolateWorktrees:`Isolar em worktrees git`,worktreeOn:`Cada tarefa roda no seu próprio worktree, squash-mergedo ao concluir.`,worktreeOff:`As tarefas rodam diretamente no ramo atual (sem isolamento).`,planDecompose:`Dividir automaticamente tarefas grandes`,planDecomposeOn:`Antes do despacho, divide tarefas que o motor de atomicidade marca como grandes demais.`,planDecomposeOff:`Mantém o grafo de tarefas aprovado como está (ainda pode dividir em runtime se uma tarefa falhar).`,goalPrompt:`O que você quer construir?`,goalPlaceholder:`ex. Adicionar login OAuth (Google + GitHub) com gestão de sessão`,startingInterview:`Iniciando entrevista…`,startInterview:`Iniciar entrevista`,introBody:`Um agente isolado entrevista você para construir uma spec, a decompõe num grafo de tarefas ordenado por dependências, depois uma frota multi-agente real a executa — acompanhe ao vivo no board. Se atualizar ou reiniciar, a entrevista retoma automaticamente.`,taskGraphSummary:`Grafo de tarefas · {{count}} tarefas, ordenadas por dependências`,dragToExplore:`arraste para explorar`,show:`mostrar`,goalLabel:`Objetivo`,implementationPlan:`Plano de implementação`,approveSpec:`Aprovar spec → planejar implementação`,approveTasks:`Aprovar tarefas`,approvePlan:`Aprovar plano`,backToQuestions:`Voltar às perguntas`,backToQuestionsTitle:`Rejeitar a spec e voltar às perguntas`,backToSpec:`Voltar à spec`,backToSpecTitle:`Rejeitar o plano e voltar à revisão da spec`,rewindToPhaseTitle:`Voltar a esta fase para revisar`,quickBestPractice:`Usar melhores práticas`,quickBestPracticeDirective:`Use as melhores práticas padrão da indústria para isso.`,generateSpecNow:`Gerar spec agora`,generateSpecNowTitle:`Gerar a especificação agora com os requisitos coletados`,interviewProgress:`Progresso da entrevista`,questionOf:`Pergunta {{current}} de {{max}}`,minRequiredMet:`Perguntas mínimas atendidas ✓`,minRequiredRemaining:`Mais {{count}} necessária(s)`,answerPlaceholder:`Responda à pergunta…`,changePlaceholder:`Pedir uma mudança…`,resumeBanner:`Entrevista retomada de uma sessão anterior — continue de onde parou.`,openLiveBoard:`Abrir board ao vivo`,discardInterview:`Descartar e recomeçar`,discardTitle:`Abandonar esta entrevista e limpar a sessão salva`},me={emptyDir:`vazio`,loadFailed:`Falha ao carregar arquivos: {{error}}`,expandAllTitle:`Expandir todas as pastas`,expandAll:`Expandir tudo`,collapseAllTitle:`Recolher todas as pastas`,collapse:`Recolher`,folders_one:`{{count}} pasta`,folders_other:`{{count}} pastas`,currentDirTitle:`Diretório atual: {{path}}`,navigateToTitle:`Navegar para {{path}}`,filesSuffix_one:`{{count}} arquivo`,filesSuffix_other:`{{count}} arquivos`,goToDir:`ir ao diretório`,navigateParentTitle:`Navegar ao diretório pai de {{path}}`,parentDirectory:`diretório pai`,noFiles:`Nenhum arquivo encontrado`,copyAbsPath:`Copiar caminho absoluto`,copyRelPath:`Copiar caminho relativo`,openInTerminal:`Abrir no terminal`,openInFileManager:`Abrir no gerenciador de arquivos`,mentionInChat:`Mencionar no chat`,copyPath:`Copiar caminho`,newFile:`Novo arquivo`,newFolder:`Nova pasta`,newFileTitle:`Criar novo arquivo`,newFolderTitle:`Criar nova pasta`,delete:`Excluir`,confirmDeleteDir:`Excluir "{{name}}" e todo o seu conteúdo?`,rename:`Renomear`,renameTitle:`Digite o novo nome`,sortByName:`Nome`,sortByNameTitle:`Ordenar por nome (padrão)`,sortBySize:`Tamanho`,sortBySizeTitle:`Ordenar por tamanho (maior primeiro)`,search:`Pesquisar arquivos`,searchPlaceholder:`Filtrar…`},he={sendSelectionAction:`Enviar seleção para o chat`,noFilesOpen:`Nenhum arquivo aberto`,selectToEdit:`Selecione um arquivo do explorador para editar`,sendSelectedTitle:`Enviar linhas selecionadas ao chat`,mentionFileTitle:`Mencionar este arquivo no chat`,sendToChat:`Enviar ao chat`,mentionFile:`Mencionar arquivo`,loadingEditor:`Carregando editor…`,selectTab:`Selecione uma aba para ver o conteúdo`},ge={title:`Atividade do arquivo`,overview:`Visão geral`,changes:`Alterações`,context:`Contexto`,logs:`Registros`,memory:`Memória`,lines:`linhas`,resizeHint:`Arraste para redimensionar · clique duas vezes para redefinir`,refresh:`Atualizar evidências do arquivo`,evidenceCount_one:`{{count}} evento`,evidenceCount_other:`{{count}} eventos`,mutations30m:`Edições · 30 min`,sessions:`Sessões`,actors:`Atores`,linkedWork:`Trabalho vinculado`,workLinks:`Kanban / tarefa`,recentActivity:`Atividade recente do arquivo`,events:`eventos`,noEvidence:`Ainda não há atividade atribuída a este arquivo.`,noSessions:`Ainda não há atribuição de sessão.`,noActors:`Ainda não há atribuição de ator.`,noWorkLinks:`Nenhum vínculo Kanban, SDD ou tarefa registrado.`,taskOrTodo:`Task / tarefa`,loadingEvidence:`Carregando evidências do arquivo…`,gitToBuffer:`Git HEAD → buffer atual do Monaco`,savedToBuffer:`Última versão salva → buffer atual do Monaco`,unsaved:`buffer não salvo`,lifetimeTitle:`Todo o histórico`,lifetimeChanges:`alterações`,lifetimeSessions:`sessões`,lifetimeTasks:`tarefas`,lifetimeBoards:`quadros`,lifetimeSince:`desde {{date}}`,lifetimeTools:`via {{tools}}`,level:{quiet:`estável`,active:`ativo`,churn:`alta rotatividade`},analysisTitle:{quiet:`Sem rotatividade recente`,active:`Este arquivo está sendo alterado`,churn:`Alterações repetidas detectadas`},analysisBody:{quiet:`Nenhuma alteração atribuída foi registrada nos últimos 30 minutos.`,active:`{{mutations}} alterações por {{actors}} atores em {{sessions}} sessões nos últimos 30 minutos.`,churn:`Alta rotatividade: {{mutations}} alterações por {{actors}} atores em {{sessions}} sessões. Verifique trabalhos sobrepostos antes da próxima edição.`}},_e={loading:`Carregando analytics…`,heading:`Painel de analytics`,autoRefresh:`atualização a cada 10 s`,liveSessions:`Sessões ao vivo`,agents:`Agentes`,agentsActive:`{{count}} ativos`,totalEvents:`Eventos totais`,categoriesSub:`{{count}} categorias`,toolCalls:`Chamadas`,iterationsSub:`{{count}} iterações`,sessionCost:`Custo da sessão`,tokensSub:`{{input}} entrada / {{output}} saída`,sessionDuration:`Duração da sessão`,messagesSub:`{{count}} mensagens`,eventsByCategory:`Eventos por categoria`,noEvents:`Nenhum evento registrado.`,topEvents:`Principais eventos`,activeSessionUsage:`Uso da sessão ativa`,provider:`Provedor`,model:`Modelo`,inputTokens:`Tokens de entrada`,outputTokens:`Tokens de saída`,cacheRatio:`Proporção de cache`,filesRead:`Arquivos lidos`,noSession:`Sem sessão ativa ou aguardando dados…`,healthErrors:`Saúde e erros`,errorEvents:`Eventos de erro`,warningEvents:`Eventos de aviso`,cacheHitRate:`Taxa de acerto de cache`,totalCategories:`Categorias totais`,waitingData:`Aguardando dados…`,recentEvents:`Eventos recentes`,noRecentEvents:`Sem eventos recentes. Interaja com a UI para gerar eventos.`},ve={heading:`Biblioteca de prompts`,searchPlaceholder:`Pesquisar prompts…`,newPrompt:`+ Novo prompt`,all:`Todos`,recent:`🕘 Recentes`,favorites:`★ Favoritos`,noMatch:`Nenhum prompt corresponde.`,newPromptHeading:`Novo prompt`,titlePlaceholder:`Título *`,descPlaceholder:`Descrição de uma linha`,categoryPlaceholder:`Categoria`,tagsPlaceholder:`tags, separadas, por vírgula`,contentPlaceholder:`Conteúdo do prompt * — use {{name}} para variáveis`,variables:`Variáveis`,addVar:`+ var`,varNamePlaceholder:`nome`,varDescPlaceholder:`descrição`,removeVarTitle:`Remover variável`,required:`obrigatório`,multiline:`multilinha`,enumPlaceholder:`enum: a, b, c`,savePrompt:`Salvar prompt`,saveFailed:`Não foi possível salvar o prompt.`,titleContentRequired:`Título e conteúdo são obrigatórios.`,toggleFavoriteTitle:`Alternar favorito`,selectOption:`— escolher —`,fillMissing:`Preencher: {{missing}}`,insertIntoChat:`Inserir no chat`,selectPromptHint:`Selecione um prompt para pré-visualizar e inserir.`},ye={scopeProject:`Projeto`,scopeGlobal:`Global`,scopeBundled:`Embutido`,timeoutError:`Tempo limite da requisição. Tente novamente.`,updateFailed:`Atualização falhou`,saveFailed:`Salvamento falhou`,uninstallFailed:`Desinstalação falhou`,noSkillSelected:`Nenhuma habilidade selecionada`,selectSkillHint:`Selecione uma habilidade da barra lateral para ver sua documentação`,goToChat:`Ir ao chat`,openSourceRepo:`Abrir repo de origem`,copySourceUrl:`Copiar URL de origem`,updatedLabel:`↑ Atualizado: {{list}}`,upToDateLabel:`— Atualizado: {{list}}`,errorsLabel:`✗ {{list}}`,checkUpdatesTitle:`Verificar atualizações`,exportTitle:`Exportar habilidade como .md`,editTitle:`Editar habilidade`,uninstallTitle:`Desinstalar habilidade`,closeTitle:`Fechar e ir ao chat`,backTitle:`Voltar`,forwardTitle:`Avançar`,relatedFiles:`Arquivos relacionados`,references:`Referências`,goToSkillTitle:`Ir para {{name}}`,loadingContent:`Carregando conteúdo…`,editingLabel:`Editando {{name}}`,editStats:`{{lines}} linhas · {{words}} palavras · {{chars}} caracteres`,charsWarningFmt:`⚠ {{used}} MB / {{limit}} MB`,draftSaved:`Rascunho salvo`,draftRestored:`Rascunho restaurado`,discardDraft:`Descartar rascunho`,splitViewTitle:`Vista dividida`,hidePreviewTitle:`Ocultar pré-visualização`,contentPlaceholder:`Conteúdo da habilidade (markdown)...`,loadFailed:`Falha ao carregar o conteúdo`,noContent:`Sem conteúdo disponível`,uninstallSkillHeading:`Desinstalar habilidade`,uninstallConfirm:`Desinstalar {{name}}?`,uninstallRemovePath:`Isso removerá a habilidade de {{path}} e não pode ser desfeito.`,uninstallAction:`Desinstalar`},be={sessionStats:`Estatísticas da sessão`,clients:`Clientes`,input:`Entrada`,output:`Saída`,cost:`Custo`,agentsSuffix:`agentes`,upPrefix:`ativo há {{time}}`,webuiClient:`Cliente WebUI`,disconnected:`Desconectado`,connected:`Conectado`,tuiClient:`Cliente TUI`,terminal:`Terminal`,repl:`REPL`,coordinator:`COORDENADOR`,fleetSummary:`Resumo da frota`,toolCallsLabel:`Chamadas`,tokensLabel:`Tokens`,coordinatingFleet:`Coordenando frota`,donePrefix:`✓ concluído ·`,failedPrefix:`✕ falhou ·`,seenPrefix:`visto há {{time}}`,availableDesk:`Mesa disponível`,mailboxHub:`Central de correio`,unreadSuffix_one:`{{count}} não lida`,unreadSuffix_other:`{{count}} não lidas`,allClear:`Tudo lido`,total:`Total`,unreadLabel:`Não lidas`,liveActivity:`Atividade ao vivo`,waitingActivity:`Aguardando atividade…`,now:`agora`,fleetHq:`QG da Frota WrongStack`,live:`AO VIVO`,legendStatus:`Status`,legendActive:`Ativo`,legendIdle:`Inativo`,legendError:`Erro`,legendConnections:`Conexões`,legendMail:`Correio`,legendTask:`Tarefa`,legendStatusConn:`Status`,arrange:`Organizar`,arrangeTitle:`Organizar os nós para caberem na tela disponível`,feed:`Feed`,feedTitle:`Alternar feed de atividade ao vivo`,broadcast:`Transmitir`,broadcastTitle:`Transmitir mensagem a cada sessão ao vivo do projeto`,broadcastToAll:`Transmitir a todas as sessões`,broadcastPlaceholder:`Mensagem a cada agente ao vivo do projeto…`,broadcastSendHint:`⌘/Ctrl+Enter para enviar`,openFullView:`Abrir visualização completa de operações`,rowStatus:`Status`,rowModel:`Modelo`,rowTool:`Ferramenta`,rowIterations:`Iterações`,rowToolCalls:`Chamadas`,rowTokensIn:`Tokens de entrada`,rowTokensOut:`Tokens de saída`,rowTokensTotal:`Tokens totais`,rowContext:`Contexto`,rowCost:`Custo`,rowLastSeen:`Visto pela última vez`,rowSurface:`Superfície`,rowBranch:`Ramo`,rowPid:`PID`,rowDir:`Dir.`,rowAgents:`Agentes`,rowUptime:`Tempo ativo`,rowConnections:`Conexões`,rowTotalMessages:`Mensagens totais`,rowUnread:`Não lidas`,recent:`Recentes`,noSubject:`(sem assunto)`,fullOperationStream:`Fluxo completo de operações`,closeEsc:`Fechar (Esc)`,idleDesk:`Mesa inativa`,fleetHqLabel:`QG da Frota`,clientsSuffix_one:`{{count}} cliente`,clientsSuffix_other:`{{count}} clientes`,taskFallback:`tarefa`,controlLabel:`controle`},xe={installTitle:`Instalar habilidade`,createTitle:`Criar habilidade`,exportTitle:`Exportar todas as habilidades como .zip`,checkUpdatesTitle:`Verificar atualizações (todas)`,searchPlaceholder:`Pesquisar habilidades…`,loading:`Carregando…`,noSkills:`Sem habilidades instaladas`,noMatch:`Nenhuma habilidade corresponde ao filtro`,noDescription:`Sem descrição`,scopeForeign:`Externa`,installHeading:`Instalar Habilidade`,installHint:`Insira uma referência de repo GitHub (owner/repo) ou URL completa.`,installPlaceholder:`ex. wrongstack/skill-name ou https://github.com/owner/repo`,installScope:`Escopo de instalação:`,installBtn:`Instalar`,installedMsg:`Instalada: {{names}}`,installFailed:`Instalação falhou`,createHeading:`Criar Habilidade`,createHint:`Scaffold uma nova habilidade. A primeira linha é o trigger.`,nameLabel:`Nome`,namePlaceholder:`ex. minha-nova-habilidade`,descLabel:`Descrição / Trigger`,descPlaceholder:`Use esta habilidade quando <situação>.
5
- Triggers: o usuário diz "palavra-chave", "outra".`,saveIn:`Salvar em:`,createBtn:`Criar Habilidade`,createdMsg:`Criada: {{name}}`,createFailed:`Criação falhou`},Se={noEvents:`Sem eventos.`},Ce={pickHint:`Escolha um kit — o agente vai segui-lo.`,gallery:`Galeria`,galleryTitle:`Abrir galeria de pré-visualização ao vivo`,stackTitle:`Stack alvo`,loading:`Carregando kits…`,notFound:`Nenhum kit de design encontrado.`,bestFor:`Ideal para:`,light:`Claro`,dark:`Escuro`,tune:`Ajustar`,font:`Fonte`,set:`Definir`,spaceGrotesk:`Space Grotesk…`,aaHeading:`Aa Título`,theQuickBrownFoxJumpsOver:`Um pequeno jabuti xereta viu dez cegonhas felizes.`,primary:`Primário`,ghost:`Fantasma`,badge:`Selo`,inputField:`Campo de entrada…`,radius:`Raio`,density:`Densidade`,motion:`Movimento`},we={detached:`(separado)`,count_one:`{{count}} worktree`,count_other:`{{count}} worktrees`,baseSuffix:` · base {{base}}`,baseLabel:`base`,cleanOrphans:`Limpar órfãos`,cleanOrphansTitle:`Remover todos os worktrees órfãos`,liveBusyTitle:`Um run está ativo — pare-o primeiro`,rescanTitle:`Re-escanear`,removed_one:`Removido {{count}} worktree.`,removed_other:`Removidos {{count}} worktrees.`,failed:`Falhou`,mergedIntoBase:`{{branch}} mesclado na base.`,conflictMerge:`Conflito ao mesclar {{branch}}: {{files}}`,seeGit:`ver git`,mergeFailed:`Mesclagem falhou: {{reason}}`,unknownReason:`desconhecido`,mergeConfirmTitle:`Mesclar {{branch}} em {{base}}?`,mergeConfirmMsg:`Squash-mescla este branch no branch base. Cancela limpo em caso de conflito.`,mergeAction:`Mesclar`,removeConfirmTitle:`Remover {{branch}}?`,removeConfirmMsg:`Remove forçadamente o checkout do worktree e exclui seu branch. Trabalho não mesclado é descartado.`,empty:`Sem worktrees.`,emptyHint:`Runs SDD / Goal criam worktrees isolados aqui. Órfãos de runs falhos também aparecem.`,actOpenTerm:`Abrir no terminal`,actOpenFolder:`Abrir pasta`,actViewChanges:`Ver alterações`,actMerge:`Mesclar na base`,actRemove:`Remover / descartar`,live:`ativo`,noUncommitted:`Sem alterações não confirmadas`,commitsAhead_one:`{{count}} commit à frente`,commitsAhead_other:`{{count}} commits à frente`,more:`…{{count}} mais`},Te={heading:`Mapa do Escritório`,headingHint:`Visualize sua frota como uma planta de escritório com status dos agentes ao vivo.`,statAgents:`Agentes`,statMail:`Correio`,unreadSuffix:` não lidos`,sectionView:`Visualização`,sectionDisplay:`Exibição`,sectionBackground:`Fundo`,sectionRecent:`Atividade Recente`,eventsTrackedSuffix:` eventos rastreados`,recentHint:`Envios de correio, spawns de agentes e mudanças de status aparecem aqui.`,sectionShortcuts:`Atalhos`,sectionLegend:`Legenda`,hudLabel:`HUD`,hudDesc:`Mostrar overlay de estatísticas de sessão em tempo real`,hudToggle:`Ativar HUD`,minimapLabel:`Minimapa`,minimapDesc:`Mostrar o minimapa de visão geral`,minimapToggle:`Ativar minimapa`,controlsLabel:`Controles`,controlsDesc:`Mostrar controles de zoom e ajuste`,controlsToggle:`Ativar controles`,animateLabel:`Animar arestas`,animateDesc:`Animar o fluxo nas conexões ativas`,animateToggle:`Ativar animação de arestas`,legendLabel:`Mostrar legenda`,legendDesc:`Exibir legenda de status e conexão`,legendToggle:`Ativar legenda`,feedLabel:`Feed ao vivo`,feedDesc:`Faixa inferior de atividade recente entre processos`,feedToggle:`Ativar feed ao vivo`,fitView:`Ajustar`,zoomIn:`Ampliar`,zoomOut:`Reduzir`,resetZoom:`Redefinir zoom`,legendActive:`Ativo (em execução)`,legendIdle:`Inativo`,legendError:`Erro`,legendOffline:`Offline`,bg:{dots:`Pontos`,lines:`Linhas`,cross:`Cruz`,none:`Nenhum`}},Ee={liveProjectOffice:`Escritório do projeto ao vivo`,agents:`agentes`,working:`trabalhando`,toolCalls:`chamadas de ferramentas`,office:`Escritório`,topology:`Topologia`,officeDescription:`Mesas e trabalho dos agentes ao vivo`,topologyDescription:`Clientes, agentes e conexões`,team:`Equipe`,liveDesk:`Mesa ao vivo e trabalho chegando`,lastActions:`Trabalhos recentes`,leadAgent:`Agente líder`,agent:`Agente`,callsCount:`{{count}} chamadas`,recent:`Recentes`,noCalls:`Nenhuma chamada concluída ainda`,telemetryReconnect:`Reconecte este terminal para iniciar o histórico de ferramentas`,thinking:`Pensando`,waiting:`Aguardando trabalho`,preparing:`Preparando a próxima ação…`,deskReady:`A mesa está pronta`,toolCall:`Chamada de ferramenta`,execution:`Execução`,started:`Início`,duration:`Duração`,session:`Sessão`,target:`Destino`,resultSize:`Tamanho do resultado`,lines:`linhas`,bytes:`bytes`,tokens:`tokens`,input:`Entrada`,outputPreview:`Prévia da saída`,readyTitle:`O escritório está pronto`,readyBody:`Os agentes ocuparão uma mesa assim que entrarem neste projeto.`,liveEvent:`fluxo de eventos ao vivo`,connectedSessions_one:`{{count}} sessão conectada`,connectedSessions_other:`{{count}} sessões conectadas`,detailHint:`clique em uma ação para ver a entrada e o resultado exatos`,officeBriefing:`Briefing do escritório`,leaderPrompt:`Último prompt do líder`,activeInstruction:`Instrução ativa`,telemetryWaiting:`Reconecte este terminal para receber instruções ao vivo`,syncWaiting:`aguardando sincronização`,todoTelemetryWaiting:`Reconecte este terminal para receber a lista de tarefas ao vivo`,taskNotReported:`O agente está trabalhando, mas nenhuma descrição de tarefa foi informada`,noPrompt:`Nenhum prompt recebido nesta sessão`,activeTodos:`Tarefas ativas`,todoProgress:`{{done}}/{{total}} concluídas`,allTodosDone:`Todas as tarefas concluídas`,noActiveTodos:`Nenhuma tarefa ativa`,moreTodos:`+{{count}} outras`,currentTask:`Tarefa atual`,task:`Tarefa`,promptReceived:`Recebido`,todos:`Tarefas`,todoStatus:{pending:`Pendente`,in_progress:`Em andamento`,completed:`Concluída`},breakRoom:`Sala de descanso`,onBreak:`{{count}} em pausa`,desksEmpty:`Todos estão em pausa — as mesas estão prontas para a próxima tarefa`,files:`ARQUIVOS`,read:`LEITURA`,write:`ESCRITA`,edit:`EDIÇÃO`,term:`TERM`,live:`AO VIVO`,uniqueFilesTouched:`Arquivos únicos tocados`,fileReads:`Leituras de arquivos`,filesWritten:`Arquivos gravados`,filesEdited:`Arquivos editados`,linesAddedAndRemoved:`Linhas adicionadas e removidas`,terminalCommands:`Comandos do terminal`,incomingAndOutgoingMail:`Correio recebido e enviado`,sessionActivityTotals:`Totais de atividade da sessão`,closeToolDetails:`Fechar detalhes da ferramenta`,closeDetails:`Fechar detalhes`,closeMailDetails:`Fechar detalhes do correio`,closeTaskDetails:`Fechar detalhes da tarefa`,closeOfficeBriefing:`Fechar o briefing do escritório`,priority:`Prioridade`,route:`Rota`},De={injectedHeading:`Memória SAGE injetada`,memoriesLabel_one:`{{count}} memória`,memoriesLabel_other:`{{count}} memórias`},Oe={tabProject:`Projeto SDD`,tabBoard:`Painel SDD ao vivo`,tabSpecs:`Especificações`},ke={label:`Painel lateral`},Ae={deleteTitle:`Excluir esta memória?`,backToList:`Voltar à lista de memórias`,copyId:`Copiar ID da memória`,deletedMemory:`Memória excluída`,anchorCursorHint:`O intervalo de linhas do cursor corresponde à âncora desta memória`,statusDeleted:`excluída`,statusSuperseded:`substituída`,restoreTitle:`Restaurar esta memória ao status ativo`,supersededJumpTitle:`Esta versão foi substituída — ir para a versão ativa`,acceptSuggestionTitle:`Aceitar a sugestão de exclusão da higiene — a memória será esquecida`,rejectSuggestionTitle:`Rejeitar a sugestão — a memória permanece como está e pode ser sugerida novamente`,updateTitle:`Atualizar o conteúdo da memória — o versionamento cria um novo registro ativo`,promoteTitle:"Promover para `permanent` — a higiene nunca mais exibirá isto",openRecordTitle:`Abrir o registro completo no MemoryManager`,fileDrawerAria:`Gaveta de memória de arquivo`,requeryTitle:`Consultar novamente este arquivo`,closeDrawerAria:`Fechar gaveta`,closeDrawerTitle:`Fechar gaveta de memória`,showRecoverable:`Mostrar recuperáveis (excluídas)`,cursorBoostTitle:`Impulso de cursor`,fileScopedTitle:`Escopo de arquivo`,mentionedInTitle:`Mencionado em`,editorKnowledge:`Conhecimento`,editorContentPlaceholder:`Exemplo: o estado da WebUI pertence aos stores Zustand; as mensagens do servidor atualizam esses stores por meio de handlers WebSocket singleton.`,editorImportance:`Importância`,editorConfidence:`Confiança`,editorFreshness:`Frescor`,editorAnchors:`Âncoras`,editorSymbolPlaceholder:`Nome do símbolo`,editorRelationships:`Relacionamentos`,searchAria:`Pesquisar memórias`,searchPlaceholder:`Pesquisar conteúdo, IDs, tags, âncoras…`,clearSearchAria:`Limpar pesquisa`,audienceFilterAria:`Filtrar apenas escopo de público`,audienceFilterTitle:`Mostrar apenas memórias de escopo de público`,clearFiltersAria:`Limpar todos os filtros`,clearFiltersTitle:`Limpar todos os filtros`,allStatuses:`Todos os status`,allKinds:`Todos os tipos`,tagsLabel:`Tags`,popularTags:`Tags populares`,graphAria:`Grafo de relacionamentos de memória`,graphFullscreenAria:`Abrir grafo em tela cheia`,clearTracesTitle:`Limpar todas as trilhas`,closePanelTitle:`Fechar painel`,traceMatched:`correspondente`,traceInjected:`injetado`,traceFiltered:`filtrado`,traceActive:`ativo`,traceExited:`saído`,traceScore:`pontuação`,traceError:`erro`,lifecycleAria:`Registro ao vivo do ciclo de vida da memória`,listAria:`Memórias`,emptyTitle:`O contexto de longo prazo do seu projeto`,emptyVerifiedAnchors:`Âncoras verificadas`,emptyTypedRelations:`Relações tipadas`,emptyAgentRecall:`Recuperação do agente`,lensesAria:`Lentes de memória SAGE`,loadingSage:`Carregando SAGE`,loadingAudience:`Carregando memórias de público`,storeUnavailable:`Armazenamento de memória indisponível`,backToChat:`Voltar ao chat`,sageHeading:`SAGE`,refreshAria:`Atualizar memórias`,tabMemories:`Memórias`,tabActive:`Ativas`,tabReview:`Revisão`,tabNeedsReview:`Requer revisão`,reviewLoading:`Carregando fila de revisão…`,reviewLoadTimeout:`A fila de revisão não respondeu a tempo.`,reviewEmptyTitle:`Nenhuma revisão pendente`,reviewEmptyHint:`Propostas de hygiene e triage aparecem aqui para aceitar/rejeitar.`,reviewPendingCount_one:`{{count}} revisão pendente`,reviewPendingCount_other:`{{count}} revisões pendentes`,reviewSelectAll:`Selecionar tudo`,reviewClearSelection:`Limpar seleção`,reviewSelectOne:`Selecionar item de revisão`,reviewBulkAccept:`Aceitar seleção`,reviewBulkKeep:`Manter seleção`,tabGraphEdges:`Arestas do grafo`,libraryAria:`Biblioteca de memórias`,viewAria:`Visualização de memórias`,detailAria:`Detalhe da memória`,fileForDrawerAria:`Arquivo para gaveta de memória`,cursorLabel:`cursor`,reviewLabel:`revisão`,hygieneReviewTitle:`Revisão de higiene: {{reason}} ({{days}} d)`,updatedSuffix:`atualizada {{date}}`,actionRecover:`Recuperar`,actionGoToActive:`Ir para a versão ativa`,actionAcceptDeletion:`Aceitar exclusão`,actionKeep:`Manter`,actionUpdate:`Atualizar`,actionMarkPermanent:`Marcar como permanente`,actionShowFull:`Mostrar completo`,itemLabel:`memórias`,noFile:`(sem arquivo)`,memoriesCount_one:`{{count}} memória`,memoriesCount_other:`{{count}} memórias`,pendingReviewCount_one:`{{count}} revisão pendente`,pendingReviewCount_other:`{{count}} revisões pendentes`,supersededCount:`{{count}} substituída(s)`,linesRange:`linhas {{start}}–{{end}}`,emptyOpenFile:`Abra um arquivo para ver suas memórias.`,loadingMemories:`Carregando memórias…`,errorPrefix:`Erro: {{message}}`,emptyNoMemories:`Nenhuma memória anexada a {{file}} ainda.`,pendingAccepting:`aceitando…`,pendingKeeping:`mantendo…`,pendingUpdating:`atualizando…`,pendingMarking:`marcando…`,pendingRecovering:`recuperando…`,deletedNeverPolicy:`Este registro é somente de auditoria e carrega uma proibição absoluta: nunca pode entrar no contexto do LLM.`,deletedEligiblePolicy:`O registro está inativo e não pode ser editado, mas permanece elegível como evidência histórica quando a recuperação o considerar relevante.`,deletingLabel:`Excluindo…`,actionDeleteMemory:`Excluir memória`,copiedNotice:`ID da memória copiado.`,revisionSuffix:`revisão {{n}}`,memoryRelationships:`Relacionamentos de memória`,captureMemory:`Capturar uma memória`,editMemory:`Editar memória`,editorCreateHint:`Adicione conhecimento durável com metadados de recuperação.`,editorEditHint:`Atualize o conteúdo sem perder a procedência.`,createMemory:`Criar memória`,saveChanges:`Salvar alterações`,addAnchor:`Adicionar âncora`,noAnchors:`Ainda não há âncoras — adicione uma para melhorar a precisão da recuperação`,loadingGraph:`carregando grafo real…`,graphStats:`{{nodes}} nós · {{edges}} arestas`,lifecycleHeading:`Ciclo de vida da memória`,statusWaiting:`aguardando`,statusLive:`ao vivo · {{count}}/100`,noMatching:`Nenhuma memória correspondente`,buildGraph:`Construa seu grafo de memórias`,clearFilters:`Limpar filtros`,createFirst:`Criar primeira memória`,captureButton:`Capturar memória`,memoryCaptured:`Memória capturada.`,memoryUpdated:`Memória atualizada.`,liveStore:`armazenamento ao vivo`,reconnecting:`reconectando`,newMemory:`Nova memória`,hideFileDrawer:`Ocultar gaveta de memória de arquivo`,showFileDrawer:`Mostrar gaveta de memória de arquivo`,hideDrawer:`Ocultar gaveta`,showDrawer:`Mostrar gaveta`,editorCharCount:`{{count}} caracteres`,editorContentLabel:`Conteúdo da memória`,editorKind:`Tipo`,editorScope:`Escopo`,editorLifecycleStatus:`Status do ciclo de vida`,editorSupersedes:`Substitui`,editorContradicts:`Contradiz`,filterByStatus:`Filtrar por status`,filterByKind:`Filtrar por tipo`,graphHeading:`Mapa de relacionamentos`,graphHeadingFull:`Mapa de relacionamentos — {{id}}`,graphOpenFullscreen:`Abrir em tela cheia`,projectKnowledge:`conhecimento do projeto`,sageSubtitle:`Inspecione, conecte, organize e aposente o contexto durável usado entre sessões de agentes.`,emptyBody:`Selecione uma memória para inspecionar seus metadados e o mapa de relacionamentos, ou capture conhecimento que agentes futuros devem recuperar automaticamente.`,tabDeleted:`Excluídas`,fileDrawerLabel:`Gaveta de arquivos`,selectFilePlaceholder:`— selecione um arquivo —`,memoryCountSummary:`{{shown}} de {{total}} memórias`,updatedSortLabel:`atualizado ↓`,searchBreakdownAria:`Detalhamento da busca`,searchBreakdownTitle:`Busca: {{query}}`,searchBreakdownDual:`canal duplo`,searchBreakdownLexicalOnly:`somente léxico`,searchBreakdownLoading:`Executando busca de canal duplo…`,searchBreakdownEmpty:`Nenhuma correspondência em nenhum canal.`,searchBreakdownSourceLabel:`Fonte: {{source}}`,tabAllMemories:`Todas as memórias`,tabAllMemoriesHint:`Inspecionar, organizar, aposentar`,tabAudience:`Com público`,tabAudienceHint:`Orientação roteada para agentes`,editorRelationshipsHint:`Referencie IDs de memória exatos. As relações são validadas e as arestas do grafo são reconstruídas pelo SAGE.`,editorTaskTypes:`Tipos de tarefa`,createAction:`Criar`,mutationTimeout:`{{verb}} expirou. Seu rascunho continua aqui.`,loadingSageContent:`Carregando conteúdo SAGE`,injectorActiveInContext:`Ativo no contexto`,injectorInjectionHistory:`Histórico de injeções`,injectorContextTransitions:`Transições de contexto`,metaCreated:`Criada`,metaUpdated:`Atualizada`,metaLastAccessed:`Último acesso`,metaLastVerified:`Última verificação`,referencedUnavailable:`Memória referenciada indisponível`,emptyFiltered:`Altere os filtros ou limpe a consulta de pesquisa.`,emptyCapture:`Capture fatos duráveis, decisões, convenções e notas vinculadas a arquivos para cada agente.`,memoryUnavailable:`A memória está indisponível ou foi removida.`,staleConflicts:`obsoletas + conflitos`},je={enableLayer:`Habilitar esta camada de limite`,outsideScope:`Fora do escopo`,askPermission:`Pedir permissão`,alwaysBlock:`Bloquear sempre`,allow:`Permitir`,allowSelectors:`Permitir seletores`,denySelectors:`Negar seletores`,crossPathSelectors:`O shell “Permitir” é opaco e pode cruzar seletores de caminho.`,removeLayer:`Remover camada`,taskInspector:`Inspetor de tarefas`,task:`Tarefa`,dispatched:`Despachada`,collapseDetails:`Recolher detalhes da tarefa`,taskBoundary:`Limite da tarefa`,title:`Título`,managedStage:`Estágio gerenciado`,status:`Status`,priority:`Prioridade`,type:`Tipo`,labelsCommaSeparated:`Rótulos (separados por vírgula)`,dueDatePlaceholder:`Data de vencimento (ISO ou AAAA-MM-DD)`,estimatedHours:`Horas estimadas`,actualHours:`Horas reais`,selectBlockingTasks:`Selecionar tarefas bloqueadoras…`,selectSequentialChain:`Adicionar tarefas a uma cadeia sequencial…`,enforceChainOrder:`Impor ordem da cadeia como dependências`,assignmentReason:`Motivo da mudança/atribuição (persistido na atividade)`,managedLifecycle:`Transição de ciclo de vida gerenciado`,kanbanAgentTransition:`Transição do Agente Kanban`,completedAction:`Ação concluída / ação do revisor`,progressComment:`Comentário de progresso verdadeiro (obrigatório)`,evidenceUrl:`URL do anexo de evidência`,source:`Origem`,taskId:`ID da tarefa`,run:`Executar`,column:`Coluna`,primaryModelSource:`Origem do modelo principal`,selectProviderModel:`Selecionar provedor/modelo exato…`,fallbackProfile:`Perfil de fallback (o primeiro modelo é o principal)`,selectProfile:`Selecionar perfil configurado…`,fallbackModels:`Modelos de fallback`,addFallbackModel:`Adicionar modelo de fallback…`,role:`Função`,selectRole:`Selecione uma função…`,assignSkills:`Atribuir habilidades obrigatórias…`,restrictTools:`Restringir a ferramentas específicas…`,agentNameOptional:`Nome do agente (opcional)`,retryPolicy:`Política de retentativa`,maxAttempts:`Tentativas máximas`,costCeilingUsd:`Teto de custo em USD`,grantCapability:`Conceder uma capacidade…`,targetBoard:`Quadro de destino`,boardPresence:`Presença no quadro`,liveBoardUsers:`Usuários ativos no quadro`,kanbanAgent:`Agente Kanban`,watchThisBoard:`Observar este quadro`,supervisorEngine:`Motor supervisor`,kanbanAgentModelSource:`Origem do modelo do Agente Kanban`,supervisorSkills:`Habilidades do supervisor`,forceLoadSkills:`Carregar habilidades agenticas à força…`,extraFallbackModels:`Modelos de fallback extras`,optionalFallbacks:`Fallbacks ordenados opcionais…`,queueHealth:`Saúde da fila`,claimableTasks:`Tarefas reivindicáveis`,runningAssignments:`Atribuições em execução`,inReview:`Em revisão`,manuallyBlocked:`Bloqueadas manualmente`,failedTasks:`Tarefas com falha`,blockedByDeps:`Tarefas prontas/pendentes bloqueadas por dependências`,expiredLeases:`Atribuições com concessão expirada`,healthy:`saudável`,costCeilingSum:`Soma de costCeilingUsd para tarefas em execução/na fila`,liveRunSteer:`Execução ao vivo — conduza a partir daqui`,openLiveRun:`Abrir a visualização da execução ao vivo (SDD Hub)`,runAsLiveJob:`Executar este quadro como um trabalho de agente ao vivo:`,startAsGoal:`Iniciar como Meta`,startAsSdd:`Iniciar como SDD`,runControls:`Controles de execução`,workerModel:`Modelo do worker`,setModelForTask:`Definir modelo para esta tarefa…`,newWorkerName:`Novo nome do worker`,duration:`Duração`,liveRun:`Execução ao vivo`,lastResult:`Último resultado`,definitionOfDone:`Definição de Pronto`,failingChecks:`Verificações com falha`,evidenceMissing:`Evidência ausente (verificações de agente/conselho sem referências de apoio)`,needsDecomposition:`Precisa de decomposição`,decompositionPending:`Propostas de decomposição aguardando aprovação`,noOutstanding:`Nenhuma verificação pendente ou questão de decomposição neste quadro.`,kanban:`Kanban`,newBoard:`Novo quadro`,createBoard:`Criar quadro`,deleteTask:`Excluir tarefa`,runFailed:`execução falhou`,splitPendingApproval:`divisão pendente de aprovação`,newTask:`Nova tarefa`,addTask:`Adicionar tarefa`,duplicateBoard:`Duplicar quadro`,boardHistory:`Histórico do quadro`,noHistory:`Sem histórico ainda`,confirmDelete:`Confirmar?`,confirmDeleteBoard:`Clique novamente para confirmar a exclusão do quadro`,deleteBoard:`Excluir quadro`,boardBoundary:`Limite do quadro`,noBoardSelected:`Nenhum quadro kanban selecionado.`,expandDetails:`Expandir detalhes da tarefa`,elapsed:`Decorrido`,assigned:`Atribuído`,configuredAgentRoute:`a rota de agente configurada`,subagent:`Subagente`,checkedAgo:`verificado há {{ago}}`,notChecked:`não verificado`,auditInterval:`Intervalo de auditoria (segundos)`,statusReady:`pronto`,statusRunning:`em execução`,statusReview:`em revisão`,statusBlocked:`bloqueado`,statusFailed:`com falha`,statusBlockedByDeps:`bloqueado por dependências`,statusStale:`obsoleto`,runningCost:"~${{cost}} custo em execução",actionPause:`Pausar`,actionResume:`Retomar`,actionRetryFailed:`Repetir com falha`,actionStop:`Parar`,actionReassign:`Reatribuir`,actionRunNow:`Executar agora`,deleteTaskAria:`Excluir tarefa: {{title}}`,confirmDeleteTask:`Clique novamente para confirmar a exclusão da tarefa`,confirmDeleteTaskAria:`Confirmar exclusão: {{title}}`,moveTaskToColumn:`Mover {{title}} para a coluna`,activityNoteTemplate:`{{action}} do WebUI para {{target}}.`},Me={heading:`Trabalhos cron`,subtitle:`Tarefas recorrentes agendadas gerenciadas pelo plugin cron.`,statusDisabled:`Desativado`,statusOverdue:`Atrasado`,statusActive:`Ativo`,jobCount_one:`{{count}} trabalho`,jobCount_other:`{{count}} trabalhos`,enabledCount:`{{count}} ativados`,overdueCount:`{{count}} atrasados`,totalRuns:`{{count}} execuções no total`,maxConcurrent:`máx. {{count}} simultâneos`,emptyTitle:`Nenhum trabalho cron agendado.`,emptyUse:`Use`,emptyToAdd:`para adicionar um.`,thStatus:`Status`,thName:`Nome`,thInterval:`Intervalo`,thRuns:`Execuções`,thNextRun:`Próxima execução`,thLastRun:`Última execução`,thAction:`Ação`,lastFiredAtTitle:`Última ativação às {{time}}`,footerUse:`Use`,footerToAdd:`para adicionar,`,footerToRemove:`para remover.`},Ne={refreshRosterData:`Atualizar dados do roster`,liveEmpty:`Agentes aparecem aqui quando subagentes são iniciados`,fleetInspector:`Inspetor de Frota`,openAgentsPanel:`Abrir painel de agentes`,toolCalls:`Chamadas de ferramentas`,running:`Em execução`,projectAgents:`Agentes do Projeto`,createOrCloneTitle:`Criar ou Clonar Agente do Projeto`,createOrCloneHint:`Herde qualquer agente do roster como modelo e desenvolva uma identidade, política de runtime e histórico aprendido independentes.`,cloneFromRole:`Clonar a partir do papel do roster`,cloneHint:`Prompt, ferramentas, habilidades e padrões são herdados. O aprendizado e edições posteriores permanecem isolados ao novo agente.`,displayName:`Nome de exibição`,descriptionPlaceholder:`Domine os fluxos de trabalho X, Y e Z deste projeto e verifique seus resultados.`,creating:`Criando…`,noCustomizations:`Nenhuma personalização ainda`,selectAgentEmpty:`Selecione um agente para editar personalizações`,saving:`Salvando…`,saveFailed:`Falha ao salvar`,failed:`Falhou`,learningResumed:`Aprendizado automático retomado`,optimizationEmptyToast:`A otimização produziu um resultado vazio. Tente novamente.`,noActiveModelToast:`Nenhum modelo ativo no servidor. Otimização enviada ao agente de chat.`,learningsEmpty:`As entradas de aprendizado aparecem quando os agentes capturam saída`,allRosterAgents:`Todos os Agentes do Roster`,optimizing:`Otimizando…`,paused:`pausado`,selectLearningAgent:`Selecione um agente para ver detalhes de aprendizado`,learningOn:`Aprendizado ativado`,lastCapture:`Última captura`,lifetimeCaptures:`Capturas totais`,hitRate:`Taxa de acerto`,neverUsed:`Nunca usado`,learningsLimitExceeded:`Os dados aprendidos excedem o limite flexível ({{bytes}}B / 8.192B). Otimize para sintetizar as entradas brutas em um documento consolidado e reduzir o volume de contexto.`,newPending:`novo pendente`,viewAction:`Visualizar`,applying:`Aplicando…`,searchPlaceholder:`Buscar agentes por nome, papel ou descrição…`,maxIterations:`Máx. de iterações`,maxToolCalls:`Máx. de chamadas de ferramentas`,projectCustomizations:`Personalizações do Projeto`,learnedEntries:`entradas aprendidas`,teachFailed:`Falha ao ensinar`,selectRoleEmpty:`Selecione um papel para inspecionar ou editar`,captureLearned:`Capturar aprendido`,teachThisAgent:`Ensinar este agente`,teachPlaceholder:`Descreva o que você quer que este agente faça melhor… ex.: 'Este agente deve sempre verificar versões no npm antes de recomendar'`,heading:`Elenco de agentes`,headerSummary:`{{customized}} personalizados · {{entries}} entradas aprendidas`,tabLive:`Frota ao vivo`,tabCatalog:`Catálogo do elenco`,tabLearning:`Autoaprendizagem`,tabCustomize:`Personalização`,learning:`aprendendo`,learningPaused:`Aprendizagem pausada`,autoLearningPaused:`Aprendizagem automática pausada`,toolsCount_one:`{{count}} ferramenta`,toolsCount_other:`{{count}} ferramentas`,maxItShort:`máx. {{value}} iter.`,customizedBadge:`Personalizado`,needsSummary:`⚠ Precisa de resumo`,timeout:`Tempo limite`,learnedEntriesCount_one:`{{count}} entrada aprendida`,learnedEntriesCount_other:`{{count}} entradas aprendidas`,sessionCapturesCount_one:`{{count}} captura de sessão`,sessionCapturesCount_other:`{{count}} capturas de sessão`,noAgentsMatch:`Nenhum agente corresponde a "{{query}}"`,footerRosterRoles_one:`função do elenco`,footerRosterRoles_other:`funções do elenco`,footerCustomized:`personalizados`,footerTotalLearned_one:`entrada aprendida no total`,footerTotalLearned_other:`entradas aprendidas no total`,clone:`+ Clonar`,abc:`ABC`,abcGeneratedFromName:`abc (gerado a partir do nome)`,roleIdOptional:`ID da função (opcional)`,purpose:`Finalidade`,taskTypesCommaOrOnePer:`Tipos de tarefa (separados por vírgula ou um por linha)`,cancel:`Cancelar`,selectAnAgentToEditCustomizations:`Selecione um agente para editar as personalizações`,llmImprove:`Melhoria por LLM`,reset:`Redefinir`,editIdentityMd:`Editar identity.md`,editLearnedMd:`Editar learned.md`,editConfigJson:`Editar config.json`,runtimePolicy:`Política de runtime`,retry:`Tentar novamente`,noSelfLearningDataYet:`Ainda não há dados de autoaprendizagem`,review:`revisar →`,selectAnAgentToViewLearning:`Selecione um agente para ver os detalhes de aprendizagem`,entries:`Entradas`,size:`Tamanho`,optimizeLearnings:`Otimizar aprendizados`,keep:`Manter`,drop:`Descartar`,describeACommandPatternOrBehavior:`Descreva um comando, padrão ou comportamento que este agente deve lembrar.`,eGAlwaysUsePnpmForThisProject:`ex.: Sempre use pnpm neste projeto`,teach:`Ensinar`,noActiveFleetAgents:`Nenhum agente de frota ativo`,clear:`Limpar`,agentsTotal:`agentes no total`,leader:`Líder`,iterations:`Iterações`,cost:`Custo`,context:`Contexto`,contextWindow:`Janela de contexto`,error:`Erro`,filterAll:`Todos ({{count}})`,filterRunning:`Em execução ({{count}})`,filterDone:`Concluído ({{count}})`,filterFailed:`Falharam ({{count}})`,optimizeAll:`Otimizar tudo ({{count}})`,policyUpdateFailed:`Falha ao atualizar a política`,noRawEntries:`Ainda não há entradas brutas para otimizar.`,optimizedOk:`Otimizado. Conhecimento consolidado atualizado.`,emptySynthesis:`O modelo retornou um resultado vazio. Nada foi alterado — tente novamente.`,consolidatedWithModel:`Aprendizados consolidados com {{model}}.`,consolidatedPlain:`Aprendizados consolidados.`,resetConfirm:`Redefinir todos os dados específicos do projeto do agente "{{role}}"?`,loadCustomizationFailed:`Falha ao carregar a personalização`,loadRuntimePolicyFailed:`Falha ao carregar a política de runtime`,runtimePolicySaveFailed:`Falha ao salvar a política de runtime`,llmImprovementFailed:`Falha na melhoria por LLM`,agentCreationFailed:`Falha ao criar o agente`,noActiveModelMsg:`Nenhum modelo ativo no servidor — a otimização foi enviada ao agente de chat.`,optimizationFailed:`Falha na otimização`,bulkOptimizationFailed:`Falha na otimização em massa`,taskTypesPlaceholder:`Fluxo X
5
+ Triggers: o usuário diz "palavra-chave", "outra".`,saveIn:`Salvar em:`,createBtn:`Criar Habilidade`,createdMsg:`Criada: {{name}}`,createFailed:`Criação falhou`},Se={noEvents:`Sem eventos.`},Ce={pickHint:`Escolha um kit — o agente vai segui-lo.`,gallery:`Galeria`,galleryTitle:`Abrir galeria de pré-visualização ao vivo`,stackTitle:`Stack alvo`,loading:`Carregando kits…`,notFound:`Nenhum kit de design encontrado.`,bestFor:`Ideal para:`,light:`Claro`,dark:`Escuro`,tune:`Ajustar`,font:`Fonte`,set:`Definir`,spaceGrotesk:`Space Grotesk…`,aaHeading:`Aa Título`,theQuickBrownFoxJumpsOver:`Um pequeno jabuti xereta viu dez cegonhas felizes.`,primary:`Primário`,ghost:`Fantasma`,badge:`Selo`,inputField:`Campo de entrada…`,radius:`Raio`,density:`Densidade`,motion:`Movimento`},we={detached:`(separado)`,count_one:`{{count}} worktree`,count_other:`{{count}} worktrees`,baseSuffix:` · base {{base}}`,baseLabel:`base`,cleanOrphans:`Limpar órfãos`,cleanOrphansTitle:`Remover todos os worktrees órfãos`,liveBusyTitle:`Um run está ativo — pare-o primeiro`,rescanTitle:`Re-escanear`,removed_one:`Removido {{count}} worktree.`,removed_other:`Removidos {{count}} worktrees.`,failed:`Falhou`,mergedIntoBase:`{{branch}} mesclado na base.`,conflictMerge:`Conflito ao mesclar {{branch}}: {{files}}`,seeGit:`ver git`,mergeFailed:`Mesclagem falhou: {{reason}}`,unknownReason:`desconhecido`,mergeConfirmTitle:`Mesclar {{branch}} em {{base}}?`,mergeConfirmMsg:`Squash-mescla este branch no branch base. Cancela limpo em caso de conflito.`,mergeAction:`Mesclar`,removeConfirmTitle:`Remover {{branch}}?`,removeConfirmMsg:`Remove forçadamente o checkout do worktree e exclui seu branch. Trabalho não mesclado é descartado.`,empty:`Sem worktrees.`,emptyHint:`Runs SDD / Goal criam worktrees isolados aqui. Órfãos de runs falhos também aparecem.`,actOpenTerm:`Abrir no terminal`,actOpenFolder:`Abrir pasta`,actViewChanges:`Ver alterações`,actMerge:`Mesclar na base`,actRemove:`Remover / descartar`,live:`ativo`,noUncommitted:`Sem alterações não confirmadas`,commitsAhead_one:`{{count}} commit à frente`,commitsAhead_other:`{{count}} commits à frente`,more:`…{{count}} mais`},Te={heading:`Mapa do Escritório`,headingHint:`Visualize sua frota como uma planta de escritório com status dos agentes ao vivo.`,statAgents:`Agentes`,statMail:`Correio`,unreadSuffix:` não lidos`,sectionView:`Visualização`,sectionDisplay:`Exibição`,sectionBackground:`Fundo`,sectionRecent:`Atividade Recente`,eventsTrackedSuffix:` eventos rastreados`,recentHint:`Envios de correio, spawns de agentes e mudanças de status aparecem aqui.`,sectionShortcuts:`Atalhos`,sectionLegend:`Legenda`,hudLabel:`HUD`,hudDesc:`Mostrar overlay de estatísticas de sessão em tempo real`,hudToggle:`Ativar HUD`,minimapLabel:`Minimapa`,minimapDesc:`Mostrar o minimapa de visão geral`,minimapToggle:`Ativar minimapa`,controlsLabel:`Controles`,controlsDesc:`Mostrar controles de zoom e ajuste`,controlsToggle:`Ativar controles`,animateLabel:`Animar arestas`,animateDesc:`Animar o fluxo nas conexões ativas`,animateToggle:`Ativar animação de arestas`,legendLabel:`Mostrar legenda`,legendDesc:`Exibir legenda de status e conexão`,legendToggle:`Ativar legenda`,feedLabel:`Feed ao vivo`,feedDesc:`Faixa inferior de atividade recente entre processos`,feedToggle:`Ativar feed ao vivo`,fitView:`Ajustar`,zoomIn:`Ampliar`,zoomOut:`Reduzir`,resetZoom:`Redefinir zoom`,legendActive:`Ativo (em execução)`,legendIdle:`Inativo`,legendError:`Erro`,legendOffline:`Offline`,bg:{dots:`Pontos`,lines:`Linhas`,cross:`Cruz`,none:`Nenhum`}},Ee={liveProjectOffice:`Escritório do projeto ao vivo`,agents:`agentes`,working:`trabalhando`,toolCalls:`chamadas de ferramentas`,office:`Escritório`,topology:`Topologia`,officeDescription:`Mesas e trabalho dos agentes ao vivo`,topologyDescription:`Clientes, agentes e conexões`,team:`Equipe`,liveDesk:`Mesa ao vivo e trabalho chegando`,lastActions:`Trabalhos recentes`,leadAgent:`Agente líder`,agent:`Agente`,callsCount:`{{count}} chamadas`,recent:`Recentes`,noCalls:`Nenhuma chamada concluída ainda`,telemetryReconnect:`Reconecte este terminal para iniciar o histórico de ferramentas`,thinking:`Pensando`,waiting:`Aguardando trabalho`,preparing:`Preparando a próxima ação…`,deskReady:`A mesa está pronta`,toolCall:`Chamada de ferramenta`,execution:`Execução`,started:`Início`,duration:`Duração`,session:`Sessão`,target:`Destino`,resultSize:`Tamanho do resultado`,lines:`linhas`,bytes:`bytes`,tokens:`tokens`,input:`Entrada`,outputPreview:`Prévia da saída`,readyTitle:`O escritório está pronto`,readyBody:`Os agentes ocuparão uma mesa assim que entrarem neste projeto.`,liveEvent:`fluxo de eventos ao vivo`,connectedSessions_one:`{{count}} sessão conectada`,connectedSessions_other:`{{count}} sessões conectadas`,detailHint:`clique em uma ação para ver a entrada e o resultado exatos`,officeBriefing:`Briefing do escritório`,leaderPrompt:`Último prompt do líder`,activeInstruction:`Instrução ativa`,telemetryWaiting:`Reconecte este terminal para receber instruções ao vivo`,syncWaiting:`aguardando sincronização`,todoTelemetryWaiting:`Reconecte este terminal para receber a lista de tarefas ao vivo`,taskNotReported:`O agente está trabalhando, mas nenhuma descrição de tarefa foi informada`,noPrompt:`Nenhum prompt recebido nesta sessão`,activeTodos:`Tarefas ativas`,todoProgress:`{{done}}/{{total}} concluídas`,allTodosDone:`Todas as tarefas concluídas`,noActiveTodos:`Nenhuma tarefa ativa`,moreTodos:`+{{count}} outras`,currentTask:`Tarefa atual`,task:`Tarefa`,promptReceived:`Recebido`,todos:`Tarefas`,todoStatus:{pending:`Pendente`,in_progress:`Em andamento`,completed:`Concluída`},breakRoom:`Sala de descanso`,onBreak:`{{count}} em pausa`,desksEmpty:`Todos estão em pausa — as mesas estão prontas para a próxima tarefa`,files:`ARQUIVOS`,read:`LEITURA`,write:`ESCRITA`,edit:`EDIÇÃO`,term:`TERM`,live:`AO VIVO`,uniqueFilesTouched:`Arquivos únicos tocados`,fileReads:`Leituras de arquivos`,filesWritten:`Arquivos gravados`,filesEdited:`Arquivos editados`,linesAddedAndRemoved:`Linhas adicionadas e removidas`,terminalCommands:`Comandos do terminal`,incomingAndOutgoingMail:`Correio recebido e enviado`,sessionActivityTotals:`Totais de atividade da sessão`,closeToolDetails:`Fechar detalhes da ferramenta`,closeDetails:`Fechar detalhes`,closeMailDetails:`Fechar detalhes do correio`,closeTaskDetails:`Fechar detalhes da tarefa`,closeOfficeBriefing:`Fechar o briefing do escritório`,priority:`Prioridade`,route:`Rota`},De={injectedHeading:`Memória SAGE injetada`,memoriesLabel_one:`{{count}} memória`,memoriesLabel_other:`{{count}} memórias`},Oe={tabProject:`Projeto SDD`,tabBoard:`Painel SDD ao vivo`,tabSpecs:`Especificações`},ke={label:`Painel lateral`},Ae={deleteTitle:`Excluir esta memória?`,backToList:`Voltar à lista de memórias`,copyId:`Copiar ID da memória`,deletedMemory:`Memória excluída`,anchorCursorHint:`O intervalo de linhas do cursor corresponde à âncora desta memória`,statusDeleted:`excluída`,statusSuperseded:`substituída`,restoreTitle:`Restaurar esta memória ao status ativo`,supersededJumpTitle:`Esta versão foi substituída — ir para a versão ativa`,acceptSuggestionTitle:`Aceitar a sugestão de exclusão da higiene — a memória será esquecida`,rejectSuggestionTitle:`Rejeitar a sugestão — a memória permanece como está e pode ser sugerida novamente`,updateTitle:`Atualizar o conteúdo da memória — o versionamento cria um novo registro ativo`,promoteTitle:"Promover para `permanent` — a higiene nunca mais exibirá isto",openRecordTitle:`Abrir o registro completo no MemoryManager`,fileDrawerAria:`Gaveta de memória de arquivo`,requeryTitle:`Consultar novamente este arquivo`,closeDrawerAria:`Fechar gaveta`,closeDrawerTitle:`Fechar gaveta de memória`,showRecoverable:`Mostrar recuperáveis (excluídas)`,cursorBoostTitle:`Impulso de cursor`,fileScopedTitle:`Escopo de arquivo`,mentionedInTitle:`Mencionado em`,editorKnowledge:`Conhecimento`,editorContentPlaceholder:`Exemplo: o estado da WebUI pertence aos stores Zustand; as mensagens do servidor atualizam esses stores por meio de handlers WebSocket singleton.`,editorImportance:`Importância`,editorConfidence:`Confiança`,editorFreshness:`Frescor`,editorAnchors:`Âncoras`,editorSymbolPlaceholder:`Nome do símbolo`,editorRelationships:`Relacionamentos`,searchAria:`Pesquisar memórias`,searchPlaceholder:`Pesquisar conteúdo, IDs, tags, âncoras…`,clearSearchAria:`Limpar pesquisa`,audienceFilterAria:`Filtrar apenas escopo de público`,audienceFilterTitle:`Mostrar apenas memórias de escopo de público`,clearFiltersAria:`Limpar todos os filtros`,clearFiltersTitle:`Limpar todos os filtros`,allStatuses:`Todos os status`,allKinds:`Todos os tipos`,tagsLabel:`Tags`,popularTags:`Tags populares`,graphAria:`Grafo de relacionamentos de memória`,graphFullscreenAria:`Abrir grafo em tela cheia`,clearTracesTitle:`Limpar todas as trilhas`,closePanelTitle:`Fechar painel`,traceMatched:`correspondente`,traceInjected:`injetado`,traceFiltered:`filtrado`,traceActive:`ativo`,traceExited:`saído`,traceScore:`pontuação`,traceError:`erro`,lifecycleAria:`Registro ao vivo do ciclo de vida da memória`,listAria:`Memórias`,emptyTitle:`O contexto de longo prazo do seu projeto`,emptyVerifiedAnchors:`Âncoras verificadas`,emptyTypedRelations:`Relações tipadas`,emptyAgentRecall:`Recuperação do agente`,lensesAria:`Lentes de memória SAGE`,loadingSage:`Carregando SAGE`,loadingAudience:`Carregando memórias de público`,loadingVectorMemory:`Carregando memória vetorial`,storeUnavailable:`Armazenamento de memória indisponível`,backToChat:`Voltar ao chat`,sageHeading:`SAGE`,refreshAria:`Atualizar memórias`,tabMemories:`Memórias`,tabActive:`Ativas`,tabReview:`Revisão`,tabNeedsReview:`Requer revisão`,reviewLoading:`Carregando fila de revisão…`,reviewLoadTimeout:`A fila de revisão não respondeu a tempo.`,reviewEmptyTitle:`Nenhuma revisão pendente`,reviewEmptyHint:`Propostas de hygiene e triage aparecem aqui para aceitar/rejeitar.`,reviewPendingCount_one:`{{count}} revisão pendente`,reviewPendingCount_other:`{{count}} revisões pendentes`,reviewSelectAll:`Selecionar tudo`,reviewClearSelection:`Limpar seleção`,reviewSelectOne:`Selecionar item de revisão`,reviewBulkAccept:`Aceitar seleção`,reviewBulkKeep:`Manter seleção`,tabGraphEdges:`Arestas do grafo`,libraryAria:`Biblioteca de memórias`,viewAria:`Visualização de memórias`,detailAria:`Detalhe da memória`,fileForDrawerAria:`Arquivo para gaveta de memória`,cursorLabel:`cursor`,reviewLabel:`revisão`,hygieneReviewTitle:`Revisão de higiene: {{reason}} ({{days}} d)`,updatedSuffix:`atualizada {{date}}`,actionRecover:`Recuperar`,actionGoToActive:`Ir para a versão ativa`,actionAcceptDeletion:`Aceitar exclusão`,actionKeep:`Manter`,actionUpdate:`Atualizar`,actionMarkPermanent:`Marcar como permanente`,actionShowFull:`Mostrar completo`,itemLabel:`memórias`,noFile:`(sem arquivo)`,memoriesCount_one:`{{count}} memória`,memoriesCount_other:`{{count}} memórias`,pendingReviewCount_one:`{{count}} revisão pendente`,pendingReviewCount_other:`{{count}} revisões pendentes`,supersededCount:`{{count}} substituída(s)`,linesRange:`linhas {{start}}–{{end}}`,emptyOpenFile:`Abra um arquivo para ver suas memórias.`,loadingMemories:`Carregando memórias…`,errorPrefix:`Erro: {{message}}`,emptyNoMemories:`Nenhuma memória anexada a {{file}} ainda.`,pendingAccepting:`aceitando…`,pendingKeeping:`mantendo…`,pendingUpdating:`atualizando…`,pendingMarking:`marcando…`,pendingRecovering:`recuperando…`,deletedNeverPolicy:`Este registro é somente de auditoria e carrega uma proibição absoluta: nunca pode entrar no contexto do LLM.`,deletedEligiblePolicy:`O registro está inativo e não pode ser editado, mas permanece elegível como evidência histórica quando a recuperação o considerar relevante.`,deletingLabel:`Excluindo…`,actionDeleteMemory:`Excluir memória`,copiedNotice:`ID da memória copiado.`,revisionSuffix:`revisão {{n}}`,memoryRelationships:`Relacionamentos de memória`,captureMemory:`Capturar uma memória`,editMemory:`Editar memória`,editorCreateHint:`Adicione conhecimento durável com metadados de recuperação.`,editorEditHint:`Atualize o conteúdo sem perder a procedência.`,createMemory:`Criar memória`,saveChanges:`Salvar alterações`,addAnchor:`Adicionar âncora`,noAnchors:`Ainda não há âncoras — adicione uma para melhorar a precisão da recuperação`,loadingGraph:`carregando grafo real…`,graphStats:`{{nodes}} nós · {{edges}} arestas`,lifecycleHeading:`Ciclo de vida da memória`,statusWaiting:`aguardando`,statusLive:`ao vivo · {{count}}/100`,noMatching:`Nenhuma memória correspondente`,buildGraph:`Construa seu grafo de memórias`,clearFilters:`Limpar filtros`,createFirst:`Criar primeira memória`,captureButton:`Capturar memória`,memoryCaptured:`Memória capturada.`,memoryUpdated:`Memória atualizada.`,liveStore:`armazenamento ao vivo`,reconnecting:`reconectando`,newMemory:`Nova memória`,hideFileDrawer:`Ocultar gaveta de memória de arquivo`,showFileDrawer:`Mostrar gaveta de memória de arquivo`,hideDrawer:`Ocultar gaveta`,showDrawer:`Mostrar gaveta`,editorCharCount:`{{count}} caracteres`,editorContentLabel:`Conteúdo da memória`,editorKind:`Tipo`,editorScope:`Escopo`,editorLifecycleStatus:`Status do ciclo de vida`,editorSupersedes:`Substitui`,editorContradicts:`Contradiz`,filterByStatus:`Filtrar por status`,filterByKind:`Filtrar por tipo`,graphHeading:`Mapa de relacionamentos`,graphHeadingFull:`Mapa de relacionamentos — {{id}}`,graphOpenFullscreen:`Abrir em tela cheia`,projectKnowledge:`conhecimento do projeto`,sageSubtitle:`Inspecione, conecte, organize e aposente o contexto durável usado entre sessões de agentes.`,emptyBody:`Selecione uma memória para inspecionar seus metadados e o mapa de relacionamentos, ou capture conhecimento que agentes futuros devem recuperar automaticamente.`,tabDeleted:`Excluídas`,fileDrawerLabel:`Gaveta de arquivos`,selectFilePlaceholder:`— selecione um arquivo —`,memoryCountSummary:`{{shown}} de {{total}} memórias`,updatedSortLabel:`atualizado ↓`,searchBreakdownAria:`Detalhamento da busca`,searchBreakdownTitle:`Busca: {{query}}`,searchBreakdownDual:`canal duplo`,searchBreakdownLexicalOnly:`somente léxico`,searchBreakdownLoading:`Executando busca de canal duplo…`,searchBreakdownEmpty:`Nenhuma correspondência em nenhum canal.`,searchBreakdownSourceLabel:`Fonte: {{source}}`,tabAllMemories:`Todas as memórias`,tabAllMemoriesHint:`Inspecionar, organizar, aposentar`,tabAudience:`Com público`,tabAudienceHint:`Orientação roteada para agentes`,tabVectorMemory:`Memória vetorial`,tabVectorMemoryHint:`Armazenamento semântico de embeddings`,editorRelationshipsHint:`Referencie IDs de memória exatos. As relações são validadas e as arestas do grafo são reconstruídas pelo SAGE.`,editorTaskTypes:`Tipos de tarefa`,createAction:`Criar`,mutationTimeout:`{{verb}} expirou. Seu rascunho continua aqui.`,loadingSageContent:`Carregando conteúdo SAGE`,injectorActiveInContext:`Ativo no contexto`,injectorInjectionHistory:`Histórico de injeções`,injectorContextTransitions:`Transições de contexto`,metaCreated:`Criada`,metaUpdated:`Atualizada`,metaLastAccessed:`Último acesso`,metaLastVerified:`Última verificação`,referencedUnavailable:`Memória referenciada indisponível`,emptyFiltered:`Altere os filtros ou limpe a consulta de pesquisa.`,emptyCapture:`Capture fatos duráveis, decisões, convenções e notas vinculadas a arquivos para cada agente.`,memoryUnavailable:`A memória está indisponível ou foi removida.`,staleConflicts:`obsoletas + conflitos`},je={enableLayer:`Habilitar esta camada de limite`,outsideScope:`Fora do escopo`,askPermission:`Pedir permissão`,alwaysBlock:`Bloquear sempre`,allow:`Permitir`,allowSelectors:`Permitir seletores`,denySelectors:`Negar seletores`,crossPathSelectors:`O shell “Permitir” é opaco e pode cruzar seletores de caminho.`,removeLayer:`Remover camada`,taskInspector:`Inspetor de tarefas`,task:`Tarefa`,dispatched:`Despachada`,collapseDetails:`Recolher detalhes da tarefa`,taskBoundary:`Limite da tarefa`,title:`Título`,managedStage:`Estágio gerenciado`,status:`Status`,priority:`Prioridade`,type:`Tipo`,labelsCommaSeparated:`Rótulos (separados por vírgula)`,dueDatePlaceholder:`Data de vencimento (ISO ou AAAA-MM-DD)`,estimatedHours:`Horas estimadas`,actualHours:`Horas reais`,selectBlockingTasks:`Selecionar tarefas bloqueadoras…`,selectSequentialChain:`Adicionar tarefas a uma cadeia sequencial…`,enforceChainOrder:`Impor ordem da cadeia como dependências`,assignmentReason:`Motivo da mudança/atribuição (persistido na atividade)`,managedLifecycle:`Transição de ciclo de vida gerenciado`,kanbanAgentTransition:`Transição do Agente Kanban`,completedAction:`Ação concluída / ação do revisor`,progressComment:`Comentário de progresso verdadeiro (obrigatório)`,evidenceUrl:`URL do anexo de evidência`,source:`Origem`,taskId:`ID da tarefa`,run:`Executar`,column:`Coluna`,primaryModelSource:`Origem do modelo principal`,selectProviderModel:`Selecionar provedor/modelo exato…`,fallbackProfile:`Perfil de fallback (o primeiro modelo é o principal)`,selectProfile:`Selecionar perfil configurado…`,fallbackModels:`Modelos de fallback`,addFallbackModel:`Adicionar modelo de fallback…`,role:`Função`,selectRole:`Selecione uma função…`,assignSkills:`Atribuir habilidades obrigatórias…`,restrictTools:`Restringir a ferramentas específicas…`,agentNameOptional:`Nome do agente (opcional)`,retryPolicy:`Política de retentativa`,maxAttempts:`Tentativas máximas`,costCeilingUsd:`Teto de custo em USD`,grantCapability:`Conceder uma capacidade…`,targetBoard:`Quadro de destino`,boardPresence:`Presença no quadro`,liveBoardUsers:`Usuários ativos no quadro`,kanbanAgent:`Agente Kanban`,watchThisBoard:`Observar este quadro`,supervisorEngine:`Motor supervisor`,kanbanAgentModelSource:`Origem do modelo do Agente Kanban`,supervisorSkills:`Habilidades do supervisor`,forceLoadSkills:`Carregar habilidades agenticas à força…`,extraFallbackModels:`Modelos de fallback extras`,optionalFallbacks:`Fallbacks ordenados opcionais…`,queueHealth:`Saúde da fila`,claimableTasks:`Tarefas reivindicáveis`,runningAssignments:`Atribuições em execução`,inReview:`Em revisão`,manuallyBlocked:`Bloqueadas manualmente`,failedTasks:`Tarefas com falha`,blockedByDeps:`Tarefas prontas/pendentes bloqueadas por dependências`,expiredLeases:`Atribuições com concessão expirada`,healthy:`saudável`,costCeilingSum:`Soma de costCeilingUsd para tarefas em execução/na fila`,liveRunSteer:`Execução ao vivo — conduza a partir daqui`,openLiveRun:`Abrir a visualização da execução ao vivo (SDD Hub)`,runAsLiveJob:`Executar este quadro como um trabalho de agente ao vivo:`,startAsGoal:`Iniciar como Meta`,startAsSdd:`Iniciar como SDD`,runControls:`Controles de execução`,workerModel:`Modelo do worker`,setModelForTask:`Definir modelo para esta tarefa…`,newWorkerName:`Novo nome do worker`,duration:`Duração`,liveRun:`Execução ao vivo`,lastResult:`Último resultado`,definitionOfDone:`Definição de Pronto`,failingChecks:`Verificações com falha`,evidenceMissing:`Evidência ausente (verificações de agente/conselho sem referências de apoio)`,needsDecomposition:`Precisa de decomposição`,decompositionPending:`Propostas de decomposição aguardando aprovação`,noOutstanding:`Nenhuma verificação pendente ou questão de decomposição neste quadro.`,kanban:`Kanban`,newBoard:`Novo quadro`,createBoard:`Criar quadro`,deleteTask:`Excluir tarefa`,runFailed:`execução falhou`,splitPendingApproval:`divisão pendente de aprovação`,newTask:`Nova tarefa`,addTask:`Adicionar tarefa`,duplicateBoard:`Duplicar quadro`,boardHistory:`Histórico do quadro`,noHistory:`Sem histórico ainda`,confirmDelete:`Confirmar?`,confirmDeleteBoard:`Clique novamente para confirmar a exclusão do quadro`,deleteBoard:`Excluir quadro`,boardBoundary:`Limite do quadro`,noBoardSelected:`Nenhum quadro kanban selecionado.`,expandDetails:`Expandir detalhes da tarefa`,elapsed:`Decorrido`,assigned:`Atribuído`,configuredAgentRoute:`a rota de agente configurada`,subagent:`Subagente`,checkedAgo:`verificado há {{ago}}`,notChecked:`não verificado`,auditInterval:`Intervalo de auditoria (segundos)`,statusReady:`pronto`,statusRunning:`em execução`,statusReview:`em revisão`,statusBlocked:`bloqueado`,statusFailed:`com falha`,statusBlockedByDeps:`bloqueado por dependências`,statusStale:`obsoleto`,runningCost:"~${{cost}} custo em execução",actionPause:`Pausar`,actionResume:`Retomar`,actionRetryFailed:`Repetir com falha`,actionStop:`Parar`,actionReassign:`Reatribuir`,actionRunNow:`Executar agora`,deleteTaskAria:`Excluir tarefa: {{title}}`,confirmDeleteTask:`Clique novamente para confirmar a exclusão da tarefa`,confirmDeleteTaskAria:`Confirmar exclusão: {{title}}`,moveTaskToColumn:`Mover {{title}} para a coluna`,activityNoteTemplate:`{{action}} do WebUI para {{target}}.`},Me={heading:`Trabalhos cron`,subtitle:`Tarefas recorrentes agendadas gerenciadas pelo plugin cron.`,statusDisabled:`Desativado`,statusOverdue:`Atrasado`,statusActive:`Ativo`,jobCount_one:`{{count}} trabalho`,jobCount_other:`{{count}} trabalhos`,enabledCount:`{{count}} ativados`,overdueCount:`{{count}} atrasados`,totalRuns:`{{count}} execuções no total`,maxConcurrent:`máx. {{count}} simultâneos`,emptyTitle:`Nenhum trabalho cron agendado.`,emptyUse:`Use`,emptyToAdd:`para adicionar um.`,thStatus:`Status`,thName:`Nome`,thInterval:`Intervalo`,thRuns:`Execuções`,thNextRun:`Próxima execução`,thLastRun:`Última execução`,thAction:`Ação`,lastFiredAtTitle:`Última ativação às {{time}}`,footerUse:`Use`,footerToAdd:`para adicionar,`,footerToRemove:`para remover.`},Ne={refreshRosterData:`Atualizar dados do roster`,liveEmpty:`Agentes aparecem aqui quando subagentes são iniciados`,fleetInspector:`Inspetor de Frota`,openAgentsPanel:`Abrir painel de agentes`,toolCalls:`Chamadas de ferramentas`,running:`Em execução`,projectAgents:`Agentes do Projeto`,createOrCloneTitle:`Criar ou Clonar Agente do Projeto`,createOrCloneHint:`Herde qualquer agente do roster como modelo e desenvolva uma identidade, política de runtime e histórico aprendido independentes.`,cloneFromRole:`Clonar a partir do papel do roster`,cloneHint:`Prompt, ferramentas, habilidades e padrões são herdados. O aprendizado e edições posteriores permanecem isolados ao novo agente.`,displayName:`Nome de exibição`,descriptionPlaceholder:`Domine os fluxos de trabalho X, Y e Z deste projeto e verifique seus resultados.`,creating:`Criando…`,noCustomizations:`Nenhuma personalização ainda`,selectAgentEmpty:`Selecione um agente para editar personalizações`,saving:`Salvando…`,saveFailed:`Falha ao salvar`,failed:`Falhou`,learningResumed:`Aprendizado automático retomado`,optimizationEmptyToast:`A otimização produziu um resultado vazio. Tente novamente.`,noActiveModelToast:`Nenhum modelo ativo no servidor. Otimização enviada ao agente de chat.`,learningsEmpty:`As entradas de aprendizado aparecem quando os agentes capturam saída`,allRosterAgents:`Todos os Agentes do Roster`,optimizing:`Otimizando…`,paused:`pausado`,selectLearningAgent:`Selecione um agente para ver detalhes de aprendizado`,learningOn:`Aprendizado ativado`,lastCapture:`Última captura`,lifetimeCaptures:`Capturas totais`,hitRate:`Taxa de acerto`,neverUsed:`Nunca usado`,learningsLimitExceeded:`Os dados aprendidos excedem o limite flexível ({{bytes}}B / 8.192B). Otimize para sintetizar as entradas brutas em um documento consolidado e reduzir o volume de contexto.`,newPending:`novo pendente`,viewAction:`Visualizar`,applying:`Aplicando…`,searchPlaceholder:`Buscar agentes por nome, papel ou descrição…`,maxIterations:`Máx. de iterações`,maxToolCalls:`Máx. de chamadas de ferramentas`,projectCustomizations:`Personalizações do Projeto`,learnedEntries:`entradas aprendidas`,teachFailed:`Falha ao ensinar`,selectRoleEmpty:`Selecione um papel para inspecionar ou editar`,captureLearned:`Capturar aprendido`,teachThisAgent:`Ensinar este agente`,teachPlaceholder:`Descreva o que você quer que este agente faça melhor… ex.: 'Este agente deve sempre verificar versões no npm antes de recomendar'`,heading:`Elenco de agentes`,headerSummary:`{{customized}} personalizados · {{entries}} entradas aprendidas`,tabLive:`Frota ao vivo`,tabCatalog:`Catálogo do elenco`,tabLearning:`Autoaprendizagem`,tabCustomize:`Personalização`,learning:`aprendendo`,learningPaused:`Aprendizagem pausada`,autoLearningPaused:`Aprendizagem automática pausada`,toolsCount_one:`{{count}} ferramenta`,toolsCount_other:`{{count}} ferramentas`,maxItShort:`máx. {{value}} iter.`,customizedBadge:`Personalizado`,needsSummary:`⚠ Precisa de resumo`,timeout:`Tempo limite`,learnedEntriesCount_one:`{{count}} entrada aprendida`,learnedEntriesCount_other:`{{count}} entradas aprendidas`,sessionCapturesCount_one:`{{count}} captura de sessão`,sessionCapturesCount_other:`{{count}} capturas de sessão`,noAgentsMatch:`Nenhum agente corresponde a "{{query}}"`,footerRosterRoles_one:`função do elenco`,footerRosterRoles_other:`funções do elenco`,footerCustomized:`personalizados`,footerTotalLearned_one:`entrada aprendida no total`,footerTotalLearned_other:`entradas aprendidas no total`,clone:`+ Clonar`,abc:`ABC`,abcGeneratedFromName:`abc (gerado a partir do nome)`,roleIdOptional:`ID da função (opcional)`,purpose:`Finalidade`,taskTypesCommaOrOnePer:`Tipos de tarefa (separados por vírgula ou um por linha)`,cancel:`Cancelar`,selectAnAgentToEditCustomizations:`Selecione um agente para editar as personalizações`,llmImprove:`Melhoria por LLM`,reset:`Redefinir`,editIdentityMd:`Editar identity.md`,editLearnedMd:`Editar learned.md`,editConfigJson:`Editar config.json`,runtimePolicy:`Política de runtime`,retry:`Tentar novamente`,noSelfLearningDataYet:`Ainda não há dados de autoaprendizagem`,review:`revisar →`,selectAnAgentToViewLearning:`Selecione um agente para ver os detalhes de aprendizagem`,entries:`Entradas`,size:`Tamanho`,optimizeLearnings:`Otimizar aprendizados`,keep:`Manter`,drop:`Descartar`,describeACommandPatternOrBehavior:`Descreva um comando, padrão ou comportamento que este agente deve lembrar.`,eGAlwaysUsePnpmForThisProject:`ex.: Sempre use pnpm neste projeto`,teach:`Ensinar`,noActiveFleetAgents:`Nenhum agente de frota ativo`,clear:`Limpar`,agentsTotal:`agentes no total`,leader:`Líder`,iterations:`Iterações`,cost:`Custo`,context:`Contexto`,contextWindow:`Janela de contexto`,error:`Erro`,filterAll:`Todos ({{count}})`,filterRunning:`Em execução ({{count}})`,filterDone:`Concluído ({{count}})`,filterFailed:`Falharam ({{count}})`,optimizeAll:`Otimizar tudo ({{count}})`,policyUpdateFailed:`Falha ao atualizar a política`,noRawEntries:`Ainda não há entradas brutas para otimizar.`,optimizedOk:`Otimizado. Conhecimento consolidado atualizado.`,emptySynthesis:`O modelo retornou um resultado vazio. Nada foi alterado — tente novamente.`,consolidatedWithModel:`Aprendizados consolidados com {{model}}.`,consolidatedPlain:`Aprendizados consolidados.`,resetConfirm:`Redefinir todos os dados específicos do projeto do agente "{{role}}"?`,loadCustomizationFailed:`Falha ao carregar a personalização`,loadRuntimePolicyFailed:`Falha ao carregar a política de runtime`,runtimePolicySaveFailed:`Falha ao salvar a política de runtime`,llmImprovementFailed:`Falha na melhoria por LLM`,agentCreationFailed:`Falha ao criar o agente`,noActiveModelMsg:`Nenhum modelo ativo no servidor — a otimização foi enviada ao agente de chat.`,optimizationFailed:`Falha na otimização`,bulkOptimizationFailed:`Falha na otimização em massa`,taskTypesPlaceholder:`Fluxo X
6
6
  Análise Y
7
7
  Verificação Z`},Pe={generic:{name:`Agente de projeto genérico`,summary:`Modelo flexível que pode ser clonado em funções de projeto com aprendizado independente.`},"audit-log":{name:`Log de auditoria`,summary:`Analisa logs de sessão, fluxos de eventos e rastros do sistema.`},"bug-hunter":{name:`Caçador de bugs`,summary:`Verifica o código em busca de bugs, code smells e antipadrões.`},"refactor-planner":{name:`Planejador de refatoração`,summary:`Analisa a estrutura do código e produz planos de refatoração em fases.`},"security-scanner":{name:`Scanner de segurança`,summary:`Verifica código, configurações e dependências em busca de problemas de segurança.`},critic:{name:`Crítico`,summary:`Avalia decisões, planos e implementações.`},"shadow-agent":{name:`Agente sombra`,summary:`Agente de monitoramento em segundo plano que observa a saúde da frota.`},executor:{name:`Executor`,summary:`Executor de tarefas de uso geral para trabalho delegado.`},chimera:{name:`Chimera`,summary:`Revisão de qualidade do código dos arquivos alterados após a sessão.`},researcher:{name:`Pesquisador`,summary:`Especialista em pesquisa na web e coleta de dados.`},"tech-stack":{name:`Validador de stack tecnológico`,summary:`Valida escolhas de pacotes, bibliotecas e frameworks.`},orchestrator:{name:`Orquestrador`,summary:`Coordena a execução de tarefas multiagente.`},supervisor:{name:`Supervisor`,summary:`Supervisiona a execução de subagentes e trata escalonamentos.`},"quality-gate":{name:`Portão de qualidade`,summary:`Aplica portões de qualidade às implementações.`},architect:{name:`Arquiteto`,summary:`Toma decisões de design e arquitetura.`},"prompt-engineer":{name:`Engenheiro de prompts`,summary:`Projeta e otimiza prompts de sistema.`},mnemosyne:{name:`Mnemosyne`,summary:`Curador de memória — revisa e mantém a integridade do SAGE.`},autophase:{name:`AutoPhase`,summary:`Gerencia a execução autônoma de tarefas em múltiplas fases.`}},Fe={heading:`Elenco personalizado`,loading:`Carregando elenco personalizado…`,loadFailed:`Falha ao carregar o elenco`,invalidJson:`JSON inválido`,noImprovement:`Nenhuma sugestão de melhoria gerada.`,improveFailed:`Falha na melhoria por LLM`,behaviorSaved:`Comportamento salvo em learned.md`,saveFailedServer:`Falha ao salvar — veja os logs do servidor`,emptyTitle:`Nenhum agente de elenco personalizado`,emptyBody:`Agentes específicos do projeto aparecem aqui quando você cria ou edita arquivos em`,createExecutorIdentity:`+ Criar identidade do executor`,entries:`Entradas`,size:`Tamanho`,sessionCaptures:`Capturas de sessão`,editIdentity:`Editar identity.md`,editLearned:`Editar learned.md`,editConfig:`Editar config.json`,reviewEntries:`Revisar entradas ({{count}})`,reviewLearnedEntries:`Revisar entradas aprendidas ({{kept}}/{{total}} mantidas)`,applySelection:`Aplicar seleção`,keep:`✓ Manter`,drop:`✗ Descartar`,identityPlaceholder:`# Identidade de projeto para {{role}}
8
8