@wrongstack/webui 0.298.1 → 0.298.2

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 (98) hide show
  1. package/dist/assets/{AgentRosterView-C26RCdot.js → AgentRosterView-RvxaV08Y.js} +4 -4
  2. package/dist/assets/{AnalyticsDashboard-CEjjV3bX.js → AnalyticsDashboard-irejsLMt.js} +1 -1
  3. package/dist/assets/{AudienceMemoryPanel-CnfZC8x0.js → AudienceMemoryPanel-DDW_WPjf.js} +2 -2
  4. package/dist/assets/{ChangesView-D0BiTbs8.js → ChangesView-Bnd167hf.js} +1 -1
  5. package/dist/assets/{ChronicleDashboard-BZ4XOcvf.js → ChronicleDashboard-DC62FDEt.js} +1 -1
  6. package/dist/assets/CodeEditor-DCWcCQPO.js +1 -0
  7. package/dist/assets/CodeMap-DSqqgBuD.js +1 -0
  8. package/dist/assets/{CronJobsPanel-F6nhZtfg.js → CronJobsPanel-BXujnpGC.js} +1 -1
  9. package/dist/assets/{DeadCodeScanPanel-C9sLNUUc.js → DeadCodeScanPanel-HTbGUTMl.js} +1 -1
  10. package/dist/assets/{DebugDashboard-D8BLcLjI.js → DebugDashboard-B5kJBUv0.js} +1 -1
  11. package/dist/assets/{DesignGalleryView-B8mE5nGy.js → DesignGalleryView-BQ0CZpQm.js} +1 -1
  12. package/dist/assets/GoalView-DvaSR6CO.js +1 -0
  13. package/dist/assets/KanbanView-DpWs_i8T.js +3 -0
  14. package/dist/assets/MailboxDetailView-Dh8ekyMw.js +1 -0
  15. package/dist/assets/MemoryManager-CUAbNwsz.js +1 -0
  16. package/dist/assets/{ModelPicker-CNHhT2SO.js → ModelPicker-BxYMTEEN.js} +1 -1
  17. package/dist/assets/OfficeMapPanel-HgERknuN.js +4 -0
  18. package/dist/assets/{ProcessMonitor-Cc8LsfTh.js → ProcessMonitor-DVUCtVHZ.js} +1 -1
  19. package/dist/assets/{QueuePanel-B0NXFwEt.js → QueuePanel-n9lScdWu.js} +1 -1
  20. package/dist/assets/{RefreshDebugView-DLst_piS.js → RefreshDebugView-eZQ3wdxU.js} +1 -1
  21. package/dist/assets/{SageTabs-NwMcr4Pq.js → SageTabs-B-eQ--Sb.js} +2 -2
  22. package/dist/assets/SddHub-D81poT6w.js +2 -0
  23. package/dist/assets/{SessionsDashboard-C5dXb0iJ.js → SessionsDashboard-CR3NZeHw.js} +1 -1
  24. package/dist/assets/SetupScreen-t6wrhv6l.js +1 -0
  25. package/dist/assets/SkillDetailView-D6TOvMQU.js +3 -0
  26. package/dist/assets/{SpecsView-DhuaZcOl.js → SpecsView-BYiJr__T.js} +1 -1
  27. package/dist/assets/TechStackView-HEMM3PkG.js +1 -0
  28. package/dist/assets/{TerminalPanel-DjruTcb6.js → TerminalPanel-BgMsGfGa.js} +1 -1
  29. package/dist/assets/{Toaster-BmyghnqJ.js → Toaster-EXqX2jqp.js} +1 -1
  30. package/dist/assets/{activity-C34aPcFU.js → activity-BBPMHCAJ.js} +1 -1
  31. package/dist/assets/{activity-CBdzUJQ_.js → activity-BJijwuIr.js} +1 -1
  32. package/dist/assets/{activity-Wr0_Gb8A.js → activity-DReNmuta.js} +1 -1
  33. package/dist/assets/{activity-CLYyxeC6.js → activity-DeEOo2zu.js} +1 -1
  34. package/dist/assets/{activity-Cv_EIWjY.js → activity-Dyh19u3P.js} +1 -1
  35. package/dist/assets/{activity-Bo6DncWg.js → activity-GR8KiHvf.js} +1 -1
  36. package/dist/assets/{activity-kCY0dGRC.js → activity-iuGHFz2B.js} +1 -1
  37. package/dist/assets/button-DwmC7ENW.js +1 -0
  38. package/dist/assets/{chat-store-B2CjP2Zl.js → chat-store-LHzJqRCp.js} +2 -2
  39. package/dist/assets/{codemap-activity-store-Cz0_AHqt.js → codemap-activity-store-B6n7KiS8.js} +1 -1
  40. package/dist/assets/codemap-index-store-oapPwtvI.js +1 -0
  41. package/dist/assets/{dialog-BJef9ZZo.js → dialog-DsCmc6eL.js} +1 -1
  42. package/dist/assets/{empty-state-BGzRrNXI.js → empty-state-02bIS4x7.js} +1 -1
  43. package/dist/assets/{i18n-2wGPPdl_.js → i18n-DxnYsmc-.js} +2 -2
  44. package/dist/assets/index-Bf75VrDE.js +132 -0
  45. package/dist/assets/index-NFp5CXyK.css +1 -0
  46. package/dist/assets/{input-Bd10nfMj.js → input-UhWgodVi.js} +1 -1
  47. package/dist/assets/{mailbox-store-D3omLzBk.js → mailbox-store-xh2Ux-Xs.js} +1 -1
  48. package/dist/assets/{progress-ring-BEULkQ1r.js → progress-ring-C0O73ZjR.js} +1 -1
  49. package/dist/assets/{roster-ws-BmV_3U6w.js → roster-ws-DlQQL7Eh.js} +1 -1
  50. package/dist/assets/{session-store-ZMNU48xK.js → session-store-BE_S1f5v.js} +1 -1
  51. package/dist/assets/settings-B5xal2R3.js +1 -0
  52. package/dist/assets/settings-BHtFy8EG.js +1 -0
  53. package/dist/assets/settings-Bss5hBla.js +1 -0
  54. package/dist/assets/settings-BzrLCVRP.js +1 -0
  55. package/dist/assets/settings-C7RdvmLZ.js +1 -0
  56. package/dist/assets/settings-Dd94HoV6.js +1 -0
  57. package/dist/assets/settings-Dm9THFe8.js +1 -0
  58. package/dist/assets/{shared-CrX8iE-U.js → shared-bBntASiy.js} +1 -1
  59. package/dist/assets/{stores-DyQOSkkD.js → stores-BS-Bdi-5.js} +2 -2
  60. package/dist/assets/{ui-store-di6oY7cy.js → ui-store-C4Ybfoon.js} +1 -1
  61. package/dist/assets/{useWebSocket-BVFPigcY.js → useWebSocket-x8PMoTq8.js} +3 -3
  62. package/dist/assets/{utils-CwJvjOcH.js → utils-_s0GyctV.js} +1 -1
  63. package/dist/assets/{vendor-BTTkQ9Tn.js → vendor-CxV3l5PQ.js} +93 -30
  64. package/dist/assets/{view-navigation-BMRzqGbq.js → view-navigation-DLdE7qHU.js} +1 -1
  65. package/dist/assets/ws-client-Cy3oRAmZ.js +1 -0
  66. package/dist/components/SettingsPanel/ModelCatalogPicker.d.ts +22 -0
  67. package/dist/components/SettingsPanel/ModelListEditor.d.ts +41 -0
  68. package/dist/components/SettingsPanel/ModelSchemaEditor.d.ts +32 -0
  69. package/dist/components/SettingsPanel/ProviderModelsPanel.d.ts +2 -1
  70. package/dist/index.html +22 -22
  71. package/dist/index.js +7991 -6939
  72. package/dist/lib/ws-client.d.ts +6 -1
  73. package/dist/types/client-message.d.ts +19 -0
  74. package/dist/types/system.d.ts +3 -2
  75. package/package.json +8 -8
  76. package/dist/assets/CodeEditor-BlqaT56D.js +0 -1
  77. package/dist/assets/CodeMap-Bj5tjjW5.js +0 -1
  78. package/dist/assets/GoalView-DIx7Zr4a.js +0 -1
  79. package/dist/assets/KanbanView-DshzDwq1.js +0 -3
  80. package/dist/assets/MailboxDetailView-BJXpXjtm.js +0 -1
  81. package/dist/assets/MemoryManager-B-S5oREO.js +0 -1
  82. package/dist/assets/OfficeMapPanel-CBN9uG80.js +0 -4
  83. package/dist/assets/SddHub-CpRHXmjm.js +0 -2
  84. package/dist/assets/SetupScreen-B81fcNgP.js +0 -1
  85. package/dist/assets/SkillDetailView-BTvgE_MD.js +0 -3
  86. package/dist/assets/TechStackView-BXmfl2qY.js +0 -1
  87. package/dist/assets/button-BMECp1cg.js +0 -1
  88. package/dist/assets/codemap-index-store-B-XLZpJu.js +0 -1
  89. package/dist/assets/index-DeA8UyiB.css +0 -1
  90. package/dist/assets/index-x6-rLl5H.js +0 -132
  91. package/dist/assets/settings-BF0lRxlj.js +0 -1
  92. package/dist/assets/settings-CP6cwqHD.js +0 -1
  93. package/dist/assets/settings-D0rWEhMg.js +0 -1
  94. package/dist/assets/settings-DFCaP02p.js +0 -1
  95. package/dist/assets/settings-DHix1ZPL.js +0 -1
  96. package/dist/assets/settings-eEzjNzsC.js +0 -1
  97. package/dist/assets/settings-kp_aIgcX.js +0 -1
  98. package/dist/assets/ws-client-B0-KwuTK.js +0 -1
@@ -1,5 +1,5 @@
1
1
  import{n as ee}from"./rolldown-runtime-QTnfLwEv.js";var te=ee({agentOffice:()=>ke,agents:()=>s,agentsMonitor:()=>C,analytics:()=>be,autonomy:()=>Y,board:()=>y,brand:()=>t,changes:()=>c,checkpoint:()=>Z,codeEditor:()=>ve,collab:()=>N,connection:()=>n,context:()=>h,cost:()=>F,ctxMode:()=>q,debug:()=>b,default:()=>je,design:()=>j,designStudio:()=>Ee,diff:()=>ie,dock:()=>S,errorBody:()=>ce,fallback:()=>ae,fileActivity:()=>ye,fileExplorer:()=>_e,filePicker:()=>U,fileRef:()=>H,fleet:()=>m,goal:()=>Q,goalRun:()=>M,history:()=>o,inspector:()=>l,liveSessions:()=>oe,mailbox:()=>d,menu:()=>i,message:()=>de,mode:()=>P,model:()=>I,modelSwitcher:()=>L,monacoDiff:()=>se,monitor:()=>D,nav:()=>e,nextSteps:()=>u,office:()=>Ce,officeMap:()=>le,officeSettings:()=>Oe,phase:()=>K,plan:()=>ne,process:()=>re,promptLib:()=>xe,providerModels:()=>x,queue:()=>X,refine:()=>g,refresh:()=>v,sageMemory:()=>A,sdd:()=>O,sddBoard:()=>me,sddTask:()=>he,sddWizard:()=>ge,sddhub:()=>Ae,search:()=>G,sessionPanel:()=>p,sessionWatch:()=>T,sessions:()=>f,shortcuts:()=>pe,sideEffects:()=>E,sidePanel:()=>a,skillDetail:()=>Se,skillsList:()=>we,specs:()=>_,status:()=>r,task:()=>B,terminal:()=>w,timeline:()=>Te,toast:()=>W,todos:()=>z,toolGroup:()=>V,toolInput:()=>ue,toolResult:()=>k,transcript:()=>J,watch:()=>fe,work:()=>R,worktree:()=>$,worktrees:()=>De}),e={chat:`Session`,agents:`Agents`,history:`History`,files:`Files`,changes:`Changes`,mailbox:`Mailbox`,skills:`Skills`,worktrees:`Worktrees`,design:`Design Studio`,officemap:`Office Map`,settings:`Settings`,sddhub:`SDD`,goal:`Goal`,memory:`Memory`,fleet:`Fleet`,inspector:`Inspector`,prompts:`Prompts`},t={returnToChat:`{{name}} — return to chat`,returnToChatDefault:`WrongStack — return to chat`},n={connected:`Connected`,disconnected:`Disconnected from backend`,reconnecting:`Reconnecting to backend (attempt {{attempt}}) — retrying in {{remaining}}s`,retry:`Retry now`,retryTitle:`Retry connection now`,dismissTitle:`Dismiss (chip in topbar still shows status)`},r={connected:`Connected`,disconnected:`Disconnected`,idle:`Idle`,thinking:`Thinking`,running:`Running`,waiting:`Waiting`,done:`Done`,stopped:`Stopped`},i={moreWithHidden:`More, {{count}} hidden items`,moreOptions:`More options`,moreCompactHidden:`More — {{count}} hidden panels/views, palette, theme, monitors`,moreCompact:`More — palette, theme, monitors`,moreFull:`More — palette, theme, shortcuts, monitors`,commandPalette:`Command Palette`,keyboardShortcuts:`Keyboard Shortcuts`,panels:`Panels`,views:`Views`,theme:`Theme`,monitors:`Monitors`,fleetMonitor:`Fleet Monitor`,agentsMonitor:`Agents Monitor`},a={dragHint:`Drag to resize · double-click to reset`,collapse:`Collapse panel (Ctrl+\\)`},o={openDashboard:`Open sessions dashboard`},s={pending:`pending…`,empty:`No agents yet`,emptyHint:`Subagents appear here when the fleet is active.`,runningCount:`{{count}} running`,totalCount:`{{count}} total`,openFull:`Open full agents view`,agentsLive:`AGENTS · LIVE`,doneCount:`{{count}} done`,failedCount:`{{count}} failed`,modelsLabel:`models`,shownLabel:`shown`,totalLabel:`total`,leaderFleetTotals:`(leader {{leader}} · fleet {{fleet}})`,navHintJk:`j/k or ↑↓ to navigate`,escCloseDetail:`· Esc to close detail`,noAgentsRunning:`No agents running.`,contextUsage:`Context Usage`,lastToolLabel:`last:`,unknownSession:`Unknown session`,sessionCopyTitle:`Session: {{sid}} — click to copy ID`,sessionWord:`session`,agentsCountSuffix_one:`{{count}} agent`,agentsCountSuffix_other:`{{count}} agents`,sessionTitle:`Session: {{sid}}`,projectSuffix:` · Project: {{name}}`,statusIdle:`idle`,filterAll:`All`,filterRunning:`Running`,filterDone:`Done`,filterCompleted:`Done`,filterFailed:`Failed`,clearFinished:`Clear`,clearFinishedTitle:`Remove finished agents`,rosterHint:`Arrow keys to navigate · Enter to expand`,itSuffix:`it`,tcSuffix:`tc`,toolLog:`Tool Log`,showAll:`Show all`,showFewer:`Show fewer`,streaming:`Streaming`,failure:`Failure`,timeout:`Timeout`,reRun:`Re-run`,reRunTitle:`Re-run this agent (not yet implemented)`,lastToolCalls_one:`Last {{count}} tool call`,lastToolCalls_other:`Last {{count}} tool calls`,config:`Config`,configProvider:`Provider`,configModel:`Model`,configDescription:`Description`,configTaskId:`Task ID`,transcript:`Transcript`,openInspector:`Open in Fleet Inspector`,emptyFilteredTitle:`No agents match the filter`,emptyFilteredHint:`Change the filter or clear it to see all agents.`,emptyFilteredClear:`Show all`,emptyFinishedTitle:`All tasks complete`,emptyFinishedHint:`All agents have finished — clear finished or spawn new tasks to see activity here.`,emptyFinishedStats:`{{completed}} done · {{failed}} failed`},c={fileCount_one:`{{count}} file`,fileCount_other:`{{count}} files`,refreshTitle:`Refresh changes`,loading:`Loading changes…`,clean:`No changes — working tree is clean.`,selectPrompt:`Select a changed file to view its diff.`,unified:`Unified`,unifiedTitle:`Unified diff`,edit:`Edit`,editTitle:`Side-by-side editable diff`,loadingDiff:`Loading diff…`,diffTimeout:`The diff didn't arrive. The file may have changed or the connection dropped.`,binary:`Binary file — diff not shown.`,tooLarge:`File too large to diff.`},l={showPanel:`Show inspector panel (Fleet / Agents / Audit)`,hidePanel:`Hide inspector panel`,label:`Inspector`,openAudit:`Open Audit tab`,tabFleet:`Fleet`,tabAgents:`Agents`,tabAudit:`Audit`,collapseAria:`Collapse inspector panel`,collapseTitle:`Collapse (Esc)`,noAgentsActive:`No agents active`,agentsAppearHint:`Agents appear here when the fleet is active.`,selected:`{{name}} (selected)`},u={header:`Next steps`,autoSubmitting:`auto-submitting in`,clickToFill:`click to fill input`,clickToFillTitle:`Click to fill: {{text}}`,auto:`auto`,willAutoSubmit:`Will auto-submit after countdown`,autoFilling:`Filling in`},d={onlineCount:`{{count}} online`,messages:`Messages`,compose:`Compose message`,recipient:`Recipient`,messageType:`Type`,audience:`Audience`,audienceAll:`All agents`,audienceLeaders:`Leaders only`,priority:`Priority`,priorityLow:`Low`,priorityNormal:`Normal`,priorityHigh:`High`,subjectPlaceholder:`Subject (optional)`,bodyPlaceholder:`Message body`,leadersOnlyHint:`Only leader agents and leader surfaces can consume this message.`,leadersLabel:`leaders`,send:`Send`,sending:`Sending…`,sent:`Sent`,sendFailed:`Mailbox send failed.`,defaultSubject:`WebUI message`,deleteAllTitle:`Delete all messages`,deleteAll:`Delete all`,deleting:`Deleting…`,purgeTitle:`Purge stale/orphaned messages`,purge:`Purge`,purging:`Purging…`,compact:`Compact`,compacting:`Compacting…`,compactTitle:`Auto-compact: remove expired, read-by-all, and stale messages`,compactRemoved:`Removed {{count}}`,compactExpired:`{{count}} expired`,compactReadByAll:`{{count}} read-by-all`,compactStale:`{{count}} stale`,compactRemaining:`{{count}} remaining`,newLabel:`NEW`,empty:`No messages yet.`,offlineCount:`+{{count}} offline`,timeNow:`now`,deleteAllConfirmTitle_one:`Delete {{count}} message?`,deleteAllConfirmTitle_other:`Delete all {{count}} messages?`,deleteAllConfirmBody:`The mailbox file is truncated for every agent. This cannot be undone.`,purgeConfirmTitle:`Purge stale messages?`,purgeConfirmBody:`Removes completed messages older than 1 day and incomplete messages older than 7 days. Active messages are preserved.`,type:{note:`Note`,ask:`Question`,assign:`Assignment`,steer:`Steer`,btw:`By the way`,broadcast:`Broadcast`,status:`Status`,result:`Result`,review:`Review`},emptyDetail:`No message selected`,emptyDetailHint:`Click a message in the Mailbox panel to view it here.`,readBy:`Read by`,backToChat:`Back to chat`,completed:`Completed`,everyone:`everyone`,closeTitle:`Close (Esc)`,replyTo:`In reply to: {{id}}`,completedBy:`Completed by {{name}}`,completedByAt:`Completed by {{name}} at {{time}}`,outcome:`Outcome:`,task:`Task:`,messageNotFound:`Message not found`,messageNotFoundHint:`This message may have been deleted or purged.`,sessionLabel:`Session`,sessionScope:`Session {{sid}}`,sessionScopeTitle:`Only delivered to agents in session {{sid}}`,projectLabel:`Project`,projectScope:`Project (every agent)`,directScope:`Direct`,scopeLabel:`Scope`},f={recentSessions:`Recent sessions`,deleteEmptyTitle_one:`Delete {{count}} empty session?`,deleteEmptyTitle_other:`Delete {{count}} empty sessions?`,deleteEmptyConfirmBody:`Sessions without any token usage are removed from disk.`,filterPlaceholder:`Filter title, model, provider…`,clearFilter:`Clear filter`,noHistory:`No history yet`,noHistoryHint:`Your conversations will appear here`,noMatches:`No matches`,noMatchesHint:`Try a different filter`,group:{favorites:`Favorites`,today:`Today`,yesterday:`Yesterday`,thisWeek:`This week`,earlier:`Earlier`},nicknamePlaceholder:`Nickname`,empty:`(empty)`,resuming:`resuming…`,active:`active`,renameTitleNickname:`{{nickname}} — original: {{title}}`,renameTitle:`{{title}}
2
2
 
3
- Double-click to rename`,unfavorite:`Unfavorite`,markFavorite:`Mark as favorite`,deleteSessionConfirmTitle:`Delete session?`,deleteSessionConfirmBody:`"{{name}}" will be removed from disk. This cannot be undone.`,deleteSessionTitle:`Delete session`,rename:`Session name`,renameAction:`Rename`,resume:`Resume session`,resumeShort:`Resume`,workspaceEyebrow:`Conversation control`,workspaceTitle:`Sessions`,workspaceHint:`Search, inspect, pin and resume every project conversation.`,tabs:{history:`History`,live:`Live sessions`},filters:{all:`All`,favorites:`Pinned`,active:`Active`,completed:`Completed`,issues:`Issues`},status:{active:`Active`,completed:`Completed`,error:`Error`,timeout:`Timed out`,aborted:`Aborted`,saved:`Saved session`},sort:{label:`Sort sessions`,recent:`Recent`,tokens:`Most tokens`,activity:`Most activity`},stats:{sessions:`Sessions`,tokens:`Tokens`,tools:`Tool calls`,files:`Files changed`,errors:`Errors`}},p={actions:{abort:`Abort`,newSession:`New session`,export:`Export`,compact:`Compact`,newSessionConfirm:`Are you sure?`,newSessionConfirmMessage:`A job is still in progress. Start a new session anyway?`,newSessionTitle:`Start a new session (Ctrl+N)`,exportTitle:`Export chat as markdown (Ctrl+E)`,compactTitle:`Compact the context window`,clearTitle:`Clear context (Ctrl+L)`},model:`Model`,modelTitle:`Change model (Ctrl+M)`,context:`Context`,contextTitle:`Click for a context breakdown`,sessionLabel:`Session`,stats:{messages:`Messages`,elapsed:`Elapsed`,tokens:`Tokens`,cost:`Cost`,iteration:`Iteration`,agents:`Agents`,tokensSub:`{{in}} in / {{out}} out`,iterationOf:`of {{max}}`,agentsRunning:`{{count}} running`},plan:`Plan`,planComplete:`{{pct}}% complete`,pinned:`Pinned`,quickSettings:`Quick settings`,autonomy:`Autonomy`,autonomyTitle:`Stop auto-running next steps. Toggle off to halt the agent's autonomous loop`,autonomyOptions:{off:`Off`,suggest:`Suggest`,auto:`Auto`,eternal:`Eternal`,"eternal-parallel":`Eternal Parallel`},yolo:`YOLO mode`,yoloTitle:`Bypass tool confirmation prompts`,refine:`Refine prompts`,refineTitle:`Rewrite prompts before sending`,sound:`Sound on completion`,soundTitle:`Play a soft chime when a run finishes`,sessionId:`session {{id}}`},m={status:{running:`running`,done:`done`,failed:`failed`,timeout:`timeout`,stopped:`stopped`},leader:`leader`,providerModel:`Provider / Model`,elapsed:`Elapsed`,running:`running…`,iterations:`Iterations`,toolCalls:`Tool Calls`,cost:`Cost`,budgetExtensions:`Budget Extensions`,activity:`Activity`,budgetWarning:`budget warning`,contextWindow:`Context window`,tokensUsed:`{{used}} / {{max}} tokens`,toolRunning:`running…`,lastTool:`last tool`,error:`Error`,finalOutput:`Final Output`,copyOutput:`Copy output`,liveOutput:`Live Output`,waitingOutput:`Waiting for output…`,outputHint:`Output appears here as the agent streams text.`,toolLog:`Tool Log ({{count}} calls)`,fail:`fail`,moreTools:`+{{count}} more tools`,cardRunning:`running {{tool}}`,cardLastTool:`last: {{tool}}`,contextPercent:`Context {{pct}}%`,doneCount:`{{count}} done`,errCount:`{{count}} err`,statusRunning:`running`,statusDone:`done`,statusFailed:`failed`,statusTimeout:`timeout`,statusStopped:`stopped`,sessionPrefix:`session:`,currentTask:`Current Task`,performance:`Performance`,uniqueTools:`Unique Tools`,avgPerTool:`avg {{ms}}ms per tool`,context:`Context`,tokens:`Tokens`,ctxUsed:`{{pct}}% used`,completed:`completed`,budgetWarningTitle:`⚡ Budget Warning`,hittingLimit:`Hitting {{kind}} limit ({{used}}/{{limit}})`,hittingLimitTitle:`⚡ hitting {{kind}} limit ({{used}}/{{limit}})`,budgetExt_one:`{{count}} Budget Extension`,budgetExt_other:`{{count}} Budget Extensions`,extendedTimes_one:`Agent extended its budget {{count}} time due to long-running tasks`,extendedTimes_other:`Agent extended its budget {{count}} times due to long-running tasks`,errorLabel:`Error`,failureReason:`Failure Reason`,failed:`Failed`,fleetMonitor:`FLEET MONITOR`,runningCount:`{{count}} running`,totalAgents_one:`{{count}} total agent`,totalAgents_other:`{{count}} total agents`,noLeader:`no leader`,closeFleet:`Close fleet monitor`,colName:`Name`,colStatus:`Status`,colActivity:`Activity`,colIters:`Iters`,colTools:`Tools`,colCost:`Cost`,colCtx:`CTX`,colExt:`Ext`,colReason:`Reason`,noAgentsActive:`No agents active`,agentsAppear:`Agents appear here when the fleet is active.`,agentTimeline:`Agent Timeline`,noAgentEvents:`No agent conversation events yet.`,navHint:`↑↓ navigate`,selectDetailHint:`↵ select detail`,escHint:`Esc deselect / close`,detailedView:`detailed view`,closeBtn:`✕ close`,selectAgentDetail:`Select an agent to view detailed information`,selectAgentBody:`Click on any agent in the list to see detailed metrics, tool logs, streaming output, and more — similar to the chat history detailed view.`,navigateWord:`navigate`,selectWord:`select`,deselectWord:`deselect`},h={wsNotConnected:`WebSocket not connected`,noData:`No debug data received. The server may not support context debugging.`,title:`Context Breakdown`,windowUsage:`Window Usage`,contextMode:`Context Mode`,fetching:`Fetching context breakdown…`,systemPrompt:`System Prompt`,tools:`Tools`,messages:`Messages`,tokenAllocation:`Token Allocation`,systemTitle:`System: {{tokens}}`,toolsTitle:`Tools: {{tokens}}`,messagesTitle:`Messages: {{tokens}}`,system:`System`,toolBreakdown:`Tool Breakdown`,messagesSummary:`Messages ({{count}}) — {{total}} tok`,barWithTokens:`Context window: {{tokens}} / {{max}} tokens ({{pct}})`,barPct:`Context window: {{pct}}`,barClick:` — click for breakdown`},g={header:`✨ Refine Prompt`,autoSend:`auto-send in {{count}}s`,cancelTitle:`Cancel (Esc)`,editLabel:`Edit refined prompt:`,editPlaceholder:`Edit the refined prompt...`,useEdit:`Use Edit`,original:`Original`,refined:`Refined`,yourLanguage:`(your language)`,refinedTitle:`Click or press Enter to use this version`,copyToInputTitle:`Copy to input without sending`,english:`English`,englishTitle:`Press e to use English version`,hintRefined:`refined`,hintEnglish:`English`,hintOriginal:`original`,hintEdit:`edit`,hintRetry:`retry`,edit:`Edit`,useRefined:`Use Refined`,langOriginal:`Original`,langEnglish:`English`,languageTitle:`Switch default refine language — Original vs English`,yolo:`YOLO`,yoloTitle:`Bypass tool confirmation prompts`,refining:`Refining…`,sendAsIs:`Send as-is`,failedHeader:`Refinement failed`,retry:`Retry (more time)`,retryBetter:`Try again better`,retryFallback:`Retry with {{model}}`,pickModel:`Another model…`,pickModelTitle:`Retry refinement with another model`,pickModelHint:`Pick a provider/model to re-run this refinement on. Your session model stays unchanged.`,countdownHeader:`✨ Refining starts in…`,countdownYourMessage:`Your message`,countdownHint:`Refining starts in {{seconds}}s. Click "Send as-is" to skip.`,countdownStartNow:`Refine now`,countdownSendAsIs:`Send as-is`,cancelRefineSendOriginal:`Cancel & send original`},_={heading:`Specifications`,subtitle:`View and manage specification-driven development`,empty:`No specs found. Use {{command}} to create one.`,tasks:`Tasks ({{count}})`,doneCount:`{{count}} done`,runningCount:`{{count}} running`,pendingCount:`{{count}} pending`,runTitle:`Run this spec as a live multi-agent job`,run:`Run`,runAsSdd:`Run as SDD`,runAsSddTitle:`Start a multi-agent SDD parallel run (worktrees, verification, live board)`,runAsGoal:`Run as Goal`,runAsGoalTitle:`Start a phased Goal run from this spec's task columns`,list:`List`,graph:`Graph`,loadingTasks:`Loading tasks…`},v={heading:`F5 Resilience Verifier`,subtitle:`Confirms the latest active session, transcript, and UI state survive a page refresh. Open this view, then press F5 — every green row should remain green.`,recordProbe:`Record probe`,latestSession:`Latest active session`,restoredLocal:`Restored from localStorage`,sessionIdExtra:`session id: {{id}}`,noSessionYet:`no session has been started yet`,activePointer:`Active session pointer`,lastVisited:`lastVisitedAt timestamp`,never:`never`,persistedEnv:`Persisted environment`,transcriptRehydrate:`Chat transcript rehydration`,localTranscript:`Local transcript recovered`,messagesExtra:`{{count}} messages, {{queued}} queued`,noMessages:`0 messages`,noBleed:`No cross-session bleed`,bleedExtra:`bound={{bound}} vs active={{active}}`,transcriptBinds:`transcript binds to the active session`,uiWorkspace:`UI workspace`,noneValue:`(none)`,payloadSize:`localStorage payload (4 keys): {{count}} chars`,probeLog:`Probe log`,noProbes:`No probes yet — press the "Record probe" button at the top, or press F5 in this view, to record a rehydration check.`,simulatedF5:`simulated F5: re-running persist rehydrate`},y={status:{pending:`Pending`,in_progress:`In Progress`,review:`Review`,failed:`Failed`,completed:`Done`,queued:`Queued`,blocked:`Blocked`,cancelled:`Cancelled`},newTaskTitle:`New task`,newTaskPlaceholder:`Task title…`,addTask:`Add task`,empty:`No phases yet — start a Goal run to populate the board.`,summary:`{{phases}} phases · {{tasks}} tasks`,phases:`Phases`,statusTab:`Status`,dropHere:`Drop tasks here`,emptySpec:`No tasks in this spec yet.`,depGraphHeading:`Dependency Graph`,worktreePrefix:`worktree: {{branch}}`},b={trendUp:`Increasing`,trendDown:`Decreasing`,trendStable:`Stable`,heading:`Debug Dashboard`,subtitle:`Real-time monitoring for WrongStack WebUI`,refreshLabel:`Refresh:`,lastUpdated:`Last updated: {{time}}`,fetchFailed:`Failed to fetch metrics`,fileWatcher:`File Watcher`,watcherStatus:`Watcher Status`,running:`Running`,stopped:`Stopped`,activeProjects:`Active Projects`,projectsWatched:`Projects being watched`,fileChanges:`File Changes`,totalDetected:`Total detected`,filesProcessed:`Files Processed`,afterHash:`After hash filter`,broadcastsSent:`Broadcasts Sent`,toClients:`To WebUI clients`,debounceResets:`Debounce Resets`,rapidWrites:`Rapid successive writes`,avgDebounce:`Avg Debounce Delay`,actualDelay:`Actual delay applied`,totalDelay:`Total Delay`,sumDelays:`Sum of all delays`,browserPerf:`Browser Performance`,heapUsed:`Heap Used`,jsHeap:`JavaScript heap`,heapTotal:`Heap Total`,totalHeap:`Total heap size`,pageUptime:`Page Uptime`,sinceLoad:`Since page load`,rawData:`Raw Data`},x={allowlistTitle:`Model allowlist`,modelCount_one:`{{count}} model`,modelCount_other:`{{count}} models`,using:`Using`,noModelPicked:`(no model picked)`,clearAllowlist:`Clear allowlist`,clearAllowlistAria:`Clear saved allowlist for {{provider}}`,refresh:`Refresh from server`,refreshAria:`Refresh model list for {{provider}}`,probing:`Probing…`,searchPlaceholder:`Search models…`,use:`Use`,useModelAria:`Use model {{model}} for {{provider}}`,differsHint:`Probed list differs from the saved allowlist — re-run {{command}} to persist.`},S={expandChip:`Expand {{label}}`,collapseChip:`Collapse {{label}}`,ahead:`{{count}} ahead`,behind:`{{count}} behind`,linesAdded:`{{count}} lines added`,linesDeleted:`{{count}} lines deleted`,untrackedFiles:`{{count}} untracked files`,customizeTitle:`Customize dock chips`,dockChips:`Dock chips`,noActiveGoal:`No active goal`,noActiveGoalDetail:`Start a goal from chat or the goal command.`},C={leaderBadge:`LEADER`,iters:`Iters`,tools:`Tools`,activityBins:`Activity (12 bins)`,streamingOutput:`Streaming output`,recentTools:`Recent tools`,finalOutput:`Final output`,heading:`Agents Monitor`,prevAgent:`Previous agent`,nextAgent:`Next agent`,closeAria:`Close agents monitor`,hintPage:`←→ page`,hintNavigate:`↑↓ navigate list`,hintEsc:`Esc close`},w={resize:`Resize terminals`,labelSingular:`Terminal`,labelPlural:`Terminals`,projectShell:`Project shell`,maxTerminals:`Maximum {{count}} terminals`,newTerminal:`New terminal`,restart:`Restart active terminal`,closeAll:`Close all terminals`,closeDock:"Close terminal dock (Ctrl+`)",closeTab:`Close {{name}}`,processExited:`[process exited with code {{code}}]`},T={liveStream:`Live stream`,events_one:`{{count}} event`,events_other:`{{count}} events`,interruptTitle:`Cooperatively stop this agent at its next step (not a process kill)`,interrupt:`⏸ Interrupt`,interrupting:`…`,loading:`Loading session…`,done:`✓✓ done`,read:`✓ read`,delivered:`⏳ delivered`,agent:`Agent`,you:`You`,working:`{{name}} · working`,claude:`Claude`,priority:`Priority`,placeholder:`{{label}} → this session…`,send:`Send`,sendHint:`⌘/Ctrl+Enter to send · seen on the agent's next iteration`,msgType:{steerLabel:`🔄 Steer`,steerHint:`Adjust behavior mid-task`,askLabel:`❓ Ask`,askHint:`Question — expects a reply`,assignLabel:`📋 Assign`,assignHint:`A task to act on`,noteLabel:`💬 Note`,noteHint:`FYI, non-urgent`},sentRunning:`Delivered — the running agent sees it on its next step`,sentIdle:`Delivered — target is idle; appears in its mailbox, read when it next runs`,sentFailed:`Failed: {{error}}`,interruptReason:`Operator requested stop from Fleet HQ`,interruptSent:`Interrupt sent — agent stops at its next step (not a kill)`,interruptFailed:`Interrupt failed: {{error}}`},E={empty:`No side effects recorded yet.`,emptyHint:`Bash commands, package installs, and network requests will appear here.`,heading:`Side Effects`,exportTitle:`Export filtered side effects as CSV`,all:`All`,colTime:`Time`,colTool:`Tool`,colRisk:`Risk`,colDetail:`Detail`,colOutcome:`Outcome`},D={elapsedHm:`{{h}}h {{m}}m ago`,elapsedMs:`{{m}}m {{s}}s ago`,elapsedS:`{{s}}s ago`,heading:`Fleet Monitor`,clientsHeading:`Connected Clients`,terminal:`Terminal`,webui:`Web UI`,repl:`REPL`,totalConnected:`total connected`,mailQueue:`Mail Queue`,total:`Total`,open:`Open`,unread:`Unread`,agents:`Agents`,messagesSub:`messages`,uncompletedSub:`uncompleted`,waitingSub:`waiting`,ofTotal:`of {{count}} total`,agentRoster:`Agent Roster`,liveMailActivity:`Live Mail Activity`,noActivity:`No recent activity`,mailboxAgents:`Mailbox Agents`,noMailboxAgents:`No agents registered`,moreCount:`+{{count}} more`,agentFallback:`agent`,fleetAgents:`Fleet Agents`,noFleetAgents:`No fleet agents running`,iter:`iter`,mailType:{sent:`Sent`,delivered:`Delivered`,read:`Read`,completed:`Completed`}},O={status:{pending:`pending`,queued:`queued`,in_progress:`running`,blocked:`blocked`,review:`review`,failed:`failed`,completed:`done`,cancelled:`cancelled`},activityHeading:`Activity`,feedEmpty:`Nothing yet — events appear here as agents pick up and finish tasks.`,destroyTitle:`Destroy SDD project?`,destroyDesc:`This wipes the run and its work. It cannot be undone (the optional commit revert is history-preserving).`,stopRun:`Stop the run`,stopRunAgents_one:`Stop the run ({{count}} agent working)`,stopRunAgents_other:`Stop the run ({{count}} agents working)`,removeWorktreesAll:`Remove all git worktrees + wstack/ap/* branches — including un-merged work`,removeWorktreesCount_one:`Remove {{count}} git worktree + wstack/ap/* branches — including un-merged work`,removeWorktreesCount_other:`Remove {{count}} git worktrees + wstack/ap/* branches — including un-merged work`,deleteArtifacts:`Delete all SDD artifacts (specs, task graph, board, session)`,revertMerged_one:`Also revert {{count}} merged commit`,revertMerged_other:`Also revert {{count}} merged commits`,revertHint:`Adds revert commits (history preserved). Refused if the working tree is dirty.`,baseBranchFallback:`the base branch`,noteLeaveMerged:`Merged commits will be left on the base branch. Tick the box above to undo them too.`,noteAbandon:`Make sure you really want to abandon this run.`,destroying:`Destroying…`,destroyAll:`Destroy everything`,kanbanBacklog:`Backlog`,kanbanReady:`Ready`,kanbanRunning:`Running`,kanbanReview:`Review`,kanbanFailed:`Failed`,kanbanDone:`Done`,kanbanEmpty:`empty`},k={collapseToLines:`Collapse to first {{count}} lines`,showAllLines:`Show all {{total}} lines ({{more}} more)`,exitCode:`exit code:`,jsonLines:`JSON · {{count}} lines`,collapse:`collapse`,expand:`expand`},A={injectedHeading:`SAGE Memory Injected`,memoriesLabel_one:`{{count}} memory`,memoriesLabel_other:`{{count}} memories`},j={heading:`Design Studio — Gallery`,kitsCount:`{{count}} kits`,searchPlaceholder:`Search kits…`,stackTitle:`Stack for Use + Materialize`,wrote:`Wrote {{path}}`,materializeFailed:`Materialize failed: {{error}}`,verifyError:`Verify: {{error}}`,verifyOffPalette:`Verify: {{pct}}% on-palette — {{count}} off-palette in {{files}} file(s)`,verifyClean:`Verify: clean ✓ ({{files}} file(s) on-palette)`,writing:`Writing theme file…`,scanning:`Scanning UI files…`,active:`Active`,reapply:`Reapply`,use:`Use`,materializeTitle:`Write tokens to a {{stack}} theme file`,materialize:`Materialize`,verifyTitle:`Scan UI files for off-palette colors`,verify:`Verify`,colors:`Colors`},M={summary_one:`{{count}} phase · {{pct}}% complete`,summary_other:`{{count}} phases · {{pct}}% complete`,switchBoard:`Switch board`,boardsCount_one:`{{count}} board…`,boardsCount_other:`{{count}} boards…`,toggleAutonomousTitle:`Toggle autonomous mode`,autonomous:`Autonomous`,manual:`Manual`,resumeTitle:`Resume the run`,pauseTitle:`Pause the run`,resume:`Resume`,pause:`Pause`,stopTitle:`Stop the run — aborts in-flight agents immediately`,stop:`Stop`,newTitle:`Clear this board and start a new Goal run`,newLabel:`New`,revertConfirm:`Revert run's commits?`,revertTitle:`Undo this run — git-revert the commits it landed and remove its worktrees`,revert:`Revert`,goal:`Goal`,planning:`Planning phases…`,planningBody:`Your goal was received. WrongStack is breaking it into phases and tasks — the board appears here the moment the plan is ready.`,startHeading:`Start a Phase Plan`,startBody:`Describe what you want to build. WrongStack will plan phases and tasks, then execute them — watch and steer the run on the board.`,startPlaceholder:`e.g. Build a REST API for user management with Express and SQLite...`,isolateLabel:`Isolate each phase in its own git worktree`,startButton:`Start Goal`,ctrlHint:`Ctrl+Enter to start`,isolateOn:`phases run in isolated worktrees, squash-merged back`,isolateOff:`phases run directly on the current branch`,lanes:`Lanes`,graph:`Graph`,planningAck:`🚀 **Goal** — got it. Planning phases for your goal now…`,assess:{analyzing:`Analyzing goal scope…`,realistic:`✓ Scope looks realistic`,durationConcern:`⚠ Duration concern`,durationClaimed:`Claimed duration: {{duration}}`,recommendation:`Recommended: {{duration}}`,concerns:`Concerns`,analysisFailed:`Could not analyze goal scope`,override:`Start anyway`,overrideTitle:`Clear the assessment warning and enable the start button`,disableTitle:`This goal has an unrealistic duration assessment — use "Start anyway" to override`},multiBoardLabel:`Split into multiple kanban boards`,verifyTasksLabel:`Require verification for each task`,chimeraReviewLabel:`Enable chimera auto-review`},N={noObservers:`No live observers`,observerTitle:`Join as a read-only observer (Phase 1)`,observerRole:`observer`,annotatorTitle:`Join as an annotator — leave inline notes on tool calls (Phase 2)`,annotatorRole:`annotator`,controllerTitle:`Join as a controller — can pause the agent loop (Phase 3)`,controllerRole:`controller`,errorPrefix:`Collab: {{error}}`,dismiss:`dismiss`,observers_one:`{{count}} observer`,observers_other:`{{count}} observers`,annotationsTitle:`{{count}} open annotation(s) — annotators reviewing this session`,notes_one:`{{count}} note`,notes_other:`{{count}} notes`,pausedTitle:`Agent loop is paused — a controller is reviewing`,paused:`paused`,joinedTitle:`Joined {{time}}`,grantTitle:`Grant control — promote this participant to controller`,injectTitle:`Inject a synthetic result for an in-flight tool call`,inject:`Inject`,resumeTitle:`Resume the agent loop`,resume:`Resume`,pauseTitle:`Pause the agent before the next tool call`,pauseAgent:`Pause agent`,leaveTitle:`Leave the observer session`,leave:`Leave`,injectToolResult:`Inject tool result`,close:`close`,targetTool:`Target tool_use id`,targetPlaceholder:`pick an in-flight call or type a tool_use id`,toolFallback:`tool`,noPendingTools:`No in-flight tool calls — type a tool_use id to pre-queue, or pause the agent first.`,resultContent:`Result content`,resultPlaceholder:`Synthetic tool result fed to the agent in place of running the tool`,markError:`mark as error`,reasonPlaceholder:`reason (audit log)`,queueInjection:`Queue injection`,controllerInjection:`controller injection`},P={modePrefix:`mode:`,activeTitle:`Active mode`,heading:`Mode`,defaultName:`Default`,defaultDesc:`Standard agent behaviour`},F={clickTitle:`Click for per-turn cost breakdown`,heading:`Cost breakdown`,noPricing:`No pricing for the current model — cost figures are zero.`,noTurns:`No completed turns yet. Run a prompt to see per-turn cost here.`,topExpensive_one:`Top {{count}} expensive turn`,topExpensive_other:`Top {{count}} expensive turns`},I={runDefault:`Run default`,useRunDefault:`Use run default`,filterPlaceholder:`Filter models…`,loading:`Loading models…`,noMatch:`No match`},L={heading:`Switch model`,filterPlaceholder:`Filter providers and models…`,noSavedProviders:`No saved providers — register a key in Settings first.`,active:`active`},R={todos:`Todos`,tasks:`Tasks`,plan:`Plan`},z={toggleAria:`Toggle: {{content}}`,removeTitle:`Remove todo`,removeAria:`Remove "{{content}}"`,completedCount_one:`{{count}} completed`,completedCount_other:`{{count}} completed`},B={start:`Start`,complete:`Complete`,retry:`Retry`,assign:`Assign`,assignTitle:`Assign agent`,unassigned:`Unassigned`,statusPending:`Pending`,statusInProgress:`In Progress`,statusBlocked:`Blocked`,statusFailed:`Failed`,statusReview:`Review`,statusDone:`Done`,startTitle:`Start`,completeTitle:`Complete`,fail:`Fail`,failTitle:`Mark failed`,boardCount:`{{total}} tasks · {{done}} completed`},V={toolCalls_one:`{{count}} tool call`,toolCalls_other:`{{count}} tool calls`},H={removeTitle:`Remove reference`,linesCount_one:`{{count}} line`,linesCount_other:`{{count}} lines`},ne={statusOpen:`Open`,statusInProgress:`In Progress`,statusDone:`Done`,startTitle:`Start`,doneTitle:`Mark done`,reopenTitle:`Reopen`,reopen:`Reopen`},U={heading:`@ Files`,noMatch:`No files match "{{query}}"`,searching:`Searching project…`},W={dismiss:`Dismiss`},G={placeholder:`Search in chat…`,prevHit:`Previous hit`,nextHit:`Next hit`,close:`Close (Esc)`},K={statusPending:`Pending`,statusReady:`Ready`,statusRunning:`Running`,statusPaused:`Paused`,statusCompleted:`Completed`,statusFailed:`Failed`,statusSkipped:`Skipped`,heading:`Phases`,autonomousOn:`● Autonomous`,autonomousOff:`○ Manual`,autonomousOnTitle:`Autonomous mode active — click to pause`,autonomousOffTitle:`Manual mode — click to enable autonomous`,overallProgress:`Overall Progress`,tasksSuffix:`{{done}}/{{total}} tasks`,agentsSuffix_one:`{{count}} agent`,agentsSuffix_other:`{{count}} agents`},q={triggerTitle:`Context-window mode`,ctxPrefix:`ctx:`,opsHeading:`Context Operations`,compactNow:`Compact Now`,compactNowDesc:`Elide old tool output`,compactAggressive:`Compact Aggressive`,compactAggressiveDesc:`Maximum elision now`,repairContext:`Repair Context`,repairDesc:`Fix orphan tool-use blocks`,debugContext:`Debug Context`,debugDesc:`Size breakdown per section`,windowHeading:`Context Window`,keepElide:`keep {{k}} recent · elide {{t}}+ tokens`,fallbackName:`Balanced`,fallbackDesc:`Default rolling compaction`},J={kindAssistant:`Assistant`,kindThinking:`Thinking`,kindToolCall:`Tool call`,kindToolResult:`Tool result`,kindError:`Error`,kindStatus:`Status`,kindSystem:`System`,title:`Chat history`,copyTitle:`Copy agent chat history`,empty:`No chat history for this agent yet.`},Y={heading:`Autonomy Mode`,titlePrefix:`Autonomy: {{label}}`,descOff:`Full manual control — agent waits for your input.`,descSuggest:`Agent suggests next steps but waits for approval.`,descAuto:`Agent auto-proceeds after brief confirmation delay.`,descEternal:`Agent runs autonomously until goal is complete.`,descEternalParallel:`Multi-agent autonomous execution — fleet mode.`},X={heading:`Message Queue`,subtitle:`{{count}} queued · messages sent before the agent finishes`,btwTitle:`By-the-way — sent as follow-up without interrupting the running agent`,steerTitle:`Steer — interrupts the running agent and redirects it with this message`,queueTitle:`Queued — held until the current agent run completes, then sent in order`,sortNewestTitle:`Sorted newest first — click to sort oldest first`,sortOldestTitle:`Sorted oldest first — click to sort newest first`,newest:`Newest`,oldest:`Oldest`,clear:`Clear`,clearTitle:`Clear all queued messages`,closeTitle:`Close`,emptyTitle:`Queue is empty`,emptyBody:`Use the btw / steer / add queue buttons beside the input to add messages. Queued items are sent in order when the current agent run completes.`,removeTitle:`Remove from queue`,clearDispatchedTitle:`Clear queued messages — already-sent notes cannot be retracted`,dispatchedTitle:`Already sent to the agent`,dispatchedLabel:`Sent`,footer:`Messages are sent in arrival order when the current agent run completes. Use the sort toggle to view newest-first.`},Z={heading:`Session Checkpoints`,countSuffix_one:`{{count}} checkpoint`,countSuffix_other:`{{count}} checkpoints`,description:`Rewind the session to any checkpoint. Messages and file changes revert to that point — the LLM continues from there as if nothing happened after.`,emptyTitle:`No checkpoints yet`,emptyBody:`Checkpoints are automatically created each time you send a message. Send a few messages and come back.`,latest:`latest`,msgSuffix_one:`{{count}} msg`,msgSuffix_other:`{{count}} msgs`,footerPre:`Click any checkpoint to rewind`,footerPost:`to close`},Q={statusActive:`Active`,statusPaused:`Paused`,statusDone:`Done`,statusFailed:`Failed`,statusAbandoned:`Abandoned`,heading:`Goal`,refined:`Refined`,progress:`Progress`,iterations:`iterations`,deliverables:`Deliverables`,recentActivity:`Recent Activity`},$={cleanTitle_one:`Clean {{count}} orphaned worktree?`,cleanTitle_other:`Clean {{count}} orphaned worktrees?`,cleanMessage:`Force-removes every leftover git worktree + wstack/ap branch from previous runs. Un-merged work in them is discarded.`,cleanConfirm:`Clean orphans`,orphanCount_one:`{{count}} orphaned worktree from previous runs`,orphanCount_other:`{{count}} orphaned worktrees from previous runs`,andMore:`…and {{count}} more`,cleanButtonTitle:`Force-remove all orphaned worktrees + branches`,removed_one:`✓ Removed {{count}} orphaned worktree.`,removed_other:`✓ Removed {{count}} orphaned worktrees.`,cleanupFailed:`cleanup failed`,lanesHeading:`Worktrees`,base:`base`,isolatedCount_one:`{{count}} isolated`,isolatedCount_other:`{{count}} isolated`,statusAllocating:`allocating`,statusActive:`active`,statusCommitting:`committing`,statusMerging:`merging`,statusMerged:`merged`,statusConflict:`conflict`,statusFailed:`failed`,conflictBadge:`CONFLICT`,graphAria:`Worktree branch graph off {{base}}`,mergedLabel:`✓ merged → {{base}}`},re={heading:`Running Processes`,subtitle:`{{active}} active · {{total}} total`,killAll:`Kill All`,emptyTitle:`No processes tracked`,emptyBody:`Processes appear here when the agent runs bash or exec tools. Active processes show a pulsing LED.`,pidLabel:`PID {{pid}}`,protected:`protected`,protectedTitle:`Protected — survives kill/killAll`,background:`background`,backgroundTitle:`Detached job — survives CLI/WebUI shutdown`,confirmKillBackground:`Terminate detached background process {{pid}}?`,confirmKillAll:`Terminate all {{count}} running processes?`,killTitle:`Kill PID {{pid}}`},ie={tooLarge:`Diff omitted (file too large to render inline).`},ae={placeholder:`Add a fallback model…`,emptyHint:`Tried in order when the primary model rate-limits or stalls.`,moveUp:`Move up`,moveDown:`Move down`},oe={loading:`Loading sessions...`,apiUnavailable:`Session API unavailable:`,empty:`No live sessions. Open another wstack instance to see it here.`,heading:`Live Sessions ({{count}})`,autoRefresh:`auto-refresh every 5s`,pidLabel:`PID {{pid}}`,agentMeta:`{{iter}} iter · {{tools}} tools · {{ago}}`,andMore:`... and {{count}} more`,noAgents:`No agents`},se={applyTitle:`Write the edited version back to disk`,applying:`Applying…`,applied:`Applied`,apply:`Apply`},ce={showStack_one:`Show stack trace ({{count}} frame)`,showStack_other:`Show stack trace ({{count}} frames)`,hideStack_one:`Hide stack trace ({{count}} frame)`,hideStack_other:`Hide stack trace ({{count}} frames)`},le={liveHeading:`Live`,clients:`Clients`,agents:`Agents`,model:`Model`,mode:`Mode`,toolCalls:`Tool calls`,displayHeading:`Display`,statsHud:`Stats HUD`,legends:`Legends`,minimap:`Minimap`,zoomControls:`Zoom controls`,animateWires:`Animate wires`,backgroundHeading:`Background`,bgDots:`Dots`,bgLines:`Lines`,bgCross:`Cross`,bgNone:`None`},ue={noParams:`(no params)`,itemCount_one:`{{count}} item`,itemCount_other:`{{count}} items`,keyCount_one:`{{count}} key`,keyCount_other:`{{count}} keys`},de={roleYou:`You`,roleTool:`Tool`,roleThinking:`Thinking`,roleAssistant:`Assistant`,inputLabel:`Input`,downloadTitle:`Download as file`,empty:`(empty)`,hideDetails:`Hide details`,showDetails:`Show details`,showDetailsLines_one:`Show details ({{count}} line)`,showDetailsLines_other:`Show details ({{count}} lines)`,editHint:`⌘/Ctrl+Enter to save · Esc to cancel`,saveResend:`Save & resend`,thinkingProcess:`Model Reasoning`,thinkingMeta:`iter {{iter}} · {{dur}} · {{lines}}`,replay:`replay`,linesSuffix_one:`{{count}} line`,linesSuffix_other:`{{count}} lines`,copyLog:`Copy log`,showFullLog:`Show full log`,typing:`Typing…`,noContent:`No content`,imageNotRetained:`Image preview not kept after refresh`,failedToSend:`⚠ Failed to send`,autoPaused:`⚠️ _Auto-proceed paused — maximum consecutive automatic turns reached. Type anything to continue (autonomy stays on)._`,autoLoopHalted:`⚠️ _Auto-submit halted because the same prompt repeated. Autonomy remains on; enter a new prompt to reset the loop guard._`,rsIterations:`Iterations: {{n}}`,rsTools:`Tool calls: {{n}}`,rsElapsed:`Elapsed: {{s}}`,rsCost:`Cost: {{c}}`,useInput:`Input: {{n}}`,useOutput:`Output: {{n}}`,useCacheRead:`Cache read: {{n}}`,useCost:`Cost: {{c}}`,renderedLabel:`Rendered`,rawLabel:`Raw`,showRenderedTitle:`Show rendered markdown`,showRawTitle:`Show raw markdown source`,editTitle:`Edit & resend this prompt`,editLabel:`Edit`,unpinTitle:`Unpin`,pinTitle:`Pin this answer`,pinnedLabel:`Pinned`,pinLabel:`Pin`,regenerateTitle:`Regenerate this response`,retryLabel:`Retry`},fe={toolFallback:`tool`,toolFailed:`Tool failed`},pe={heading:`Keyboard shortcuts`,footerPre:`Press`,footerPost:`any time to reopen this list.`,sectionGlobal:`Global`,sectionTuiParity:`TUI Panel Parity`,sectionFleet:`Fleet & Agents`,sectionChatInput:`Chat input`,sectionChat:`Chat`,sectionChatNav:`Chat navigation (when not typing)`,dCommandPalette:`Open command palette`,dShowOverlay:`Show this shortcuts overlay`,dToggleSidebar:`Toggle sidebar`,dOpenPanel:`Open side panel (Session, Agents, History, Files, Changes, Mailbox, Skills, Office Map)`,dDesignStudio:`Open Design Studio side panel`,dWorktrees:`Open Worktrees side panel`,dSettings:`Open Settings`,dMemory:`Open Memory`,dFocusInput:`Focus the message input`,dSessionPanel:`Session panel`,dFleetOverlay:`Fleet monitor overlay`,dAgentsOverlay:`Agents monitor overlay`,dWorktreeMonitor:`Worktree monitor`,dPlanPanel:`Plan panel`,dTodosPanel:`Todos panel`,dQueuePanel:`Queue panel`,dProcessMonitor:`Process monitor`,dGoalPanel:`Goal panel`,dSessionsDashboard:`Sessions dashboard`,dOfficeMap:`Coordinator office map`,dDockPicker:`Dock chip picker`,dOpenFleet:`Open Fleet Monitor overlay`,dOpenAgents:`Open Agents Monitor overlay`,dNavigateAgents:`Navigate agents in monitor`,dSelectAgent:`Select focused agent`,dCloseOverlay:`Close active overlay`,dSendMessage:`Send message`,dNewline:`Insert a newline`,dRecallPrev:`Recall previous prompt (in empty input)`,dRecallNext:`Recall next prompt`,dSlashPopup:`Open slash command popup`,dAutocomplete:`Autocomplete highlighted command`,dDismissPopup:`Dismiss popup / clear input`,dSearchChat:`Search within current chat`,dClearContext:`Clear context (same as /clear)`,dNewSession:`Start a new session (same as /new)`,dExportMarkdown:`Export chat as markdown`,dModelSwitcher:`Quick model switcher overlay`,dCompactDensity:`Toggle compact UI density`,dAbortRun:`Abort the current run (when running)`,dFocusNext:`Focus next message (alias: ↓)`,dFocusPrev:`Focus previous message (alias: ↑)`,dJumpFirst:`Jump to first message`,dJumpLast:`Jump to last message`,dCopyFocused:`Copy focused message text`,dClearFocused:`Clear focused message`},me={titleFallback:`Live SDD Board`,defaultModelTitle:`Run-level default worker model (per-task overrides take precedence)`,graphLabel:`Graph`,kanbanLabel:`Kanban`,retryAllTitle:`Requeue every failed task to pending`,retryFailed:`Retry failed ({{count}})`,resume:`Resume`,pause:`Pause`,stop:`Stop`,cleanTitle:`Remove the run's git worktrees + wstack/ap branches`,cleanWorktrees:`Clean worktrees`,rollbackTitle:`Revert {{count}} merged commit(s) on {{base}}`,rollback:`Rollback ({{count}})`,stopping:`Stopping…`,destroying:`Destroying…`,destroyTitle:`Stop, remove all worktrees, optionally revert merged commits, and delete the SDD project`,destroy:`Destroy`,statDone:`done`,statRunning:`running`,statFailed:`failed`,statWave:`wave`,statElapsed:`elapsed`,noActiveWorkers:`no active workers`,deadlock:`Deadlock — tasks blocked by failed work:`,noRunTitle:`No active SDD run.`,noRunBody:`Start one from the New SDD Project wizard, or via /sdd execute in the CLI — agents appear here live, each working an isolated worktree.`,clickTaskHint:`click a task for details`,lcClean:`Clean`,lcRollback:`Rollback`,lcDestroy:`Destroy`,lcFailed:`{{op}} failed: {{reason}}`,lcUnknownError:`unknown error`,lcWorktrees_one:`{{count}} worktree removed`,lcWorktrees_other:`{{count}} worktrees removed`,lcCommits_one:`{{count}} commit reverted`,lcCommits_other:`{{count}} commits reverted`,lcDeleted:`deleted {{items}}`,lcNothing:`nothing to do`,lcNote:`{{op}}: {{body}} — note: {{reason}}`,lcOk:`{{op}}: {{body}}`},he={backTitle:`Back to activity`,expandTitle:`Expand task details`,collapseTitle:`Collapse task details`,eventLog:`Task event log`,newestFirst:`newest first`,noEvents:`No task activity has been recorded yet.`,workingOn:`working on this task`,assigned:`assigned`,metaPriority:`Priority`,metaType:`Type`,metaDuration:`Duration`,metaElapsed:`Elapsed`,metaRetries:`Retries`,metaWorktree:`Worktree`,workerModel:`Worker model`,runDefault:`run default: {{model}}`,runDefaultPlaceholder:`Run default`,runDefaultPlaceholderModel:`Run default ({{model}})`,verificationCmd:`Verification command`,gatesCompletion:`gates completion (exit 0)`,verifyPlaceholder:`e.g. pnpm vitest run path/to/file`,addVerify:`+ Add verification command`,description:`Description`,timeline:`Timeline`,dependsOn:`Depends on`,blocks:`Blocks`,newWorkerPlaceholder:`New worker name…`,confirmStop:`Stop this running task?`,confirmDelete:`Delete this task from the run?`,retryTitle:`Requeue this task to pending`,reassign:`Reassign`,stopTitle:`Abort the worker on this task`,splitTitle:`Split this task into sub-tasks delegated to separate workers`,split:`Split`,splitHint:`One sub-task per line — Title :: description (description optional)`,splitPlaceholder:`Write the data layer :: add the repository
3
+ Double-click to rename`,unfavorite:`Unfavorite`,markFavorite:`Mark as favorite`,deleteSessionConfirmTitle:`Delete session?`,deleteSessionConfirmBody:`"{{name}}" will be removed from disk. This cannot be undone.`,deleteSessionTitle:`Delete session`,rename:`Session name`,renameAction:`Rename`,resume:`Resume session`,resumeShort:`Resume`,workspaceEyebrow:`Conversation control`,workspaceTitle:`Sessions`,workspaceHint:`Search, inspect, pin and resume every project conversation.`,tabs:{history:`History`,live:`Live sessions`},filters:{all:`All`,favorites:`Pinned`,active:`Active`,completed:`Completed`,issues:`Issues`},status:{active:`Active`,completed:`Completed`,error:`Error`,timeout:`Timed out`,aborted:`Aborted`,saved:`Saved session`},sort:{label:`Sort sessions`,recent:`Recent`,tokens:`Most tokens`,activity:`Most activity`},stats:{sessions:`Sessions`,tokens:`Tokens`,tools:`Tool calls`,files:`Files changed`,errors:`Errors`}},p={actions:{abort:`Abort`,newSession:`New session`,export:`Export`,compact:`Compact`,newSessionConfirm:`Are you sure?`,newSessionConfirmMessage:`A job is still in progress. Start a new session anyway?`,newSessionTitle:`Start a new session (Ctrl+N)`,exportTitle:`Export chat as markdown (Ctrl+E)`,compactTitle:`Compact the context window`,clearTitle:`Clear context (Ctrl+L)`},model:`Model`,modelTitle:`Change model (Ctrl+M)`,context:`Context`,contextTitle:`Click for a context breakdown`,sessionLabel:`Session`,stats:{messages:`Messages`,elapsed:`Elapsed`,tokens:`Tokens`,cost:`Cost`,iteration:`Iteration`,agents:`Agents`,tokensSub:`{{in}} in / {{out}} out`,iterationOf:`of {{max}}`,agentsRunning:`{{count}} running`},plan:`Plan`,planComplete:`{{pct}}% complete`,pinned:`Pinned`,quickSettings:`Quick settings`,autonomy:`Autonomy`,autonomyTitle:`Stop auto-running next steps. Toggle off to halt the agent's autonomous loop`,autonomyOptions:{off:`Off`,suggest:`Suggest`,auto:`Auto`,eternal:`Eternal`,"eternal-parallel":`Eternal Parallel`},yolo:`YOLO mode`,yoloTitle:`Bypass tool confirmation prompts`,refine:`Refine prompts`,refineTitle:`Rewrite prompts before sending`,sound:`Sound on completion`,soundTitle:`Play a soft chime when a run finishes`,sessionId:`session {{id}}`},m={status:{running:`running`,done:`done`,failed:`failed`,timeout:`timeout`,stopped:`stopped`},leader:`leader`,providerModel:`Provider / Model`,elapsed:`Elapsed`,running:`running…`,iterations:`Iterations`,toolCalls:`Tool Calls`,cost:`Cost`,budgetExtensions:`Budget Extensions`,activity:`Activity`,budgetWarning:`budget warning`,contextWindow:`Context window`,tokensUsed:`{{used}} / {{max}} tokens`,toolRunning:`running…`,lastTool:`last tool`,error:`Error`,finalOutput:`Final Output`,copyOutput:`Copy output`,liveOutput:`Live Output`,waitingOutput:`Waiting for output…`,outputHint:`Output appears here as the agent streams text.`,toolLog:`Tool Log ({{count}} calls)`,fail:`fail`,moreTools:`+{{count}} more tools`,cardRunning:`running {{tool}}`,cardLastTool:`last: {{tool}}`,contextPercent:`Context {{pct}}%`,doneCount:`{{count}} done`,errCount:`{{count}} err`,statusRunning:`running`,statusDone:`done`,statusFailed:`failed`,statusTimeout:`timeout`,statusStopped:`stopped`,sessionPrefix:`session:`,currentTask:`Current Task`,performance:`Performance`,uniqueTools:`Unique Tools`,avgPerTool:`avg {{ms}}ms per tool`,context:`Context`,tokens:`Tokens`,ctxUsed:`{{pct}}% used`,completed:`completed`,budgetWarningTitle:`⚡ Budget Warning`,hittingLimit:`Hitting {{kind}} limit ({{used}}/{{limit}})`,hittingLimitTitle:`⚡ hitting {{kind}} limit ({{used}}/{{limit}})`,budgetExt_one:`{{count}} Budget Extension`,budgetExt_other:`{{count}} Budget Extensions`,extendedTimes_one:`Agent extended its budget {{count}} time due to long-running tasks`,extendedTimes_other:`Agent extended its budget {{count}} times due to long-running tasks`,errorLabel:`Error`,failureReason:`Failure Reason`,failed:`Failed`,fleetMonitor:`FLEET MONITOR`,runningCount:`{{count}} running`,totalAgents_one:`{{count}} total agent`,totalAgents_other:`{{count}} total agents`,noLeader:`no leader`,closeFleet:`Close fleet monitor`,colName:`Name`,colStatus:`Status`,colActivity:`Activity`,colIters:`Iters`,colTools:`Tools`,colCost:`Cost`,colCtx:`CTX`,colExt:`Ext`,colReason:`Reason`,noAgentsActive:`No agents active`,agentsAppear:`Agents appear here when the fleet is active.`,agentTimeline:`Agent Timeline`,noAgentEvents:`No agent conversation events yet.`,navHint:`↑↓ navigate`,selectDetailHint:`↵ select detail`,escHint:`Esc deselect / close`,detailedView:`detailed view`,closeBtn:`✕ close`,selectAgentDetail:`Select an agent to view detailed information`,selectAgentBody:`Click on any agent in the list to see detailed metrics, tool logs, streaming output, and more — similar to the chat history detailed view.`,navigateWord:`navigate`,selectWord:`select`,deselectWord:`deselect`},h={wsNotConnected:`WebSocket not connected`,noData:`No debug data received. The server may not support context debugging.`,title:`Context Breakdown`,windowUsage:`Window Usage`,contextMode:`Context Mode`,fetching:`Fetching context breakdown…`,systemPrompt:`System Prompt`,tools:`Tools`,messages:`Messages`,tokenAllocation:`Token Allocation`,systemTitle:`System: {{tokens}}`,toolsTitle:`Tools: {{tokens}}`,messagesTitle:`Messages: {{tokens}}`,system:`System`,toolBreakdown:`Tool Breakdown`,messagesSummary:`Messages ({{count}}) — {{total}} tok`,barWithTokens:`Context window: {{tokens}} / {{max}} tokens ({{pct}})`,barPct:`Context window: {{pct}}`,barClick:` — click for breakdown`},g={header:`✨ Refine Prompt`,autoSend:`auto-send in {{count}}s`,cancelTitle:`Cancel (Esc)`,editLabel:`Edit refined prompt:`,editPlaceholder:`Edit the refined prompt...`,useEdit:`Use Edit`,original:`Original`,refined:`Refined`,yourLanguage:`(your language)`,refinedTitle:`Click or press Enter to use this version`,copyToInputTitle:`Copy to input without sending`,english:`English`,englishTitle:`Press e to use English version`,hintRefined:`refined`,hintEnglish:`English`,hintOriginal:`original`,hintEdit:`edit`,hintRetry:`retry`,edit:`Edit`,useRefined:`Use Refined`,langOriginal:`Original`,langEnglish:`English`,languageTitle:`Switch default refine language — Original vs English`,yolo:`YOLO`,yoloTitle:`Bypass tool confirmation prompts`,refining:`Refining…`,sendAsIs:`Send as-is`,failedHeader:`Refinement failed`,retry:`Retry (more time)`,retryBetter:`Try again better`,retryFallback:`Retry with {{model}}`,pickModel:`Another model…`,pickModelTitle:`Retry refinement with another model`,pickModelHint:`Pick a provider/model to re-run this refinement on. Your session model stays unchanged.`,countdownHeader:`✨ Refining starts in…`,countdownYourMessage:`Your message`,countdownHint:`Refining starts in {{seconds}}s. Click "Send as-is" to skip.`,countdownStartNow:`Refine now`,countdownSendAsIs:`Send as-is`,cancelRefineSendOriginal:`Cancel & send original`},_={heading:`Specifications`,subtitle:`View and manage specification-driven development`,empty:`No specs found. Use {{command}} to create one.`,tasks:`Tasks ({{count}})`,doneCount:`{{count}} done`,runningCount:`{{count}} running`,pendingCount:`{{count}} pending`,runTitle:`Run this spec as a live multi-agent job`,run:`Run`,runAsSdd:`Run as SDD`,runAsSddTitle:`Start a multi-agent SDD parallel run (worktrees, verification, live board)`,runAsGoal:`Run as Goal`,runAsGoalTitle:`Start a phased Goal run from this spec's task columns`,list:`List`,graph:`Graph`,loadingTasks:`Loading tasks…`},v={heading:`F5 Resilience Verifier`,subtitle:`Confirms the latest active session, transcript, and UI state survive a page refresh. Open this view, then press F5 — every green row should remain green.`,recordProbe:`Record probe`,latestSession:`Latest active session`,restoredLocal:`Restored from localStorage`,sessionIdExtra:`session id: {{id}}`,noSessionYet:`no session has been started yet`,activePointer:`Active session pointer`,lastVisited:`lastVisitedAt timestamp`,never:`never`,persistedEnv:`Persisted environment`,transcriptRehydrate:`Chat transcript rehydration`,localTranscript:`Local transcript recovered`,messagesExtra:`{{count}} messages, {{queued}} queued`,noMessages:`0 messages`,noBleed:`No cross-session bleed`,bleedExtra:`bound={{bound}} vs active={{active}}`,transcriptBinds:`transcript binds to the active session`,uiWorkspace:`UI workspace`,noneValue:`(none)`,payloadSize:`localStorage payload (4 keys): {{count}} chars`,probeLog:`Probe log`,noProbes:`No probes yet — press the "Record probe" button at the top, or press F5 in this view, to record a rehydration check.`,simulatedF5:`simulated F5: re-running persist rehydrate`},y={status:{pending:`Pending`,in_progress:`In Progress`,review:`Review`,failed:`Failed`,completed:`Done`,queued:`Queued`,blocked:`Blocked`,cancelled:`Cancelled`},newTaskTitle:`New task`,newTaskPlaceholder:`Task title…`,addTask:`Add task`,empty:`No phases yet — start a Goal run to populate the board.`,summary:`{{phases}} phases · {{tasks}} tasks`,phases:`Phases`,statusTab:`Status`,dropHere:`Drop tasks here`,emptySpec:`No tasks in this spec yet.`,depGraphHeading:`Dependency Graph`,worktreePrefix:`worktree: {{branch}}`},b={trendUp:`Increasing`,trendDown:`Decreasing`,trendStable:`Stable`,heading:`Debug Dashboard`,subtitle:`Real-time monitoring for WrongStack WebUI`,refreshLabel:`Refresh:`,lastUpdated:`Last updated: {{time}}`,fetchFailed:`Failed to fetch metrics`,fileWatcher:`File Watcher`,watcherStatus:`Watcher Status`,running:`Running`,stopped:`Stopped`,activeProjects:`Active Projects`,projectsWatched:`Projects being watched`,fileChanges:`File Changes`,totalDetected:`Total detected`,filesProcessed:`Files Processed`,afterHash:`After hash filter`,broadcastsSent:`Broadcasts Sent`,toClients:`To WebUI clients`,debounceResets:`Debounce Resets`,rapidWrites:`Rapid successive writes`,avgDebounce:`Avg Debounce Delay`,actualDelay:`Actual delay applied`,totalDelay:`Total Delay`,sumDelays:`Sum of all delays`,browserPerf:`Browser Performance`,heapUsed:`Heap Used`,jsHeap:`JavaScript heap`,heapTotal:`Heap Total`,totalHeap:`Total heap size`,pageUptime:`Page Uptime`,sinceLoad:`Since page load`,rawData:`Raw Data`},x={allowlistTitle:`Model allowlist`,modelCount_one:`{{count}} model`,modelCount_other:`{{count}} models`,using:`Using`,noModelPicked:`(no model picked)`,clearAllowlist:`Clear allowlist`,clearAllowlistAria:`Clear saved allowlist for {{provider}}`,refresh:`Refresh from server`,refreshAria:`Refresh model list for {{provider}}`,probing:`Probing…`,searchPlaceholder:`Search models…`,use:`Use`,useModelAria:`Use model {{model}} for {{provider}}`},S={expandChip:`Expand {{label}}`,collapseChip:`Collapse {{label}}`,ahead:`{{count}} ahead`,behind:`{{count}} behind`,linesAdded:`{{count}} lines added`,linesDeleted:`{{count}} lines deleted`,untrackedFiles:`{{count}} untracked files`,customizeTitle:`Customize dock chips`,dockChips:`Dock chips`,noActiveGoal:`No active goal`,noActiveGoalDetail:`Start a goal from chat or the goal command.`},C={leaderBadge:`LEADER`,iters:`Iters`,tools:`Tools`,activityBins:`Activity (12 bins)`,streamingOutput:`Streaming output`,recentTools:`Recent tools`,finalOutput:`Final output`,heading:`Agents Monitor`,prevAgent:`Previous agent`,nextAgent:`Next agent`,closeAria:`Close agents monitor`,hintPage:`←→ page`,hintNavigate:`↑↓ navigate list`,hintEsc:`Esc close`},w={resize:`Resize terminals`,labelSingular:`Terminal`,labelPlural:`Terminals`,projectShell:`Project shell`,maxTerminals:`Maximum {{count}} terminals`,newTerminal:`New terminal`,restart:`Restart active terminal`,closeAll:`Close all terminals`,closeDock:"Close terminal dock (Ctrl+`)",closeTab:`Close {{name}}`,processExited:`[process exited with code {{code}}]`},T={liveStream:`Live stream`,events_one:`{{count}} event`,events_other:`{{count}} events`,interruptTitle:`Cooperatively stop this agent at its next step (not a process kill)`,interrupt:`⏸ Interrupt`,interrupting:`…`,loading:`Loading session…`,done:`✓✓ done`,read:`✓ read`,delivered:`⏳ delivered`,agent:`Agent`,you:`You`,working:`{{name}} · working`,claude:`Claude`,priority:`Priority`,placeholder:`{{label}} → this session…`,send:`Send`,sendHint:`⌘/Ctrl+Enter to send · seen on the agent's next iteration`,msgType:{steerLabel:`🔄 Steer`,steerHint:`Adjust behavior mid-task`,askLabel:`❓ Ask`,askHint:`Question — expects a reply`,assignLabel:`📋 Assign`,assignHint:`A task to act on`,noteLabel:`💬 Note`,noteHint:`FYI, non-urgent`},sentRunning:`Delivered — the running agent sees it on its next step`,sentIdle:`Delivered — target is idle; appears in its mailbox, read when it next runs`,sentFailed:`Failed: {{error}}`,interruptReason:`Operator requested stop from Fleet HQ`,interruptSent:`Interrupt sent — agent stops at its next step (not a kill)`,interruptFailed:`Interrupt failed: {{error}}`},E={empty:`No side effects recorded yet.`,emptyHint:`Bash commands, package installs, and network requests will appear here.`,heading:`Side Effects`,exportTitle:`Export filtered side effects as CSV`,all:`All`,colTime:`Time`,colTool:`Tool`,colRisk:`Risk`,colDetail:`Detail`,colOutcome:`Outcome`},D={elapsedHm:`{{h}}h {{m}}m ago`,elapsedMs:`{{m}}m {{s}}s ago`,elapsedS:`{{s}}s ago`,heading:`Fleet Monitor`,clientsHeading:`Connected Clients`,terminal:`Terminal`,webui:`Web UI`,repl:`REPL`,totalConnected:`total connected`,mailQueue:`Mail Queue`,total:`Total`,open:`Open`,unread:`Unread`,agents:`Agents`,messagesSub:`messages`,uncompletedSub:`uncompleted`,waitingSub:`waiting`,ofTotal:`of {{count}} total`,agentRoster:`Agent Roster`,liveMailActivity:`Live Mail Activity`,noActivity:`No recent activity`,mailboxAgents:`Mailbox Agents`,noMailboxAgents:`No agents registered`,moreCount:`+{{count}} more`,agentFallback:`agent`,fleetAgents:`Fleet Agents`,noFleetAgents:`No fleet agents running`,iter:`iter`,mailType:{sent:`Sent`,delivered:`Delivered`,read:`Read`,completed:`Completed`}},O={status:{pending:`pending`,queued:`queued`,in_progress:`running`,blocked:`blocked`,review:`review`,failed:`failed`,completed:`done`,cancelled:`cancelled`},activityHeading:`Activity`,feedEmpty:`Nothing yet — events appear here as agents pick up and finish tasks.`,destroyTitle:`Destroy SDD project?`,destroyDesc:`This wipes the run and its work. It cannot be undone (the optional commit revert is history-preserving).`,stopRun:`Stop the run`,stopRunAgents_one:`Stop the run ({{count}} agent working)`,stopRunAgents_other:`Stop the run ({{count}} agents working)`,removeWorktreesAll:`Remove all git worktrees + wstack/ap/* branches — including un-merged work`,removeWorktreesCount_one:`Remove {{count}} git worktree + wstack/ap/* branches — including un-merged work`,removeWorktreesCount_other:`Remove {{count}} git worktrees + wstack/ap/* branches — including un-merged work`,deleteArtifacts:`Delete all SDD artifacts (specs, task graph, board, session)`,revertMerged_one:`Also revert {{count}} merged commit`,revertMerged_other:`Also revert {{count}} merged commits`,revertHint:`Adds revert commits (history preserved). Refused if the working tree is dirty.`,baseBranchFallback:`the base branch`,noteLeaveMerged:`Merged commits will be left on the base branch. Tick the box above to undo them too.`,noteAbandon:`Make sure you really want to abandon this run.`,destroying:`Destroying…`,destroyAll:`Destroy everything`,kanbanBacklog:`Backlog`,kanbanReady:`Ready`,kanbanRunning:`Running`,kanbanReview:`Review`,kanbanFailed:`Failed`,kanbanDone:`Done`,kanbanEmpty:`empty`},k={collapseToLines:`Collapse to first {{count}} lines`,showAllLines:`Show all {{total}} lines ({{more}} more)`,exitCode:`exit code:`,jsonLines:`JSON · {{count}} lines`,collapse:`collapse`,expand:`expand`},A={injectedHeading:`SAGE Memory Injected`,memoriesLabel_one:`{{count}} memory`,memoriesLabel_other:`{{count}} memories`},j={heading:`Design Studio — Gallery`,kitsCount:`{{count}} kits`,searchPlaceholder:`Search kits…`,stackTitle:`Stack for Use + Materialize`,wrote:`Wrote {{path}}`,materializeFailed:`Materialize failed: {{error}}`,verifyError:`Verify: {{error}}`,verifyOffPalette:`Verify: {{pct}}% on-palette — {{count}} off-palette in {{files}} file(s)`,verifyClean:`Verify: clean ✓ ({{files}} file(s) on-palette)`,writing:`Writing theme file…`,scanning:`Scanning UI files…`,active:`Active`,reapply:`Reapply`,use:`Use`,materializeTitle:`Write tokens to a {{stack}} theme file`,materialize:`Materialize`,verifyTitle:`Scan UI files for off-palette colors`,verify:`Verify`,colors:`Colors`},M={summary_one:`{{count}} phase · {{pct}}% complete`,summary_other:`{{count}} phases · {{pct}}% complete`,switchBoard:`Switch board`,boardsCount_one:`{{count}} board…`,boardsCount_other:`{{count}} boards…`,toggleAutonomousTitle:`Toggle autonomous mode`,autonomous:`Autonomous`,manual:`Manual`,resumeTitle:`Resume the run`,pauseTitle:`Pause the run`,resume:`Resume`,pause:`Pause`,stopTitle:`Stop the run — aborts in-flight agents immediately`,stop:`Stop`,newTitle:`Clear this board and start a new Goal run`,newLabel:`New`,revertConfirm:`Revert run's commits?`,revertTitle:`Undo this run — git-revert the commits it landed and remove its worktrees`,revert:`Revert`,goal:`Goal`,planning:`Planning phases…`,planningBody:`Your goal was received. WrongStack is breaking it into phases and tasks — the board appears here the moment the plan is ready.`,startHeading:`Start a Phase Plan`,startBody:`Describe what you want to build. WrongStack will plan phases and tasks, then execute them — watch and steer the run on the board.`,startPlaceholder:`e.g. Build a REST API for user management with Express and SQLite...`,isolateLabel:`Isolate each phase in its own git worktree`,startButton:`Start Goal`,ctrlHint:`Ctrl+Enter to start`,isolateOn:`phases run in isolated worktrees, squash-merged back`,isolateOff:`phases run directly on the current branch`,lanes:`Lanes`,graph:`Graph`,planningAck:`🚀 **Goal** — got it. Planning phases for your goal now…`,assess:{analyzing:`Analyzing goal scope…`,realistic:`✓ Scope looks realistic`,durationConcern:`⚠ Duration concern`,durationClaimed:`Claimed duration: {{duration}}`,recommendation:`Recommended: {{duration}}`,concerns:`Concerns`,analysisFailed:`Could not analyze goal scope`,override:`Start anyway`,overrideTitle:`Clear the assessment warning and enable the start button`,disableTitle:`This goal has an unrealistic duration assessment — use "Start anyway" to override`},multiBoardLabel:`Split into multiple kanban boards`,verifyTasksLabel:`Require verification for each task`,chimeraReviewLabel:`Enable chimera auto-review`},N={noObservers:`No live observers`,observerTitle:`Join as a read-only observer (Phase 1)`,observerRole:`observer`,annotatorTitle:`Join as an annotator — leave inline notes on tool calls (Phase 2)`,annotatorRole:`annotator`,controllerTitle:`Join as a controller — can pause the agent loop (Phase 3)`,controllerRole:`controller`,errorPrefix:`Collab: {{error}}`,dismiss:`dismiss`,observers_one:`{{count}} observer`,observers_other:`{{count}} observers`,annotationsTitle:`{{count}} open annotation(s) — annotators reviewing this session`,notes_one:`{{count}} note`,notes_other:`{{count}} notes`,pausedTitle:`Agent loop is paused — a controller is reviewing`,paused:`paused`,joinedTitle:`Joined {{time}}`,grantTitle:`Grant control — promote this participant to controller`,injectTitle:`Inject a synthetic result for an in-flight tool call`,inject:`Inject`,resumeTitle:`Resume the agent loop`,resume:`Resume`,pauseTitle:`Pause the agent before the next tool call`,pauseAgent:`Pause agent`,leaveTitle:`Leave the observer session`,leave:`Leave`,injectToolResult:`Inject tool result`,close:`close`,targetTool:`Target tool_use id`,targetPlaceholder:`pick an in-flight call or type a tool_use id`,toolFallback:`tool`,noPendingTools:`No in-flight tool calls — type a tool_use id to pre-queue, or pause the agent first.`,resultContent:`Result content`,resultPlaceholder:`Synthetic tool result fed to the agent in place of running the tool`,markError:`mark as error`,reasonPlaceholder:`reason (audit log)`,queueInjection:`Queue injection`,controllerInjection:`controller injection`},P={modePrefix:`mode:`,activeTitle:`Active mode`,heading:`Mode`,defaultName:`Default`,defaultDesc:`Standard agent behaviour`},F={clickTitle:`Click for per-turn cost breakdown`,heading:`Cost breakdown`,noPricing:`No pricing for the current model — cost figures are zero.`,noTurns:`No completed turns yet. Run a prompt to see per-turn cost here.`,topExpensive_one:`Top {{count}} expensive turn`,topExpensive_other:`Top {{count}} expensive turns`},I={runDefault:`Run default`,useRunDefault:`Use run default`,filterPlaceholder:`Filter models…`,loading:`Loading models…`,noMatch:`No match`},L={heading:`Switch model`,filterPlaceholder:`Filter providers and models…`,noSavedProviders:`No saved providers — register a key in Settings first.`,active:`active`},R={todos:`Todos`,tasks:`Tasks`,plan:`Plan`},z={toggleAria:`Toggle: {{content}}`,removeTitle:`Remove todo`,removeAria:`Remove "{{content}}"`,completedCount_one:`{{count}} completed`,completedCount_other:`{{count}} completed`},B={start:`Start`,complete:`Complete`,retry:`Retry`,assign:`Assign`,assignTitle:`Assign agent`,unassigned:`Unassigned`,statusPending:`Pending`,statusInProgress:`In Progress`,statusBlocked:`Blocked`,statusFailed:`Failed`,statusReview:`Review`,statusDone:`Done`,startTitle:`Start`,completeTitle:`Complete`,fail:`Fail`,failTitle:`Mark failed`,boardCount:`{{total}} tasks · {{done}} completed`},V={toolCalls_one:`{{count}} tool call`,toolCalls_other:`{{count}} tool calls`},H={removeTitle:`Remove reference`,linesCount_one:`{{count}} line`,linesCount_other:`{{count}} lines`},ne={statusOpen:`Open`,statusInProgress:`In Progress`,statusDone:`Done`,startTitle:`Start`,doneTitle:`Mark done`,reopenTitle:`Reopen`,reopen:`Reopen`},U={heading:`@ Files`,noMatch:`No files match "{{query}}"`,searching:`Searching project…`},W={dismiss:`Dismiss`},G={placeholder:`Search in chat…`,prevHit:`Previous hit`,nextHit:`Next hit`,close:`Close (Esc)`},K={statusPending:`Pending`,statusReady:`Ready`,statusRunning:`Running`,statusPaused:`Paused`,statusCompleted:`Completed`,statusFailed:`Failed`,statusSkipped:`Skipped`,heading:`Phases`,autonomousOn:`● Autonomous`,autonomousOff:`○ Manual`,autonomousOnTitle:`Autonomous mode active — click to pause`,autonomousOffTitle:`Manual mode — click to enable autonomous`,overallProgress:`Overall Progress`,tasksSuffix:`{{done}}/{{total}} tasks`,agentsSuffix_one:`{{count}} agent`,agentsSuffix_other:`{{count}} agents`},q={triggerTitle:`Context-window mode`,ctxPrefix:`ctx:`,opsHeading:`Context Operations`,compactNow:`Compact Now`,compactNowDesc:`Elide old tool output`,compactAggressive:`Compact Aggressive`,compactAggressiveDesc:`Maximum elision now`,repairContext:`Repair Context`,repairDesc:`Fix orphan tool-use blocks`,debugContext:`Debug Context`,debugDesc:`Size breakdown per section`,windowHeading:`Context Window`,keepElide:`keep {{k}} recent · elide {{t}}+ tokens`,fallbackName:`Balanced`,fallbackDesc:`Default rolling compaction`},J={kindAssistant:`Assistant`,kindThinking:`Thinking`,kindToolCall:`Tool call`,kindToolResult:`Tool result`,kindError:`Error`,kindStatus:`Status`,kindSystem:`System`,title:`Chat history`,copyTitle:`Copy agent chat history`,empty:`No chat history for this agent yet.`},Y={heading:`Autonomy Mode`,titlePrefix:`Autonomy: {{label}}`,descOff:`Full manual control — agent waits for your input.`,descSuggest:`Agent suggests next steps but waits for approval.`,descAuto:`Agent auto-proceeds after brief confirmation delay.`,descEternal:`Agent runs autonomously until goal is complete.`,descEternalParallel:`Multi-agent autonomous execution — fleet mode.`},X={heading:`Message Queue`,subtitle:`{{count}} queued · messages sent before the agent finishes`,btwTitle:`By-the-way — sent as follow-up without interrupting the running agent`,steerTitle:`Steer — interrupts the running agent and redirects it with this message`,queueTitle:`Queued — held until the current agent run completes, then sent in order`,sortNewestTitle:`Sorted newest first — click to sort oldest first`,sortOldestTitle:`Sorted oldest first — click to sort newest first`,newest:`Newest`,oldest:`Oldest`,clear:`Clear`,clearTitle:`Clear all queued messages`,closeTitle:`Close`,emptyTitle:`Queue is empty`,emptyBody:`Use the btw / steer / add queue buttons beside the input to add messages. Queued items are sent in order when the current agent run completes.`,removeTitle:`Remove from queue`,clearDispatchedTitle:`Clear queued messages — already-sent notes cannot be retracted`,dispatchedTitle:`Already sent to the agent`,dispatchedLabel:`Sent`,footer:`Messages are sent in arrival order when the current agent run completes. Use the sort toggle to view newest-first.`},Z={heading:`Session Checkpoints`,countSuffix_one:`{{count}} checkpoint`,countSuffix_other:`{{count}} checkpoints`,description:`Rewind the session to any checkpoint. Messages and file changes revert to that point — the LLM continues from there as if nothing happened after.`,emptyTitle:`No checkpoints yet`,emptyBody:`Checkpoints are automatically created each time you send a message. Send a few messages and come back.`,latest:`latest`,msgSuffix_one:`{{count}} msg`,msgSuffix_other:`{{count}} msgs`,footerPre:`Click any checkpoint to rewind`,footerPost:`to close`},Q={statusActive:`Active`,statusPaused:`Paused`,statusDone:`Done`,statusFailed:`Failed`,statusAbandoned:`Abandoned`,heading:`Goal`,refined:`Refined`,progress:`Progress`,iterations:`iterations`,deliverables:`Deliverables`,recentActivity:`Recent Activity`},$={cleanTitle_one:`Clean {{count}} orphaned worktree?`,cleanTitle_other:`Clean {{count}} orphaned worktrees?`,cleanMessage:`Force-removes every leftover git worktree + wstack/ap branch from previous runs. Un-merged work in them is discarded.`,cleanConfirm:`Clean orphans`,orphanCount_one:`{{count}} orphaned worktree from previous runs`,orphanCount_other:`{{count}} orphaned worktrees from previous runs`,andMore:`…and {{count}} more`,cleanButtonTitle:`Force-remove all orphaned worktrees + branches`,removed_one:`✓ Removed {{count}} orphaned worktree.`,removed_other:`✓ Removed {{count}} orphaned worktrees.`,cleanupFailed:`cleanup failed`,lanesHeading:`Worktrees`,base:`base`,isolatedCount_one:`{{count}} isolated`,isolatedCount_other:`{{count}} isolated`,statusAllocating:`allocating`,statusActive:`active`,statusCommitting:`committing`,statusMerging:`merging`,statusMerged:`merged`,statusConflict:`conflict`,statusFailed:`failed`,conflictBadge:`CONFLICT`,graphAria:`Worktree branch graph off {{base}}`,mergedLabel:`✓ merged → {{base}}`},re={heading:`Running Processes`,subtitle:`{{active}} active · {{total}} total`,killAll:`Kill All`,emptyTitle:`No processes tracked`,emptyBody:`Processes appear here when the agent runs bash or exec tools. Active processes show a pulsing LED.`,pidLabel:`PID {{pid}}`,protected:`protected`,protectedTitle:`Protected — survives kill/killAll`,background:`background`,backgroundTitle:`Detached job — survives CLI/WebUI shutdown`,confirmKillBackground:`Terminate detached background process {{pid}}?`,confirmKillAll:`Terminate all {{count}} running processes?`,killTitle:`Kill PID {{pid}}`},ie={tooLarge:`Diff omitted (file too large to render inline).`},ae={placeholder:`Add a fallback model…`,emptyHint:`Tried in order when the primary model rate-limits or stalls.`,moveUp:`Move up`,moveDown:`Move down`},oe={loading:`Loading sessions...`,apiUnavailable:`Session API unavailable:`,empty:`No live sessions. Open another wstack instance to see it here.`,heading:`Live Sessions ({{count}})`,autoRefresh:`auto-refresh every 5s`,pidLabel:`PID {{pid}}`,agentMeta:`{{iter}} iter · {{tools}} tools · {{ago}}`,andMore:`... and {{count}} more`,noAgents:`No agents`},se={applyTitle:`Write the edited version back to disk`,applying:`Applying…`,applied:`Applied`,apply:`Apply`},ce={showStack_one:`Show stack trace ({{count}} frame)`,showStack_other:`Show stack trace ({{count}} frames)`,hideStack_one:`Hide stack trace ({{count}} frame)`,hideStack_other:`Hide stack trace ({{count}} frames)`},le={liveHeading:`Live`,clients:`Clients`,agents:`Agents`,model:`Model`,mode:`Mode`,toolCalls:`Tool calls`,displayHeading:`Display`,statsHud:`Stats HUD`,legends:`Legends`,minimap:`Minimap`,zoomControls:`Zoom controls`,animateWires:`Animate wires`,backgroundHeading:`Background`,bgDots:`Dots`,bgLines:`Lines`,bgCross:`Cross`,bgNone:`None`},ue={noParams:`(no params)`,itemCount_one:`{{count}} item`,itemCount_other:`{{count}} items`,keyCount_one:`{{count}} key`,keyCount_other:`{{count}} keys`},de={roleYou:`You`,roleTool:`Tool`,roleThinking:`Thinking`,roleAssistant:`Assistant`,inputLabel:`Input`,downloadTitle:`Download as file`,empty:`(empty)`,hideDetails:`Hide details`,showDetails:`Show details`,showDetailsLines_one:`Show details ({{count}} line)`,showDetailsLines_other:`Show details ({{count}} lines)`,editHint:`⌘/Ctrl+Enter to save · Esc to cancel`,saveResend:`Save & resend`,thinkingProcess:`Model Reasoning`,thinkingMeta:`iter {{iter}} · {{dur}} · {{lines}}`,replay:`replay`,linesSuffix_one:`{{count}} line`,linesSuffix_other:`{{count}} lines`,copyLog:`Copy log`,showFullLog:`Show full log`,typing:`Typing…`,noContent:`No content`,imageNotRetained:`Image preview not kept after refresh`,failedToSend:`⚠ Failed to send`,autoPaused:`⚠️ _Auto-proceed paused — maximum consecutive automatic turns reached. Type anything to continue (autonomy stays on)._`,autoLoopHalted:`⚠️ _Auto-submit halted because the same prompt repeated. Autonomy remains on; enter a new prompt to reset the loop guard._`,rsIterations:`Iterations: {{n}}`,rsTools:`Tool calls: {{n}}`,rsElapsed:`Elapsed: {{s}}`,rsCost:`Cost: {{c}}`,useInput:`Input: {{n}}`,useOutput:`Output: {{n}}`,useCacheRead:`Cache read: {{n}}`,useCost:`Cost: {{c}}`,renderedLabel:`Rendered`,rawLabel:`Raw`,showRenderedTitle:`Show rendered markdown`,showRawTitle:`Show raw markdown source`,editTitle:`Edit & resend this prompt`,editLabel:`Edit`,unpinTitle:`Unpin`,pinTitle:`Pin this answer`,pinnedLabel:`Pinned`,pinLabel:`Pin`,regenerateTitle:`Regenerate this response`,retryLabel:`Retry`},fe={toolFallback:`tool`,toolFailed:`Tool failed`},pe={heading:`Keyboard shortcuts`,footerPre:`Press`,footerPost:`any time to reopen this list.`,sectionGlobal:`Global`,sectionTuiParity:`TUI Panel Parity`,sectionFleet:`Fleet & Agents`,sectionChatInput:`Chat input`,sectionChat:`Chat`,sectionChatNav:`Chat navigation (when not typing)`,dCommandPalette:`Open command palette`,dShowOverlay:`Show this shortcuts overlay`,dToggleSidebar:`Toggle sidebar`,dOpenPanel:`Open side panel (Session, Agents, History, Files, Changes, Mailbox, Skills, Office Map)`,dDesignStudio:`Open Design Studio side panel`,dWorktrees:`Open Worktrees side panel`,dSettings:`Open Settings`,dMemory:`Open Memory`,dFocusInput:`Focus the message input`,dSessionPanel:`Session panel`,dFleetOverlay:`Fleet monitor overlay`,dAgentsOverlay:`Agents monitor overlay`,dWorktreeMonitor:`Worktree monitor`,dPlanPanel:`Plan panel`,dTodosPanel:`Todos panel`,dQueuePanel:`Queue panel`,dProcessMonitor:`Process monitor`,dGoalPanel:`Goal panel`,dSessionsDashboard:`Sessions dashboard`,dOfficeMap:`Coordinator office map`,dDockPicker:`Dock chip picker`,dOpenFleet:`Open Fleet Monitor overlay`,dOpenAgents:`Open Agents Monitor overlay`,dNavigateAgents:`Navigate agents in monitor`,dSelectAgent:`Select focused agent`,dCloseOverlay:`Close active overlay`,dSendMessage:`Send message`,dNewline:`Insert a newline`,dRecallPrev:`Recall previous prompt (in empty input)`,dRecallNext:`Recall next prompt`,dSlashPopup:`Open slash command popup`,dAutocomplete:`Autocomplete highlighted command`,dDismissPopup:`Dismiss popup / clear input`,dSearchChat:`Search within current chat`,dClearContext:`Clear context (same as /clear)`,dNewSession:`Start a new session (same as /new)`,dExportMarkdown:`Export chat as markdown`,dModelSwitcher:`Quick model switcher overlay`,dCompactDensity:`Toggle compact UI density`,dAbortRun:`Abort the current run (when running)`,dFocusNext:`Focus next message (alias: ↓)`,dFocusPrev:`Focus previous message (alias: ↑)`,dJumpFirst:`Jump to first message`,dJumpLast:`Jump to last message`,dCopyFocused:`Copy focused message text`,dClearFocused:`Clear focused message`},me={titleFallback:`Live SDD Board`,defaultModelTitle:`Run-level default worker model (per-task overrides take precedence)`,graphLabel:`Graph`,kanbanLabel:`Kanban`,retryAllTitle:`Requeue every failed task to pending`,retryFailed:`Retry failed ({{count}})`,resume:`Resume`,pause:`Pause`,stop:`Stop`,cleanTitle:`Remove the run's git worktrees + wstack/ap branches`,cleanWorktrees:`Clean worktrees`,rollbackTitle:`Revert {{count}} merged commit(s) on {{base}}`,rollback:`Rollback ({{count}})`,stopping:`Stopping…`,destroying:`Destroying…`,destroyTitle:`Stop, remove all worktrees, optionally revert merged commits, and delete the SDD project`,destroy:`Destroy`,statDone:`done`,statRunning:`running`,statFailed:`failed`,statWave:`wave`,statElapsed:`elapsed`,noActiveWorkers:`no active workers`,deadlock:`Deadlock — tasks blocked by failed work:`,noRunTitle:`No active SDD run.`,noRunBody:`Start one from the New SDD Project wizard, or via /sdd execute in the CLI — agents appear here live, each working an isolated worktree.`,clickTaskHint:`click a task for details`,lcClean:`Clean`,lcRollback:`Rollback`,lcDestroy:`Destroy`,lcFailed:`{{op}} failed: {{reason}}`,lcUnknownError:`unknown error`,lcWorktrees_one:`{{count}} worktree removed`,lcWorktrees_other:`{{count}} worktrees removed`,lcCommits_one:`{{count}} commit reverted`,lcCommits_other:`{{count}} commits reverted`,lcDeleted:`deleted {{items}}`,lcNothing:`nothing to do`,lcNote:`{{op}}: {{body}} — note: {{reason}}`,lcOk:`{{op}}: {{body}}`},he={backTitle:`Back to activity`,expandTitle:`Expand task details`,collapseTitle:`Collapse task details`,eventLog:`Task event log`,newestFirst:`newest first`,noEvents:`No task activity has been recorded yet.`,workingOn:`working on this task`,assigned:`assigned`,metaPriority:`Priority`,metaType:`Type`,metaDuration:`Duration`,metaElapsed:`Elapsed`,metaRetries:`Retries`,metaWorktree:`Worktree`,workerModel:`Worker model`,runDefault:`run default: {{model}}`,runDefaultPlaceholder:`Run default`,runDefaultPlaceholderModel:`Run default ({{model}})`,verificationCmd:`Verification command`,gatesCompletion:`gates completion (exit 0)`,verifyPlaceholder:`e.g. pnpm vitest run path/to/file`,addVerify:`+ Add verification command`,description:`Description`,timeline:`Timeline`,dependsOn:`Depends on`,blocks:`Blocks`,newWorkerPlaceholder:`New worker name…`,confirmStop:`Stop this running task?`,confirmDelete:`Delete this task from the run?`,retryTitle:`Requeue this task to pending`,reassign:`Reassign`,stopTitle:`Abort the worker on this task`,splitTitle:`Split this task into sub-tasks delegated to separate workers`,split:`Split`,splitHint:`One sub-task per line — Title :: description (description optional)`,splitPlaceholder:`Write the data layer :: add the repository
4
4
  Wire the UI`,splitInto:`Split into sub-tasks`,deleteTitle:`Remove this not-started task from the run`},ge={phaseStart:`Start`,phaseInterview:`Interview`,phaseSpecReview:`Spec Review`,phasePlanning:`Planning`,phaseTaskReview:`Task Review`,phaseRunning:`Running`,phaseDone:`Done`,titleFallback:`New SDD Project`,questionsSuffix:`{{cur}}/{{max}} questions`,tasksSuffix:`{{count}} tasks`,runCfgTitle:`Run config — default model + fallback chain`,modelsLabel:`Models`,startRun:`Start Run`,defaultWorkerModel:`Default worker model`,leaderDefaultPlaceholder:`Leader / session default`,useSessionDefault:`Use session default`,fallbackChain:`Fallback chain`,appliesToAll:`Applies to every task. Override per-task from the live board after the run starts.`,parallelAgents:`Parallel agents`,isolateWorktrees:`Isolate in git worktrees`,worktreeOn:`Each task runs in its own worktree, squash-merged back on completion.`,worktreeOff:`Tasks run directly on the current branch (no isolation).`,planDecompose:`Auto-split large tasks`,planDecomposeOn:`Before dispatch, split tasks the atomicity engine flags as too large.`,planDecomposeOff:`Keep the approved task graph as-is (still split at runtime if a task fails).`,goalPrompt:`What do you want to build?`,goalPlaceholder:`e.g. Add OAuth login (Google + GitHub) with session management`,startingInterview:`Starting interview…`,startInterview:`Start Interview`,introBody:`An isolated agent interviews you to build a spec, decomposes it into a dependency-ordered task graph, then a real multi-agent fleet executes it — watch live on the board. If you refresh or restart, the interview resumes automatically.`,taskGraphSummary:`Task graph · {{count}} tasks, dependency-ordered`,dragToExplore:`drag to explore`,show:`show`,goalLabel:`Goal`,implementationPlan:`Implementation plan`,approveSpec:`Approve spec → plan implementation`,approveTasks:`Approve tasks`,approvePlan:`Approve plan`,answerPlaceholder:`Answer the question…`,changePlaceholder:`Request a change…`,resumeBanner:`Resumed interview from a previous session — continue where you left off.`,openLiveBoard:`Open live board`,discardInterview:`Discard & start over`,discardTitle:`Abandon this interview and clear the saved session`},_e={emptyDir:`empty`,loadFailed:`Failed to load files: {{error}}`,expandAllTitle:`Expand all directories`,expandAll:`Expand all`,collapseAllTitle:`Collapse all directories`,collapse:`Collapse`,folders_one:`{{count}} folder`,folders_other:`{{count}} folders`,currentDirTitle:`Current directory: {{path}}`,navigateToTitle:`Navigate to {{path}}`,filesSuffix_one:`{{count}} file`,filesSuffix_other:`{{count}} files`,goToDir:`go to dir`,navigateParentTitle:`Navigate to parent directory of {{path}}`,parentDirectory:`parent directory`,noFiles:`No files found`,copyAbsPath:`Copy absolute path`,copyRelPath:`Copy relative path`,openInTerminal:`Open in terminal`,openInFileManager:`Open in file manager`,mentionInChat:`Mention in chat`,copyPath:`Copy path`},ve={sendSelectionAction:`Send selection to chat`,noFilesOpen:`No files open`,selectToEdit:`Select a file from the explorer to start editing`,sendSelectedTitle:`Send selected lines to chat`,mentionFileTitle:`Mention this file in chat`,sendToChat:`Send to chat`,mentionFile:`Mention file`,loadingEditor:`Loading editor…`,selectTab:`Select a tab to view its content`},ye={title:`File activity`,overview:`Overview`,changes:`Changes`,context:`Context`,logs:`Logs`,lines:`lines`,resizeHint:`Drag to resize · double-click to reset`,refresh:`Refresh file evidence`,evidenceCount_one:`{{count}} event`,evidenceCount_other:`{{count}} events`,mutations30m:`Edits · 30m`,sessions:`Sessions`,actors:`Actors`,linkedWork:`Work links`,lifetimeTitle:`All history`,lifetimeChanges:`changes`,lifetimeSessions:`sessions`,lifetimeTasks:`tasks`,lifetimeBoards:`boards`,lifetimeSince:`since {{date}}`,lifetimeTools:`via {{tools}}`,workLinks:`Kanban / todo`,recentActivity:`Recent file activity`,events:`events`,noEvidence:`No activity has been attributed to this file yet.`,noSessions:`No session attribution yet.`,noActors:`No actor attribution yet.`,noWorkLinks:`No Kanban, SDD or todo link recorded.`,taskOrTodo:`Task / todo`,loadingEvidence:`Loading file evidence…`,gitToBuffer:`Git HEAD → current Monaco buffer`,savedToBuffer:`Last saved version → current Monaco buffer`,unsaved:`unsaved buffer`,level:{quiet:`quiet`,active:`active`,churn:`high churn`},analysisTitle:{quiet:`No recent edit churn`,active:`This file is being changed`,churn:`Repeated edits detected`},analysisBody:{quiet:`No attributed mutations were recorded in the last 30 minutes.`,active:`{{mutations}} mutations across {{actors}} actors and {{sessions}} sessions in the last 30 minutes.`,churn:`High churn: {{mutations}} mutations across {{actors}} actors and {{sessions}} sessions. Check overlapping work before the next edit.`}},be={loading:`Loading analytics…`,heading:`Analytics Dashboard`,autoRefresh:`auto-refresh every 10s`,liveSessions:`Live Sessions`,agents:`Agents`,agentsActive:`{{count}} active`,totalEvents:`Total Events`,categoriesSub:`{{count}} categories`,toolCalls:`Tool Calls`,iterationsSub:`{{count}} iterations`,sessionCost:`Session Cost`,tokensSub:`{{input}} in / {{output}} out`,sessionDuration:`Session Duration`,messagesSub:`{{count}} messages`,eventsByCategory:`Events by Category`,noEvents:`No events recorded yet.`,topEvents:`Top Events`,activeSessionUsage:`Active Session Usage`,provider:`Provider`,model:`Model`,inputTokens:`Input Tokens`,outputTokens:`Output Tokens`,cacheRatio:`Cache Ratio`,filesRead:`Files Read`,noSession:`No active session or waiting for data…`,healthErrors:`Health & Errors`,errorEvents:`Error events`,warningEvents:`Warning events`,cacheHitRate:`Cache hit rate`,totalCategories:`Total categories`,waitingData:`Waiting for data…`,recentEvents:`Recent Events`,noRecentEvents:`No recent events. Interact with the UI to generate events.`},xe={heading:`Prompt library`,searchPlaceholder:`Search prompts…`,newPrompt:`+ New prompt`,all:`All`,recent:`🕘 Recent`,favorites:`★ Favorites`,noMatch:`No prompts match.`,newPromptHeading:`New prompt`,titlePlaceholder:`Title *`,descPlaceholder:`One-line description`,categoryPlaceholder:`Category`,tagsPlaceholder:`tags, comma, separated`,contentPlaceholder:`Prompt content * — use {{name}} for variables`,variables:`Variables`,addVar:`+ var`,varNamePlaceholder:`name`,varDescPlaceholder:`description`,removeVarTitle:`Remove variable`,required:`required`,multiline:`multiline`,enumPlaceholder:`enum: a, b, c`,savePrompt:`Save prompt`,saveFailed:`Could not save the prompt.`,titleContentRequired:`Title and content are required.`,toggleFavoriteTitle:`Toggle favorite`,selectOption:`— select —`,fillMissing:`Fill: {{missing}}`,insertIntoChat:`Insert into chat`,selectPromptHint:`Select a prompt to preview and insert.`},Se={scopeProject:`Project`,scopeGlobal:`Global`,scopeBundled:`Bundled`,timeoutError:`Request timed out. Please try again.`,updateFailed:`Update failed`,saveFailed:`Save failed`,uninstallFailed:`Uninstall failed`,noSkillSelected:`No skill selected`,selectSkillHint:`Select a skill from the sidebar to view its documentation`,goToChat:`Go to chat`,openSourceRepo:`Open source repo`,copySourceUrl:`Copy source URL`,updatedLabel:`↑ Updated: {{list}}`,upToDateLabel:`— Up to date: {{list}}`,errorsLabel:`✗ {{list}}`,checkUpdatesTitle:`Check for updates`,exportTitle:`Export skill as .md`,editTitle:`Edit skill`,uninstallTitle:`Uninstall skill`,closeTitle:`Close and go to chat`,backTitle:`Go back`,forwardTitle:`Go forward`,relatedFiles:`Related Files`,references:`References`,goToSkillTitle:`Go to {{name}}`,loadingContent:`Loading skill content…`,editingLabel:`Editing {{name}}`,editStats:`{{lines}} lines · {{words}} words · {{chars}} chars`,charsWarningFmt:`⚠ {{used}} MB / {{limit}} MB`,draftSaved:`Draft saved`,draftRestored:`Draft restored`,discardDraft:`Discard draft`,splitViewTitle:`Split view`,hidePreviewTitle:`Hide preview`,contentPlaceholder:`Skill content (markdown)...`,loadFailed:`Failed to load skill content`,noContent:`No skill content available`,uninstallSkillHeading:`Uninstall Skill`,uninstallConfirm:`Uninstall {{name}}?`,uninstallRemovePath:`This will remove the skill from {{path}} and cannot be undone.`,uninstallAction:`Uninstall`},Ce={sessionStats:`Session Stats`,clients:`Clients`,input:`Input`,output:`Output`,cost:`Cost`,agentsSuffix:`agents`,upPrefix:`up {{time}}`,webuiClient:`WebUI Client`,disconnected:`Disconnected`,connected:`Connected`,tuiClient:`TUI Client`,terminal:`Terminal`,repl:`REPL`,coordinator:`COORDINATOR`,fleetSummary:`Fleet summary`,toolCallsLabel:`Tool calls`,tokensLabel:`Tokens`,coordinatingFleet:`Coordinating fleet`,donePrefix:`✓ done ·`,failedPrefix:`✕ failed ·`,seenPrefix:`seen {{time}}`,availableDesk:`Available desk`,mailboxHub:`Mailbox Hub`,unreadSuffix_one:`{{count}} unread`,unreadSuffix_other:`{{count}} unread`,allClear:`All clear`,total:`Total`,unreadLabel:`Unread`,liveActivity:`Live activity`,waitingActivity:`Waiting for activity…`,now:`now`,fleetHq:`WrongStack Fleet HQ`,live:`LIVE`,legendStatus:`Status`,legendActive:`Active`,legendIdle:`Idle`,legendError:`Error`,legendConnections:`Connections`,legendMail:`Mail`,legendTask:`Task`,legendStatusConn:`Status`,arrange:`Arrange`,arrangeTitle:`Arrange nodes to fit the available canvas`,feed:`Feed`,feedTitle:`Toggle the live activity feed`,broadcast:`Broadcast`,broadcastTitle:`Broadcast a message to every live session in this project`,broadcastToAll:`Broadcast to all sessions`,broadcastPlaceholder:`Message every live agent in this project…`,broadcastSendHint:`⌘/Ctrl+Enter to send`,openFullView:`Open full operation view`,rowStatus:`Status`,rowModel:`Model`,rowTool:`Tool`,rowIterations:`Iterations`,rowToolCalls:`Tool calls`,rowTokensIn:`Tokens in`,rowTokensOut:`Tokens out`,rowTokensTotal:`Tokens total`,rowContext:`Context`,rowCost:`Cost`,rowLastSeen:`Last seen`,rowSurface:`Surface`,rowBranch:`Branch`,rowPid:`PID`,rowDir:`Dir`,rowAgents:`Agents`,rowUptime:`Uptime`,rowConnections:`Connections`,rowTotalMessages:`Total messages`,rowUnread:`Unread`,recent:`Recent`,noSubject:`(no subject)`,fullOperationStream:`Full operation stream`,closeEsc:`Close (Esc)`,idleDesk:`Idle desk`,fleetHqLabel:`Fleet HQ`,clientsSuffix_one:`{{count}} client`,clientsSuffix_other:`{{count}} clients`,taskFallback:`task`,controlLabel:`control`},we={installTitle:`Install skill`,createTitle:`Create skill`,exportTitle:`Export all skills as .zip`,checkUpdatesTitle:`Check for updates (all skills)`,searchPlaceholder:`Search skills…`,loading:`Loading…`,noSkills:`No skills installed`,noMatch:`No skills match filter`,noDescription:`No description`,scopeForeign:`Foreign`,installHeading:`Install Skill`,installHint:`Enter a GitHub repository reference (owner/repo) or full URL.`,installPlaceholder:`e.g. wrongstack/skill-name or https://github.com/owner/repo`,installScope:`Install scope:`,installBtn:`Install`,installedMsg:`Installed: {{names}}`,installFailed:`Installation failed`,createHeading:`Create Skill`,createHint:`Scaffold a new skill. The first line is the trigger; additional lines form the description.`,nameLabel:`Name`,namePlaceholder:`e.g. my-new-skill`,descLabel:`Description / Trigger`,descPlaceholder:`Use this skill when <trigger situation>.
5
5
  Triggers: user says "keyword", "another".`,saveIn:`Save in:`,createBtn:`Create Skill`,createdMsg:`Created: {{name}}`,createFailed:`Creation failed`},Te={noEvents:`No events yet.`},Ee={pickHint:`Pick a kit — the agent will adhere to it.`,gallery:`Gallery`,galleryTitle:`Open live preview gallery`,stackTitle:`Target stack`,loading:`Loading kits…`,notFound:`No design kits found.`,bestFor:`Best for:`,light:`Light`,dark:`Dark`},De={detached:`(detached)`,count_one:`{{count}} worktree`,count_other:`{{count}} worktrees`,baseSuffix:` · base {{base}}`,baseLabel:`base`,cleanOrphans:`Clean orphans`,cleanOrphansTitle:`Remove all orphaned worktrees`,liveBusyTitle:`A run is live — stop it first`,rescanTitle:`Rescan`,removed_one:`Removed {{count}} worktree.`,removed_other:`Removed {{count}} worktrees.`,failed:`Failed`,mergedIntoBase:`Merged {{branch}} into base.`,conflictMerge:`Conflict merging {{branch}}: {{files}}`,seeGit:`see git`,mergeFailed:`Merge failed: {{reason}}`,unknownReason:`unknown`,mergeConfirmTitle:`Merge {{branch}} into {{base}}?`,mergeConfirmMsg:`Squash-merges this branch onto the base branch. Aborts cleanly if it conflicts.`,mergeAction:`Merge`,removeConfirmTitle:`Remove {{branch}}?`,removeConfirmMsg:`Force-removes the worktree checkout and deletes its branch. Un-merged work is discarded.`,empty:`No worktrees.`,emptyHint:`SDD / Goal runs create isolated worktrees here. Orphans from crashed runs show up too.`,actOpenTerm:`Open in terminal`,actOpenFolder:`Open folder`,actViewChanges:`View changes`,actMerge:`Merge to base`,actRemove:`Remove / discard`,live:`live`,noUncommitted:`No uncommitted changes`,commitsAhead_one:`{{count}} commit ahead`,commitsAhead_other:`{{count}} commits ahead`,more:`…{{count}} more`},Oe={heading:`Office Map`,headingHint:`Visualize your fleet as an office floor plan with live agent status.`,statAgents:`Agents`,statMail:`Mail`,unreadSuffix:` unread`,sectionView:`View`,sectionDisplay:`Display`,sectionBackground:`Background`,sectionRecent:`Recent Activity`,eventsTrackedSuffix:` events tracked`,recentHint:`Mail sends, agent spawns, and status changes appear here.`,sectionShortcuts:`Shortcuts`,sectionLegend:`Legend`,hudLabel:`HUD`,hudDesc:`Show real-time session stats overlay`,hudToggle:`Toggle HUD`,minimapLabel:`Minimap`,minimapDesc:`Show the overview minimap`,minimapToggle:`Toggle minimap`,controlsLabel:`Controls`,controlsDesc:`Show zoom and fit controls`,controlsToggle:`Toggle controls`,animateLabel:`Animate edges`,animateDesc:`Animate flow on active connections`,animateToggle:`Toggle edge animation`,legendLabel:`Show legend`,legendDesc:`Display status and connection legend`,legendToggle:`Toggle legend`,feedLabel:`Live feed`,feedDesc:`Bottom strip of recent cross-process activity`,feedToggle:`Toggle live feed`,fitView:`Fit view`,zoomIn:`Zoom in`,zoomOut:`Zoom out`,resetZoom:`Reset zoom`,legendActive:`Active (running)`,legendIdle:`Idle`,legendError:`Error`,legendOffline:`Offline`,bg:{dots:`Dots`,lines:`Lines`,cross:`Cross`,none:`None`}},ke={liveProjectOffice:`Live project office`,agents:`agents`,working:`working`,toolCalls:`tool calls`,office:`Office`,topology:`Topology`,officeDescription:`Live agent desks and work`,topologyDescription:`Clients, agents and connections`,team:`Team`,liveDesk:`Live desk & incoming work`,lastActions:`Recent work`,leadAgent:`Lead agent`,agent:`Agent`,callsCount:`{{count}} calls`,recent:`Recent`,noCalls:`No completed calls yet`,telemetryReconnect:`Reconnect this terminal to start tool history`,thinking:`Thinking`,waiting:`Waiting for work`,preparing:`Preparing the next action…`,deskReady:`Desk is ready`,toolCall:`Tool call`,execution:`Execution`,started:`Started`,duration:`Duration`,session:`Session`,target:`Target`,resultSize:`Result size`,lines:`lines`,bytes:`bytes`,tokens:`tokens`,input:`Input`,outputPreview:`Output preview`,readyTitle:`The office is ready`,readyBody:`Agents will take a desk as soon as they join this project.`,liveEvent:`live event stream`,connectedSessions_one:`{{count}} connected session`,connectedSessions_other:`{{count}} connected sessions`,detailHint:`click any action for exact input and result details`,officeBriefing:`Office briefing`,leaderPrompt:`Leader's latest prompt`,activeInstruction:`Active instruction`,telemetryWaiting:`Reconnect this terminal to receive live instructions`,syncWaiting:`waiting for sync`,todoTelemetryWaiting:`Reconnect this terminal to receive the live todo list`,taskNotReported:`Working, but no task description was reported`,noPrompt:`No prompt received in this session yet`,activeTodos:`Active todos`,todoProgress:`{{done}}/{{total}} done`,allTodosDone:`All todos completed`,noActiveTodos:`No active todos yet`,moreTodos:`+{{count}} more`,currentTask:`Current task`,task:`Task`,promptReceived:`Received`,todos:`Todos`,todoStatus:{pending:`Pending`,in_progress:`In progress`,completed:`Completed`},breakRoom:`Break room`,onBreak:`{{count}} on break`,desksEmpty:`Everyone is on break — the desks are ready for the next task`},Ae={tabProject:`SDD Project`,tabBoard:`Live SDD Board`,tabSpecs:`Specifications`},je={nav:e,brand:t,connection:n,status:r,menu:i,sidePanel:a,history:o,agents:s,changes:c,inspector:l,nextSteps:u,mailbox:d,sessions:f,sessionPanel:p,fleet:m,context:h,refine:g,specs:_,refresh:v,board:y,debug:b,providerModels:x,dock:S,agentsMonitor:C,terminal:w,sessionWatch:T,sideEffects:E,monitor:D,sdd:O,toolResult:k,sageMemory:A,design:j,goalRun:M,collab:N,mode:P,cost:F,model:I,modelSwitcher:L,work:R,todos:z,task:B,toolGroup:V,fileRef:H,plan:ne,filePicker:U,toast:W,search:G,phase:K,ctxMode:q,transcript:J,autonomy:Y,queue:X,checkpoint:Z,goal:Q,worktree:$,process:re,diff:ie,fallback:ae,liveSessions:oe,monacoDiff:se,errorBody:ce,officeMap:le,toolInput:ue,message:de,watch:fe,shortcuts:pe,sddBoard:me,sddTask:he,sddWizard:ge,fileExplorer:_e,codeEditor:ve,fileActivity:ye,analytics:be,promptLib:xe,skillDetail:Se,office:Ce,skillsList:we,timeline:Te,designStudio:Ee,worktrees:De,officeSettings:Oe,agentOffice:ke,sddhub:Ae};export{te as n,je as t};
@@ -1,5 +1,5 @@
1
1
  var e={chat:`Sessão`,agents:`Agentes`,history:`Histórico`,files:`Arquivos`,changes:`Alterações`,mailbox:`Caixa de entrada`,skills:`Skills`,worktrees:`Worktrees`,design:`Design Studio`,officemap:`Mapa de escritórios`,settings:`Configurações`,sddhub:`SDD`,goal:`Goal`,memory:`Memória`,fleet:`Frota`,inspector:`Inspetor`,prompts:`Prompts`},t={returnToChat:`{{name}} — voltar ao chat`,returnToChatDefault:`WrongStack — voltar ao chat`},n={connected:`Conectado`,disconnected:`Desconectado`,idle:`Ocioso`,thinking:`Pensando`,running:`Executando`,waiting:`Aguardando`,done:`Concluído`,stopped:`Parado`},r={moreWithHidden:`Mais, {{count}} itens ocultos`,moreOptions:`Mais opções`,moreCompactHidden:`Mais — {{count}} painéis/visualizações ocultos, paleta, tema, monitores`,moreCompact:`Mais — paleta, tema, monitores`,moreFull:`Mais — paleta, tema, atalhos, monitores`,commandPalette:`Paleta de comandos`,keyboardShortcuts:`Atalhos do teclado`,panels:`Painéis`,views:`Visualizações`,theme:`Tema`,monitors:`Monitores`,fleetMonitor:`Monitor da frota`,agentsMonitor:`Monitor de agentes`},i={dragHint:`Arraste para redimensionar · duplo clique para redefinir`,collapse:`Recolher painel (Ctrl+\\)`},a={openDashboard:`Abrir painel de sessões`},o={pending:`pendentes…`,empty:`Nenhum agente ainda`,emptyHint:`Subagentes aparecem aqui quando a frota está ativa.`,runningCount:`{{count}} em execução`,totalCount:`{{count}} no total`,openFull:`Abrir visualização completa de agentes`,agentsLive:`AGENTES · LIVE`,doneCount:`{{count}} concluídos`,failedCount:`{{count}} falhas`,modelsLabel:`modelos`,shownLabel:`exibidos`,totalLabel:`total`,leaderFleetTotals:`(líder {{leader}} · frota {{fleet}})`,navHintJk:`j/k ou ↑↓ para navegar`,escCloseDetail:`· Esc para fechar o detalhe`,noAgentsRunning:`Sem agentes em execução.`,contextUsage:`Uso de contexto`,lastToolLabel:`último:`,unknownSession:`Sessão desconhecida`,sessionCopyTitle:`Sessão: {{sid}} — clique para copiar`,sessionWord:`sessão`,agentsCountSuffix_one:`{{count}} agente`,agentsCountSuffix_other:`{{count}} agentes`,sessionTitle:`Sessão: {{sid}}`,projectSuffix:` · Projeto: {{name}}`,statusIdle:`inativo`,filterAll:`Todos`,filterRunning:`Em execução`,filterDone:`Concluídos`,filterCompleted:`Concluídos`,filterFailed:`Com falha`,clearFinished:`Limpar`,clearFinishedTitle:`Remover agentes finalizados`,rosterHint:`Setas para navegar · Enter para expandir`,itSuffix:`it.`,tcSuffix:`ch.`,toolLog:`Registro de ferramentas`,showAll:`Mostrar todos`,showFewer:`Mostrar menos`,streaming:`Transmissão ao vivo`,failure:`Falha`,timeout:`Tempo esgotado`,reRun:`Executar novamente`,reRunTitle:`Executar este agente novamente (ainda não implementado)`,lastToolCalls_one:`Última {{count}} chamada de ferramenta`,lastToolCalls_other:`Últimas {{count}} chamadas de ferramenta`,config:`Configuração`,configProvider:`Provedor`,configModel:`Modelo`,configDescription:`Descrição`,configTaskId:`ID da tarefa`,transcript:`Transcrição`,openInspector:`Abrir no inspetor da frota`,emptyFilteredTitle:`Nenhum agente corresponde ao filtro`,emptyFilteredHint:`Altere ou limpe o filtro para ver todos os agentes.`,emptyFilteredClear:`Mostrar todos`,emptyFinishedTitle:`Todas as tarefas foram concluídas`,emptyFinishedHint:`Todos os agentes terminaram — limpe os finalizados ou crie novas tarefas para ver atividade aqui.`,emptyFinishedStats:`{{completed}} concluídos · {{failed}} falharam`},s={fileCount_one:`{{count}} arquivo`,fileCount_other:`{{count}} arquivos`,refreshTitle:`Atualizar alterações`,loading:`Carregando alterações…`,clean:`Sem alterações — a árvore de trabalho está limpa.`,selectPrompt:`Selecione um arquivo alterado para ver seu diff.`,unified:`Unificado`,unifiedTitle:`Diff unificado`,edit:`Editar`,editTitle:`Diff lado a lado editável`,loadingDiff:`Carregando diff…`,diffTimeout:`O diff não chegou. O arquivo pode ter mudado ou a conexão caiu.`,binary:`Arquivo binário — diff não mostrado.`,tooLarge:`Arquivo grande demais para diff.`},c={showPanel:`Mostrar painel Inspetor (Frota / Agentes / Auditoria)`,hidePanel:`Ocultar painel Inspetor`,label:`Inspetor`,openAudit:`Abrir aba Auditoria`,tabFleet:`Frota`,tabAgents:`Agentes`,tabAudit:`Auditoria`,collapseAria:`Recolher painel Inspetor`,collapseTitle:`Recolher (Esc)`,noAgentsActive:`Nenhum agente ativo`,agentsAppearHint:`Os agentes aparecem aqui quando a frota está ativa.`,selected:`{{name}} (selecionado)`},l={header:`Próximos passos`,autoSubmitting:`envio automático em`,clickToFill:`clique para preencher`,clickToFillTitle:`Clique para preencher: {{text}}`,auto:`auto`,willAutoSubmit:`Envio automático após a contagem regressiva`,autoFilling:`Preenchendo`},u={onlineCount:`{{count}} online`,messages:`Mensagens`,compose:`Escrever mensagem`,recipient:`Destinatário`,messageType:`Tipo`,audience:`Público`,audienceAll:`Todos os agentes`,audienceLeaders:`Somente líderes`,priority:`Prioridade`,priorityLow:`Baixa`,priorityNormal:`Normal`,priorityHigh:`Alta`,subjectPlaceholder:`Assunto (opcional)`,bodyPlaceholder:`Mensagem`,leadersOnlyHint:`Somente agentes líderes e interfaces de líder podem receber esta mensagem.`,leadersLabel:`líderes`,send:`Enviar`,sending:`Enviando…`,sent:`Enviado`,sendFailed:`Falha ao enviar a mensagem.`,defaultSubject:`Mensagem da WebUI`,deleteAllTitle:`Excluir todas as mensagens`,deleteAll:`Excluir tudo`,deleting:`Excluindo…`,purgeTitle:`Purgar mensagens obsoletas/órfãs`,purge:`Purgar`,purging:`Purgando…`,compact:`Compactar`,compacting:`Compactando…`,compactTitle:`Compactação auto: remover expirados, lidos por todos e obsoletos`,compactRemoved:`{{count}} removidos`,compactExpired:`{{count}} expirados`,compactReadByAll:`{{count}} lidos por todos`,compactStale:`{{count}} obsoletos`,compactRemaining:`{{count}} restantes`,newLabel:`NOVO`,empty:`Nenhuma mensagem ainda.`,offlineCount:`+{{count}} offline`,timeNow:`agora`,deleteAllConfirmTitle_one:`Excluir {{count}} mensagem?`,deleteAllConfirmTitle_other:`Excluir todas as {{count}} mensagens?`,deleteAllConfirmBody:`O arquivo da caixa de entrada é truncado para cada agente. Isso não pode ser desfeito.`,purgeConfirmTitle:`Purgar mensagens obsoletas?`,purgeConfirmBody:`Remove mensagens concluídas com mais de 1 dia e mensagens incompletas com mais de 7 dias. Mensagens ativas são preservadas.`,type:{note:`Nota`,ask:`Pergunta`,assign:`Atribuição`,steer:`Direcionar`,btw:`A propósito`,broadcast:`Transmissão`,status:`Status`,result:`Resultado`,review:`Revisão`},emptyDetail:`Nenhuma mensagem selecionada`,emptyDetailHint:`Clique em uma mensagem no painel Caixa de entrada para vê-la aqui.`,readBy:`Lido por`,backToChat:`Voltar ao chat`,completed:`Concluído`,everyone:`todos`,closeTitle:`Fechar (Esc)`,replyTo:`Em resposta a: {{id}}`,completedBy:`Concluído por {{name}}`,completedByAt:`Concluído por {{name}} em {{time}}`,outcome:`Resultado:`,task:`Tarefa:`,messageNotFound:`Mensagem não encontrada`,messageNotFoundHint:`Esta mensagem pode ter sido excluída ou removida.`,sessionLabel:`Sessão`,sessionScope:`Sessão {{sid}}`,sessionScopeTitle:`Entregue apenas a agentes na sessão {{sid}}`,projectLabel:`Projeto`,projectScope:`Projeto (todo agente)`,directScope:`Direto`,scopeLabel:`Escopo`},d={recentSessions:`Sessões recentes`,deleteEmptyTitle_one:`Excluir {{count}} sessão vazia?`,deleteEmptyTitle_other:`Excluir {{count}} sessões vazias?`,deleteEmptyConfirmBody:`Sessões sem uso de tokens são removidas do disco.`,filterPlaceholder:`Filtrar por título, modelo, provedor…`,clearFilter:`Limpar filtro`,noHistory:`Nenhum histórico ainda`,noHistoryHint:`Suas conversas aparecerão aqui`,noMatches:`Nenhum resultado`,noMatchesHint:`Tente um filtro diferente`,group:{favorites:`Favoritos`,today:`Hoje`,yesterday:`Ontem`,thisWeek:`Esta semana`,earlier:`Anteriores`},nicknamePlaceholder:`Apelido`,empty:`(vazio)`,resuming:`retomando…`,active:`ativa`,renameTitleNickname:`{{nickname}} — original: {{title}}`,renameTitle:`{{title}}
2
2
 
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`}},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`,done:`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`,budgetWarning:`aviso de orçamento`,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`,sessionPrefix:`sessão:`,currentTask:`Tarefa atual`,performance:`Desempenho`,uniqueTools:`Ferramentas únicas`,avgPerTool:`média {{ms}}ms por ferramenta`,context:`Contexto`,tokens:`Tokens`,ctxUsed:`{{pct}}% usado`,completed:`concluído`,budgetWarningTitle:`⚡ Aviso de orçamento`,hittingLimit:`Atinge o limite {{kind}} ({{used}}/{{limit}})`,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`,fleetMonitor:`MONITOR DE FROTA`,runningCount:`{{count}} em execução`,totalAgents_one:`{{count}} agente no total`,totalAgents_other:`{{count}} agentes no total`,noLeader:`sem líder`,closeFleet:`Fechar monitor de frota`,colName:`Nome`,colStatus:`Status`,colActivity:`Atividade`,colIters:`Iter.`,colTools:`Ferram.`,colCost:`Custo`,colCtx:`CTX`,colExt:`Ext.`,colReason:`Motivo`,noAgentsActive:`Sem agentes ativos`,agentsAppear:`Os agentes aparecem aqui quando a frota está ativa.`,agentTimeline:`Linha do tempo de agentes`,noAgentEvents:`Ainda não há eventos de conversação de agentes.`,navHint:`↑↓ navegar`,selectDetailHint:`↵ selecionar detalhe`,escHint:`Esc desmarcar / fechar`,detailedView:`vista detalhada`,closeBtn:`✕ fechar`,selectAgentDetail:`Selecione um agente para informações detalhadas`,selectAgentBody:`Clique num agente da lista para métricas detalhadas, registros, saída em streaming e mais — similar à vista detalhada do histórico.`,navigateWord:`navegar`,selectWord:`selecionar`,deselectWord:`desmarcar`},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:`Switch default refine language — Original vs English`,yolo:`YOLO`,yoloTitle:`Bypass tool confirmation prompts`,refining:`Refining…`,sendAsIs:`Send as-is`,failedHeader:`Refinement failed`,retry:`Retry (more time)`,retryBetter:`Tentar melhorar`,retryFallback:`Retry with {{model}}`,pickModel:`Another model…`,pickModelTitle:`Retry refinement with another model`,pickModelHint:`Pick a provider/model to re-run this refinement on. Your session model stays unchanged.`,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}}`,differsHint:`A lista verificada difere da lista salva — execute {{command}} novamente para persistir.`},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.`},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…`,noSavedProviders:`Sem provedores salvos — registre uma chave nas Configurações primeiro.`,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`},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…`},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.`},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
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`}},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`,done:`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`,budgetWarning:`aviso de orçamento`,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`,sessionPrefix:`sessão:`,currentTask:`Tarefa atual`,performance:`Desempenho`,uniqueTools:`Ferramentas únicas`,avgPerTool:`média {{ms}}ms por ferramenta`,context:`Contexto`,tokens:`Tokens`,ctxUsed:`{{pct}}% usado`,completed:`concluído`,budgetWarningTitle:`⚡ Aviso de orçamento`,hittingLimit:`Atinge o limite {{kind}} ({{used}}/{{limit}})`,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`,fleetMonitor:`MONITOR DE FROTA`,runningCount:`{{count}} em execução`,totalAgents_one:`{{count}} agente no total`,totalAgents_other:`{{count}} agentes no total`,noLeader:`sem líder`,closeFleet:`Fechar monitor de frota`,colName:`Nome`,colStatus:`Status`,colActivity:`Atividade`,colIters:`Iter.`,colTools:`Ferram.`,colCost:`Custo`,colCtx:`CTX`,colExt:`Ext.`,colReason:`Motivo`,noAgentsActive:`Sem agentes ativos`,agentsAppear:`Os agentes aparecem aqui quando a frota está ativa.`,agentTimeline:`Linha do tempo de agentes`,noAgentEvents:`Ainda não há eventos de conversação de agentes.`,navHint:`↑↓ navegar`,selectDetailHint:`↵ selecionar detalhe`,escHint:`Esc desmarcar / fechar`,detailedView:`vista detalhada`,closeBtn:`✕ fechar`,selectAgentDetail:`Selecione um agente para informações detalhadas`,selectAgentBody:`Clique num agente da lista para métricas detalhadas, registros, saída em streaming e mais — similar à vista detalhada do histórico.`,navigateWord:`navegar`,selectWord:`selecionar`,deselectWord:`desmarcar`},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:`Switch default refine language — Original vs English`,yolo:`YOLO`,yoloTitle:`Bypass tool confirmation prompts`,refining:`Refining…`,sendAsIs:`Send as-is`,failedHeader:`Refinement failed`,retry:`Retry (more time)`,retryBetter:`Tentar melhorar`,retryFallback:`Retry with {{model}}`,pickModel:`Another model…`,pickModelTitle:`Retry refinement with another model`,pickModelHint:`Pick a provider/model to re-run this refinement on. Your session model stays unchanged.`,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.`},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…`,noSavedProviders:`Sem provedores salvos — registre uma chave nas Configurações primeiro.`,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`},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…`},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.`},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`,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`},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`,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
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`},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`},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={nav:e,brand:t,status:n,menu:r,sidePanel:i,history:a,agents:o,changes:s,inspector:c,nextSteps:l,mailbox:u,sessions:d,sessionPanel:f,fleet:p,context:m,refine:h,specs:g,refresh:_,board:v,debug:y,providerModels:b,dock:x,agentsMonitor:S,terminal:C,sessionWatch:w,sideEffects:T,monitor:E,sdd:D,toolResult:O,design:k,goalRun:A,collab:j,connection:M,mode:N,cost:P,model:F,modelSwitcher:I,work:L,todos:R,task:z,toolGroup:B,fileRef:V,plan:H,filePicker:U,toast:W,search:G,phase:K,ctxMode:q,transcript:J,autonomy:Y,queue:X,checkpoint:Z,goal:Q,worktree:$,process:ee,diff:te,fallback:ne,liveSessions:re,monacoDiff:ie,errorBody:ae,officeMap:oe,toolInput:se,message:ce,watch:le,shortcuts:ue,sddBoard:de,sddTask:fe,sddWizard:pe,fileExplorer:me,codeEditor:he,fileActivity:ge,analytics:_e,promptLib:ve,skillDetail:ye,office:be,skillsList:xe,timeline:Se,designStudio:Ce,worktrees:we,officeSettings:Te,agentOffice:Ee,sageMemory:De,sddhub:Oe};export{Ee as agentOffice,o as agents,S as agentsMonitor,_e as analytics,Y as autonomy,v as board,t as brand,s as changes,Z as checkpoint,he as codeEditor,j as collab,M as connection,m as context,P as cost,q as ctxMode,y as debug,ke as default,k as design,Ce as designStudio,te as diff,x as dock,ae as errorBody,ne as fallback,ge as fileActivity,me as fileExplorer,U as filePicker,V as fileRef,p as fleet,Q as goal,A as goalRun,a as history,c as inspector,re as liveSessions,u as mailbox,r as menu,ce as message,N as mode,F as model,I as modelSwitcher,ie as monacoDiff,E as monitor,e as nav,l as nextSteps,be as office,oe as officeMap,Te as officeSettings,K as phase,H as plan,ee as process,ve as promptLib,b as providerModels,X as queue,h as refine,_ as refresh,De as sageMemory,D as sdd,de as sddBoard,fe as sddTask,pe as sddWizard,Oe as sddhub,G as search,f as sessionPanel,w as sessionWatch,d as sessions,ue as shortcuts,T as sideEffects,i as sidePanel,ye as skillDetail,xe as skillsList,g as specs,n as status,z as task,C as terminal,Se as timeline,W as toast,R as todos,B as toolGroup,se as toolInput,O as toolResult,J as transcript,le as watch,L as work,$ as worktree,we as worktrees};