@wrongstack/webui 0.302.0 → 0.303.0

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 (113) hide show
  1. package/dist/assets/AgentRosterView-BnnhSRau.js +9 -0
  2. package/dist/assets/{AnalyticsDashboard-D5lvkaiF.js → AnalyticsDashboard-CMs176Dp.js} +1 -1
  3. package/dist/assets/{AudienceMemoryPanel-DUXllPor.js → AudienceMemoryPanel-BRXM47H1.js} +2 -2
  4. package/dist/assets/{ChangesView-CKLN6MLR.js → ChangesView-DxAQY4v4.js} +1 -1
  5. package/dist/assets/ChronicleDashboard-DPI_5S2R.js +1 -0
  6. package/dist/assets/CodeEditor-9Fu9hRrw.js +1 -0
  7. package/dist/assets/CodeMap-B7YGx2G0.js +1 -0
  8. package/dist/assets/{ConfirmModal-B0BCqW4j.js → ConfirmModal-DXy17_uy.js} +1 -1
  9. package/dist/assets/{CronJobsPanel-B-rRYNgE.js → CronJobsPanel-C_bGieGQ.js} +1 -1
  10. package/dist/assets/{DeadCodeScanPanel-CDbBO9Ic.js → DeadCodeScanPanel-hkBvamWn.js} +2 -2
  11. package/dist/assets/{DebugDashboard-RAxaJDNV.js → DebugDashboard-CDWJ9nLR.js} +1 -1
  12. package/dist/assets/{DesignGalleryView-4kdGN1D5.js → DesignGalleryView-BG-p6kFX.js} +1 -1
  13. package/dist/assets/GoalView-CCklBpTx.js +1 -0
  14. package/dist/assets/KanbanView-Dzvn9y79.js +3 -0
  15. package/dist/assets/MailboxDetailView-7dtt5joR.js +1 -0
  16. package/dist/assets/MemoryDrawer-D2Yq9oba.js +1 -0
  17. package/dist/assets/MemoryManager-CL5AiyKr.js +1 -0
  18. package/dist/assets/{ModelPicker-DwNrO_jw.js → ModelPicker-BazB-GbH.js} +1 -1
  19. package/dist/assets/OfficeMapPanel-Dtb75DlY.js +4 -0
  20. package/dist/assets/{ProcessMonitor-DPEMjjVq.js → ProcessMonitor-BTjaxnO-.js} +1 -1
  21. package/dist/assets/{QueuePanel-Dx9n4NZB.js → QueuePanel-BOD9qtHp.js} +1 -1
  22. package/dist/assets/{RefreshDebugView-On6-vb92.js → RefreshDebugView-DfbZ-vgF.js} +1 -1
  23. package/dist/assets/{RequirementIntakeView-DpnZRVDz.js → RequirementIntakeView-CeZFJlrn.js} +1 -1
  24. package/dist/assets/SageTabs-BlK58zgb.js +2 -0
  25. package/dist/assets/SddFlowGraph-DWphr6Tr.js +1 -0
  26. package/dist/assets/SddHub-ZRkMmA7e.js +2 -0
  27. package/dist/assets/SessionInspectView-DqrSHseG.js +1 -0
  28. package/dist/assets/SessionList-DLoIKc1b.js +1 -0
  29. package/dist/assets/{SessionsDashboard-DYw9vuIv.js → SessionsDashboard-CUj2WSYM.js} +1 -1
  30. package/dist/assets/SetupScreen-B_2CuLeR.js +1 -0
  31. package/dist/assets/SkillDetailView-ChspOaAw.js +3 -0
  32. package/dist/assets/{SpecsView-CVVQSIZZ.js → SpecsView-Cl4vpAoL.js} +1 -1
  33. package/dist/assets/{TechStackView-BNen0ZpH.js → TechStackView-DsFV85XT.js} +1 -1
  34. package/dist/assets/{TerminalPanel-BByD75cu.js → TerminalPanel-GraS3zw1.js} +1 -1
  35. package/dist/assets/{Toaster-Cz-_rtgo.js → Toaster-D76T-Ld4.js} +1 -1
  36. package/dist/assets/{activity-B0cam54R.js → activity-BLSyJfTr.js} +1 -1
  37. package/dist/assets/{activity-D7dMY0Jm.js → activity-BnTQWNPX.js} +1 -1
  38. package/dist/assets/{activity-jOHsoosT.js → activity-BwEBEQ51.js} +1 -1
  39. package/dist/assets/{activity-DmdoxMAj.js → activity-C-9I3_s4.js} +1 -1
  40. package/dist/assets/{activity-DXNwLcwn.js → activity-CRMLR4a3.js} +1 -1
  41. package/dist/assets/{activity-B3FDXYFE.js → activity-CZIixoel.js} +1 -1
  42. package/dist/assets/{activity-IZoezahu.js → activity-Xqrt9v4z.js} +1 -1
  43. package/dist/assets/{button-Dcy288Mc.js → button-ELs5xgtQ.js} +1 -1
  44. package/dist/assets/{chat-store-DbxFVDwi.js → chat-store-CBJ1gc8n.js} +1 -1
  45. package/dist/assets/{codemap-activity-store-DQfjo7-j.js → codemap-activity-store-D67-genN.js} +1 -1
  46. package/dist/assets/codemap-index-store-ByAYIzQA.js +1 -0
  47. package/dist/assets/{dialog-ftgTihmF.js → dialog-CfAoIH8P.js} +1 -1
  48. package/dist/assets/{empty-state-RRSqQaCk.js → empty-state-BDwjdvMh.js} +1 -1
  49. package/dist/assets/{i18n-ags7mYPP.js → i18n-BvFgJYE2.js} +2 -2
  50. package/dist/assets/index-BTRQG7C5.js +132 -0
  51. package/dist/assets/index-DHsJniTZ.css +1 -0
  52. package/dist/assets/{input-fo9-BPBC.js → input-DSTQkMEh.js} +1 -1
  53. package/dist/assets/{mailbox-store-C1mzoSqJ.js → mailbox-store-CKpkM0H1.js} +1 -1
  54. package/dist/assets/{roster-ws-Da57e_sI.js → roster-ws-a3-SO1Yb.js} +1 -1
  55. package/dist/assets/{session-store-Df7_hhe9.js → session-store-Ce4Dck2K.js} +1 -1
  56. package/dist/assets/settings-BUtmAZBV.js +1 -0
  57. package/dist/assets/settings-BlMNd_AC.js +1 -0
  58. package/dist/assets/settings-ClpzPWKE.js +1 -0
  59. package/dist/assets/settings-CyYYbmdR.js +1 -0
  60. package/dist/assets/settings-DyIEVRJT.js +1 -0
  61. package/dist/assets/settings-Orwkg3lH.js +1 -0
  62. package/dist/assets/settings-XRC0dC9D.js +1 -0
  63. package/dist/assets/{shared-KAzksK0C.js → shared-D368RBth.js} +1 -1
  64. package/dist/assets/stores-BATHCuMN.js +7 -0
  65. package/dist/assets/{ui-store-CE4-TlwB.js → ui-store-BGNdg1e4.js} +1 -1
  66. package/dist/assets/{useWebSocket-BHzEXXna.js → useWebSocket-B2opfRwA.js} +3 -3
  67. package/dist/assets/utils-CUCQrODG.js +1 -0
  68. package/dist/assets/{vendor-BuarzSSb.js → vendor-GiKfK4Iw.js} +30 -30
  69. package/dist/assets/{view-navigation-DIDEcp4V.js → view-navigation-FdnvQSOv.js} +1 -1
  70. package/dist/assets/{ws-client-TTMa0XaT.js → ws-client-CGEB75Dy.js} +1 -1
  71. package/dist/components/KanbanContractGraphDashboard.d.ts +7 -0
  72. package/dist/components/KanbanContractGraphPanel.d.ts +7 -0
  73. package/dist/components/KanbanContractGraphView.d.ts +40 -0
  74. package/dist/components/KanbanViewModeTabs.d.ts +1 -1
  75. package/dist/components/KanbanWorkbench.d.ts +9 -0
  76. package/dist/components/TaskVerificationSection.d.ts +3 -3
  77. package/dist/components/agent-roster-data.d.ts +9 -0
  78. package/dist/index.html +23 -23
  79. package/dist/index.js +9593 -8271
  80. package/dist/lib/palettes.d.ts +1 -1
  81. package/dist/stores/kanban-store.d.ts +14 -1
  82. package/dist/stores/session-store.d.ts +2 -0
  83. package/dist/types/sage.d.ts +5 -13
  84. package/dist/types/system.d.ts +2 -0
  85. package/package.json +8 -8
  86. package/dist/assets/AgentRosterView-PafACoYi.js +0 -9
  87. package/dist/assets/ChronicleDashboard-B8OyHq18.js +0 -1
  88. package/dist/assets/CodeEditor-BtAkdKFs.js +0 -1
  89. package/dist/assets/CodeMap-6L-z-L7d.js +0 -1
  90. package/dist/assets/GoalView-By18NfaK.js +0 -1
  91. package/dist/assets/KanbanView-dyfUjpC5.js +0 -3
  92. package/dist/assets/MailboxDetailView-BNyJNz-3.js +0 -1
  93. package/dist/assets/MemoryManager-BbZ-1pfr.js +0 -1
  94. package/dist/assets/OfficeMapPanel-Bo-cCLV7.js +0 -4
  95. package/dist/assets/SageTabs-D5CzIKGe.js +0 -2
  96. package/dist/assets/SddHub-BMedBDDs.js +0 -2
  97. package/dist/assets/SessionInspectView-Crs1g_xM.js +0 -1
  98. package/dist/assets/SessionList-SsEjoeJF.js +0 -1
  99. package/dist/assets/SetupScreen-Mr604Nx3.js +0 -1
  100. package/dist/assets/SkillDetailView-gt-Nm_ZI.js +0 -3
  101. package/dist/assets/codemap-index-store-COStDU-8.js +0 -1
  102. package/dist/assets/index-Cw20Xg0d.css +0 -1
  103. package/dist/assets/index-Doa2aJ1A.js +0 -132
  104. package/dist/assets/progress-ring-BxJsZCnD.js +0 -1
  105. package/dist/assets/settings-Bb7_utQE.js +0 -1
  106. package/dist/assets/settings-Bd8zMwvC.js +0 -1
  107. package/dist/assets/settings-DdFgBMAw.js +0 -1
  108. package/dist/assets/settings-De6sXIFO.js +0 -1
  109. package/dist/assets/settings-E8SKMLxq.js +0 -1
  110. package/dist/assets/settings-zIY9-ivF.js +0 -1
  111. package/dist/assets/settings-zKBcRjqE.js +0 -1
  112. package/dist/assets/stores-Bz5nhi7q.js +0 -7
  113. package/dist/assets/utils-B-9lSDIn.js +0 -1
@@ -1,7 +1,7 @@
1
1
  var e={chat:`Oturum`,agents:`Vekiller`,history:`Geçmiş`,files:`Dosyalar`,changes:`Değişiklikler`,mailbox:`Posta Kutusu`,skills:`Beceriler`,worktrees:`Çalışma Ağaçları`,design:`Tasarım Stüdyosu`,officemap:`Ofis Haritası`,settings:`Ayarlar`,sddhub:`SDD`,goal:`Goal`,memory:`Bellek`,fleet:`Filo`,inspector:`Denetçi`,prompts:`Promptlar`,kanban:`Kanban`,codemap:`CodeMap`,techstack:`TechStack`,chronicle:`Chronicle`,intake:`Gereksinimler`,roster:`Ajan Kadrosu`},t={returnToChat:`{{name}} — sohbete dön`,returnToChatDefault:`WrongStack — sohbete dön`},n={connected:`Bağlı`,disconnected:`Bağlı değil`,idle:`Boşta`,thinking:`Düşünüyor`,running:`Çalışıyor`,waiting:`Bekliyor`,done:`Bitti`,stopped:`Durduruldu`},r={moreWithHidden:`Daha fazla, {{count}} gizli öğe`,moreOptions:`Daha fazla seçenek`,moreCompactHidden:`Daha fazla — {{count}} gizli panel/görünüm, palet, tema, izleyiciler`,moreCompact:`Daha fazla — palet, tema, izleyiciler`,moreFull:`Daha fazla — palet, tema, kısayollar, izleyiciler`,commandPalette:`Komut Paleti`,keyboardShortcuts:`Klavye Kısayolları`,panels:`Paneller`,views:`Görünümler`,theme:`Tema`,monitors:`İzleyiciler`,fleetMonitor:`Filo Denetçisi`},i={dragHint:`Yeniden boyutlandırmak için sürükle · sıfırlamak için çift tıkla`,collapse:`Paneli daralt (Ctrl+\\)`},a={openDashboard:`Oturum panosunu aç`},o={pending:`bekliyor…`,empty:`Henüz vekil yok`,emptyHint:`Filo etkinken alt vekiller burada görünür.`,runningCount:`{{count}} çalışıyor`,totalCount:`toplam {{count}}`,openFull:`Filo denetçisini aç`,agentsLive:`ARACILAR · CANLI`,doneCount:`{{count}} tamam`,failedCount:`{{count}} başarısız`,modelsLabel:`modeller`,shownLabel:`gösterilen`,totalLabel:`toplam`,leaderFleetTotals:`(lider {{leader}} · filo {{fleet}})`,navHintJk:`gezinmek için j/k veya ↑↓`,escCloseDetail:`· detayı kapatmak için Esc`,noAgentsRunning:`Çalışan aracı yok.`,contextUsage:`Bağlam kullanımı`,lastToolLabel:`son:`,unknownSession:`Bilinmeyen oturum`,sessionCopyTitle:`Oturum: {{sid}} — kimliği kopyalamak için tıklayın`,sessionWord:`oturum`,agentsCountSuffix_one:`{{count}} aracı`,agentsCountSuffix_other:`{{count}} aracı`,sessionTitle:`Oturum: {{sid}}`,projectSuffix:` · Proje: {{name}}`,statusIdle:`boşta`,filterAll:`Tümü`,filterRunning:`Çalışan`,filterDone:`Tamamlanan`,filterCompleted:`Tamamlanan`,filterFailed:`Başarısız`,clearFinished:`Temizle`,clearFinishedTitle:`Tamamlanan aracıları kaldır`,rosterHint:`Gezinmek için ok tuşları · Genişletmek için Enter`,itSuffix:`it.`,tcSuffix:`araç`,toolLog:`Araç Günlüğü`,showAll:`Tümünü göster`,showFewer:`Daha az göster`,streaming:`Canlı akış`,failure:`Başarısızlık`,timeout:`Zaman aşımı`,reRun:`Yeniden çalıştır`,reRunTitle:`Bu aracıyı yeniden çalıştır (henüz uygulanmadı)`,lastToolCalls_one:`Son {{count}} araç çağrısı`,lastToolCalls_other:`Son {{count}} araç çağrısı`,config:`Yapılandırma`,configProvider:`Sağlayıcı`,configModel:`Model`,configDescription:`Açıklama`,configTaskId:`Görev kimliği`,transcript:`Döküm`,openInspector:`Filo Denetçisi’nde aç`,emptyFilteredTitle:`Filtreyle eşleşen aracı yok`,emptyFilteredHint:`Tüm aracıları görmek için filtreyi değiştirin veya temizleyin.`,emptyFilteredClear:`Tümünü göster`,emptyFinishedTitle:`Tüm görevler tamamlandı`,emptyFinishedHint:`Tüm aracılar işi bitirdi — buradaki etkinliği görmek için tamamlananları temizleyin veya yeni görevler oluşturun.`,emptyFinishedStats:`{{completed}} tamamlandı · {{failed}} başarısız`},s={fileCount_one:`{{count}} dosya`,fileCount_other:`{{count}} dosya`,refreshTitle:`Değişiklikleri yenile`,loading:`Değişiklikler yükleniyor…`,clean:`Değişiklik yok — çalışma ağacı temiz.`,selectPrompt:`Farkı görüntülemek için değiştirilmiş bir dosya seçin.`,unified:`Birleşik`,unifiedTitle:`Birleşik diff`,edit:`Düzenle`,editTitle:`Yan yana düzenlenebilir diff`,loadingDiff:`Diff yükleniyor…`,diffTimeout:`Diff gelmedi. Dosya değişmiş veya bağlantı kopmuş olabilir.`,binary:`İkili dosya — diff gösterilmiyor.`,tooLarge:`Dosya diff için çok büyük.`},c={openAgentsPanel:`Ajanlar panelini aç (canlı filo)`,hidePanel:`Denetçi panelini gizle`,label:`Denetçi`,openAudit:`Denetim sekmesini aç`,tabFleet:`Filo`,tabAgents:`Vekiller`,tabAudit:`Denetim`,tabCouncil:`Council`,councilCount:`{{count}} panel`,councilCount_other:`{{count}} panel`,councilClear:`Temizle`,councilEmpty:`Bu oturumda henüz bir council toplanmadı.`,councilEmptyHint:`Brain, council risk eşiğine ulaşan veya onu aşan sorular için çok modelli bir panel toplar. Ayarlar › Brain › Council altından yapılandırın.`,collapseAria:`Denetçi panelini daralt`,collapseTitle:`Daralt (Esc)`,noAgentsActive:`Etkin vekil yok`,agentsAppearHint:`Filo etkinken vekiller burada görünür.`,selected:`{{name}} (seçili)`},l={header:`Sonraki adımlar`,autoSubmitting:`otomatik gönderiliyor`,clickToFill:`doldurmak için tıkla`,clickToFillTitle:`Doldurmak için tıkla: {{text}}`,auto:`otomatik`,willAutoSubmit:`Geri sayımdan sonra otomatik gönderilecek`,autoFilling:`Dolduruluyor`,autoModeIdle:`Otomatik — auto="true" işareti bekleniyor`,nSelected:`{{count}} seçildi`,submitN:`{{count}} gönder`,deselectTitle:`Seçimi kaldır`,selectTitle:`Toplu gönderim için seç`,nSelected_one:`{{count}} seçildi`,nSelected_other:`{{count}} seçildi`,submitN_one:`{{count}} gönder`,submitN_other:`{{count}} gönder`},u={onlineCount:`{{count}} çevrimiçi`,messages:`Mesajlar`,compose:`Mesaj oluştur`,recipient:`Alıcı`,messageType:`Tür`,audience:`Kitle`,audienceAll:`Tüm ajanlar`,audienceLeaders:`Yalnızca liderler`,priority:`Öncelik`,priorityLow:`Düşük`,priorityNormal:`Normal`,priorityHigh:`Yüksek`,subjectPlaceholder:`Konu (isteğe bağlı)`,bodyPlaceholder:`Mesaj içeriği`,leadersOnlyHint:`Bu mesajı yalnızca lider ajanlar ve lider arayüzleri tüketebilir.`,leadersLabel:`liderler`,send:`Gönder`,sending:`Gönderiliyor…`,sent:`Gönderildi`,sendFailed:`Posta gönderilemedi.`,defaultSubject:`WebUI mesajı`,deleteAllTitle:`Tüm mesajları sil`,deleteAll:`Tümünü sil`,deleting:`Siliniyor…`,purgeTitle:`Eski/yetim mesajları temizle`,purge:`Temizle`,purging:`Temizleniyor…`,compact:`Sıkıştır`,compacting:`Sıkıştırılıyor…`,compactTitle:`Otomatik sıkıştırma: süresi dolmuş, tüm çevrimiçi ajanlar tarafından okunmuş ve eski mesajları sil`,compactRemoved:`{{count}} mesaj silindi`,compactExpired:`{{count}} süresi dolmuş`,compactReadByAll:`{{count}} tüm ajanlar tarafından okundu`,compactStale:`{{count}} eski`,compactRemaining:`{{count}} kaldı`,newLabel:`YENİ`,empty:`Henüz mesaj yok.`,offlineCount:`+{{count}} çevrimdışı`,timeNow:`şimdi`,deleteAllConfirmTitle_one:`{{count}} mesaj silinsin mi?`,deleteAllConfirmTitle_other:`Tüm {{count}} mesaj silinsin mi?`,deleteAllConfirmBody:`Posta kutusu dosyası her vekil için kısaltılır. Bu geri alınamaz.`,purgeConfirmTitle:`Eski mesajlar temizlensin mi?`,purgeConfirmBody:`1 günden eski tamamlanmış ve 7 günden eski tamamlanmamış mesajları kaldırır. Etkin mesajlar korunur.`,type:{note:`Not`,ask:`Soru`,assign:`Atama`,steer:`Yönlendir`,btw:`Bu arada`,broadcast:`Yayın`,status:`Durum`,result:`Sonuç`,review:`İnceleme`},emptyDetail:`Mesaj seçilmedi`,emptyDetailHint:`Burada görüntülemek için Posta Kutusu panelinden bir mesaja tıklayın.`,readBy:`Okuyanlar`,backToChat:`Sohbete dön`,completed:`Tamamlandı`,everyone:`herkes`,closeTitle:`Kapat (Esc)`,replyTo:`Yanıt olarak: {{id}}`,completedBy:`{{name}} tarafından tamamlandı`,completedByAt:`{{name}} tarafından {{time}} tarihinde tamamlandı`,outcome:`Sonuç:`,task:`Görev:`,messageNotFound:`Mesaj bulunamadı`,messageNotFoundHint:`Bu mesaj silinmiş veya temizlenmiş olabilir.`,sessionLabel:`Oturum`,sessionScope:`Oturum {{sid}}`,sessionScopeTitle:`Yalnızca {{sid}} oturumundaki vekillere teslim edildi`,projectLabel:`Proje`,projectScope:`Proje (her vekil)`,directScope:`Doğrudan`,scopeLabel:`Kapsam`},d={recentSessions:`Son oturumlar`,deleteEmptyTitle_one:`{{count}} boş oturum silinsin mi?`,deleteEmptyTitle_other:`{{count}} boş oturum silinsin mi?`,deleteEmptyConfirmBody:`Hiç token kullanımı olmayan oturumlar diskten kaldırılır.`,filterPlaceholder:`Başlık, model, sağlayıcı filtrele…`,clearFilter:`Filtreyi temizle`,noHistory:`Henüz geçmiş yok`,noHistoryHint:`Konuşmalarınız burada görünür`,noMatches:`Eşleşme yok`,noMatchesHint:`Farklı bir filtre deneyin`,group:{favorites:`Favoriler`,today:`Bugün`,yesterday:`Dün`,thisWeek:`Bu hafta`,earlier:`Daha önce`},nicknamePlaceholder:`Takma ad`,empty:`(boş)`,resuming:`devam ediliyor…`,active:`etkin`,renameTitleNickname:`{{nickname}} — özgün: {{title}}`,renameTitle:`{{title}}
2
2
 
3
3
  Yeniden adlandırmak için çift tıklayın`,unfavorite:`Favoriden çıkar`,markFavorite:`Favori olarak işaretle`,deleteSessionConfirmTitle:`Oturum silinsin mi?`,deleteSessionConfirmBody:`"{{name}}" diskten kaldırılacak. Bu geri alınamaz.`,deleteSessionTitle:`Oturumu sil`,rename:`Oturum adı`,renameAction:`Yeniden adlandır`,resume:`Oturumu sürdür`,resumeShort:`Sürdür`,workspaceEyebrow:`Konuşma kontrolü`,workspaceTitle:`Oturumlar`,workspaceHint:`Projeye ait tüm konuşmaları ara, incele, sabitle ve kaldığın yerden sürdür.`,tabs:{history:`Geçmiş`,live:`Canlı oturumlar`},filters:{all:`Tümü`,favorites:`Sabitlenen`,active:`Aktif`,completed:`Tamamlanan`,issues:`Sorunlu`},status:{active:`Aktif`,completed:`Tamamlandı`,error:`Hata`,timeout:`Zaman aşımı`,aborted:`Durduruldu`,saved:`Kayıtlı oturum`},sort:{label:`Oturumları sırala`,recent:`En yeni`,tokens:`En çok token`,activity:`En hareketli`},stats:{sessions:`Oturum`,tokens:`Token`,tools:`Araç çağrısı`,files:`Değişen dosya`,errors:`Hata`},inspect:`Oturumu incele`},f={actions:{abort:`Durdur`,newSession:`Yeni oturum`,export:`Dışa aktar`,compact:`Sıkıştır`,newSessionConfirm:`Emin misiniz?`,newSessionConfirmMessage:`Bir iş hâlâ devam ediyor. Yine de yeni bir oturum başlatılsın mı?`,newSessionTitle:`Yeni oturum başlat (Ctrl+N)`,exportTitle:`Sohbeti markdown olarak dışa aktar (Ctrl+E)`,compactTitle:`Bağlam penceresini sıkıştır`,clearTitle:`Bağlamı temizle (Ctrl+L)`},model:`Model`,modelTitle:`Modeli değiştir (Ctrl+M)`,context:`Bağlam`,contextTitle:`Bağlam dökümü için tıklayın`,sessionLabel:`Oturum`,stats:{messages:`Mesajlar`,elapsed:`Geçen`,tokens:`Token`,cost:`Maliyet`,iteration:`Yineleme`,agents:`Vekiller`,tokensSub:`{{in}} giriş / {{out}} çıkış`,iterationOf:`/ {{max}}`,agentsRunning:`{{count}} çalışıyor`},plan:`Plan`,planComplete:`%{{pct}} tamamlandı`,pinned:`Sabitlenen`,quickSettings:`Hızlı ayarlar`,autonomy:`Otonomi`,autonomyTitle:`Sonraki adımların otomatik çalışmasını durdur. Aracın otonom döngüsünü durdurmak için kapat`,autonomyOptions:{off:`Kapalı`,suggest:`Öner`,auto:`Otomatik`,eternal:`Sürekli`,"eternal-parallel":`Sürekli Paralel`},yolo:`YOLO modu`,yoloTitle:`Araç onay istemlerini atla`,refine:`Promptları iyileştir`,refineTitle:`Göndermeden önce promptları yeniden yaz`,sound:`Tamamlanınca ses`,soundTitle:`Bir çalışma bitince hafif bir çal sesi çıkar`,sessionId:`oturum {{id}}`},p={status:{running:`çalışıyor`,completed:`bitti`,failed:`başarısız`,timeout:`zaman aşımı`,stopped:`durduruldu`},leader:`lider`,providerModel:`Sağlayıcı / Model`,elapsed:`Geçen`,running:`çalışıyor…`,iterations:`Yinelemeler`,toolCalls:`Araç çağrıları`,cost:`Maliyet`,budgetExtensions:`Bütçe Uzatması`,activity:`Etkinlik`,contextWindow:`Bağlam penceresi`,tokensUsed:`{{used}} / {{max}} token`,toolRunning:`çalışıyor…`,lastTool:`son araç`,error:`Hata`,finalOutput:`Son çıktı`,copyOutput:`Çıktıyı kopyala`,liveOutput:`Canlı çıktı`,waitingOutput:`Çıktı bekleniyor…`,outputHint:`Vekil metin aktardıkça çıktı burada görünür.`,toolLog:`Araç günlüğü ({{count}} çağrı)`,fail:`başarısız`,moreTools:`+{{count}} araç daha`,cardRunning:`çalışıyor {{tool}}`,cardLastTool:`son: {{tool}}`,contextPercent:`Bağlam %{{pct}}`,doneCount:`{{count}} bitti`,errCount:`{{count}} hata`,statusRunning:`çalışıyor`,statusDone:`tamamlandı`,statusFailed:`başarısız`,statusTimeout:`zaman aşımı`,statusStopped:`durduruldu`,hittingLimitTitle:`⚡ {{kind}} sınırına ulaşılıyor ({{used}}/{{limit}})`,budgetExt_one:`{{count}} bütçe uzantısı`,budgetExt_other:`{{count}} bütçe uzantısı`,extendedTimes_one:`Aracı uzun süren görevler nedeniyle bütçesini {{count}} kez uzattı`,extendedTimes_other:`Aracı uzun süren görevler nedeniyle bütçesini {{count}} kez uzattı`,errorLabel:`Hata`,failureReason:`Başarısızlık nedeni`,failed:`Başarısız`},m={wsNotConnected:`WebSocket bağlı değil`,noData:`Hata ayıklama verisi alınamadı. Sunucu bağlam hata ayıklamayı desteklemiyor olabilir.`,title:`Bağlam Dökümü`,windowUsage:`Pencere Kullanımı`,contextMode:`Bağlam Modu`,fetching:`Bağlam dökümü getiriliyor…`,systemPrompt:`Sistem Promptu`,tools:`Araçlar`,messages:`Mesajlar`,tokenAllocation:`Token Dağılımı`,systemTitle:`Sistem: {{tokens}}`,toolsTitle:`Araçlar: {{tokens}}`,messagesTitle:`Mesajlar: {{tokens}}`,system:`Sistem`,toolBreakdown:`Araç Dökümü`,messagesSummary:`Mesajlar ({{count}}) — {{total}} tok`,barWithTokens:`Bağlam penceresi: {{tokens}} / {{max}} token ({{pct}})`,barPct:`Bağlam penceresi: {{pct}}`,barClick:` — döküm için tıklayın`},h={header:`✨ Promptu İyileştir`,autoSend:`{{count}} sn içinde otomatik gönder`,cancelTitle:`İptal (Esc)`,editLabel:`İyileştirilmiş promptu düzenle:`,editPlaceholder:`İyileştirilmiş promptu düzenle...`,useEdit:`Düzenlemeyi Kullan`,original:`Orijinal`,refined:`İyileştirilmiş`,yourLanguage:`(dilinizde)`,refinedTitle:`Bu sürümü kullanmak için tıklayın veya Enter'a basın`,copyToInputTitle:`Göndermeden girişe kopyala`,english:`İngilizce`,englishTitle:`İngilizce sürümü kullanmak için e'ye basın`,hintRefined:`iyileştirilmiş`,hintEnglish:`İngilizce`,hintOriginal:`orijinal`,hintEdit:`düzenle`,hintRetry:`yeniden dene`,edit:`Düzenle`,useRefined:`İyileştirilmişi Kullan`,langOriginal:`Original`,langEnglish:`English`,languageTitle:`Varsayılan iyileştirme dilini değiştir — Özgün ya da İngilizce`,yolo:`YOLO`,yoloTitle:`Araç onay istemlerini atla`,refining:`İyileştiriliyor…`,sendAsIs:`Olduğu gibi gönder`,failedHeader:`İyileştirme başarısız`,retry:`Yeniden dene (ek süre)`,retryBetter:`Daha iyisini dene`,retryFallback:`{{model}} ile yeniden dene`,pickModel:`Başka model…`,pickModelTitle:`İyileştirmeyi başka bir modelle yeniden dene`,pickModelHint:`Bu iyileştirmenin yeniden çalıştırılacağı bir sağlayıcı/model seçin. Oturum modeliniz değişmez.`,countdownHeader:`✨ İyileştirme başlıyor…`,countdownYourMessage:`Mesajınız`,countdownHint:`İyileştirme {{seconds}}sn içinde başlıyor. Atlamak için "Olduğu gibi gönder"e tıklayın.`,countdownStartNow:`Şimdi iyileştir`,countdownSendAsIs:`Olduğu gibi gönder`,cancelRefineSendOriginal:`İptal et ve orijinali gönder`},g={heading:`Spesifikasyonlar`,subtitle:`Spesifikasyon güdümlü geliştirmeyi görüntüle ve yönet`,empty:`Spesifikasyon bulunamadı. Oluşturmak için {{command}} kullanın.`,tasks:`Görevler ({{count}})`,doneCount:`{{count}} tamamlandı`,runningCount:`{{count}} çalışıyor`,pendingCount:`{{count}} bekliyor`,runTitle:`Bu spesifikasyonu canlı çok-ajanlı iş olarak çalıştır`,run:`Çalıştır`,runAsSdd:`SDD olarak çalıştır`,runAsSddTitle:`Çok-ajanlı SDD paralel çalışması başlat (worktree, doğrulama, canlı pano)`,runAsGoal:`Goal olarak çalıştır`,runAsGoalTitle:`Bu spec'in görev sütunlarından aşamalı bir Goal çalışması başlat`,list:`Liste`,graph:`Graf`,loadingTasks:`Görevler yükleniyor…`},_={heading:`F5 Dayanıklılık Doğrulayıcı`,subtitle:`En son etkin oturumun, transkriptin ve UI durumunun bir sayfa yenilemesinde kaldığını doğrular. Bu görünümü açın, sonra F5'e basın — her yeşil satır yeşil kalmalıdır.`,recordProbe:`Sonda kaydet`,latestSession:`En son etkin oturum`,restoredLocal:`localStorage'tan geri yüklendi`,sessionIdExtra:`oturum kimliği: {{id}}`,noSessionYet:`henüz oturum başlatılmadı`,activePointer:`Etkin oturum işaretçisi`,lastVisited:`lastVisitedAt zaman damgası`,never:`hiçbir zaman`,persistedEnv:`Kalıcı ortam`,transcriptRehydrate:`Sohbet transkripti yeniden doldurma`,localTranscript:`Yerel transkript kurtarıldı`,messagesExtra:`{{count}} mesaj, {{queued}} sıralı`,noMessages:`0 mesaj`,noBleed:`Oturumlar arası sızıntı yok`,bleedExtra:`bağlı={{bound}} vs etkin={{active}}`,transcriptBinds:`transkript etkin oturuma bağlanır`,uiWorkspace:`UI çalışma alanı`,noneValue:`(yok)`,payloadSize:`localStorage yükü (4 anahtar): {{count}} karakter`,probeLog:`Sonda günlüğü`,noProbes:`Henüz sonda yok — yeniden doldurma kontrolü kaydetmek için üstteki "Sonda kaydet" düğmesine basın veya bu görünümde F5'e basın.`,simulatedF5:`simüle F5: persist rehydrate yeniden çalıştırılıyor`},v={status:{pending:`Bekliyor`,in_progress:`Devam Ediyor`,review:`İnceleme`,failed:`Başarısız`,completed:`Bitti`,queued:`Sırada`,blocked:`Engelli`,cancelled:`İptal edildi`},newTaskTitle:`Yeni görev`,newTaskPlaceholder:`Görev başlığı…`,addTask:`Görev ekle`,empty:`Henüz aşama yok — panoyu doldurmak için bir Goal çalıştırması başlatın.`,summary:`{{phases}} aşama · {{tasks}} görev`,phases:`Aşamalar`,statusTab:`Durum`,dropHere:`Görevleri buraya bırakın`,emptySpec:`Bu spec'te henüz görev yok.`,depGraphHeading:`Bağımlılık grafiği`,worktreePrefix:`worktree: {{branch}}`},y={trendUp:`Artıyor`,trendDown:`Azalıyor`,trendStable:`Sabit`,heading:`Hata Ayıklama Panosu`,subtitle:`WrongStack WebUI için gerçek zamanlı izleme`,refreshLabel:`Yenile:`,lastUpdated:`Son güncelleme: {{time}}`,fetchFailed:`Metrikler alınamadı`,fileWatcher:`Dosya İzleyici`,watcherStatus:`İzleyici Durumu`,running:`Çalışıyor`,stopped:`Durduruldu`,activeProjects:`Etkin Projeler`,projectsWatched:`İzlenen projeler`,fileChanges:`Dosya Değişiklikleri`,totalDetected:`Toplam tespit edilen`,filesProcessed:`İşlenen Dosyalar`,afterHash:`Hash süzgecinden sonra`,broadcastsSent:`Gönderilen Yayınlar`,toClients:`WebUI istemcilerine`,debounceResets:`Debounce Sıfırlamaları`,rapidWrites:`Ardışık hızlı yazmalar`,avgDebounce:`Ort. Debounce Gecikmesi`,actualDelay:`Uygulanan gerçek gecikme`,totalDelay:`Toplam Gecikme`,sumDelays:`Tüm gecikmelerin toplamı`,browserPerf:`Tarayıcı Performansı`,heapUsed:`Kullanılan Yığın`,jsHeap:`JavaScript yığını`,heapTotal:`Toplam Yığın`,totalHeap:`Toplam yığın boyutu`,pageUptime:`Sayfa Çalışma Süresi`,sinceLoad:`Sayfa yüklenmesinden beri`,rawData:`Ham Veri`},b={allowlistTitle:`Model izin listesi`,modelCount_one:`{{count}} model`,modelCount_other:`{{count}} model`,using:`Kullanılan`,noModelPicked:`(model seçilmedi)`,clearAllowlist:`İzin listesini temizle`,clearAllowlistAria:`{{provider}} için kayıtlı izin listesini temizle`,refresh:`Sunucudan yenile`,refreshAria:`{{provider}} için model listesini yenile`,probing:`Sorgulanıyor…`,searchPlaceholder:`Modelleri ara…`,use:`Kullan`,useModelAria:`{{provider}} için {{model}} modelini kullan`},x={expandChip:`{{label}} öğesini genişlet`,collapseChip:`{{label}} öğesini daralt`,ahead:`{{count}} ileri`,behind:`{{count}} geri`,linesAdded:`{{count}} satır eklendi`,linesDeleted:`{{count}} satır silindi`,untrackedFiles:`{{count}} izlenmeyen dosya`,customizeTitle:`Dock çiplerini özelleştir`,dockChips:`Dock çipleri`,noActiveGoal:`Etkin hedef yok`,noActiveGoalDetail:`Sohbetten veya hedef komutundan bir hedef başlatın.`,closeWorkspaceInspector:`Çalışma alanı denetçisini kapat`,goal:`Hedef`,goalState:`Hedef Durumu`,goalStateDetail:`Etkin hedef ve ilerleme`,fleet:`Filo`,fleetDetail:`Canlı ajan kadrosu ve etkinliği`,work:`İş`,workDetail:`Yapılacaklar, görevler ve plan`,worktrees:`Worktree'ler`,worktreesDetail:`Paralel dallar ve şeritler`,collab:`İşbirliği`,collabDetail:`Oturum katılımcıları ve denetimleri`,inspector:`Çalışma alanı denetçisi`,inspectorNamed:`{{name}} çalışma alanı denetçisi`,workspace:`Çalışma alanı`,workspaceDetails:`Çalışma alanı ayrıntıları`},S={leaderBadge:`LİDER`,iters:`Yineleme`,tools:`Araçlar`,activityBins:`Etkinlik (12 kutu)`,streamingOutput:`Akış çıktısı`,recentTools:`Son araçlar`,finalOutput:`Son çıktı`,heading:`Vekil İzleyici`,prevAgent:`Önceki vekil`,nextAgent:`Sonraki vekil`,closeAria:`Vekil izleyiciyi kapat`,hintPage:`←→ sayfa`,hintNavigate:`↑↓ listede gezin`,hintEsc:`Esc kapat`},C={resize:`Terminalleri yeniden boyutlandır`,labelSingular:`Terminal`,labelPlural:`Terminaller`,projectShell:`Proje kabuğu`,maxTerminals:`En fazla {{count}} terminal`,newTerminal:`Yeni terminal`,restart:`Etkin terminali yeniden başlat`,closeAll:`Tüm terminalleri kapat`,closeDock:"Terminal dock'unu kapat (Ctrl+`)",closeTab:`{{name}} öğesini kapat`,processExited:`[işlem {{code}} koduyla çıktı]`},w={liveStream:`Canlı akış`,events_one:`{{count}} olay`,events_other:`{{count}} olay`,interruptTitle:`Bu vekili bir sonraki adımında kooperatif biçimde durdur (süreç öldürme değil)`,interrupt:`⏸ Böl`,interrupting:`…`,loading:`Oturum yükleniyor…`,done:`✓✓ bitti`,read:`✓ okundu`,delivered:`⏳ teslim edildi`,agent:`Vekil`,you:`Sen`,working:`{{name}} · çalışıyor`,claude:`Claude`,priority:`Öncelik`,placeholder:`{{label}} → bu oturuma…`,send:`Gönder`,sendHint:`⌘/Ctrl+Enter ile gönder · vekilin bir sonraki yinelemesinde görülür`,msgType:{steerLabel:`🔄 Yönlendir`,steerHint:`Görev sırasında davranışı ayarla`,askLabel:`❓ Sor`,askHint:`Soru — yanıt bekler`,assignLabel:`📋 Ata`,assignHint:`Üzerinde işlem yapılacak görev`,noteLabel:`💬 Not`,noteHint:`Bilgi için, acil değil`},sentRunning:`Teslim edildi — çalışan vekil bir sonraki adımda görür`,sentIdle:`Teslim edildi — hedef boşta; posta kutusunda görünür, bir sonraki çalıştığında okunur`,sentFailed:`Başarısız: {{error}}`,interruptReason:`Operatör Fleet HQ'dan durdurma istedi`,interruptSent:`Kesme gönderildi — vekil bir sonraki adımda durur (öldürme değil)`,interruptFailed:`Kesme başarısız: {{error}}`},T={empty:`Henüz kayıtlı yan etki yok.`,emptyHint:`Bash komutları, paket kurulumları ve ağ istekleri burada görünür.`,heading:`Yan Etkiler`,exportTitle:`Filtrelenmiş yan etkileri CSV olarak dışa aktar`,all:`Tümü`,colTime:`Zaman`,colTool:`Araç`,colRisk:`Risk`,colDetail:`Detay`,colOutcome:`Sonuç`},E={elapsedHm:`{{h}} sa {{m}} dk önce`,elapsedMs:`{{m}} dk {{s}} sn önce`,elapsedS:`{{s}} sn önce`,heading:`Filo İzleyici`,clientsHeading:`Bağlı İstemciler`,terminal:`Terminal`,webui:`Web Arayüzü`,repl:`REPL`,totalConnected:`toplam bağlı`,mailQueue:`Posta Kuyruğu`,total:`Toplam`,open:`Açık`,unread:`Okunmamış`,agents:`Vekiller`,messagesSub:`mesaj`,uncompletedSub:`tamamlanmamış`,waitingSub:`bekliyor`,ofTotal:`/ {{count}} toplam`,agentRoster:`Vekil Çizelgesi`,liveMailActivity:`Canlı Posta Etkinliği`,noActivity:`Son etkinlik yok`,mailboxAgents:`Posta Kutusu Vekilleri`,noMailboxAgents:`Kayıtlı vekil yok`,moreCount:`+{{count}} daha`,agentFallback:`vekil`,fleetAgents:`Filo Vekilleri`,noFleetAgents:`Çalışan filo vekili yok`,iter:`yineleme`,mailType:{sent:`Gönderildi`,delivered:`Teslim edildi`,read:`Okundu`,completed:`Tamamlandı`}},D={status:{pending:`bekliyor`,queued:`sırada`,in_progress:`çalışıyor`,blocked:`engellendi`,review:`inceleme`,failed:`başarısız`,completed:`bitti`,cancelled:`iptal edildi`},activityHeading:`Etkinlik`,feedEmpty:`Henüz bir şey yok — aracılar görevleri alıp bitirdikçe olaylar burada görünür.`,destroyTitle:`SDD projesi yok edilsin mi?`,destroyDesc:`Bu, çalışmayı ve işini siler. Geri alınamaz (isteğe bağlı commit geri alma geçmiş korur).`,stopRun:`Çalışmayı durdur`,stopRunAgents_one:`Çalışmayı durdur ({{count}} aracı çalışıyor)`,stopRunAgents_other:`Çalışmayı durdur ({{count}} aracı çalışıyor)`,removeWorktreesAll:`Tüm git worktree'leri + wstack/ap/* dallarını kaldır — birleştirilmemiş iş dahil`,removeWorktreesCount_one:`{{count}} git worktree + wstack/ap/* dallarını kaldır — birleştirilmemiş iş dahil`,removeWorktreesCount_other:`{{count}} git worktree + wstack/ap/* dallarını kaldır — birleştirilmemiş iş dahil`,deleteArtifacts:`Tüm SDD yapılarını sil (spec'ler, görev grafiği, pano, oturum)`,revertMerged_one:`Ayrıca {{count}} birleştirilmiş commit'i geri al`,revertMerged_other:`Ayrıca {{count}} birleştirilmiş commit'i geri al`,revertHint:`Geri alma commit'leri ekler (geçmiş korunur). Çalışma ağacı kirliyse reddedilir.`,baseBranchFallback:`taban dal`,noteLeaveMerged:`Birleştirilmiş commit'ler taban dalda bırakılır. Onları da geri almak için yukarıdaki kutuyu işaretleyin.`,noteAbandon:`Bu çalışmayı gerçekten terk etmek istediğinizden emin olun.`,destroying:`Yok ediliyor…`,destroyAll:`Her şeyi yok et`,kanbanBacklog:`Bekleme`,kanbanReady:`Hazır`,kanbanRunning:`Çalışıyor`,kanbanReview:`İnceleme`,kanbanFailed:`Başarısız`,kanbanDone:`Tamamlandı`,kanbanEmpty:`boş`},O={collapseToLines:`İlk {{count}} satıra daralt`,showAllLines:`Tümünü göster: {{total}} satır ({{more}} satır daha)`,exitCode:`çıkış kodu:`,jsonLines:`JSON · {{count}} satır`,collapse:`daralt`,expand:`genişlet`},k={heading:`Tasarım Stüdyosu — Galeri`,kitsCount:`{{count}} kit`,searchPlaceholder:`Kit ara…`,stackTitle:`Use + Materialize için yığın`,wrote:`{{path}} yazıldı`,materializeFailed:`Materialize başarısız: {{error}}`,verifyError:`Doğrula: {{error}}`,verifyOffPalette:`Doğrula: %{{pct}} palet üzerinde — {{files}} dosyada {{count}} palet dışı`,verifyClean:`Doğrula: temiz ✓ ({{files}} dosya palet üzerinde)`,writing:`Tema dosyası yazılıyor…`,scanning:`Arayüz dosyaları taranıyor…`,active:`Etkin`,reapply:`Yeniden uygula`,use:`Kullan`,materializeTitle:`Token'ları bir {{stack}} tema dosyasına yaz`,materialize:`Materialize`,verifyTitle:`Palet dışı renkler için arayüz dosyalarını tara`,verify:`Doğrula`,colors:`Renkler`},A={summary_one:`{{count}} aşama · %{{pct}} tamamlandı`,summary_other:`{{count}} aşama · %{{pct}} tamamlandı`,switchBoard:`Panoyu değiştir`,boardsCount_one:`{{count}} pano…`,boardsCount_other:`{{count}} pano…`,toggleAutonomousTitle:`Otonom modu aç/kapat`,autonomous:`Otonom`,manual:`Manuel`,resumeTitle:`Çalıştırmayı sürdür`,pauseTitle:`Çalıştırmayı duraklat`,resume:`Sürdür`,pause:`Duraklat`,stopTitle:`Çalıştırmayı durdur — devam eden vekilleri hemen iptal eder`,stop:`Durdur`,newTitle:`Bu panoyu temizle ve yeni bir Goal çalıştırması başlat`,newLabel:`Yeni`,revertConfirm:`Çalıştırmanın commit'leri geri alınsın mı?`,revertTitle:`Bu çalıştırmayı geri al — işlediği commit'leri git-revert yap ve worktree'lerini kaldır`,revert:`Geri al`,goal:`Hedef`,planning:`Aşamalar planlanıyor…`,planningBody:`Hedefiniz alındı. WrongStack onu aşamalara ve görevlere bölüyor — plan hazır olduğunda pano burada görünür.`,startHeading:`Aşama Planı Başlat`,startBody:`Ne inşa etmek istediğinizi açıklayın. WrongStack aşamaları ve görevleri planlar, sonra uygular — çalıştırmayı panoda izleyin ve yönlendirin.`,startPlaceholder:`örn. Express ve SQLite ile kullanıcı yönetimi için bir REST API oluştur...`,isolateLabel:`Her aşamayı kendi git worktree'sinde izole et`,startButton:`Goal Başlat`,ctrlHint:`Başlatmak için Ctrl+Enter`,isolateOn:`aşamalar izole worktree'lerde çalışır, squash-merge edilir`,isolateOff:`aşamalar doğrudan mevcut dalda çalışır`,lanes:`Şeritler`,graph:`Graf`,planningAck:`🚀 **Goal** — anlaşıldı. Hedefiniz için aşamalar planlanıyor…`,assess:{analyzing:`Hedef kapsamı analiz ediliyor…`,realistic:`✓ Kapsam gerçekçi görünüyor`,durationConcern:`⚠ Süre endişesi`,durationClaimed:`Belirtilen süre: {{duration}}`,recommendation:`Önerilen: {{duration}}`,concerns:`Endişeler`,analysisFailed:`Hedef kapsamı analiz edilemedi`,override:`Yine de başlat`,overrideTitle:`Uyarıyı temizle ve başlat düğmesini etkinleştir`,disableTitle:`Bu hedefin süresi gerçekçi değil — geçersiz kılmak için "Yine de başlat" kullanın`},multiBoardLabel:`Birden çok kanban panosuna böl`,verifyTasksLabel:`Her görev için doğrulama gerektir`,chimeraReviewLabel:`Chimera otomatik incelemesini etkinleştir`},j={noObservers:`Canlı izleyici yok`,observerTitle:`Salt okunur izleyici olarak katıl (Aşama 1)`,observerRole:`izleyici`,annotatorTitle:`Açıklayıcı olarak katıl — araç çağrılarına satır içi not bırak (Aşama 2)`,annotatorRole:`açıklayıcı`,controllerTitle:`Kontrolör olarak katıl — vekil döngüsünü duraklatabilir (Aşama 3)`,controllerRole:`kontrolör`,errorPrefix:`Collab: {{error}}`,dismiss:`kapat`,observers_one:`{{count}} izleyici`,observers_other:`{{count}} izleyici`,annotationsTitle:`{{count}} açık not — açıklayıcılar bu oturumu inceliyor`,notes_one:`{{count}} not`,notes_other:`{{count}} not`,pausedTitle:`Vekil döngüsü duraklatıldı — bir kontrolör inceliyor`,paused:`duraklatıldı`,joinedTitle:`Katıldı {{time}}`,grantTitle:`Kontrol ver — bu katılımcıyı kontrolöre yükselt`,injectTitle:`Bekleyen bir araç çağrısı için sentetik sonuç enjekte et`,inject:`Enjekte et`,resumeTitle:`Vekil döngüsünü sürdür`,resume:`Sürdür`,pauseTitle:`Bir sonraki araç çağrısından önce vekili duraklat`,pauseAgent:`Vekili duraklat`,leaveTitle:`İzleyici oturumundan ayrıl`,leave:`Ayrıl`,injectToolResult:`Araç sonucu enjekte et`,close:`kapat`,targetTool:`Hedef tool_use kimliği`,targetPlaceholder:`bekleyen bir çağrı seç veya bir tool_use kimliği yaz`,toolFallback:`araç`,noPendingTools:`Bekleyen araç çağrısı yok — ön sıraya almak için bir tool_use kimliği yazın veya önce vekili duraklatın.`,resultContent:`Sonuç içeriği`,resultPlaceholder:`Aracı çalıştırmak yerine vekile beslenen sentetik araç sonucu`,markError:`hata olarak işaretle`,reasonPlaceholder:`neden (denetim günlüğü)`,queueInjection:`Enjeksiyonu sıraya al`,controllerInjection:`kontrolör enjeksiyonu`},M={connected:`Bağlandı`,reconnecting:`Arka uca yeniden bağlanılıyor (deneme {{attempt}}) — {{remaining}} sn içinde yeniden denenecek`,disconnected:`Arka uçtan bağlantı kesildi`,retry:`Şimdi yeniden dene`,retryTitle:`Bağlantıyı şimdi yeniden dene`,dismissTitle:`Kapat (üst çubuktaki chip durumu hâlâ gösterir)`},N={modePrefix:`kip:`,activeTitle:`Etkin kip`,heading:`Kip`,defaultName:`Varsayılan`,defaultDesc:`Standart vekil davranışı`},P={clickTitle:`Tur başına maliyet dökümü için tıklayın`,heading:`Maliyet dökümü`,noPricing:`Geçerli model için fiyatlandırma yok — maliyet değerleri sıfır.`,noTurns:`Henüz tamamlanmış tur yok. Tur başına maliyeti burada görmek için bir komut çalıştırın.`,topExpensive_one:`En pahalı {{count}} tur`,topExpensive_other:`En pahalı {{count}} tur`},F={runDefault:`Çalıştırma varsayılanı`,useRunDefault:`Çalıştırma varsayılanını kullan`,filterPlaceholder:`Modelleri filtrele…`,loading:`Modeller yükleniyor…`,noMatch:`Eşleşme yok`},I={heading:`Modeli değiştir`,filterPlaceholder:`Sağlayıcıları ve modelleri filtrele…`,providerFilter:`Sağlayıcı`,providerFilterAll:`Tüm sağlayıcılar`,noSavedProviders:`Kayıtlı sağlayıcı yok — önce Ayarlar'da bir anahtar kaydedin.`,noMatch:`Eşleşen model yok`,active:`etkin`},L={todos:`Yapılacaklar`,tasks:`Görevler`,plan:`Plan`},R={toggleAria:`Durumu değiştir: {{content}}`,removeTitle:`Todo'yu kaldır`,removeAria:`"{{content}}" kaldır`,completedCount_one:`{{count}} tamamlandı`,completedCount_other:`{{count}} tamamlandı`},z={start:`Başlat`,complete:`Tamamla`,retry:`Yeniden dene`,assign:`Ata`,assignTitle:`Aracı ata`,unassigned:`Atanmamış`,statusPending:`Bekliyor`,statusInProgress:`Devam ediyor`,statusBlocked:`Engelli`,statusFailed:`Başarısız`,statusReview:`İnceleme`,statusDone:`Tamamlandı`,startTitle:`Başlat`,completeTitle:`Tamamla`,fail:`Başarısız`,failTitle:`Başarısız olarak işaretle`,boardCount:`{{total}} görev · {{done}} tamamlandı`},B={toolCalls_one:`{{count}} araç çağrısı`,toolCalls_other:`{{count}} araç çağrısı`},V={removeTitle:`Referansı kaldır`,linesCount_one:`{{count}} satır`,linesCount_other:`{{count}} satır`},H={statusOpen:`Açık`,statusInProgress:`Devam ediyor`,statusDone:`Tamamlandı`,startTitle:`Başlat`,doneTitle:`Tamamlandı olarak işaretle`,reopenTitle:`Yeniden aç`,reopen:`Yeniden aç`},U={heading:`@ Dosyalar`,noMatch:`"{{query}}" ile eşleşen dosya yok`,searching:`Proje aranıyor…`,selectInsertEscDismiss:`↑/↓ seç · ↵ ekle · Esc kapat`},W={dismiss:`Kapat`},G={placeholder:`Sohbette ara…`,prevHit:`Önceki eşleşme`,nextHit:`Sonraki eşleşme`,close:`Kapat (Esc)`},K={statusPending:`Bekliyor`,statusReady:`Hazır`,statusRunning:`Çalışıyor`,statusPaused:`Duraklatıldı`,statusCompleted:`Tamamlandı`,statusFailed:`Başarısız`,statusSkipped:`Atlandı`,heading:`Aşamalar`,autonomousOn:`● Otonom`,autonomousOff:`○ Manuel`,autonomousOnTitle:`Otonom mod etkin — duraklatmak için tıklayın`,autonomousOffTitle:`Manuel mod — otonomu etkinleştirmek için tıklayın`,overallProgress:`Genel ilerleme`,tasksSuffix:`{{done}}/{{total}} görev`,agentsSuffix_one:`{{count}} aracı`,agentsSuffix_other:`{{count}} aracı`},q={triggerTitle:`Bağlam penceresi kipi`,ctxPrefix:`ctx:`,opsHeading:`Bağlam işlemleri`,compactNow:`Şimdi sıkıştır`,compactNowDesc:`Eski araç çıktısını ele`,compactAggressive:`Agresif sıkıştır`,compactAggressiveDesc:`Şimdi maksimum eleme`,repairContext:`Bağlamı onar`,repairDesc:`Yetim tool-use bloklarını düzelt`,debugContext:`Bağlamı hata ayıkla`,debugDesc:`Bölüm başına boyut dökümü`,windowHeading:`Bağlam penceresi`,keepElide:`{{k}} yakınını tut · {{t}}+ tokeni ele`,fallbackName:`Dengeli`,fallbackDesc:`Varsayılan rolling sıkıştırma`},J={kindAssistant:`Asistan`,kindThinking:`Düşünme`,kindToolCall:`Araç çağrısı`,kindToolResult:`Araç sonucu`,kindError:`Hata`,kindStatus:`Durum`,kindSystem:`Sistem`,title:`Sohbet geçmişi`,copyTitle:`Aracı sohbet geçmişini kopyala`,empty:`Bu aracı için henüz sohbet geçmişi yok.`},Y={heading:`Otonomi modu`,titlePrefix:`Otonomi: {{label}}`,descOff:`Tam manuel kontrol — vekil girdinizi bekler.`,descSuggest:`Vekil sonraki adımları önerir ama onay bekler.`,descAuto:`Vekil kısa onay gecikmesinden sonra otomatik ilerler.`,descEternal:`Vekil hedef tamamlanana kadar otonom çalışır.`,descEternalParallel:`Çok aracılı otonom yürütme — filo modu.`,labelOff:`Kapalı`,labelSuggest:`Öner`,labelAuto:`Otomatik`,labelEternal:`Sonsuz`,labelEternalParallel:`Sonsuz Paralel`},X={heading:`Mesaj kuyruğu`,subtitle:`{{count}} kuyrukta · vekil bitirmeden önce gönderilen mesajlar`,btwTitle:`Bu arada — çalışan vekili bölmeyen takip mesajı olarak gönderilir`,steerTitle:`Yönlendir — çalışan vekili böler ve bu mesajla yeniden yönlendirir`,queueTitle:`Kuyrukta — mevcut vekil çalışması bitene kadar tutulur, sonra sırayla gönderilir`,sortNewestTitle:`En yeni önce sıralandı — en eski önce sıralamak için tıklayın`,sortOldestTitle:`En eski önce sıralandı — en yeni önce sıralamak için tıklayın`,newest:`En yeni`,oldest:`En eski`,clear:`Temizle`,clearTitle:`Tüm kuyruktaki mesajları temizle`,closeTitle:`Kapat`,emptyTitle:`Kuyruk boş`,emptyBody:`Mesaj eklemek için girdinin yanındaki btw / steer / kuyruğa ekle düğmelerini kullanın. Kuyruktaki öğeler mevcut vekil çalışması bitince sırayla gönderilir.`,removeTitle:`Kuyruktan kaldır`,clearDispatchedTitle:`Kuyruktaki mesajları temizle — zaten gönderilen notlar geri alınamaz`,dispatchedTitle:`Zaten vekile gönderildi`,dispatchedLabel:`Gönderildi`,footer:`Mesajlar, mevcut vekil çalışması bitince varış sırasına göre gönderilir. En yeni önce görmek için sıralama düğmesini kullanın.`},Z={heading:`Oturum kontrol noktaları`,countSuffix_one:`{{count}} kontrol noktası`,countSuffix_other:`{{count}} kontrol noktası`,description:`Oturumu herhangi bir kontrol noktasına geri sarın. Mesajlar ve dosya değişiklikleri o noktaya geri döner — LLM oradan hiçbir şey olmamış gibi devam eder.`,emptyTitle:`Henüz kontrol noktası yok`,emptyBody:`Her mesaj gönderdiğinizde kontrol noktaları otomatik oluşturulur. Birkaç mesaj gönderip geri dönün.`,latest:`en son`,msgSuffix_one:`{{count}} msg`,msgSuffix_other:`{{count}} msg`,footerPre:`Geri sarmak için herhangi bir kontrol noktasına tıklayın`,footerPost:`kapatmak için`},Q={statusActive:`Etkin`,statusPaused:`Duraklatıldı`,statusDone:`Tamamlandı`,statusFailed:`Başarısız`,statusAbandoned:`Terk edildi`,heading:`Hedef`,refined:`Arıtılmış`,progress:`İlerleme`,iterations:`yineleme`,deliverables:`Teslimatlar`,recentActivity:`Son etkinlik`},$={cleanTitle_one:`{{count}} yetim worktree temizlensin mi?`,cleanTitle_other:`{{count}} yetim worktree temizlensin mi?`,cleanMessage:`Önceki çalışmalardan kalan tüm git worktree + wstack/ap dalını zorla kaldırır. İçlerindeki birleştirilmemiş çalışma kaybolur.`,cleanConfirm:`Yetimleri temizle`,orphanCount_one:`Önceki çalışmalardan {{count}} yetim worktree`,orphanCount_other:`Önceki çalışmalardan {{count}} yetim worktree`,andMore:`…ve {{count}} daha`,cleanButtonTitle:`Tüm yetim worktree + dalları zorla kaldır`,removed_one:`✓ {{count}} yetim worktree kaldırıldı.`,removed_other:`✓ {{count}} yetim worktree kaldırıldı.`,cleanupFailed:`temizlik başarısız`,lanesHeading:`Worktree'ler`,base:`taban`,isolatedCount_one:`{{count}} yalıtılmış`,isolatedCount_other:`{{count}} yalıtılmış`,statusAllocating:`ayrılıyor`,statusActive:`etkin`,statusCommitting:`işleniyor`,statusMerging:`birleştiriliyor`,statusMerged:`birleştirildi`,statusConflict:`çakışma`,statusFailed:`başarısız`,conflictBadge:`ÇAKIŞMA`,graphAria:`{{base}} dışında worktree dal grafiği`,mergedLabel:`✓ {{base}} ile birleştirildi`},ee={heading:`Çalışan süreçler`,subtitle:`{{active}} etkin · {{total}} toplam`,killAll:`Tümünü sonlandır`,emptyTitle:`İzlenen süreç yok`,emptyBody:`Vekil bash veya exec araçlarını çalıştırdığında süreçler burada görünür. Etkin süreçler nabız atan LED gösterir.`,pidLabel:`PID {{pid}}`,protected:`korumalı`,protectedTitle:`Korumalı — kill/killAll'dan sağ kalır`,background:`arka plan`,backgroundTitle:`Bağımsız iş — CLI/WebUI kapansa da çalışmaya devam eder`,confirmKillBackground:`Bağımsız arka plan süreci {{pid}} sonlandırılsın mı?`,confirmKillAll:`Çalışan {{count}} sürecin tamamı sonlandırılsın mı?`,killTitle:`PID {{pid}} sonlandır`},te={tooLarge:`Diff atlandı (dosya satır içi göstermek için çok büyük).`},ne={placeholder:`Yedek model ekle…`,emptyHint:`Birincil model hız sınırladığında veya takıldığında sırayla denenir.`,moveUp:`Yukarı taşı`,moveDown:`Aşağı taşı`},re={loading:`Oturumler yükleniyor...`,apiUnavailable:`Oturum API'si kullanılamıyor:`,empty:`Canlı oturum yok. Burada görmek için başka bir wstack örneği açın.`,heading:`Canlı oturumlar ({{count}})`,autoRefresh:`5 sn'de bir otomatik yenile`,pidLabel:`PID {{pid}}`,agentMeta:`{{iter}} yineleme · {{tools}} araç · {{ago}}`,andMore:`... ve {{count}} daha`,noAgents:`Aracı yok`},ie={applyTitle:`Düzenlenen sürümü diske yaz`,applying:`Uygulanıyor…`,applied:`Uygulandı`,apply:`Uygula`},ae={showStack_one:`Yığın izini göster ({{count}} kare)`,showStack_other:`Yığın izini göster ({{count}} kare)`,hideStack_one:`Yığın izini gizle ({{count}} kare)`,hideStack_other:`Yığın izini gizle ({{count}} kare)`},oe={liveHeading:`Canlı`,clients:`İstemciler`,agents:`Aracılar`,model:`Model`,mode:`Kip`,toolCalls:`Araç çağrıları`,displayHeading:`Görünüm`,statsHud:`İstatistik HUD`,legends:`Açıklamalar`,minimap:`Mini harita`,zoomControls:`Yakınlaştırma kontrolleri`,animateWires:`Bağlantıları animasyonla`,backgroundHeading:`Arka plan`,bgDots:`Noktalar`,bgLines:`Çizgiler`,bgCross:`Çapraz`,bgNone:`Yok`},se={noParams:`(parametre yok)`,itemCount_one:`{{count}} öğe`,itemCount_other:`{{count}} öğe`,keyCount_one:`{{count}} anahtar`,keyCount_other:`{{count}} anahtar`},ce={roleYou:`Sen`,roleTool:`Araç`,roleThinking:`Düşünme`,roleAssistant:`Asistan`,inputLabel:`Girdi`,downloadTitle:`Dosya olarak indir`,empty:`(boş)`,hideDetails:`Detayları gizle`,showDetails:`Detayları göster`,showDetailsLines_one:`Detayları göster ({{count}} satır)`,showDetailsLines_other:`Detayları göster ({{count}} satır)`,editHint:`⌘/Ctrl+Enter ile kaydet · Esc ile iptal`,saveResend:`Kaydet ve yeniden gönder`,thinkingProcess:`Düşünme süreci`,thinkingMeta:`yineleme {{iter}} · {{dur}} · {{lines}}`,replay:`tekrar`,linesSuffix_one:`{{count}} satır`,linesSuffix_other:`{{count}} satır`,copyLog:`Günlüğü kopyala`,showFullLog:`Tüm günlüğü göster`,typing:`Yazıyor…`,noContent:`İçerik yok`,imageNotRetained:`Görsel önizlemesi yenilemeden sonra saklanmaz`,failedToSend:`⚠ Gönderilemedi`,autoPaused:`⚠️ _Otomatik ilerleme duraklatıldı — maksimum ardışık otomatik tur sayısına ulaşıldı. Devam etmek için bir şey yazın (otonomi açık kalır)._`,autoLoopHalted:`⚠️ _Aynı istem tekrarlandığı için otomatik gönderim durduruldu. Otonomi açık kalır; döngü korumasını sıfırlamak için yeni bir istem girin._`,rsIterations:`Yineleme: {{n}}`,rsTools:`Araç çağrısı: {{n}}`,rsElapsed:`Geçen: {{s}}`,rsCost:`Maliyet: {{c}}`,useInput:`Girdi: {{n}}`,useOutput:`Çıktı: {{n}}`,useCacheRead:`Önbellek okuma: {{n}}`,useCost:`Maliyet: {{c}}`,renderedLabel:`Gösterilen`,rawLabel:`Ham`,showRenderedTitle:`İşaretlenmiş markdown göster`,showRawTitle:`Ham markdown kaynağını göster`,editTitle:`Bu komutu düzenle ve yeniden gönder`,editLabel:`Düzenle`,unpinTitle:`Sabitlemeyi kaldır`,pinTitle:`Bu yanıtı sabitle`,pinnedLabel:`Sabitlendi`,pinLabel:`Sabitle`,regenerateTitle:`Bu yanıtı yeniden üret`,retryLabel:`Yeniden dene`},le={toolFallback:`araç`,toolFailed:`Araç başarısız`},ue={heading:`Klavye kısayolları`,footerPre:`İstediğiniz zaman`,footerPost:`bu listeyi yeniden açmak için basın.`,sectionGlobal:`Genel`,sectionTuiParity:`TUI panel eşliği`,sectionFleet:`Filo & Aracılar`,sectionChatInput:`Sohbet girişi`,sectionChat:`Sohbet`,sectionChatNav:`Sohbet gezinmesi (yazarken değil)`,dCommandPalette:`Komut paletini aç`,dShowOverlay:`Bu kısayol katmanını göster`,dToggleSidebar:`Kenar çubuğunu aç/kapat`,dOpenPanel:`Yan paneli aç (Oturum, Aracılar, Geçmiş, Dosyalar, Değişiklikler, Posta, Beceriler, Ofis Haritası)`,dDesignStudio:`Tasarım Stüdyosu yan panelini aç`,dWorktrees:`Worktree yan panelini aç`,dSettings:`Ayarları aç`,dMemory:`Hafızayı aç`,dFocusInput:`Mesaj girişine odaklan`,dSessionPanel:`Oturum paneli`,dFleetOverlay:`Filo izleyici katmanı`,dAgentsOverlay:`Aracı izleyici katmanı`,dWorktreeMonitor:`Worktree izleyici`,dPlanPanel:`Plan paneli`,dTodosPanel:`Yapılacaklar paneli`,dQueuePanel:`Kuyruk paneli`,dProcessMonitor:`Süreç izleyici`,dGoalPanel:`Hedef paneli`,dSessionsDashboard:`Oturum panosu`,dOfficeMap:`Koordinatör ofis haritası`,dDockPicker:`Rıhtım çip seçici`,dOpenFleet:`Filo izleyici katmanını aç`,dOpenAgents:`Aracı izleyici katmanını aç`,dNavigateAgents:`İzleyicide aracılar arasında gezin`,dSelectAgent:`Odaklanan aracıyı seç`,dCloseOverlay:`Etkin katmanı kapat`,dSendMessage:`Mesaj gönder`,dNewline:`Yeni satır ekle`,dRecallPrev:`Önceki komutu geri çağır (boş girişte)`,dRecallNext:`Sonraki komutu geri çağır`,dSlashPopup:`Slash komut açılır penceresini aç`,dAutocomplete:`Vurgulanan komutu otomatik tamamla`,dDismissPopup:`Açılır pencereyi kapat / girişi temizle`,dSearchChat:`Mevcut sohbette ara`,dClearContext:`Bağlamı temizle (/clear ile aynı)`,dNewSession:`Yeni oturum başlat (/new ile aynı)`,dExportMarkdown:`Sohbeti markdown olarak dışa aktar`,dModelSwitcher:`Hızlı model değiştirici katmanı`,dCompactDensity:`Sıkışık UI yoğunluğunu aç/kapat`,dAbortRun:`Mevcut çalışmayı durdur (çalışırken)`,dFocusNext:`Sonraki mesaja odaklan (diğer ad: ↓)`,dFocusPrev:`Önceki mesaja odaklan (diğer ad: ↑)`,dJumpFirst:`İlk mesaja atla`,dJumpLast:`Son mesaja atla`,dCopyFocused:`Odaklanan mesaj metnini kopyala`,dClearFocused:`Odaklanan mesajı temizle`},de={titleFallback:`Canlı SDD Panosu`,defaultModelTitle:`Çalışma düzeyinde varsayılan işçi modeli (görev başına geçersiz kılmalar önceliklidir)`,graphLabel:`Graf`,kanbanLabel:`Kanban`,retryAllTitle:`Başarısız her görevi beklemede olacak şekilde yeniden kuyruğa al`,retryFailed:`Başarısız olanları yeniden dene ({{count}})`,resume:`Sürdür`,pause:`Duraklat`,stop:`Durdur`,cleanTitle:`Çalışmanın git worktree'lerini + wstack/ap dallarını kaldır`,cleanWorktrees:`Worktree'leri temizle`,rollbackTitle:`{{base}} üzerinde {{count}} birleştirilmiş commit'i geri al`,rollback:`Geri al ({{count}})`,stopping:`Durduruluyor…`,destroying:`Yok ediliyor…`,destroyTitle:`Durdur, tüm worktree'leri kaldır, isteğe bağlı olarak birleştirilmiş commit'leri geri al ve SDD projesini sil`,destroy:`Yok et`,statDone:`tamamlanan`,statRunning:`çalışan`,statFailed:`başarısız`,statWave:`dalga`,statElapsed:`geçen`,noActiveWorkers:`etkin işçi yok`,deadlock:`Kilitlenme — görevler başarısız iş tarafından engellendi:`,noRunTitle:`Etkin SDD çalışması yok.`,noRunBody:`Yeni SDD Projesi sihirbazından bir tane başlatın veya CLI'da /sdd execute ile — aracılar burada canlı görünür, her biri yalıtılmış bir worktree'de çalışır.`,clickTaskHint:`detaylar için bir göreve tıklayın`,lcClean:`Temizle`,lcRollback:`Geri al`,lcDestroy:`Yok et`,lcFailed:`{{op}} başarısız: {{reason}}`,lcUnknownError:`bilinmeyen hata`,lcWorktrees_one:`{{count}} worktree kaldırıldı`,lcWorktrees_other:`{{count}} worktree kaldırıldı`,lcCommits_one:`{{count}} commit geri alındı`,lcCommits_other:`{{count}} commit geri alındı`,lcDeleted:`silindi {{items}}`,lcNothing:`yapacak bir şey yok`,lcNote:`{{op}}: {{body}} — not: {{reason}}`,lcOk:`{{op}}: {{body}}`},fe={backTitle:`Etkinliğe dön`,expandTitle:`Görev detaylarını genişlet`,collapseTitle:`Görev detaylarını daralt`,eventLog:`Görev olay günlüğü`,newestFirst:`en yeni önce`,noEvents:`Bu görev için henüz bir etkinlik kaydedilmedi.`,workingOn:`bu görev üzerinde çalışıyor`,assigned:`atanmış`,metaPriority:`Öncelik`,metaType:`Tür`,metaDuration:`Süre`,metaElapsed:`Geçen`,metaRetries:`Yeniden deneme`,metaWorktree:`Worktree`,workerModel:`İşçi modeli`,runDefault:`çalışma varsayılanı: {{model}}`,runDefaultPlaceholder:`Çalıştırma varsayılanı`,runDefaultPlaceholderModel:`Çalıştırma varsayılanı ({{model}})`,verificationCmd:`Doğrulama komutu`,gatesCompletion:`tamamlamayı geçitler (exit 0)`,verifyPlaceholder:`örn. pnpm vitest run path/to/file`,addVerify:`+ Doğrulama komutu ekle`,description:`Açıklama`,timeline:`Zaman çizelgesi`,dependsOn:`Bağımlı olduğu`,blocks:`Engellediği`,newWorkerPlaceholder:`Yeni işçi adı…`,confirmStop:`Bu çalışan görev durdurulsun mu?`,confirmDelete:`Bu görev çalışmadan silinsin mi?`,retryTitle:`Bu görevi beklemeye yeniden kuyruğa al`,reassign:`Yeniden ata`,stopTitle:`Bu görevdeki işçiyi iptal et`,splitTitle:`Bu görevi ayrı işçilere devredilen alt görevlere böl`,split:`Böl`,splitHint:`Satır başına bir alt görev — Başlık :: açıklama (açıklama isteğe bağlı)`,splitPlaceholder:`Veri katmanını yaz :: depoyu ekle
4
- Arayüzü bağla`,splitInto:`Alt görevlere böl`,deleteTitle:`Bu başlatılmamış görevi çalışmadan kaldır`},pe={phaseStart:`Başlat`,phaseInterview:`Görüşme`,phaseSpecReview:`Spec İncelemesi`,phasePlanning:`Planlama`,phaseTaskReview:`Görev İncelemesi`,phaseRunning:`Çalışıyor`,phaseDone:`Tamamlandı`,titleFallback:`Yeni SDD Projesi`,questionsSuffix:`{{cur}}/{{max}} soru`,tasksSuffix:`{{count}} görev`,runCfgTitle:`Çalıştırma yapılandırması — varsayılan model + yedek zinciri`,modelsLabel:`Modeller`,startRun:`Çalışmayı Başlat`,defaultWorkerModel:`Varsayılan işçi modeli`,leaderDefaultPlaceholder:`Lider / oturum varsayılanı`,useSessionDefault:`Oturum varsayılanını kullan`,fallbackChain:`Yedek zinciri`,appliesToAll:`Her göreve uygulanır. Çalışma başladıktan sonra canlı panodan görev başına geçersiz kılın.`,parallelAgents:`Paralel aracılar`,isolateWorktrees:`Git worktree'lerinde yalıt`,worktreeOn:`Her görev kendi worktree'sinde çalışır, tamamlandığında squash-merge edilir.`,worktreeOff:`Görevler doğrudan mevcut dalda çalışır (yalıtım yok).`,planDecompose:`Büyük görevleri otomatik böl`,planDecomposeOn:`Dağıtımdan önce atomiklik motorunun çok büyük işaretlediği görevleri böler.`,planDecomposeOff:`Onaylı görev grafiğini olduğu gibi bırakır (görev başarısız olursa çalışma sırasında yine de bölünebilir).`,goalPrompt:`Ne inşa etmek istiyorsunuz?`,goalPlaceholder:`örn. Oturum yönetimiyle OAuth girişi (Google + GitHub) ekle`,startingInterview:`Görüşme başlatılıyor…`,startInterview:`Görüşmeyi Başlat`,introBody:`Yalıtılmış bir aracı, bir spec oluşturmak için sizinle görüşme yapar, bunu bağımlılık sıralı bir görev grafiğine ayırır, ardından gerçek bir çok aracılı filo yürütür — panoda canlı izleyin. Yenilerseniz veya yeniden başlatırsanız görüşme otomatik sürer.`,taskGraphSummary:`Görev grafiği · {{count}} görev, bağımlılık sıralı`,dragToExplore:`keşfetmek için sürükle`,show:`göster`,goalLabel:`Hedef`,implementationPlan:`Uygulama planı`,approveSpec:`Spec'i onayla → uygulamayı planla`,approveTasks:`Görevleri onayla`,approvePlan:`Planı onayla`,answerPlaceholder:`Soruyu cevapla…`,changePlaceholder:`Değişiklik iste…`,resumeBanner:`Önceki oturumdan görüşme sürdürüldü — kaldığınız yerden devam edin.`,openLiveBoard:`Canlı panoyu aç`,discardInterview:`Vazgeç ve baştan başla`,discardTitle:`Bu görüşmeyi terk et ve kaydedilmiş oturumu temizle`},me={emptyDir:`boş`,loadFailed:`Dosyalar yüklenemedi: {{error}}`,expandAllTitle:`Tüm dizinleri genişlet`,expandAll:`Tümünü genişlet`,collapseAllTitle:`Tüm dizinleri daralt`,collapse:`Daralt`,folders_one:`{{count}} klasör`,folders_other:`{{count}} klasör`,currentDirTitle:`Mevcut dizin: {{path}}`,navigateToTitle:`{{path}} konumuna git`,filesSuffix_one:`{{count}} dosya`,filesSuffix_other:`{{count}} dosya`,goToDir:`dizine git`,navigateParentTitle:`{{path}} dosyasının üst dizinine git`,parentDirectory:`üst dizin`,noFiles:`Dosya bulunamadı`,copyAbsPath:`Mutlak yolu kopyala`,copyRelPath:`Göreli yolu kopyala`,openInTerminal:`Terminalde aç`,openInFileManager:`Dosya yöneticisinde aç`,mentionInChat:`Sohbette bahset`,copyPath:`Yolu kopyala`},he={sendSelectionAction:`Seçimi sohbete gönder`,noFilesOpen:`Açık dosya yok`,selectToEdit:`Düzenlemeye başlamak için gezginden bir dosya seçin`,sendSelectedTitle:`Seçili satırları sohbete gönder`,mentionFileTitle:`Bu dosyayı sohbette bahset`,sendToChat:`Sohbete gönder`,mentionFile:`Dosyayı bahset`,loadingEditor:`Düzenleyici yükleniyor…`,selectTab:`İçeriğini görmek için bir sekme seçin`},ge={title:`Dosya aktivitesi`,overview:`Özet`,changes:`Değişiklikler`,context:`Bağlam`,logs:`Loglar`,lines:`satır`,resizeHint:`Boyutlandırmak için sürükle · sıfırlamak için çift tıkla`,refresh:`Dosya kanıtlarını yenile`,evidenceCount_one:`{{count}} olay`,evidenceCount_other:`{{count}} olay`,lifetimeTitle:`Tüm geçmiş`,lifetimeChanges:`değişiklik`,lifetimeSessions:`oturum`,lifetimeTasks:`görev`,lifetimeBoards:`pano`,lifetimeSince:`{{date}} tarihinden beri`,lifetimeTools:`{{tools}} ile`,mutations30m:`Değişim · 30 dk`,sessions:`Session'lar`,actors:`Değiştirenler`,linkedWork:`İş bağlantıları`,workLinks:`Kanban / todo`,recentActivity:`Son dosya aktiviteleri`,events:`olay`,noEvidence:`Henüz bu dosyayla ilişkilendirilmiş aktivite yok.`,noSessions:`Henüz session eşleşmesi yok.`,noActors:`Henüz değiştiren kişi/süreç eşleşmesi yok.`,noWorkLinks:`Kanban, SDD veya todo bağlantısı kaydedilmemiş.`,taskOrTodo:`Task / todo`,loadingEvidence:`Dosya kanıtları yükleniyor…`,gitToBuffer:`Git HEAD → mevcut Monaco buffer`,savedToBuffer:`Son kayıt → mevcut Monaco buffer`,unsaved:`kaydedilmemiş buffer`,level:{quiet:`sakin`,active:`aktif`,churn:`yüksek churn`},analysisTitle:{quiet:`Yakın zamanda değişiklik trafiği yok`,active:`Bu dosya değiştiriliyor`,churn:`Tekrarlayan değişiklikler algılandı`},analysisBody:{quiet:`Son 30 dakikada ilişkilendirilmiş bir değişiklik kaydı yok.`,active:`Son 30 dakikada {{actors}} aktör ve {{sessions}} session üzerinden {{mutations}} değişiklik yapıldı.`,churn:`Yüksek churn: {{actors}} aktör ve {{sessions}} session üzerinden {{mutations}} değişiklik yapıldı. Sonraki düzenlemeden önce çakışan işleri kontrol et.`}},_e={loading:`Analitik yükleniyor…`,heading:`Analitik Panosu`,autoRefresh:`10 sn'de bir otomatik yenile`,liveSessions:`Canlı oturumlar`,agents:`Aracılar`,agentsActive:`{{count}} etkin`,totalEvents:`Toplam olay`,categoriesSub:`{{count}} kategori`,toolCalls:`Araç çağrıları`,iterationsSub:`{{count}} yineleme`,sessionCost:`Oturum maliyeti`,tokensSub:`{{input}} girdi / {{output}} çıktı`,sessionDuration:`Oturum süresi`,messagesSub:`{{count}} mesaj`,eventsByCategory:`Kategoriye göre olaylar`,noEvents:`Henüz kayıtlı olay yok.`,topEvents:`En çok olaylar`,activeSessionUsage:`Etkin oturum kullanımı`,provider:`Sağlayıcı`,model:`Model`,inputTokens:`Girdi tokenleri`,outputTokens:`Çıktı tokenleri`,cacheRatio:`Önbellek oranı`,filesRead:`Okunan dosya`,noSession:`Etkin oturum yok veya veri bekleniyor…`,healthErrors:`Sağlık & hatalar`,errorEvents:`Hata olayları`,warningEvents:`Uyarı olayları`,cacheHitRate:`Önbellek isabet oranı`,totalCategories:`Toplam kategori`,waitingData:`Veri bekleniyor…`,recentEvents:`Son olaylar`,noRecentEvents:`Yakın olay yok. Olay oluşturmak için arayüzle etkileşin.`},ve={heading:`Prompt kitaplığı`,searchPlaceholder:`Promptları ara…`,newPrompt:`+ Yeni prompt`,all:`Tümü`,recent:`🕘 Son`,favorites:`★ Favoriler`,noMatch:`Eşleşen prompt yok.`,newPromptHeading:`Yeni prompt`,titlePlaceholder:`Başlık *`,descPlaceholder:`Tek satır açıklama`,categoryPlaceholder:`Kategori`,tagsPlaceholder:`etiketler, virgül, ile ayrılmış`,contentPlaceholder:`Prompt içeriği * — değişkenler için {{name}} kullanın`,variables:`Değişkenler`,addVar:`+ değişken`,varNamePlaceholder:`ad`,varDescPlaceholder:`açıklama`,removeVarTitle:`Değişkeni kaldır`,required:`zorunlu`,multiline:`çok satırlı`,enumPlaceholder:`enum: a, b, c`,savePrompt:`Promptu kaydet`,saveFailed:`Prompt kaydedilemedi.`,titleContentRequired:`Başlık ve içerik zorunludur.`,toggleFavoriteTitle:`Favori değiştir`,selectOption:`— seç —`,fillMissing:`Doldur: {{missing}}`,insertIntoChat:`Sohbete ekle`,selectPromptHint:`Önizlemek ve eklemek için bir prompt seçin.`},ye={scopeProject:`Proje`,scopeGlobal:`Global`,scopeBundled:`Paketlenmiş`,timeoutError:`İstek zaman aşımına uğradı. Lütfen tekrar deneyin.`,updateFailed:`Güncelleme başarısız`,saveFailed:`Kaydetme başarısız`,uninstallFailed:`Kaldırma başarısız`,noSkillSelected:`Beceri seçilmedi`,selectSkillHint:`Belgelerini görmek için kenar çubuğundan bir beceri seçin`,goToChat:`Sohbete git`,openSourceRepo:`Kaynak repoyu aç`,copySourceUrl:`Kaynak URL'sini kopyala`,updatedLabel:`↑ Güncellendi: {{list}}`,upToDateLabel:`— Güncel: {{list}}`,errorsLabel:`✗ {{list}}`,checkUpdatesTitle:`Güncellemeleri kontrol et`,exportTitle:`Beceriyi .md olarak dışa aktar`,editTitle:`Beceriyi düzenle`,uninstallTitle:`Beceriyi kaldır`,closeTitle:`Kapat ve sohbete git`,backTitle:`Geri git`,forwardTitle:`İleri git`,relatedFiles:`İlgili dosyalar`,references:`Referanslar`,goToSkillTitle:`{{name}} becerisine git`,loadingContent:`Beceri içeriği yükleniyor…`,editingLabel:`Düzenleniyor {{name}}`,editStats:`{{lines}} satır · {{words}} kelime · {{chars}} karakter`,charsWarningFmt:`⚠ {{used}} MB / {{limit}} MB`,draftSaved:`Taslak kaydedildi`,draftRestored:`Taslak geri yüklendi`,discardDraft:`Taslağı sil`,splitViewTitle:`Bölünmüş görünüm`,hidePreviewTitle:`Önizlemeyi gizle`,contentPlaceholder:`Beceri içeriği (markdown)...`,loadFailed:`Beceri içeriği yüklenemedi`,noContent:`Beceri içeriği yok`,uninstallSkillHeading:`Beceriyi kaldır`,uninstallConfirm:`{{name}} kaldırılsın mı?`,uninstallRemovePath:`Bu, beceriyi {{path}} konumundan kaldırır ve geri alınamaz.`,uninstallAction:`Kaldır`},be={sessionStats:`Oturum istatistikleri`,clients:`İstemciler`,input:`Girdi`,output:`Çıktı`,cost:`Maliyet`,agentsSuffix:`aracı`,upPrefix:`{{time}} süredir`,webuiClient:`WebUI İstemcisi`,disconnected:`Bağlantı kesildi`,connected:`Bağlı`,tuiClient:`TUI İstemcisi`,terminal:`Terminal`,repl:`REPL`,coordinator:`KOORDİNATÖR`,fleetSummary:`Filo özeti`,toolCallsLabel:`Araç çağrıları`,tokensLabel:`Tokenler`,coordinatingFleet:`Filoyu koordine ediyor`,donePrefix:`✓ tamam ·`,failedPrefix:`✕ başarısız ·`,seenPrefix:`{{time}} önce görüldü`,availableDesk:`Müsait masa`,mailboxHub:`Posta Merkezi`,unreadSuffix_one:`{{count}} okunmamış`,unreadSuffix_other:`{{count}} okunmamış`,allClear:`Hepsi tamam`,total:`Toplam`,unreadLabel:`Okunmamış`,liveActivity:`Canlı etkinlik`,waitingActivity:`Etkinlik bekleniyor…`,now:`şimdi`,fleetHq:`WrongStack Filo Karargahı`,live:`CANLI`,legendStatus:`Durum`,legendActive:`Etkin`,legendIdle:`Boşta`,legendError:`Hata`,legendConnections:`Bağlantılar`,legendMail:`Posta`,legendTask:`Görev`,legendStatusConn:`Durum`,arrange:`Düzenle`,arrangeTitle:`Düğümleri kullanılabilir ekrana sığacak şekilde düzenle`,feed:`Akış`,feedTitle:`Canlı etkinlik akışını aç/kapat`,broadcast:`Yayınla`,broadcastTitle:`Bu projedeki her canlı oturuma mesaj yayınla`,broadcastToAll:`Tüm oturumlara yayınla`,broadcastPlaceholder:`Bu projedeki her canlı aracıya mesaj gönder…`,broadcastSendHint:`göndermek için ⌘/Ctrl+Enter`,openFullView:`Tam işlem görünümünü aç`,rowStatus:`Durum`,rowModel:`Model`,rowTool:`Araç`,rowIterations:`Yinelemeler`,rowToolCalls:`Araç çağrıları`,rowTokensIn:`Girdi tokenleri`,rowTokensOut:`Çıktı tokenleri`,rowTokensTotal:`Toplam token`,rowContext:`Bağlam`,rowCost:`Maliyet`,rowLastSeen:`Son görülme`,rowSurface:`Yüzey`,rowBranch:`Dal`,rowPid:`PID`,rowDir:`Dizin`,rowAgents:`Aracılar`,rowUptime:`Çalışma süresi`,rowConnections:`Bağlantılar`,rowTotalMessages:`Toplam mesaj`,rowUnread:`Okunmamış`,recent:`Son`,noSubject:`(konusuz)`,fullOperationStream:`Tam işlem akışı`,closeEsc:`Kapat (Esc)`,idleDesk:`Boş masa`,fleetHqLabel:`Filo Karargahı`,clientsSuffix_one:`{{count}} istemci`,clientsSuffix_other:`{{count}} istemci`,taskFallback:`görev`,controlLabel:`kontrol`},xe={installTitle:`Beceri yükle`,createTitle:`Beceri oluştur`,exportTitle:`Tüm becerileri .zip olarak dışa aktar`,checkUpdatesTitle:`Güncellemeleri kontrol et (tüm beceriler)`,searchPlaceholder:`Beceri ara…`,loading:`Yükleniyor…`,noSkills:`Yüklü beceri yok`,noMatch:`Filtreyle eşleşen beceri yok`,noDescription:`Açıklama yok`,scopeForeign:`Yabancı`,installHeading:`Beceri Yükle`,installHint:`Bir GitHub depo referansı (owner/repo) veya tam URL girin.`,installPlaceholder:`örn. wrongstack/skill-name veya https://github.com/owner/repo`,installScope:`Yükleme kapsamı:`,installBtn:`Yükle`,installedMsg:`Yüklendi: {{names}}`,installFailed:`Yükleme başarısız`,createHeading:`Beceri Oluştur`,createHint:`Yeni beceri iskeleti. İlk satır tetikleyicidir; ek satırlar açıklamayı oluşturur.`,nameLabel:`Ad`,namePlaceholder:`örn. benim-yeni-becerim`,descLabel:`Açıklama / Tetikleyici`,descPlaceholder:`Bu beceriyi <tetikleyici durumu> olduğunda kullan.
4
+ Arayüzü bağla`,splitInto:`Alt görevlere böl`,deleteTitle:`Bu başlatılmamış görevi çalışmadan kaldır`},pe={phaseStart:`Başlat`,phaseInterview:`Görüşme`,phaseSpecReview:`Spec İncelemesi`,phasePlanning:`Planlama`,phaseTaskReview:`Görev İncelemesi`,phaseRunning:`Çalışıyor`,phaseDone:`Tamamlandı`,titleFallback:`Yeni SDD Projesi`,questionsSuffix:`{{cur}}/{{max}} soru`,tasksSuffix:`{{count}} görev`,runCfgTitle:`Çalıştırma yapılandırması — varsayılan model + yedek zinciri`,modelsLabel:`Modeller`,startRun:`Çalışmayı Başlat`,defaultWorkerModel:`Varsayılan işçi modeli`,leaderDefaultPlaceholder:`Lider / oturum varsayılanı`,useSessionDefault:`Oturum varsayılanını kullan`,fallbackChain:`Yedek zinciri`,appliesToAll:`Her göreve uygulanır. Çalışma başladıktan sonra canlı panodan görev başına geçersiz kılın.`,parallelAgents:`Paralel aracılar`,isolateWorktrees:`Git worktree'lerinde yalıt`,worktreeOn:`Her görev kendi worktree'sinde çalışır, tamamlandığında squash-merge edilir.`,worktreeOff:`Görevler doğrudan mevcut dalda çalışır (yalıtım yok).`,planDecompose:`Büyük görevleri otomatik böl`,planDecomposeOn:`Dağıtımdan önce atomiklik motorunun çok büyük işaretlediği görevleri böler.`,planDecomposeOff:`Onaylı görev grafiğini olduğu gibi bırakır (görev başarısız olursa çalışma sırasında yine de bölünebilir).`,goalPrompt:`Ne inşa etmek istiyorsunuz?`,goalPlaceholder:`örn. Oturum yönetimiyle OAuth girişi (Google + GitHub) ekle`,startingInterview:`Görüşme başlatılıyor…`,startInterview:`Görüşmeyi Başlat`,introBody:`Yalıtılmış bir aracı, bir spec oluşturmak için sizinle görüşme yapar, bunu bağımlılık sıralı bir görev grafiğine ayırır, ardından gerçek bir çok aracılı filo yürütür — panoda canlı izleyin. Yenilerseniz veya yeniden başlatırsanız görüşme otomatik sürer.`,taskGraphSummary:`Görev grafiği · {{count}} görev, bağımlılık sıralı`,dragToExplore:`keşfetmek için sürükle`,show:`göster`,goalLabel:`Hedef`,implementationPlan:`Uygulama planı`,approveSpec:`Spec'i onayla → uygulamayı planla`,approveTasks:`Görevleri onayla`,approvePlan:`Planı onayla`,answerPlaceholder:`Soruyu cevapla…`,changePlaceholder:`Değişiklik iste…`,resumeBanner:`Önceki oturumdan görüşme sürdürüldü — kaldığınız yerden devam edin.`,openLiveBoard:`Canlı panoyu aç`,discardInterview:`Vazgeç ve baştan başla`,discardTitle:`Bu görüşmeyi terk et ve kaydedilmiş oturumu temizle`},me={emptyDir:`boş`,loadFailed:`Dosyalar yüklenemedi: {{error}}`,expandAllTitle:`Tüm dizinleri genişlet`,expandAll:`Tümünü genişlet`,collapseAllTitle:`Tüm dizinleri daralt`,collapse:`Daralt`,folders_one:`{{count}} klasör`,folders_other:`{{count}} klasör`,currentDirTitle:`Mevcut dizin: {{path}}`,navigateToTitle:`{{path}} konumuna git`,filesSuffix_one:`{{count}} dosya`,filesSuffix_other:`{{count}} dosya`,goToDir:`dizine git`,navigateParentTitle:`{{path}} dosyasının üst dizinine git`,parentDirectory:`üst dizin`,noFiles:`Dosya bulunamadı`,copyAbsPath:`Mutlak yolu kopyala`,copyRelPath:`Göreli yolu kopyala`,openInTerminal:`Terminalde aç`,openInFileManager:`Dosya yöneticisinde aç`,mentionInChat:`Sohbette bahset`,copyPath:`Yolu kopyala`},he={sendSelectionAction:`Seçimi sohbete gönder`,noFilesOpen:`Açık dosya yok`,selectToEdit:`Düzenlemeye başlamak için gezginden bir dosya seçin`,sendSelectedTitle:`Seçili satırları sohbete gönder`,mentionFileTitle:`Bu dosyayı sohbette bahset`,sendToChat:`Sohbete gönder`,mentionFile:`Dosyayı bahset`,loadingEditor:`Düzenleyici yükleniyor…`,selectTab:`İçeriğini görmek için bir sekme seçin`},ge={title:`Dosya aktivitesi`,overview:`Özet`,changes:`Değişiklikler`,context:`Bağlam`,logs:`Loglar`,memory:`Hafıza`,lines:`satır`,resizeHint:`Boyutlandırmak için sürükle · sıfırlamak için çift tıkla`,refresh:`Dosya kanıtlarını yenile`,evidenceCount_one:`{{count}} olay`,evidenceCount_other:`{{count}} olay`,lifetimeTitle:`Tüm geçmiş`,lifetimeChanges:`değişiklik`,lifetimeSessions:`oturum`,lifetimeTasks:`görev`,lifetimeBoards:`pano`,lifetimeSince:`{{date}} tarihinden beri`,lifetimeTools:`{{tools}} ile`,mutations30m:`Değişim · 30 dk`,sessions:`Session'lar`,actors:`Değiştirenler`,linkedWork:`İş bağlantıları`,workLinks:`Kanban / todo`,recentActivity:`Son dosya aktiviteleri`,events:`olay`,noEvidence:`Henüz bu dosyayla ilişkilendirilmiş aktivite yok.`,noSessions:`Henüz session eşleşmesi yok.`,noActors:`Henüz değiştiren kişi/süreç eşleşmesi yok.`,noWorkLinks:`Kanban, SDD veya todo bağlantısı kaydedilmemiş.`,taskOrTodo:`Task / todo`,loadingEvidence:`Dosya kanıtları yükleniyor…`,gitToBuffer:`Git HEAD → mevcut Monaco buffer`,savedToBuffer:`Son kayıt → mevcut Monaco buffer`,unsaved:`kaydedilmemiş buffer`,level:{quiet:`sakin`,active:`aktif`,churn:`yüksek churn`},analysisTitle:{quiet:`Yakın zamanda değişiklik trafiği yok`,active:`Bu dosya değiştiriliyor`,churn:`Tekrarlayan değişiklikler algılandı`},analysisBody:{quiet:`Son 30 dakikada ilişkilendirilmiş bir değişiklik kaydı yok.`,active:`Son 30 dakikada {{actors}} aktör ve {{sessions}} session üzerinden {{mutations}} değişiklik yapıldı.`,churn:`Yüksek churn: {{actors}} aktör ve {{sessions}} session üzerinden {{mutations}} değişiklik yapıldı. Sonraki düzenlemeden önce çakışan işleri kontrol et.`}},_e={loading:`Analitik yükleniyor…`,heading:`Analitik Panosu`,autoRefresh:`10 sn'de bir otomatik yenile`,liveSessions:`Canlı oturumlar`,agents:`Aracılar`,agentsActive:`{{count}} etkin`,totalEvents:`Toplam olay`,categoriesSub:`{{count}} kategori`,toolCalls:`Araç çağrıları`,iterationsSub:`{{count}} yineleme`,sessionCost:`Oturum maliyeti`,tokensSub:`{{input}} girdi / {{output}} çıktı`,sessionDuration:`Oturum süresi`,messagesSub:`{{count}} mesaj`,eventsByCategory:`Kategoriye göre olaylar`,noEvents:`Henüz kayıtlı olay yok.`,topEvents:`En çok olaylar`,activeSessionUsage:`Etkin oturum kullanımı`,provider:`Sağlayıcı`,model:`Model`,inputTokens:`Girdi tokenleri`,outputTokens:`Çıktı tokenleri`,cacheRatio:`Önbellek oranı`,filesRead:`Okunan dosya`,noSession:`Etkin oturum yok veya veri bekleniyor…`,healthErrors:`Sağlık & hatalar`,errorEvents:`Hata olayları`,warningEvents:`Uyarı olayları`,cacheHitRate:`Önbellek isabet oranı`,totalCategories:`Toplam kategori`,waitingData:`Veri bekleniyor…`,recentEvents:`Son olaylar`,noRecentEvents:`Yakın olay yok. Olay oluşturmak için arayüzle etkileşin.`},ve={heading:`Prompt kitaplığı`,searchPlaceholder:`Promptları ara…`,newPrompt:`+ Yeni prompt`,all:`Tümü`,recent:`🕘 Son`,favorites:`★ Favoriler`,noMatch:`Eşleşen prompt yok.`,newPromptHeading:`Yeni prompt`,titlePlaceholder:`Başlık *`,descPlaceholder:`Tek satır açıklama`,categoryPlaceholder:`Kategori`,tagsPlaceholder:`etiketler, virgül, ile ayrılmış`,contentPlaceholder:`Prompt içeriği * — değişkenler için {{name}} kullanın`,variables:`Değişkenler`,addVar:`+ değişken`,varNamePlaceholder:`ad`,varDescPlaceholder:`açıklama`,removeVarTitle:`Değişkeni kaldır`,required:`zorunlu`,multiline:`çok satırlı`,enumPlaceholder:`enum: a, b, c`,savePrompt:`Promptu kaydet`,saveFailed:`Prompt kaydedilemedi.`,titleContentRequired:`Başlık ve içerik zorunludur.`,toggleFavoriteTitle:`Favori değiştir`,selectOption:`— seç —`,fillMissing:`Doldur: {{missing}}`,insertIntoChat:`Sohbete ekle`,selectPromptHint:`Önizlemek ve eklemek için bir prompt seçin.`},ye={scopeProject:`Proje`,scopeGlobal:`Global`,scopeBundled:`Paketlenmiş`,timeoutError:`İstek zaman aşımına uğradı. Lütfen tekrar deneyin.`,updateFailed:`Güncelleme başarısız`,saveFailed:`Kaydetme başarısız`,uninstallFailed:`Kaldırma başarısız`,noSkillSelected:`Beceri seçilmedi`,selectSkillHint:`Belgelerini görmek için kenar çubuğundan bir beceri seçin`,goToChat:`Sohbete git`,openSourceRepo:`Kaynak repoyu aç`,copySourceUrl:`Kaynak URL'sini kopyala`,updatedLabel:`↑ Güncellendi: {{list}}`,upToDateLabel:`— Güncel: {{list}}`,errorsLabel:`✗ {{list}}`,checkUpdatesTitle:`Güncellemeleri kontrol et`,exportTitle:`Beceriyi .md olarak dışa aktar`,editTitle:`Beceriyi düzenle`,uninstallTitle:`Beceriyi kaldır`,closeTitle:`Kapat ve sohbete git`,backTitle:`Geri git`,forwardTitle:`İleri git`,relatedFiles:`İlgili dosyalar`,references:`Referanslar`,goToSkillTitle:`{{name}} becerisine git`,loadingContent:`Beceri içeriği yükleniyor…`,editingLabel:`Düzenleniyor {{name}}`,editStats:`{{lines}} satır · {{words}} kelime · {{chars}} karakter`,charsWarningFmt:`⚠ {{used}} MB / {{limit}} MB`,draftSaved:`Taslak kaydedildi`,draftRestored:`Taslak geri yüklendi`,discardDraft:`Taslağı sil`,splitViewTitle:`Bölünmüş görünüm`,hidePreviewTitle:`Önizlemeyi gizle`,contentPlaceholder:`Beceri içeriği (markdown)...`,loadFailed:`Beceri içeriği yüklenemedi`,noContent:`Beceri içeriği yok`,uninstallSkillHeading:`Beceriyi kaldır`,uninstallConfirm:`{{name}} kaldırılsın mı?`,uninstallRemovePath:`Bu, beceriyi {{path}} konumundan kaldırır ve geri alınamaz.`,uninstallAction:`Kaldır`},be={sessionStats:`Oturum istatistikleri`,clients:`İstemciler`,input:`Girdi`,output:`Çıktı`,cost:`Maliyet`,agentsSuffix:`aracı`,upPrefix:`{{time}} süredir`,webuiClient:`WebUI İstemcisi`,disconnected:`Bağlantı kesildi`,connected:`Bağlı`,tuiClient:`TUI İstemcisi`,terminal:`Terminal`,repl:`REPL`,coordinator:`KOORDİNATÖR`,fleetSummary:`Filo özeti`,toolCallsLabel:`Araç çağrıları`,tokensLabel:`Tokenler`,coordinatingFleet:`Filoyu koordine ediyor`,donePrefix:`✓ tamam ·`,failedPrefix:`✕ başarısız ·`,seenPrefix:`{{time}} önce görüldü`,availableDesk:`Müsait masa`,mailboxHub:`Posta Merkezi`,unreadSuffix_one:`{{count}} okunmamış`,unreadSuffix_other:`{{count}} okunmamış`,allClear:`Hepsi tamam`,total:`Toplam`,unreadLabel:`Okunmamış`,liveActivity:`Canlı etkinlik`,waitingActivity:`Etkinlik bekleniyor…`,now:`şimdi`,fleetHq:`WrongStack Filo Karargahı`,live:`CANLI`,legendStatus:`Durum`,legendActive:`Etkin`,legendIdle:`Boşta`,legendError:`Hata`,legendConnections:`Bağlantılar`,legendMail:`Posta`,legendTask:`Görev`,legendStatusConn:`Durum`,arrange:`Düzenle`,arrangeTitle:`Düğümleri kullanılabilir ekrana sığacak şekilde düzenle`,feed:`Akış`,feedTitle:`Canlı etkinlik akışını aç/kapat`,broadcast:`Yayınla`,broadcastTitle:`Bu projedeki her canlı oturuma mesaj yayınla`,broadcastToAll:`Tüm oturumlara yayınla`,broadcastPlaceholder:`Bu projedeki her canlı aracıya mesaj gönder…`,broadcastSendHint:`göndermek için ⌘/Ctrl+Enter`,openFullView:`Tam işlem görünümünü aç`,rowStatus:`Durum`,rowModel:`Model`,rowTool:`Araç`,rowIterations:`Yinelemeler`,rowToolCalls:`Araç çağrıları`,rowTokensIn:`Girdi tokenleri`,rowTokensOut:`Çıktı tokenleri`,rowTokensTotal:`Toplam token`,rowContext:`Bağlam`,rowCost:`Maliyet`,rowLastSeen:`Son görülme`,rowSurface:`Yüzey`,rowBranch:`Dal`,rowPid:`PID`,rowDir:`Dizin`,rowAgents:`Aracılar`,rowUptime:`Çalışma süresi`,rowConnections:`Bağlantılar`,rowTotalMessages:`Toplam mesaj`,rowUnread:`Okunmamış`,recent:`Son`,noSubject:`(konusuz)`,fullOperationStream:`Tam işlem akışı`,closeEsc:`Kapat (Esc)`,idleDesk:`Boş masa`,fleetHqLabel:`Filo Karargahı`,clientsSuffix_one:`{{count}} istemci`,clientsSuffix_other:`{{count}} istemci`,taskFallback:`görev`,controlLabel:`kontrol`},xe={installTitle:`Beceri yükle`,createTitle:`Beceri oluştur`,exportTitle:`Tüm becerileri .zip olarak dışa aktar`,checkUpdatesTitle:`Güncellemeleri kontrol et (tüm beceriler)`,searchPlaceholder:`Beceri ara…`,loading:`Yükleniyor…`,noSkills:`Yüklü beceri yok`,noMatch:`Filtreyle eşleşen beceri yok`,noDescription:`Açıklama yok`,scopeForeign:`Yabancı`,installHeading:`Beceri Yükle`,installHint:`Bir GitHub depo referansı (owner/repo) veya tam URL girin.`,installPlaceholder:`örn. wrongstack/skill-name veya https://github.com/owner/repo`,installScope:`Yükleme kapsamı:`,installBtn:`Yükle`,installedMsg:`Yüklendi: {{names}}`,installFailed:`Yükleme başarısız`,createHeading:`Beceri Oluştur`,createHint:`Yeni beceri iskeleti. İlk satır tetikleyicidir; ek satırlar açıklamayı oluşturur.`,nameLabel:`Ad`,namePlaceholder:`örn. benim-yeni-becerim`,descLabel:`Açıklama / Tetikleyici`,descPlaceholder:`Bu beceriyi <tetikleyici durumu> olduğunda kullan.
5
5
  Tetikleyiciler: kullanıcı "anahtar kelime", "başka" der.`,saveIn:`Kaydet:`,createBtn:`Beceri Oluştur`,createdMsg:`Oluşturuldu: {{name}}`,createFailed:`Oluşturma başarısız`},Se={noEvents:`Henüz olay yok.`},Ce={pickHint:`Bir kit seç — ajan buna uyacak.`,gallery:`Galeri`,galleryTitle:`Canlı önizleme galerisini aç`,stackTitle:`Hedef yığın`,loading:`Kitler yükleniyor…`,notFound:`Tasarım kiti bulunamadı.`,bestFor:`En uygun:`,light:`Açık`,dark:`Koyu`,tune:`İnce ayar`,font:`Yazı tipi`,set:`Uygula`,spaceGrotesk:`Space Grotesk…`,aaHeading:`Aa Başlık`,theQuickBrownFoxJumpsOver:`Pijamalı hasta yağız şoföre çabucak güvendi.`,primary:`Birincil`,ghost:`Şeffaf`,badge:`Rozet`,inputField:`Giriş alanı…`,radius:`Yarıçap`,density:`Yoğunluk`,motion:`Hareket`},we={detached:`(ayrık)`,count_one:`{{count}} worktree`,count_other:`{{count}} worktree`,baseSuffix:` · taban {{base}}`,baseLabel:`taban`,cleanOrphans:`Yetim olanları temizle`,cleanOrphansTitle:`Tüm yetim worktree'leri kaldır`,liveBusyTitle:`Bir çalışma canlı — önce durdurun`,rescanTitle:`Yeniden tara`,removed_one:`{{count}} worktree kaldırıldı.`,removed_other:`{{count}} worktree kaldırıldı.`,failed:`Başarısız`,mergedIntoBase:`{{branch}} tabana birleştirildi.`,conflictMerge:`{{branch}} birleştirilirken çakışma: {{files}}`,seeGit:`git'e bakın`,mergeFailed:`Birleştirme başarısız: {{reason}}`,unknownReason:`bilinmiyor`,mergeConfirmTitle:`{{branch}}, {{base}} ile birleştirilsin mi?`,mergeConfirmMsg:`Bu dalı taban dala squash-birleştirir. Çakışırsa temizce iptal eder.`,mergeAction:`Birleştir`,removeConfirmTitle:`{{branch}} kaldırılsın mı?`,removeConfirmMsg:`Worktree checkout'u zorla kaldırır ve dalını siler. Birleştirilmemiş iş kaybolur.`,empty:`Worktree yok.`,emptyHint:`SDD / Goal çalışmaları burada izole worktree'ler oluşturur. Çöken çalışmalardan yetimler de görünür.`,actOpenTerm:`Terminalde aç`,actOpenFolder:`Klasörü aç`,actViewChanges:`Değişiklikleri gör`,actMerge:`Tabana birleştir`,actRemove:`Kaldır / at`,live:`canlı`,noUncommitted:`İşlenmemiş değişiklik yok`,commitsAhead_one:`{{count}} commit önde`,commitsAhead_other:`{{count}} commit önde`,more:`…{{count}} daha`},Te={heading:`Ofis Haritası`,headingHint:`Filoğunuzu canlı ajan durumuyla bir ofis kat planı olarak görselleştirin.`,statAgents:`Ajanlar`,statMail:`Posta`,unreadSuffix:` okunmamış`,sectionView:`Görünüm`,sectionDisplay:`Görüntü`,sectionBackground:`Arka plan`,sectionRecent:`Son Etkinlik`,eventsTrackedSuffix:` olay izlendi`,recentHint:`Posta gönderimleri, ajan oluşumları ve durum değişiklikleri burada görünür.`,sectionShortcuts:`Kısayollar`,sectionLegend:`Açıklama`,hudLabel:`HUD`,hudDesc:`Gerçek zamanlı oturum istatistik katmanını göster`,hudToggle:`HUD'u aç/kapat`,minimapLabel:`Mini harita`,minimapDesc:`Genel mini haritayı göster`,minimapToggle:`Mini haritayı aç/kapat`,controlsLabel:`Kontroller`,controlsDesc:`Yakınlaştırma ve sığdırma kontrollerini göster`,controlsToggle:`Kontrolleri aç/kapat`,animateLabel:`Kenarları canlandır`,animateDesc:`Aktif bağlantılarda akışı canlandır`,animateToggle:`Kenar animasyonunu aç/kapat`,legendLabel:`Açıklamayı göster`,legendDesc:`Durum ve bağlantı açıklamasını görüntüle`,legendToggle:`Açıklamayı aç/kapat`,feedLabel:`Canlı akış`,feedDesc:`En son çapraz süreç etkinliklerinin alt şeridi`,feedToggle:`Canlı akışı aç/kapat`,fitView:`Sığdır`,zoomIn:`Yakınlaştır`,zoomOut:`Uzaklaştır`,resetZoom:`Yakınlaştırmayı sıfırla`,legendActive:`Aktif (çalışıyor)`,legendIdle:`Boşta`,legendError:`Hata`,legendOffline:`Çevrimdışı`,bg:{dots:`Noktalar`,lines:`Çizgiler`,cross:`Çapraz`,none:`Yok`}},Ee={liveProjectOffice:`Canlı proje ofisi`,agents:`ajan`,working:`çalışıyor`,toolCalls:`araç çağrısı`,office:`Ofis`,topology:`Topoloji`,officeDescription:`Canlı ajan masaları ve işler`,topologyDescription:`İstemciler, ajanlar ve bağlantılar`,team:`Ekip`,liveDesk:`Canlı masa ve gelen işler`,lastActions:`Son işler`,leadAgent:`Lider ajan`,agent:`Ajan`,callsCount:`{{count}} çağrı`,recent:`Son işlemler`,noCalls:`Henüz tamamlanan çağrı yok`,telemetryReconnect:`Araç geçmişi için bu terminali yeniden bağlayın`,thinking:`Düşünüyor`,waiting:`İş bekliyor`,preparing:`Sonraki eylemi hazırlıyor…`,deskReady:`Masa hazır`,toolCall:`Araç çağrısı`,execution:`Çalıştırma`,started:`Başlangıç`,duration:`Süre`,session:`Oturum`,target:`Hedef`,resultSize:`Sonuç boyutu`,lines:`satır`,bytes:`bayt`,tokens:`token`,input:`Girdi`,outputPreview:`Çıktı önizlemesi`,readyTitle:`Ofis hazır`,readyBody:`Ajanlar bu projeye katılır katılmaz masalarına oturacak.`,liveEvent:`canlı olay akışı`,connectedSessions_one:`{{count}} bağlı oturum`,connectedSessions_other:`{{count}} bağlı oturum`,detailHint:`tam girdi ve sonuç ayrıntısı için herhangi bir eyleme tıklayın`,officeBriefing:`Ofis brifingi`,leaderPrompt:`Liderin son aldığı prompt`,activeInstruction:`Aktif talimat`,telemetryWaiting:`Canlı talimat için bu terminali yeniden bağlayın`,syncWaiting:`senkron bekleniyor`,todoTelemetryWaiting:`Canlı todo listesi için bu terminali yeniden bağlayın`,taskNotReported:`Çalışıyor ancak görev açıklaması bildirilmedi`,noPrompt:`Bu oturumda henüz prompt alınmadı`,activeTodos:`Aktif yapılacaklar`,todoProgress:`{{done}}/{{total}} tamamlandı`,allTodosDone:`Tüm işler tamamlandı`,noActiveTodos:`Henüz aktif iş yok`,moreTodos:`+{{count}} iş daha`,currentTask:`Mevcut görev`,task:`Görev`,promptReceived:`Alınma zamanı`,todos:`Yapılacaklar`,todoStatus:{pending:`Bekliyor`,in_progress:`Devam ediyor`,completed:`Tamamlandı`},breakRoom:`Dinlenme odası`,onBreak:`{{count}} molada`,desksEmpty:`Herkes molada — masalar bir sonraki görev için hazır`,files:`DOSYA`,read:`OKUMA`,write:`YAZMA`,edit:`DÜZENLE`,term:`TERM`,live:`CANLI`,uniqueFilesTouched:`Dokunulan benzersiz dosyalar`,fileReads:`Dosya okumaları`,filesWritten:`Yazılan dosyalar`,filesEdited:`Düzenlenen dosyalar`,linesAddedAndRemoved:`Eklenen ve silinen satırlar`,terminalCommands:`Terminal komutları`,incomingAndOutgoingMail:`Gelen ve giden posta`,sessionActivityTotals:`Oturum etkinliği toplamları`,closeToolDetails:`Araç ayrıntılarını kapat`,closeDetails:`Ayrıntıları kapat`,closeMailDetails:`Posta ayrıntılarını kapat`,closeTaskDetails:`Görev ayrıntılarını kapat`,closeOfficeBriefing:`Ofis brifingini kapat`,priority:`Öncelik`,route:`Yol`},De={injectedHeading:`SAGE belleği eklendi`,memoriesLabel_one:`{{count}} anı`,memoriesLabel_other:`{{count}} anı`},Oe={tabProject:`SDD Projesi`,tabBoard:`Canlı SDD Panosu`,tabSpecs:`Spesifikasyonlar`},ke={label:`Yan panel`},Ae={deleteTitle:`Bu bellek silinsin mi?`,backToList:`Bellek listesine dön`,copyId:`Bellek kimliğini kopyala`,deletedMemory:`Silinmiş bellek`,anchorCursorHint:`İmleç satır aralığı bu belleğin bağlayıcısıyla eşleşiyor`,statusDeleted:`silinmiş`,statusSuperseded:`üzerine yazılmış`,restoreTitle:`Bu belleği etkin duruma geri yükle`,supersededJumpTitle:`Bu sürüm üzerine yazıldı — etkin sürüme atla`,acceptSuggestionTitle:`Hijyenin silme önerisini kabul et — bellek unutulacak`,rejectSuggestionTitle:`Öneriyi reddet — bellek olduğu gibi kalır ve daha sonra yeniden önerilebilir`,updateTitle:`Belleğin içeriğini güncelle — sürümleme yeni bir etkin kayıt oluşturur`,promoteTitle:"`permanent` konumuna yükselt — hijyen bunu bir daha göstermez",openRecordTitle:`Kaydın tamamını MemoryManager'da aç`,fileDrawerAria:`Dosya bellek çekmecesi`,requeryTitle:`Bu dosyayı yeniden sorgula`,closeDrawerAria:`Çekmeceyi kapat`,closeDrawerTitle:`Bellek çekmecesini kapat`,showRecoverable:`Kurtarılabilirleri göster (silinmiş)`,cursorBoostTitle:`İmleç güçlendirmesi`,fileScopedTitle:`Dosya kapsamlı`,mentionedInTitle:`Bahsedilen`,editorKnowledge:`Bilgi`,editorContentPlaceholder:`Örnek: WebUI durumu Zustand depolarına aittir; sunucu mesajları bu depoları tekil WebSocket işleyicileri aracılığıyla günceller.`,editorImportance:`Önem`,editorConfidence:`Güven`,editorFreshness:`Tazelik`,editorAnchors:`Bağlayıcılar`,editorSymbolPlaceholder:`Sembol adı`,editorRelationships:`İlişkiler`,searchAria:`Bellekleri ara`,searchPlaceholder:`İçerik, kimlik, etiket, bağlayıcı ara…`,clearSearchAria:`Aramayı temizle`,audienceFilterAria:`Yalnızca hedef kitle kapsamlıyı filtrele`,audienceFilterTitle:`Yalnızca hedef kitle kapsamlı bellekleri göster`,clearFiltersAria:`Tüm filtreleri temizle`,clearFiltersTitle:`Tüm filtreleri temizle`,allStatuses:`Tüm durumlar`,allKinds:`Tüm türler`,tagsLabel:`Etiketler`,popularTags:`Popüler etiketler`,graphAria:`Bellek ilişki grafiği`,graphFullscreenAria:`Tam ekran grafiği aç`,clearTracesTitle:`Tüm izleri temizle`,closePanelTitle:`Paneli kapat`,traceMatched:`eşleşti`,traceInjected:`eklendi`,traceFiltered:`filtrelendi`,traceActive:`etkin`,traceExited:`çıktı`,traceScore:`puan`,traceError:`hata`,lifecycleAria:`Bellek yaşam döngüsü canlı günlüğü`,listAria:`Bellekler`,emptyTitle:`Projenizin uzun vadeli bağlamı`,emptyVerifiedAnchors:`Doğrulanmış bağlayıcılar`,emptyTypedRelations:`Tipli ilişkiler`,emptyAgentRecall:`Ajan hatırlaması`,lensesAria:`SAGE bellek mercekleri`,loadingSage:`SAGE yükleniyor`,loadingAudience:`Hedef kitle bellekleri yükleniyor`,storeUnavailable:`Bellek deposu kullanılamıyor`,backToChat:`Sohbete dön`,sageHeading:`SAGE`,refreshAria:`Bellekleri yenile`,tabMemories:`Bellekler`,tabActive:`Etkin`,tabNeedsReview:`İnceleme gerekiyor`,tabGraphEdges:`Grafik kenarları`,libraryAria:`Bellek kitaplığı`,viewAria:`Bellek görünümü`,detailAria:`Bellek ayrıntısı`,fileForDrawerAria:`Bellek çekmecesi için dosya`,cursorLabel:`imleç`,reviewLabel:`inceleme`,hygieneReviewTitle:`Hijyen incelemesi: {{reason}} ({{days}} gün önce)`,updatedSuffix:`{{date}} tarihinde güncellendi`,actionRecover:`Kurtar`,actionGoToActive:`Etkin sürüme git`,actionAcceptDeletion:`Silme İşlemini Kabul Et`,actionKeep:`Tut`,actionUpdate:`Güncelle`,actionMarkPermanent:`Kalıcı Olarak İşaretle`,actionShowFull:`Tamamını göster`,itemLabel:`bellek`,noFile:`(dosya yok)`,memoriesCount_one:`{{count}} bellek`,memoriesCount_other:`{{count}} bellek`,pendingReviewCount_one:`{{count}} bekleyen inceleme`,pendingReviewCount_other:`{{count}} bekleyen inceleme`,supersededCount:`{{count}} üzerine yazıldı`,linesRange:`satır {{start}}–{{end}}`,emptyOpenFile:`Belleklerini görmek için bir dosya açın.`,loadingMemories:`Bellekler yükleniyor…`,errorPrefix:`Hata: {{message}}`,emptyNoMemories:`{{file}} dosyasına henüz bellek eklenmemiş.`,pendingAccepting:`kabul ediliyor…`,pendingKeeping:`tutuluyor…`,pendingUpdating:`güncelleniyor…`,pendingMarking:`işaretleniyor…`,pendingRecovering:`kurtarılıyor…`,deletedNeverPolicy:`Bu kayıt yalnızca denetim içindir ve mutlak bir yasak taşır: asla LLM bağlamına giremez.`,deletedEligiblePolicy:`Kayıt etkin değil ve düzenlenemez, ancak getirme ilgili bulduğunda tarihsel kanıt olarak uygun kalır.`,deletingLabel:`Siliniyor…`,actionDeleteMemory:`Belleği sil`,copiedNotice:`Bellek kimliği kopyalandı.`,revisionSuffix:`revizyon {{n}}`,memoryRelationships:`Bellek ilişkileri`,captureMemory:`Bir bellek yakala`,editMemory:`Belleği düzenle`,editorCreateHint:`Alma meta verileriyle kalıcı bilgi ekleyin.`,editorEditHint:`Geçmişi kaybetmeden içeriği güncelleyin.`,createMemory:`Bellek oluştur`,saveChanges:`Değişiklikleri kaydet`,addAnchor:`Bağlayıcı ekle`,noAnchors:`Henüz bağlayıcı yok — alma hassasiyetini artırmak için bir tane ekleyin`,loadingGraph:`gerçek grafik yükleniyor…`,graphStats:`{{nodes}} düğüm · {{edges}} kenar`,lifecycleHeading:`Bellek yaşam döngüsü`,statusWaiting:`bekleniyor`,statusLive:`canlı · {{count}}/100`,noMatching:`Eşleşen bellek yok`,buildGraph:`Bellek grafiğinizi oluşturun`,clearFilters:`Filtreleri temizle`,createFirst:`İlk belleği oluştur`,captureButton:`Bellek yakala`,memoryCaptured:`Bellek yakalandı.`,memoryUpdated:`Bellek güncellendi.`,liveStore:`canlı depo`,reconnecting:`yeniden bağlanılıyor`,newMemory:`Yeni bellek`,hideFileDrawer:`Dosya bellek çekmecesini gizle`,showFileDrawer:`Dosya bellek çekmecesini göster`,hideDrawer:`Çekmeceyi gizle`,showDrawer:`Çekmeceyi göster`,editorCharCount:`{{count}} karakter`,editorContentLabel:`Bellek içeriği`,editorKind:`Tür`,editorScope:`Kapsam`,editorLifecycleStatus:`Yaşam döngüsü durumu`,editorSupersedes:`Yerini alır`,editorContradicts:`Çelişir`,filterByStatus:`Duruma göre filtrele`,filterByKind:`Türe göre filtrele`,graphHeading:`İlişki haritası`,graphHeadingFull:`İlişki haritası — {{id}}`,graphOpenFullscreen:`Tam ekran aç`,projectKnowledge:`proje bilgisi`,sageSubtitle:`Ajan oturumlarında kullanılan kalıcı bağlamı inceleyin, bağlayın, düzenleyin ve emekliye ayırın.`,emptyBody:`Meta verilerini ve ilişki grafiğini incelemek için bir bellek seçin veya gelecekteki ajanların otomatik alması gereken bilgiyi yakalayın.`,tabDeleted:`Silinen`,fileDrawerLabel:`Dosya çekmecesi`,selectFilePlaceholder:`— bir dosya seçin —`,memoryCountSummary:`{{total}} bellekten {{shown}} tanesi`,updatedSortLabel:`güncellendi ↓`,tabAllMemories:`Tüm bellekler`,tabAllMemoriesHint:`İncele, düzenle, emekliye ayır`,tabAudience:`Hedef kitleye özel`,tabAudienceHint:`Ajanlara yönlendirilen rehberlik`,editorRelationshipsHint:`Tam bellek kimliklerine başvurun. İlişkiler doğrulanır ve grafik kenarları SAGE tarafından yeniden oluşturulur.`,editorTaskTypes:`Görev türleri`,createAction:`Oluştur`,mutationTimeout:`{{verb}} zaman aşımına uğradı. Taslağınız hâlâ burada.`,loadingSageContent:`SAGE içeriği yükleniyor`,injectorActiveInContext:`Bağlamda etkin`,injectorInjectionHistory:`Enjeksiyon geçmişi`,injectorContextTransitions:`Bağlam geçişleri`,metaCreated:`Oluşturuldu`,metaUpdated:`Güncellendi`,metaLastAccessed:`Son erişim`,metaLastVerified:`Son doğrulama`,referencedUnavailable:`Başvurulan bellek kullanılamıyor`,emptyFiltered:`Filtreleri değiştirin veya arama sorgusunu temizleyin.`,emptyCapture:`Her ajan için kalıcı olguları, kararları, kuralları ve dosyaya bağlı notları yakalayın.`,memoryUnavailable:`Bellek kullanılamıyor ya da kaldırılmış.`,staleConflicts:`bayat + çakışma`},je={enableLayer:`Bu sınır katmanını etkinleştir`,outsideScope:`Kapsam dışı`,askPermission:`İzin iste`,alwaysBlock:`Her zaman engelle`,allow:`İzin ver`,allowSelectors:`İzin seçicileri`,denySelectors:`Engel seçicileri`,crossPathSelectors:`“İzin ver” kabuğu opaktır ve çapraz yol seçicilerini geçebilir.`,removeLayer:`Katmanı kaldır`,taskInspector:`Görev denetçisi`,task:`Görev`,dispatched:`Dağıtıldı`,collapseDetails:`Görev ayrıntılarını daralt`,taskBoundary:`Görev sınırı`,title:`Başlık`,managedStage:`Yönetilen aşama`,status:`Durum`,priority:`Öncelik`,type:`Tür`,labelsCommaSeparated:`Etiketler (virgülle ayrılmış)`,dueDatePlaceholder:`Bitiş tarihi (ISO veya YYYY-MM-DD)`,estimatedHours:`Tahmini saat`,actualHours:`Gerçek saat`,selectBlockingTasks:`Engelleyen görevleri seç…`,selectSequentialChain:`Sıralı zincire görev ekle…`,enforceChainOrder:`Zincir sırasını bağımlılık olarak uygula`,assignmentReason:`Değişiklik / atama nedeni (etkinliğe kaydedilir)`,managedLifecycle:`Yönetilen yaşam döngüsü geçişi`,kanbanAgentTransition:`Kanban Ajanı geçişi`,completedAction:`Tamamlanan eylem / inceleyen eylemi`,progressComment:`Doğru ilerleme yorumu (zorunlu)`,evidenceUrl:`Kanıt ek URL'si`,source:`Kaynak`,taskId:`Görev kimliği`,run:`Çalıştır`,column:`Sütun`,primaryModelSource:`Birincil model kaynağı`,selectProviderModel:`Tam sağlayıcı / model seç…`,fallbackProfile:`Yedek profil (ilk model birincildir)`,selectProfile:`Yapılandırılmış profil seç…`,fallbackModels:`Yedek modeller`,addFallbackModel:`Yedek model ekle…`,role:`Rol`,selectRole:`Bir rol seç…`,assignSkills:`Gerekli yetenekleri ata…`,restrictTools:`Belirli araçlarla sınırla…`,agentNameOptional:`Ajan adı (isteğe bağlı)`,retryPolicy:`Yeniden deneme politikası`,maxAttempts:`Maksimum deneme`,costCeilingUsd:`Maliyet tavanı USD`,grantCapability:`Bir yetenek tanı…`,targetBoard:`Hedef pano`,boardPresence:`Pano mevcudiyeti`,liveBoardUsers:`Canlı pano kullanıcıları`,kanbanAgent:`Kanban Ajanı`,watchThisBoard:`Bu panoyu izle`,supervisorEngine:`Denetleyici motoru`,kanbanAgentModelSource:`Kanban Ajanı model kaynağı`,supervisorSkills:`Denetleyici yetenekleri`,forceLoadSkills:`Ajan yeteneklerini zorla yükle…`,extraFallbackModels:`Ek yedek modeller`,optionalFallbacks:`İsteğe bağlı sıralı yedekler…`,queueHealth:`Kuyruk durumu`,claimableTasks:`Talep edilebilir görevler`,runningAssignments:`Çalışan atamalar`,inReview:`İncelemede`,manuallyBlocked:`Manuel engellendi`,failedTasks:`Başarısız görevler`,blockedByDeps:`Bağımlılıklar nedeniyle engellenen hazır/bekleyen görevler`,expiredLeases:`Süresi dolmuş kira atamaları`,healthy:`sağlıklı`,costCeilingSum:`Çalışan/kuyruktaki görevler için costCeilingUsd toplamı`,liveRunSteer:`Canlı çalışma — buradan yönlendirin`,openLiveRun:`Canlı çalışma görünümünü aç (SDD Hub)`,runAsLiveJob:`Bu panoyu canlı ajan işi olarak çalıştır:`,startAsGoal:`Hedef olarak başlat`,startAsSdd:`SDD olarak başlat`,runControls:`Çalıştırma kontrolleri`,workerModel:`İşçi modeli`,setModelForTask:`Bu görev için model ayarla…`,newWorkerName:`Yeni işçi adı`,duration:`Süre`,liveRun:`Canlı çalışma`,lastResult:`Son sonuç`,definitionOfDone:`Tamamlanma tanımı`,failingChecks:`Başarısız kontroller`,evidenceMissing:`Eksik kanıt (destekleyici referansı olmayan ajan/konsey kontrolleri)`,needsDecomposition:`Ayrıştırma gerekli`,decompositionPending:`Onay bekleyen ayrıştırma önerileri`,noOutstanding:`Bu panoda bekleyen doğrulama veya ayrıştırma sorunu yok.`,kanban:`Kanban`,newBoard:`Yeni pano`,createBoard:`Pano oluştur`,deleteTask:`Görevi sil`,runFailed:`çalıştırma başarısız`,splitPendingApproval:`bölme onay bekliyor`,newTask:`Yeni görev`,addTask:`Görev ekle`,newColumn:`Yeni sütun`,addColumn:`Sütun ekle`,duplicateBoard:`Panoyu çoğalt`,confirmDelete:`Emin misiniz?`,confirmDeleteBoard:`Panoyu silmeyi onaylamak için tekrar tıklayın`,deleteBoard:`Panoyu sil`,boardBoundary:`Pano sınırı`,noBoardSelected:`Kanban panosu seçilmedi.`,expandDetails:`Görev ayrıntılarını genişlet`,elapsed:`Geçen süre`,assigned:`Atandı`,configuredAgentRoute:`yapılandırılmış ajan rotası`,subagent:`Alt ajan`,checkedAgo:`{{ago}} önce kontrol edildi`,notChecked:`kontrol edilmedi`,auditInterval:`Denetim aralığı (saniye)`,statusReady:`hazır`,statusRunning:`çalışıyor`,statusReview:`incelemede`,statusBlocked:`engellendi`,statusFailed:`başarısız`,statusBlockedByDeps:`bağımlılıklar engelledi`,statusStale:`bayat`,runningCost:"~${{cost}} çalışan maliyet",actionPause:`Duraklat`,actionResume:`Sürdür`,actionRetryFailed:`Başarısızları yeniden dene`,actionStop:`Durdur`,actionReassign:`Yeniden ata`,actionRunNow:`Şimdi çalıştır`,deleteTaskAria:`Görevi sil: {{title}}`,confirmDeleteTask:`Görevi silmeyi onaylamak için tekrar tıklayın`,confirmDeleteTaskAria:`Silmeyi onayla: {{title}}`,moveTaskToColumn:`{{title}} sütununa taşı`,activityNoteTemplate:`{{action}} WebUI'dan {{target}} adresine.`},Me={heading:`Zamanlanmış Görevler`,subtitle:`Cron eklentisi tarafından yönetilen zamanlanmış yinelenen görevler.`,statusDisabled:`Devre dışı`,statusOverdue:`Gecikmiş`,statusActive:`Etkin`,jobCount_one:`{{count}} görev`,jobCount_other:`{{count}} görev`,enabledCount:`{{count}} etkin`,overdueCount:`{{count}} gecikmiş`,totalRuns:`toplam {{count}} çalıştırma`,maxConcurrent:`en fazla {{count}} eşzamanlı`,emptyTitle:`Zamanlanmış görev yok.`,emptyUse:`Eklemek için`,emptyToAdd:`kullanın.`,thStatus:`Durum`,thName:`Ad`,thInterval:`Aralık`,thRuns:`Çalıştırma`,thNextRun:`Sonraki Çalıştırma`,thLastRun:`Son Çalıştırma`,thAction:`Eylem`,lastFiredAtTitle:`Son tetiklenme: {{time}}`,footerUse:`Eklemek için`,footerToAdd:`kullanın,`,footerToRemove:`kaldırmak için kullanın.`},Ne={refreshRosterData:`Roster verilerini yenile`,liveEmpty:`Alt ajanlar oluştuğunda ajanlar burada görünür`,fleetInspector:`Filo Denetçisi`,openAgentsPanel:`Ajanlar panelini aç`,toolCalls:`Araç Çağrıları`,running:`Çalışıyor`,projectAgents:`Proje Ajanları`,createOrCloneTitle:`Proje Ajanı Oluştur veya Klonla`,createOrCloneHint:`Herhangi bir roster ajanını şablon olarak devral, ardından bağımsız bir kimlik, çalışma zamanı politikası ve öğrenilmiş geçmiş geliştir.`,cloneFromRole:`Roster rolünden klonla`,cloneHint:`İstem, araçlar, beceriler ve varsayılanlar devralınır. Öğrenme ve sonraki düzenlemeler yeni ajana özgü kalır.`,displayName:`Görünür ad`,descriptionPlaceholder:`Bu proje için X, Y ve Z iş akışlarına sahip ol ve sonuçlarını doğrula.`,creating:`Oluşturuluyor…`,noCustomizations:`Henüz özelleştirme yok`,selectAgentEmpty:`Özelleştirmeleri düzenlemek için bir ajan seç`,saving:`Kaydediliyor…`,saveFailed:`Kaydetme başarısız`,failed:`Başarısız`,learningResumed:`Otomatik öğrenme yeniden başlatıldı`,optimizationEmptyToast:`Optimizasyon boş bir sonuç üretti. Tekrar deneyin.`,noActiveModelToast:`Sunucuda etkin model yok. Optimizasyon sohbet ajanına gönderildi.`,learningsEmpty:`Ajanlar çıktı yakaladığında öğrenme kayıtları görünür`,allRosterAgents:`Tüm Roster Ajanları`,optimizing:`Optimize ediliyor…`,paused:`duraklatıldı`,selectLearningAgent:`Öğrenme ayrıntılarını görüntülemek için bir ajan seç`,learningOn:`Öğrenme açık`,lastCapture:`Son Yakalama`,lifetimeCaptures:`Toplam Yakalama`,learningsLimitExceeded:`Öğrenilen veriler yumuşak sınırı aşıyor ({{bytes}}B / 8.192B). Ham kayıtları tek bir belgede birleştirmek ve bağlam hacmini azaltmak için optimize et.`,newPending:`yeni bekleyen`,viewAction:`Görüntüle`,applying:`Uygulanıyor…`,searchPlaceholder:`Ajanları ada, role veya açıklamaya göre ara…`,maxIterations:`Maks. Yineleme`,maxToolCalls:`Maks. Araç Çağrısı`,projectCustomizations:`Proje Özelleştirmeleri`,learnedEntries:`öğrenilmiş kayıt`,teachFailed:`Öğretme başarısız`,selectRoleEmpty:`Denetlemek veya düzenlemek için bir rol seç`,captureLearned:`Öğrenileni yakala`,teachThisAgent:`Bu ajana öğret`,teachPlaceholder:`Bu ajanın neyi daha iyi yapmasını istediğini açıkla… örn. 'Bu ajan öneride bulunmadan önce her zaman npm'den sürümleri doğrulamalı'`,heading:`Ajan Kadrosu`,headerSummary:`{{customized}} özelleştirildi · {{entries}} öğrenilen kayıt`,tabLive:`Canlı Filo`,tabCatalog:`Kadro Kataloğu`,tabLearning:`Kendi Kendine Öğrenme`,tabCustomize:`Özelleştirme`,learning:`öğreniyor`,learningPaused:`Öğrenme duraklatıldı`,autoLearningPaused:`Otomatik öğrenme duraklatıldı`,toolsCount_one:`{{count}} araç`,toolsCount_other:`{{count}} araç`,maxItShort:`en fazla {{value}} yineleme`,customizedBadge:`Özelleştirilmiş`,needsSummary:`⚠ Özet gerekiyor`,timeout:`Zaman aşımı`,learnedEntriesCount_one:`{{count}} öğrenilen kayıt`,learnedEntriesCount_other:`{{count}} öğrenilen kayıt`,sessionCapturesCount_one:`{{count}} oturum yakalaması`,sessionCapturesCount_other:`{{count}} oturum yakalaması`,noAgentsMatch:`"{{query}}" ile eşleşen ajan yok`,footerRosterRoles_one:`kadro rolü`,footerRosterRoles_other:`kadro rolü`,footerCustomized:`özelleştirilmiş`,footerTotalLearned_one:`toplam öğrenilen kayıt`,footerTotalLearned_other:`toplam öğrenilen kayıt`,clone:`+ Klonla`,abc:`ABC`,abcGeneratedFromName:`abc (addan üretilir)`,roleIdOptional:`Rol kimliği (isteğe bağlı)`,purpose:`Amaç`,taskTypesCommaOrOnePer:`Görev türleri (virgülle veya satır başına bir tane)`,cancel:`İptal`,selectAnAgentToEditCustomizations:`Özelleştirmeleri düzenlemek için bir ajan seçin`,llmImprove:`LLM ile İyileştir`,reset:`Sıfırla`,editIdentityMd:`identity.md dosyasını düzenle`,editLearnedMd:`learned.md dosyasını düzenle`,editConfigJson:`config.json dosyasını düzenle`,runtimePolicy:`Çalışma zamanı ilkesi`,retry:`Yeniden dene`,noSelfLearningDataYet:`Henüz kendi kendine öğrenme verisi yok`,review:`gözden geçir →`,selectAnAgentToViewLearning:`Öğrenme ayrıntılarını görmek için bir ajan seçin`,entries:`Kayıtlar`,size:`Boyut`,optimizeLearnings:`Öğrenilenleri Optimize Et`,keep:`Tut`,drop:`At`,describeACommandPatternOrBehavior:`Bu ajanın hatırlamasını istediğiniz bir komutu, deseni veya davranışı açıklayın.`,eGAlwaysUsePnpmForThisProject:`örn. Bu projede her zaman pnpm kullan`,teach:`Öğret`,noActiveFleetAgents:`Etkin filo ajanı yok`,clear:`Temizle`,agentsTotal:`toplam ajan`,leader:`Lider`,iterations:`Yinelemeler`,cost:`Maliyet`,context:`Bağlam`,contextWindow:`Bağlam Penceresi`,error:`Hata`,filterAll:`Tümü ({{count}})`,filterRunning:`Çalışan ({{count}})`,filterDone:`Biten ({{count}})`,filterFailed:`Başarısız ({{count}})`,optimizeAll:`Tümünü Optimize Et ({{count}})`,policyUpdateFailed:`İlke güncellemesi başarısız oldu`,noRawEntries:`Optimize edilecek ham kayıt yok.`,optimizedOk:`Optimize edildi. Birleştirilmiş bilgi güncellendi.`,emptySynthesis:`Model boş bir sonuç döndürdü. Hiçbir şey değişmedi — tekrar deneyin.`,consolidatedWithModel:`Öğrenilenler {{model}} ile birleştirildi.`,consolidatedPlain:`Öğrenilenler birleştirildi.`,resetConfirm:`"{{role}}" ajanı için tüm projeye özel veriler sıfırlansın mı?`,loadCustomizationFailed:`Özelleştirme yüklenemedi`,loadRuntimePolicyFailed:`Çalışma zamanı ilkesi yüklenemedi`,runtimePolicySaveFailed:`Çalışma zamanı ilkesi kaydedilemedi`,llmImprovementFailed:`LLM iyileştirmesi başarısız oldu`,agentCreationFailed:`Ajan oluşturulamadı`,noActiveModelMsg:`Sunucuda etkin model yok — optimizasyon bunun yerine sohbet ajanına gönderildi.`,optimizationFailed:`Optimizasyon başarısız oldu`,bulkOptimizationFailed:`Toplu optimizasyon başarısız oldu`,taskTypesPlaceholder:`X iş akışı
6
6
  Y analizi
7
7
  Z doğrulaması`},Pe={generic:{name:`Genel Proje Ajanı`,summary:`Bağımsız öğrenen proje rollerine klonlanabilen esnek şablon.`},"audit-log":{name:`Denetim Günlüğü`,summary:`Oturum günlüklerini, olay akışlarını ve sistem izlerini analiz eder.`},"bug-hunter":{name:`Hata Avcısı`,summary:`Kodu hatalar, kod kokuları ve anti-desenler için tarar.`},"refactor-planner":{name:`Yeniden Düzenleme Planlayıcısı`,summary:`Kod yapısını analiz eder ve aşamalı yeniden düzenleme planları üretir.`},"security-scanner":{name:`Güvenlik Tarayıcısı`,summary:`Kodu, yapılandırmaları ve bağımlılıkları güvenlik sorunları için tarar.`},critic:{name:`Eleştirmen`,summary:`Kararları, planları ve uygulamaları değerlendirir.`},"shadow-agent":{name:`Gölge Ajan`,summary:`Filo sağlığını izleyen arka plan gözlem ajanı.`},executor:{name:`Yürütücü`,summary:`Devredilen işler için genel amaçlı görev yürütücüsü.`},chimera:{name:`Chimera`,summary:`Değişen dosyalar için oturum sonrası kod kalitesi incelemesi.`},researcher:{name:`Araştırmacı`,summary:`Web araştırması ve veri toplama uzmanı.`},"tech-stack":{name:`Teknoloji Yığını Doğrulayıcı`,summary:`Paket, kütüphane ve çatı seçimlerini doğrular.`},orchestrator:{name:`Orkestratör`,summary:`Çok ajanlı görev yürütmesini koordine eder.`},supervisor:{name:`Süpervizör`,summary:`Alt ajan yürütmesini denetler ve yükseltmeleri yönetir.`},"quality-gate":{name:`Kalite Kapısı`,summary:`Uygulamalarda kalite kapılarını zorunlu kılar.`},architect:{name:`Mimar`,summary:`Tasarım ve mimari kararları alır.`},"prompt-engineer":{name:`İstem Mühendisi`,summary:`Sistem istemlerini tasarlar ve optimize eder.`},mnemosyne:{name:`Mnemosyne`,summary:`Bellek küratörü — SAGE bütünlüğünü gözden geçirir ve korur.`},autophase:{name:`AutoPhase`,summary:`Çok aşamalı otonom görev yürütmesini yönetir.`}},Fe={heading:`Özel Kadro`,loading:`Özel kadro yükleniyor…`,loadFailed:`Kadro yüklenemedi`,invalidJson:`Geçersiz JSON`,noImprovement:`İyileştirme önerisi üretilmedi.`,improveFailed:`LLM iyileştirmesi başarısız oldu`,behaviorSaved:`Davranış learned.md dosyasına kaydedildi`,saveFailedServer:`Kaydetme başarısız — sunucu günlüklerine bakın`,emptyTitle:`Özel Kadro Ajanı Yok`,emptyBody:`Projeye özel ajanlar, şu dizin altında dosya oluşturduğunuzda veya düzenlediğinizde burada görünür:`,createExecutorIdentity:`+ Yürütücü kimliği oluştur`,entries:`Kayıtlar`,size:`Boyut`,sessionCaptures:`Oturum Yakalamaları`,editIdentity:`identity.md dosyasını düzenle`,editLearned:`learned.md dosyasını düzenle`,editConfig:`config.json dosyasını düzenle`,reviewEntries:`Kayıtları gözden geçir ({{count}})`,reviewLearnedEntries:`Öğrenilen kayıtları gözden geçir ({{kept}}/{{total}} tutuldu)`,applySelection:`Seçimi uygula`,keep:`✓ Tut`,drop:`✗ At`,identityPlaceholder:`# {{role}} için proje kimliği
@@ -1,7 +1,7 @@
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`,kanban:`Kanban`,codemap:`CodeMap`,techstack:`TechStack`,chronicle:`Chronicle`,intake:`Requisitos`,roster:`Elenco de agentes`},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:`Inspetor da frota`},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 inspetor da frota`,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={openAgentsPanel:`Abrir painel de agentes (frota ao vivo)`,hidePanel:`Ocultar painel Inspetor`,label:`Inspetor`,openAudit:`Abrir aba Auditoria`,tabFleet:`Frota`,tabAgents:`Agentes`,tabAudit:`Auditoria`,tabCouncil:`Council`,councilCount:`{{count}} painel`,councilCount_other:`{{count}} painéis`,councilClear:`Limpar`,councilEmpty:`Nenhum council foi convocado ainda nesta sessão.`,councilEmptyHint:`O Brain convoca um painel multimodelo para perguntas que atingem ou superam seu limiar de risco de council. Configure em Configurações › Brain › Council.`,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`,autoModeIdle:`Auto — aguardando o marcador auto="true"`,nSelected:`{{count}} selecionados`,submitN:`Enviar {{count}}`,deselectTitle:`Desmarcar`,selectTitle:`Selecionar para envio em lote`,nSelected_one:`{{count}} selecionado`,nSelected_other:`{{count}} selecionados`,submitN_one:`Enviar {{count}}`,submitN_other:`Enviar {{count}}`},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
3
  Clique duas vezes para renomear`,unfavorite:`Remover dos favoritos`,markFavorite:`Marcar como favorito`,deleteSessionConfirmTitle:`Excluir a sessão?`,deleteSessionConfirmBody:`"{{name}}" será removida do disco. Isso não pode ser desfeito.`,deleteSessionTitle:`Excluir sessão`,rename:`Renomear sessão`,renameAction:`Renomear`,resume:`Retomar sessão`,resumeShort:`Retomar`,workspaceEyebrow:`Controle de sessão`,workspaceTitle:`Sessões`,workspaceHint:`Pesquise, inspecione, fixe e retome todas as conversas do projeto.`,tabs:{history:`Histórico`,live:`Sessões ativas`},filters:{all:`Todas`,favorites:`Favoritas`,active:`Ativas`,completed:`Concluídas`,issues:`Problemas`},status:{active:`Ativa`,completed:`Concluída`,error:`Erro`,timeout:`Tempo esgotado`,aborted:`Cancelada`,saved:`Sessão salva`},sort:{label:`Ordenar sessões`,recent:`Mais recentes`,tokens:`Mais tokens`,activity:`Mais atividade`},stats:{sessions:`Sessões`,tokens:`Tokens`,tools:`Chamadas de ferramentas`,files:`Arquivos modificados`,errors:`Erros`},inspect:`Inspecionar sessão`},f={actions:{abort:`Interromper`,newSession:`Nova sessão`,export:`Exportar`,compact:`Compactar`,newSessionConfirm:`Tem certeza?`,newSessionConfirmMessage:`Ainda há um trabalho em andamento. Iniciar uma nova sessão mesmo assim?`,newSessionTitle:`Iniciar uma nova sessão (Ctrl+N)`,exportTitle:`Exportar o chat como markdown (Ctrl+E)`,compactTitle:`Compactar a janela de contexto`,clearTitle:`Limpar o contexto (Ctrl+L)`},model:`Modelo`,modelTitle:`Trocar de modelo (Ctrl+M)`,context:`Contexto`,contextTitle:`Clique para um detalhamento do contexto`,sessionLabel:`Sessão`,stats:{messages:`Mensagens`,elapsed:`Decorrido`,tokens:`Tokens`,cost:`Custo`,iteration:`Iteração`,agents:`Agentes`,tokensSub:`{{in}} entra / {{out}} sai`,iterationOf:`de {{max}}`,agentsRunning:`{{count}} em execução`},plan:`Plano`,planComplete:`{{pct}}% concluído`,pinned:`Fixados`,quickSettings:`Ajustes rápidos`,autonomy:`Autonomia`,autonomyTitle:`Interromper a execução automática das próximas etapas. Desative para parar o ciclo autônomo do agente`,autonomyOptions:{off:`Desativado`,suggest:`Sugerir`,auto:`Auto`,eternal:`Perpétuo`,"eternal-parallel":`Perpétuo Paralelo`},yolo:`Modo YOLO`,yoloTitle:`Ignorar os diálogos de confirmação de ferramentas`,refine:`Refinar prompts`,refineTitle:`Reescrever os prompts antes de enviar`,sound:`Som ao concluir`,soundTitle:`Tocar um leve som ao terminar uma execução`,sessionId:`sessão {{id}}`},p={status:{running:`em execução`,completed:`concluído`,failed:`falhou`,timeout:`tempo esgotado`,stopped:`parado`},leader:`líder`,providerModel:`Provedor / Modelo`,elapsed:`Decorrido`,running:`em execução…`,iterations:`Iterações`,toolCalls:`Chamadas`,cost:`Custo`,budgetExtensions:`Extensões de orçamento`,activity:`Atividade`,contextWindow:`Janela de contexto`,tokensUsed:`{{used}} / {{max}} tokens`,toolRunning:`em execução…`,lastTool:`última ferramenta`,error:`Erro`,finalOutput:`Saída final`,copyOutput:`Copiar saída`,liveOutput:`Saída ao vivo`,waitingOutput:`Aguardando saída…`,outputHint:`A saída aparece aqui conforme o agente transmite o texto.`,toolLog:`Registro de ferramentas ({{count}} chamadas)`,fail:`falha`,moreTools:`+{{count}} ferramentas a mais`,cardRunning:`em execução {{tool}}`,cardLastTool:`última: {{tool}}`,contextPercent:`Contexto {{pct}}%`,doneCount:`{{count}} concluídos`,errCount:`{{count}} err`,statusRunning:`em execução`,statusDone:`concluído`,statusFailed:`falhou`,statusTimeout:`tempo esgotado`,statusStopped:`parado`,hittingLimitTitle:`⚡ atinge o limite {{kind}} ({{used}}/{{limit}})`,budgetExt_one:`{{count}} extensão de orçamento`,budgetExt_other:`{{count}} extensões de orçamento`,extendedTimes_one:`O agente estendeu seu orçamento {{count}} vez por tarefas longas`,extendedTimes_other:`O agente estendeu seu orçamento {{count}} vezes por tarefas longas`,errorLabel:`Erro`,failureReason:`Motivo da falha`,failed:`Falhou`},m={wsNotConnected:`WebSocket não conectado`,noData:`Nenhum dado de depuração recebido. O servidor pode não oferecer suporte à depuração de contexto.`,title:`Detalhamento do contexto`,windowUsage:`Uso da janela`,contextMode:`Modo de contexto`,fetching:`Buscando o detalhamento do contexto…`,systemPrompt:`Prompt do sistema`,tools:`Ferramentas`,messages:`Mensagens`,tokenAllocation:`Alocação de tokens`,systemTitle:`Sistema: {{tokens}}`,toolsTitle:`Ferramentas: {{tokens}}`,messagesTitle:`Mensagens: {{tokens}}`,system:`Sistema`,toolBreakdown:`Detalhamento de ferramentas`,messagesSummary:`Mensagens ({{count}}) — {{total}} tok`,barWithTokens:`Janela de contexto: {{tokens}} / {{max}} tokens ({{pct}})`,barPct:`Janela de contexto: {{pct}}`,barClick:` — clique para o detalhamento`},h={header:`✨ Refinar prompt`,autoSend:`envio automático em {{count}} s`,cancelTitle:`Cancelar (Esc)`,editLabel:`Editar o prompt refinado:`,editPlaceholder:`Editar o prompt refinado...`,useEdit:`Usar edição`,original:`Original`,refined:`Refinado`,yourLanguage:`(seu idioma)`,refinedTitle:`Clique ou pressione Enter para usar esta versão`,copyToInputTitle:`Copiar para a entrada sem enviar`,english:`Inglês`,englishTitle:`Pressione e para a versão em inglês`,hintRefined:`refinado`,hintEnglish:`Inglês`,hintOriginal:`original`,hintEdit:`editar`,hintRetry:`tentar novamente`,edit:`Editar`,useRefined:`Usar refinado`,langOriginal:`Original`,langEnglish:`English`,languageTitle:`Alternar o idioma padrão de refinamento — original ou inglês`,yolo:`YOLO`,yoloTitle:`Ignorar as confirmações de ferramentas`,refining:`Refining…`,sendAsIs:`Send as-is`,failedHeader:`Refinement failed`,retry:`Retry (more time)`,retryBetter:`Tentar melhorar`,retryFallback:`Retry with {{model}}`,pickModel:`Another model…`,pickModelTitle:`Repetir o refinamento com outro modelo`,pickModelHint:`Escolha um provedor/modelo para executar novamente este refinamento. O modelo da sua sessão permanece inalterado.`,countdownHeader:`✨ Refinamento começa em…`,countdownYourMessage:`Sua mensagem`,countdownHint:`O refinamento começa em {{seconds}}s. Clique em "Enviar como está" para pular.`,countdownStartNow:`Refinar agora`,countdownSendAsIs:`Enviar como está`,cancelRefineSendOriginal:`Cancelar e enviar original`},g={heading:`Especificações`,subtitle:`Ver e gerenciar o desenvolvimento orientado por especificações`,empty:`Nenhuma spec encontrada. Use {{command}} para criar uma.`,tasks:`Tarefas ({{count}})`,doneCount:`{{count}} concluídas`,runningCount:`{{count}} em execução`,pendingCount:`{{count}} pendentes`,runTitle:`Executar esta spec como um job multiagente ao vivo`,run:`Executar`,runAsSdd:`Executar como SDD`,runAsSddTitle:`Iniciar um run SDD multiagente em paralelo (worktrees, verificação, board ao vivo)`,runAsGoal:`Executar como Goal`,runAsGoalTitle:`Iniciar um Goal por fases a partir das colunas de tarefas desta spec`,list:`Lista`,graph:`Grafo`,loadingTasks:`Carregando tarefas…`},_={heading:`Verificador de resiliência F5`,subtitle:`Confirma que a última sessão ativa, a transcrição e o estado da UI sobrevivem a um atualizar de página. Abra esta vista e pressione F5 — cada linha verde deve continuar verde.`,recordProbe:`Registrar sonda`,latestSession:`Última sessão ativa`,restoredLocal:`Restaurado do localStorage`,sessionIdExtra:`id da sessão: {{id}}`,noSessionYet:`nenhuma sessão foi iniciada ainda`,activePointer:`Ponteiro de sessão ativa`,lastVisited:`carimbo de tempo lastVisitedAt`,never:`nunca`,persistedEnv:`Ambiente persistido`,transcriptRehydrate:`Reidratação da transcrição`,localTranscript:`Transcrição local recuperada`,messagesExtra:`{{count}} mensagens, {{queued}} na fila`,noMessages:`0 mensagens`,noBleed:`Sem vazamento entre sessões`,bleedExtra:`ligado={{bound}} vs ativo={{active}}`,transcriptBinds:`a transcrição se liga à sessão ativa`,uiWorkspace:`Espaço de trabalho UI`,noneValue:`(nenhum)`,payloadSize:`Carga do localStorage (4 chaves): {{count}} caracteres`,probeLog:`Registro de sondas`,noProbes:`Nenhuma sonda ainda — pressione o botão "Registrar sonda" no topo, ou F5 nesta vista, para registrar uma verificação de reidratação.`,simulatedF5:`F5 simulado: reexecutar persist rehydrate`},v={status:{pending:`Pendente`,in_progress:`Em progresso`,review:`Revisão`,failed:`Falhou`,completed:`Concluído`,queued:`Em fila`,blocked:`Bloqueado`,cancelled:`Cancelado`},newTaskTitle:`Nova tarefa`,newTaskPlaceholder:`Título da tarefa…`,addTask:`Adicionar tarefa`,empty:`Ainda não há fases — inicie uma execução Goal para preencher o painel.`,summary:`{{phases}} fases · {{tasks}} tarefas`,phases:`Fases`,statusTab:`Status`,dropHere:`Solte as tarefas aqui`,emptySpec:`Ainda não há tarefas nesta spec.`,depGraphHeading:`Grafo de dependências`,worktreePrefix:`worktree: {{branch}}`},y={trendUp:`Aumentando`,trendDown:`Diminuindo`,trendStable:`Estável`,heading:`Painel de depuração`,subtitle:`Monitoramento em tempo real para WrongStack WebUI`,refreshLabel:`Atualizar:`,lastUpdated:`Última atualização: {{time}}`,fetchFailed:`Falha ao buscar métricas`,fileWatcher:`Observador de arquivos`,watcherStatus:`Status do observador`,running:`Em execução`,stopped:`Parado`,activeProjects:`Projetos ativos`,projectsWatched:`Projetos observados`,fileChanges:`Mudanças de arquivos`,totalDetected:`Total detectado`,filesProcessed:`Arquivos processados`,afterHash:`Após filtro de hash`,broadcastsSent:`Transmissões enviadas`,toClients:`Aos clientes WebUI`,debounceResets:`Reinícios de debounce`,rapidWrites:`Escritas rápidas sucessivas`,avgDebounce:`Atraso médio de debounce`,actualDelay:`Atraso real aplicado`,totalDelay:`Atraso total`,sumDelays:`Soma de todos os atrasos`,browserPerf:`Desempenho do navegador`,heapUsed:`Heap usado`,jsHeap:`Heap JavaScript`,heapTotal:`Heap total`,totalHeap:`Tamanho total do heap`,pageUptime:`Tempo de atividade da página`,sinceLoad:`Desde o carregamento`,rawData:`Dados brutos`},b={allowlistTitle:`Lista de modelos permitidos`,modelCount_one:`{{count}} modelo`,modelCount_other:`{{count}} modelos`,using:`Em uso`,noModelPicked:`(nenhum modelo escolhido)`,clearAllowlist:`Limpar lista permitida`,clearAllowlistAria:`Limpar a lista permitida salva para {{provider}}`,refresh:`Atualizar do servidor`,refreshAria:`Atualizar a lista de modelos para {{provider}}`,probing:`Verificando…`,searchPlaceholder:`Pesquisar modelos…`,use:`Usar`,useModelAria:`Usar o modelo {{model}} para {{provider}}`},x={expandChip:`Expandir {{label}}`,collapseChip:`Recolher {{label}}`,ahead:`{{count}} à frente`,behind:`{{count}} atrás`,linesAdded:`{{count}} linhas adicionadas`,linesDeleted:`{{count}} linhas excluídas`,untrackedFiles:`{{count}} arquivos não rastreados`,customizeTitle:`Personalizar chips do dock`,dockChips:`Chips do dock`,noActiveGoal:`Nenhum objetivo ativo`,noActiveGoalDetail:`Inicie um objetivo pelo chat ou pelo comando goal.`,closeWorkspaceInspector:`Fechar o inspetor do workspace`,goal:`Objetivo`,goalState:`Estado do objetivo`,goalStateDetail:`Objetivo ativo e progresso`,fleet:`Frota`,fleetDetail:`Elenco de agentes ao vivo e atividade`,work:`Trabalho`,workDetail:`Tarefas pendentes, tarefas e plano`,worktrees:`Worktrees`,worktreesDetail:`Ramos e faixas paralelos`,collab:`Colab.`,collabDetail:`Participantes da sessão e controles`,inspector:`Inspetor do workspace`,inspectorNamed:`Inspetor do workspace {{name}}`,workspace:`Workspace`,workspaceDetails:`Detalhes do workspace`},S={leaderBadge:`LÍDER`,iters:`Iter.`,tools:`Ferramentas`,activityBins:`Atividade (12 intervalos)`,streamingOutput:`Saída em streaming`,recentTools:`Ferramentas recentes`,finalOutput:`Saída final`,heading:`Monitor de agentes`,prevAgent:`Agente anterior`,nextAgent:`Próximo agente`,closeAria:`Fechar monitor de agentes`,hintPage:`←→ página`,hintNavigate:`↑↓ navegar lista`,hintEsc:`Esc fechar`},C={resize:`Redimensionar terminais`,labelSingular:`Terminal`,labelPlural:`Terminais`,projectShell:`Shell do projeto`,maxTerminals:`Máximo de {{count}} terminais`,newTerminal:`Novo terminal`,restart:`Reiniciar terminal ativo`,closeAll:`Fechar todos os terminais`,closeDock:"Fechar o dock de terminal (Ctrl+`)",closeTab:`Fechar {{name}}`,processExited:`[processo encerrado com código {{code}}]`},w={liveStream:`Transmissão ao vivo`,events_one:`{{count}} evento`,events_other:`{{count}} eventos`,interruptTitle:`Parar cooperativamente este agente em seu próximo passo (não é um kill)`,interrupt:`⏸ Interromper`,interrupting:`…`,loading:`Carregando sessão…`,done:`✓✓ concluído`,read:`✓ lido`,delivered:`⏳ entregue`,agent:`Agente`,you:`Você`,working:`{{name}} · trabalhando`,claude:`Claude`,priority:`Prioridade`,placeholder:`{{label}} → esta sessão…`,send:`Enviar`,sendHint:`⌘/Ctrl+Enter para enviar · visível na próxima iteração do agente`,msgType:{steerLabel:`🔄 Direcionar`,steerHint:`Ajustar o comportamento durante a tarefa`,askLabel:`❓ Perguntar`,askHint:`Pergunta — espera resposta`,assignLabel:`📋 Atribuir`,assignHint:`Uma tarefa a realizar`,noteLabel:`💬 Nota`,noteHint:`Para informação, não urgente`},sentRunning:`Entregue — o agente em execução verá no próximo passo`,sentIdle:`Entregue — o alvo está inativo; aparece em sua caixa, lido na próxima execução`,sentFailed:`Falhou: {{error}}`,interruptReason:`O operador solicitou a parada pelo Fleet HQ`,interruptSent:`Interrupção enviada — o agente para no próximo passo (não é um kill)`,interruptFailed:`Interrupção falhou: {{error}}`},T={empty:`Nenhum efeito colateral registrado ainda.`,emptyHint:`Comandos bash, instalações de pacotes e requisições de rede aparecerão aqui.`,heading:`Efeitos colaterais`,exportTitle:`Exportar efeitos colaterais filtrados como CSV`,all:`Todos`,colTime:`Hora`,colTool:`Ferramenta`,colRisk:`Risco`,colDetail:`Detalhe`,colOutcome:`Resultado`},E={elapsedHm:`há {{h}}h {{m}}m`,elapsedMs:`há {{m}}m {{s}}s`,elapsedS:`há {{s}}s`,heading:`Monitor da frota`,clientsHeading:`Clientes conectados`,terminal:`Terminal`,webui:`IU Web`,repl:`REPL`,totalConnected:`conectados no total`,mailQueue:`Fila de correio`,total:`Total`,open:`Abertos`,unread:`Não lidos`,agents:`Agentes`,messagesSub:`mensagens`,uncompletedSub:`não concluídos`,waitingSub:`aguardando`,ofTotal:`de {{count}} no total`,agentRoster:`Lista de agentes`,liveMailActivity:`Atividade de e-mail ao vivo`,noActivity:`Sem atividade recente`,mailboxAgents:`Agentes da caixa`,noMailboxAgents:`Nenhum agente registrado`,moreCount:`+{{count}} mais`,agentFallback:`agente`,fleetAgents:`Agentes da frota`,noFleetAgents:`Nenhum agente da frota em execução`,iter:`iter.`,mailType:{sent:`Enviado`,delivered:`Entregue`,read:`Lido`,completed:`Concluído`}},D={status:{pending:`pendente`,queued:`em fila`,in_progress:`em execução`,blocked:`bloqueado`,review:`revisão`,failed:`falhou`,completed:`concluído`,cancelled:`cancelado`},activityHeading:`Atividade`,feedEmpty:`Ainda nada — os eventos aparecem aqui conforme os agentes pegam e concluem tarefas.`,destroyTitle:`Destruir o projeto SDD?`,destroyDesc:`Isto apaga o run e seu trabalho. Não pode ser desfeito (o revert opcional preserva o histórico).`,stopRun:`Parar o run`,stopRunAgents_one:`Parar o run ({{count}} agente ativo)`,stopRunAgents_other:`Parar o run ({{count}} agentes ativos)`,removeWorktreesAll:`Remover todos os worktrees git + ramos wstack/ap/* — incluindo trabalho não mergedado`,removeWorktreesCount_one:`Remover {{count}} worktree git + ramos wstack/ap/* — incluindo trabalho não mergedado`,removeWorktreesCount_other:`Remover {{count}} worktrees git + ramos wstack/ap/* — incluindo trabalho não mergedado`,deleteArtifacts:`Excluir todos os artefatos SDD (specs, grafo de tarefas, board, sessão)`,revertMerged_one:`Reverter também {{count}} commit mergedado`,revertMerged_other:`Reverter também {{count}} commits mergedados`,revertHint:`Adiciona commits de revert (histórico preservado). Recusado se a árvore de trabalho estiver suja.`,baseBranchFallback:`o ramo base`,noteLeaveMerged:`Os commits mergedados ficarão no ramo base. Marque a caixa acima para desfazê-los também.`,noteAbandon:`Certifique-se de que realmente quer abandonar este run.`,destroying:`Destruindo…`,destroyAll:`Destruir tudo`,kanbanBacklog:`Backlog`,kanbanReady:`Pronto`,kanbanRunning:`Em execução`,kanbanReview:`Revisão`,kanbanFailed:`Falhou`,kanbanDone:`Concluído`,kanbanEmpty:`vazio`},O={collapseToLines:`Recolher para as primeiras {{count}} linhas`,showAllLines:`Mostrar todas as {{total}} linhas ({{more}} a mais)`,exitCode:`código de saída:`,jsonLines:`JSON · {{count}} linhas`,collapse:`recolher`,expand:`expandir`},k={heading:`Design Studio — Galeria`,kitsCount:`{{count}} kits`,searchPlaceholder:`Pesquisar kits…`,stackTitle:`Stack para Use + Materialize`,wrote:`{{path}} escrito`,materializeFailed:`Materialize falhou: {{error}}`,verifyError:`Verificar: {{error}}`,verifyOffPalette:`Verificar: {{pct}}% na paleta — {{count}} fora da paleta em {{files}} arquivo(s)`,verifyClean:`Verificar: limpo ✓ ({{files}} arquivo(s) na paleta)`,writing:`Escrevendo arquivo de tema…`,scanning:`Verificando arquivos de UI…`,active:`Ativo`,reapply:`Reaplicar`,use:`Usar`,materializeTitle:`Gravar tokens em um arquivo de tema {{stack}}`,materialize:`Materializar`,verifyTitle:`Verificar arquivos de UI em busca de cores fora da paleta`,verify:`Verificar`,colors:`Cores`},A={summary_one:`{{count}} fase · {{pct}}% concluído`,summary_other:`{{count}} fases · {{pct}}% concluído`,switchBoard:`Trocar painel`,boardsCount_one:`{{count}} painel…`,boardsCount_other:`{{count}} painéis…`,toggleAutonomousTitle:`Alternar modo autônomo`,autonomous:`Autônomo`,manual:`Manual`,resumeTitle:`Retomar a execução`,pauseTitle:`Pausar a execução`,resume:`Retomar`,pause:`Pausar`,stopTitle:`Parar a execução — aborta agentes em andamento imediatamente`,stop:`Parar`,newTitle:`Limpar este painel e iniciar uma nova execução Goal`,newLabel:`Novo`,revertConfirm:`Reverter os commits da execução?`,revertTitle:`Desfazer esta execução — git-revert dos commits feitos e remover worktrees`,revert:`Reverter`,goal:`Objetivo`,planning:`Planejando fases…`,planningBody:`Seu objetivo foi recebido. O WrongStack está dividindo-o em fases e tarefas — o painel aparece aqui assim que o plano estiver pronto.`,startHeading:`Iniciar um plano de fases`,startBody:`Descreva o que você quer construir. O WrongStack planejará fases e tarefas, depois as executará — observe e direcione a execução no painel.`,startPlaceholder:`ex. Crie uma API REST de gerenciamento de usuários com Express e SQLite...`,isolateLabel:`Isolar cada fase em seu próprio worktree git`,startButton:`Iniciar Goal`,ctrlHint:`Ctrl+Enter para iniciar`,isolateOn:`as fases rodam em worktrees isolados, com squash-merge de volta`,isolateOff:`as fases rodam diretamente no branch atual`,lanes:`Faixas`,graph:`Grafo`,planningAck:`🚀 **Goal** — entendido. Planejando fases para seu objetivo…`,assess:{analyzing:`Analisando escopo da meta…`,realistic:`✓ O escopo parece realista`,durationConcern:`⚠ Problema de duração`,durationClaimed:`Duração informada: {{duration}}`,recommendation:`Recomendado: {{duration}}`,concerns:`Preocupações`,analysisFailed:`Não foi possível analisar o escopo da meta`,override:`Iniciar mesmo assim`,overrideTitle:`Limpar aviso e habilitar o botão de iniciar`,disableTitle:`Esta meta tem uma duração irrealista — use "Iniciar mesmo assim" para sobrescrever`},multiBoardLabel:`Dividir em múltiplos quadros kanban`,verifyTasksLabel:`Exigir verificação para cada tarefa`,chimeraReviewLabel:`Habilitar revisão automática chimera`},j={noObservers:`Sem observadores ao vivo`,observerTitle:`Entrar como observador somente leitura (Fase 1)`,observerRole:`observador`,annotatorTitle:`Entrar como anotador — deixe notas nas chamadas (Fase 2)`,annotatorRole:`anotador`,controllerTitle:`Entrar como controlador — pode pausar o agente (Fase 3)`,controllerRole:`controlador`,errorPrefix:`Collab: {{error}}`,dismiss:`fechar`,observers_one:`{{count}} observador`,observers_other:`{{count}} observadores`,annotationsTitle:`{{count}} anotação(ões) aberta(s) — anotadores revisando`,notes_one:`{{count}} nota`,notes_other:`{{count}} notas`,pausedTitle:`Agente em pausa — um controlador está revisando`,paused:`em pausa`,joinedTitle:`Entrou {{time}}`,grantTitle:`Ceder controle — promover este participante a controlador`,injectTitle:`Injetar um resultado sintético para uma chamada em andamento`,inject:`Injetar`,resumeTitle:`Retomar o agente`,resume:`Retomar`,pauseTitle:`Pausar o agente antes da próxima chamada`,pauseAgent:`Pausar agente`,leaveTitle:`Sair da sessão de observação`,leave:`Sair`,injectToolResult:`Injetar resultado`,close:`fechar`,targetTool:`id tool_use alvo`,targetPlaceholder:`escolha uma chamada em andamento ou digite um id tool_use`,toolFallback:`ferramenta`,noPendingTools:`Sem chamadas em andamento — digite um id tool_use ou pause o agente primeiro.`,resultContent:`Conteúdo do resultado`,resultPlaceholder:`Resultado sintético fornecido ao agente em vez de executar a ferramenta`,markError:`marcar como erro`,reasonPlaceholder:`motivo (log de auditoria)`,queueInjection:`Enfileirar injeção`,controllerInjection:`injeção controlador`},M={connected:`Conectado`,reconnecting:`Reconectando ao backend (tentativa {{attempt}}) — tentando novamente em {{remaining}} s`,disconnected:`Desconectado do backend`,retry:`Tentar novamente`,retryTitle:`Tentar conexão novamente agora`,dismissTitle:`Fechar (o chip na barra superior ainda mostra o status)`},N={modePrefix:`modo:`,activeTitle:`Modo ativo`,heading:`Modo`,defaultName:`Padrão`,defaultDesc:`Comportamento padrão do agente`},P={clickTitle:`Clique para o detalhamento de custo por turno`,heading:`Detalhamento de custos`,noPricing:`Sem precificação para o modelo atual — os valores de custo são zero.`,noTurns:`Nenhum turno concluído ainda. Execute um prompt para ver o custo por turno aqui.`,topExpensive_one:`Turno mais caro`,topExpensive_other:`Os {{count}} turnos mais caros`},F={runDefault:`Padrão do run`,useRunDefault:`Usar padrão do run`,filterPlaceholder:`Filtrar modelos…`,loading:`Carregando modelos…`,noMatch:`Sem correspondência`},I={heading:`Trocar modelo`,filterPlaceholder:`Filtrar provedores e modelos…`,providerFilter:`Provedor`,providerFilterAll:`Todos os provedores`,noSavedProviders:`Sem provedores salvos — registre uma chave nas Configurações primeiro.`,noMatch:`Nenhum modelo correspondente`,active:`ativo`},L={todos:`A fazer`,tasks:`Tarefas`,plan:`Plano`},R={toggleAria:`Alternar: {{content}}`,removeTitle:`Remover tarefa`,removeAria:`Remover "{{content}}"`,completedCount_one:`{{count}} concluída`,completedCount_other:`{{count}} concluídas`},z={start:`Iniciar`,complete:`Concluir`,retry:`Tentar novamente`,assign:`Atribuir`,assignTitle:`Atribuir agente`,unassigned:`Não atribuído`,statusPending:`Pendente`,statusInProgress:`Em andamento`,statusBlocked:`Bloqueado`,statusFailed:`Falhou`,statusReview:`Revisão`,statusDone:`Concluído`,startTitle:`Iniciar`,completeTitle:`Concluir`,fail:`Falhar`,failTitle:`Marcar como falha`,boardCount:`{{total}} tarefas · {{done}} concluídas`},B={toolCalls_one:`{{count}} chamada`,toolCalls_other:`{{count}} chamadas`},V={removeTitle:`Remover referência`,linesCount_one:`{{count}} linha`,linesCount_other:`{{count}} linhas`},H={statusOpen:`Aberto`,statusInProgress:`Em andamento`,statusDone:`Concluído`,startTitle:`Iniciar`,doneTitle:`Marcar como concluído`,reopenTitle:`Reabrir`,reopen:`Reabrir`},U={heading:`@ Arquivos`,noMatch:`Nenhum arquivo corresponde a "{{query}}"`,searching:`Pesquisando no projeto…`,selectInsertEscDismiss:`↑/↓ selecionar · ↵ inserir · Esc fechar`},W={dismiss:`Dispensar`},G={placeholder:`Pesquisar no chat…`,prevHit:`Resultado anterior`,nextHit:`Próximo resultado`,close:`Fechar (Esc)`},K={statusPending:`Pendente`,statusReady:`Pronto`,statusRunning:`Em execução`,statusPaused:`Em pausa`,statusCompleted:`Concluído`,statusFailed:`Falhou`,statusSkipped:`Ignorado`,heading:`Fases`,autonomousOn:`● Autônomo`,autonomousOff:`○ Manual`,autonomousOnTitle:`Modo autônomo ativo — clique para pausar`,autonomousOffTitle:`Modo manual — clique para ativar o autônomo`,overallProgress:`Progresso geral`,tasksSuffix:`{{done}}/{{total}} tarefas`,agentsSuffix_one:`{{count}} agente`,agentsSuffix_other:`{{count}} agentes`},q={triggerTitle:`Modo de janela de contexto`,ctxPrefix:`ctx:`,opsHeading:`Operações de contexto`,compactNow:`Compactar agora`,compactNowDesc:`Omitir saída de ferramenta antiga`,compactAggressive:`Compactação agressiva`,compactAggressiveDesc:`Omissão máxima agora`,repairContext:`Reparar contexto`,repairDesc:`Corrigir blocos tool-use órfãos`,debugContext:`Depurar contexto`,debugDesc:`Detalhamento de tamanho por seção`,windowHeading:`Janela de contexto`,keepElide:`manter {{k}} recentes · omitir {{t}}+ tokens`,fallbackName:`Equilibrado`,fallbackDesc:`Compactação rolling padrão`},J={kindAssistant:`Assistente`,kindThinking:`Pensamento`,kindToolCall:`Chamada de ferramenta`,kindToolResult:`Resultado de ferramenta`,kindError:`Erro`,kindStatus:`Status`,kindSystem:`Sistema`,title:`Histórico do chat`,copyTitle:`Copiar histórico de chat do agente`,empty:`Ainda não há histórico de chat para este agente.`},Y={heading:`Modo de autonomia`,titlePrefix:`Autonomia: {{label}}`,descOff:`Controle manual total — o agente espera sua entrada.`,descSuggest:`O agente sugere os próximos passos mas aguarda aprovação.`,descAuto:`O agente prossegue automaticamente após um breve atraso de confirmação.`,descEternal:`O agente executa de forma autônoma até o objetivo ser concluído.`,descEternalParallel:`Execução autônoma multi-agente — modo frota.`,labelOff:`Desativado`,labelSuggest:`Sugerir`,labelAuto:`Auto`,labelEternal:`Eterno`,labelEternalParallel:`Eterno paralelo`},X={heading:`Fila de mensagens`,subtitle:`{{count}} na fila · mensagens enviadas antes do agente terminar`,btwTitle:`A propósito — enviado como acompanhamento sem interromper o agente em execução`,steerTitle:`Guiar — interrompe o agente em execução e o redireciona com esta mensagem`,queueTitle:`Na fila — retido até o run do agente terminar, depois enviado em ordem`,sortNewestTitle:`Ordenado do mais recente — clique para ordenar do mais antigo`,sortOldestTitle:`Ordenado do mais antigo — clique para ordenar do mais recente`,newest:`Mais recente`,oldest:`Mais antigo`,clear:`Limpar`,clearTitle:`Limpar todas as mensagens da fila`,closeTitle:`Fechar`,emptyTitle:`A fila está vazia`,emptyBody:`Use os botões btw / steer / adicionar à fila ao lado da entrada para adicionar mensagens. Os itens na fila são enviados em ordem quando o run do agente termina.`,removeTitle:`Remover da fila`,clearDispatchedTitle:`Limpar mensagens da fila — notas já enviadas não podem ser retractadas`,dispatchedTitle:`Já enviado ao agente`,dispatchedLabel:`Enviado`,footer:`As mensagens são enviadas em ordem de chegada quando o run do agente termina. Use a ordenação para ver as mais recentes primeiro.`},Z={heading:`Pontos de controle da sessão`,countSuffix_one:`{{count}} ponto de controle`,countSuffix_other:`{{count}} pontos de controle`,description:`Rebobine a sessão para qualquer ponto de controle. Mensagens e alterações de arquivo revertem para aquele ponto — o LLM continua de lá como se nada tivesse acontecido depois.`,emptyTitle:`Ainda não há pontos de controle`,emptyBody:`Pontos de controle são criados automaticamente a cada mensagem enviada. Envie algumas mensagens e volte.`,latest:`recente`,msgSuffix_one:`{{count}} msg`,msgSuffix_other:`{{count}} msgs`,footerPre:`Clique em qualquer ponto de controle para rebobinar`,footerPost:`para fechar`},Q={statusActive:`Ativo`,statusPaused:`Em pausa`,statusDone:`Concluído`,statusFailed:`Falhou`,statusAbandoned:`Abandonado`,heading:`Objetivo`,refined:`Refinado`,progress:`Progresso`,iterations:`iterações`,deliverables:`Entregáveis`,recentActivity:`Atividade recente`},$={cleanTitle_one:`Limpar {{count}} worktree órfão?`,cleanTitle_other:`Limpar {{count}} worktrees órfãos?`,cleanMessage:`Remove forçadamente cada worktree git + ramo wstack/ap deixado por runs anteriores. O trabalho não mergedado neles é descartado.`,cleanConfirm:`Limpar órfãos`,orphanCount_one:`{{count}} worktree órfão de runs anteriores`,orphanCount_other:`{{count}} worktrees órfãos de runs anteriores`,andMore:`…e mais {{count}}`,cleanButtonTitle:`Remover forçadamente todos os worktrees + ramos órfãos`,removed_one:`✓ {{count}} worktree órfão removido.`,removed_other:`✓ {{count}} worktrees órfãos removidos.`,cleanupFailed:`limpeza falhou`,lanesHeading:`Worktrees`,base:`base`,isolatedCount_one:`{{count}} isolado`,isolatedCount_other:`{{count}} isolados`,statusAllocating:`alocando`,statusActive:`ativo`,statusCommitting:`commitando`,statusMerging:`mergendo`,statusMerged:`mergado`,statusConflict:`conflito`,statusFailed:`falhou`,conflictBadge:`CONFLITO`,graphAria:`Grafo de ramos worktree a partir de {{base}}`,mergedLabel:`✓ mergedo → {{base}}`},ee={heading:`Processos em execução`,subtitle:`{{active}} ativos · {{total}} total`,killAll:`Matar todos`,emptyTitle:`Nenhum processo rastreado`,emptyBody:`Os processos aparecem aqui quando o agente executa ferramentas bash ou exec. Processos ativos mostram um LED pulsante.`,pidLabel:`PID {{pid}}`,protected:`protegido`,protectedTitle:`Protegido — sobrevive a kill/killAll`,background:`em segundo plano`,backgroundTitle:`Processo desvinculado — continua após o encerramento da CLI/WebUI`,confirmKillBackground:`Encerrar o processo desvinculado em segundo plano {{pid}}?`,confirmKillAll:`Encerrar todos os {{count}} processos em execução?`,killTitle:`Matar PID {{pid}}`},te={tooLarge:`Diff omitido (arquivo grande demais para renderizar em linha).`},ne={placeholder:`Adicionar modelo de fallback…`,emptyHint:`Tentados em ordem quando o modelo primário é limitado ou trava.`,moveUp:`Mover para cima`,moveDown:`Mover para baixo`},re={loading:`Carregando sessões...`,apiUnavailable:`API de sessão indisponível:`,empty:`Nenhuma sessão ativa. Abra outra instância wstack para vê-la aqui.`,heading:`Sessões ativas ({{count}})`,autoRefresh:`atualização automática a cada 5 s`,pidLabel:`PID {{pid}}`,agentMeta:`{{iter}} iterações · {{tools}} ferramentas · {{ago}}`,andMore:`... e mais {{count}}`,noAgents:`Nenhum agente`},ie={applyTitle:`Escrever a versão editada no disco`,applying:`Aplicando…`,applied:`Aplicado`,apply:`Aplicar`},ae={showStack_one:`Mostrar rastreamento de pilha ({{count}} quadro)`,showStack_other:`Mostrar rastreamento de pilha ({{count}} quadros)`,hideStack_one:`Ocultar rastreamento de pilha ({{count}} quadro)`,hideStack_other:`Ocultar rastreamento de pilha ({{count}} quadros)`},oe={liveHeading:`Ao vivo`,clients:`Clientes`,agents:`Agentes`,model:`Modelo`,mode:`Modo`,toolCalls:`Chamadas`,displayHeading:`Exibição`,statsHud:`HUD de stats`,legends:`Legendas`,minimap:`Minimapa`,zoomControls:`Controles de zoom`,animateWires:`Animar fios`,backgroundHeading:`Fundo`,bgDots:`Pontos`,bgLines:`Linhas`,bgCross:`Cruz`,bgNone:`Nenhum`},se={noParams:`(sem parâmetros)`,itemCount_one:`{{count}} item`,itemCount_other:`{{count}} itens`,keyCount_one:`{{count}} chave`,keyCount_other:`{{count}} chaves`},ce={roleYou:`Você`,roleTool:`Ferramenta`,roleThinking:`Pensamento`,roleAssistant:`Assistente`,inputLabel:`Entrada`,downloadTitle:`Baixar como arquivo`,empty:`(vazio)`,hideDetails:`Ocultar detalhes`,showDetails:`Mostrar detalhes`,showDetailsLines_one:`Mostrar detalhes ({{count}} linha)`,showDetailsLines_other:`Mostrar detalhes ({{count}} linhas)`,editHint:`⌘/Ctrl+Enter para salvar · Esc para cancelar`,saveResend:`Salvar e reenviar`,thinkingProcess:`Processo de pensamento`,thinkingMeta:`iter {{iter}} · {{dur}} · {{lines}}`,replay:`repetição`,linesSuffix_one:`{{count}} linha`,linesSuffix_other:`{{count}} linhas`,copyLog:`Copiar registro`,showFullLog:`Mostrar registro completo`,typing:`Digitando…`,noContent:`Sem conteúdo`,imageNotRetained:`A prévia da imagem não é mantida após recarregar`,failedToSend:`⚠ Falha ao enviar`,autoPaused:`⚠️ _Avanço automático pausado — máximo de turnos automáticos consecutivos atingido. Digite algo para continuar (a autonomia permanece ativa)._`,autoLoopHalted:`⚠️ _Envio automático interrompido porque o mesmo prompt se repetiu. A autonomia continua ativa; digite um novo prompt para redefinir a proteção contra loops._`,rsIterations:`Iterações: {{n}}`,rsTools:`Chamadas: {{n}}`,rsElapsed:`Decorrido: {{s}}`,rsCost:`Custo: {{c}}`,useInput:`Entrada: {{n}}`,useOutput:`Saída: {{n}}`,useCacheRead:`Leitura cache: {{n}}`,useCost:`Custo: {{c}}`,renderedLabel:`Renderizado`,rawLabel:`Bruto`,showRenderedTitle:`Mostrar markdown renderizado`,showRawTitle:`Mostrar fonte markdown bruta`,editTitle:`Editar e reenviar este prompt`,editLabel:`Editar`,unpinTitle:`Desafixar`,pinTitle:`Fixar esta resposta`,pinnedLabel:`Fixado`,pinLabel:`Fixar`,regenerateTitle:`Regenerar esta resposta`,retryLabel:`Tentar novamente`},le={toolFallback:`ferramenta`,toolFailed:`Ferramenta falhou`},ue={heading:`Atalhos de teclado`,footerPre:`Pressione`,footerPost:`a qualquer momento para reabrir esta lista.`,sectionGlobal:`Global`,sectionTuiParity:`Paridade de painel TUI`,sectionFleet:`Frota e agentes`,sectionChatInput:`Entrada do chat`,sectionChat:`Chat`,sectionChatNav:`Navegação do chat (sem digitar)`,dCommandPalette:`Abrir paleta de comandos`,dShowOverlay:`Mostrar este overlay de atalhos`,dToggleSidebar:`Alternar barra lateral`,dOpenPanel:`Abrir painel lateral (Sessão, Agentes, Histórico, Arquivos, Mudanças, Caixa, Skills, Office Map)`,dDesignStudio:`Abrir painel do Design Studio`,dWorktrees:`Abrir painel de Worktrees`,dSettings:`Abrir Configurações`,dMemory:`Abrir Memória`,dFocusInput:`Focar a entrada de mensagens`,dSessionPanel:`Painel de sessão`,dFleetOverlay:`Overlay do monitor de frota`,dAgentsOverlay:`Overlay do monitor de agentes`,dWorktreeMonitor:`Monitor de worktrees`,dPlanPanel:`Painel de plano`,dTodosPanel:`Painel de tarefas`,dQueuePanel:`Painel de fila`,dProcessMonitor:`Monitor de processos`,dGoalPanel:`Painel de objetivo`,dSessionsDashboard:`Painel de sessões`,dOfficeMap:`Office map do coordenador`,dDockPicker:`Seletor de chips do dock`,dOpenFleet:`Abrir overlay do monitor de frota`,dOpenAgents:`Abrir overlay do monitor de agentes`,dNavigateAgents:`Navegar agentes no monitor`,dSelectAgent:`Selecionar agente focado`,dCloseOverlay:`Fechar overlay ativo`,dSendMessage:`Enviar mensagem`,dNewline:`Inserir nova linha`,dRecallPrev:`Relembrar prompt anterior (entrada vazia)`,dRecallNext:`Relembrar próximo prompt`,dSlashPopup:`Abrir popup de comandos slash`,dAutocomplete:`Autocompletar comando destacado`,dDismissPopup:`Fechar popup / limpar entrada`,dSearchChat:`Pesquisar no chat atual`,dClearContext:`Limpar contexto (igual a /clear)`,dNewSession:`Iniciar nova sessão (igual a /new)`,dExportMarkdown:`Exportar chat como markdown`,dModelSwitcher:`Overlay seletor rápido de modelo`,dCompactDensity:`Alternar densidade UI compacta`,dAbortRun:`Abortar o run atual (durante execução)`,dFocusNext:`Focar próxima mensagem (atalho: ↓)`,dFocusPrev:`Focar mensagem anterior (atalho: ↑)`,dJumpFirst:`Ir para a primeira mensagem`,dJumpLast:`Ir para a última mensagem`,dCopyFocused:`Copiar texto da mensagem focada`,dClearFocused:`Limpar mensagem focada`},de={titleFallback:`Board SDD ao vivo`,defaultModelTitle:`Modelo worker padrão do run (overrides por tarefa têm precedência)`,graphLabel:`Grafo`,kanbanLabel:`Kanban`,retryAllTitle:`Recolocar cada tarefa falha em pending`,retryFailed:`Re tentar falhas ({{count}})`,resume:`Retomar`,pause:`Pausar`,stop:`Parar`,cleanTitle:`Remover os worktrees git + ramos wstack/ap do run`,cleanWorktrees:`Limpar worktrees`,rollbackTitle:`Reverter {{count}} commit(s) mergedado(s) em {{base}}`,rollback:`Rollback ({{count}})`,stopping:`Parando…`,destroying:`Destruindo…`,destroyTitle:`Parar, remover todos os worktrees, reverter opcionalmente commits mergedados e excluir o projeto SDD`,destroy:`Destruir`,statDone:`feitos`,statRunning:`em execução`,statFailed:`falhas`,statWave:`onda`,statElapsed:`decorrido`,noActiveWorkers:`sem workers ativos`,deadlock:`Impasse — tarefas bloqueadas por trabalho falho:`,noRunTitle:`Sem run SDD ativo.`,noRunBody:`Inicie um pelo assistente New SDD Project ou via /sdd execute na CLI — os agentes aparecem aqui ao vivo, cada num worktree isolado.`,clickTaskHint:`clique numa tarefa para detalhes`,lcClean:`Limpeza`,lcRollback:`Rollback`,lcDestroy:`Destruição`,lcFailed:`{{op}} falhou: {{reason}}`,lcUnknownError:`erro desconhecido`,lcWorktrees_one:`{{count}} worktree removido`,lcWorktrees_other:`{{count}} worktrees removidos`,lcCommits_one:`{{count}} commit revertido`,lcCommits_other:`{{count}} commits revertidos`,lcDeleted:`excluído {{items}}`,lcNothing:`nada a fazer`,lcNote:`{{op}}: {{body}} — nota: {{reason}}`,lcOk:`{{op}}: {{body}}`},fe={backTitle:`Voltar à atividade`,expandTitle:`Expandir detalhes da tarefa`,collapseTitle:`Recolher detalhes da tarefa`,eventLog:`Log de eventos da tarefa`,newestFirst:`mais recentes primeiro`,noEvents:`Nenhuma atividade foi registrada para esta tarefa ainda.`,workingOn:`trabalhando nesta tarefa`,assigned:`atribuído`,metaPriority:`Prioridade`,metaType:`Tipo`,metaDuration:`Duração`,metaElapsed:`Decorrido`,metaRetries:`Tentativas`,metaWorktree:`Worktree`,workerModel:`Modelo worker`,runDefault:`padrão do run: {{model}}`,runDefaultPlaceholder:`Padrão do run`,runDefaultPlaceholderModel:`Padrão do run ({{model}})`,verificationCmd:`Comando de verificação`,gatesCompletion:`valida a conclusão (exit 0)`,verifyPlaceholder:`ex. pnpm vitest run path/to/file`,addVerify:`+ Adicionar comando de verificação`,description:`Descrição`,timeline:`Linha do tempo`,dependsOn:`Depende de`,blocks:`Bloqueia`,newWorkerPlaceholder:`Nome do novo worker…`,confirmStop:`Parar esta tarefa em execução?`,confirmDelete:`Excluir esta tarefa do run?`,retryTitle:`Recolocar esta tarefa em pending`,reassign:`Reatribuir`,stopTitle:`Abortar o worker nesta tarefa`,splitTitle:`Dividir esta tarefa em subtarefas delegadas a workers separados`,split:`Dividir`,splitHint:`Uma subtarefa por linha — Título :: descrição (descrição opcional)`,splitPlaceholder:`Escreva a camada de dados :: adicione o repositório
4
- 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>.
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`,memory:`Memória`,lines:`linhas`,resizeHint:`Arraste para redimensionar · clique duas vezes para redefinir`,refresh:`Atualizar evidências do arquivo`,evidenceCount_one:`{{count}} evento`,evidenceCount_other:`{{count}} eventos`,mutations30m:`Edições · 30 min`,sessions:`Sessões`,actors:`Atores`,linkedWork:`Trabalho vinculado`,workLinks:`Kanban / tarefa`,recentActivity:`Atividade recente do arquivo`,events:`eventos`,noEvidence:`Ainda não há atividade atribuída a este arquivo.`,noSessions:`Ainda não há atribuição de sessão.`,noActors:`Ainda não há atribuição de ator.`,noWorkLinks:`Nenhum vínculo Kanban, SDD ou tarefa registrado.`,taskOrTodo:`Task / tarefa`,loadingEvidence:`Carregando evidências do arquivo…`,gitToBuffer:`Git HEAD → buffer atual do Monaco`,savedToBuffer:`Última versão salva → buffer atual do Monaco`,unsaved:`buffer não salvo`,lifetimeTitle:`Todo o histórico`,lifetimeChanges:`alterações`,lifetimeSessions:`sessões`,lifetimeTasks:`tarefas`,lifetimeBoards:`quadros`,lifetimeSince:`desde {{date}}`,lifetimeTools:`via {{tools}}`,level:{quiet:`estável`,active:`ativo`,churn:`alta rotatividade`},analysisTitle:{quiet:`Sem rotatividade recente`,active:`Este arquivo está sendo alterado`,churn:`Alterações repetidas detectadas`},analysisBody:{quiet:`Nenhuma alteração atribuída foi registrada nos últimos 30 minutos.`,active:`{{mutations}} alterações por {{actors}} atores em {{sessions}} sessões nos últimos 30 minutos.`,churn:`Alta rotatividade: {{mutations}} alterações por {{actors}} atores em {{sessions}} sessões. Verifique trabalhos sobrepostos antes da próxima edição.`}},_e={loading:`Carregando analytics…`,heading:`Painel de analytics`,autoRefresh:`atualização a cada 10 s`,liveSessions:`Sessões ao vivo`,agents:`Agentes`,agentsActive:`{{count}} ativos`,totalEvents:`Eventos totais`,categoriesSub:`{{count}} categorias`,toolCalls:`Chamadas`,iterationsSub:`{{count}} iterações`,sessionCost:`Custo da sessão`,tokensSub:`{{input}} entrada / {{output}} saída`,sessionDuration:`Duração da sessão`,messagesSub:`{{count}} mensagens`,eventsByCategory:`Eventos por categoria`,noEvents:`Nenhum evento registrado.`,topEvents:`Principais eventos`,activeSessionUsage:`Uso da sessão ativa`,provider:`Provedor`,model:`Modelo`,inputTokens:`Tokens de entrada`,outputTokens:`Tokens de saída`,cacheRatio:`Proporção de cache`,filesRead:`Arquivos lidos`,noSession:`Sem sessão ativa ou aguardando dados…`,healthErrors:`Saúde e erros`,errorEvents:`Eventos de erro`,warningEvents:`Eventos de aviso`,cacheHitRate:`Taxa de acerto de cache`,totalCategories:`Categorias totais`,waitingData:`Aguardando dados…`,recentEvents:`Eventos recentes`,noRecentEvents:`Sem eventos recentes. Interaja com a UI para gerar eventos.`},ve={heading:`Biblioteca de prompts`,searchPlaceholder:`Pesquisar prompts…`,newPrompt:`+ Novo prompt`,all:`Todos`,recent:`🕘 Recentes`,favorites:`★ Favoritos`,noMatch:`Nenhum prompt corresponde.`,newPromptHeading:`Novo prompt`,titlePlaceholder:`Título *`,descPlaceholder:`Descrição de uma linha`,categoryPlaceholder:`Categoria`,tagsPlaceholder:`tags, separadas, por vírgula`,contentPlaceholder:`Conteúdo do prompt * — use {{name}} para variáveis`,variables:`Variáveis`,addVar:`+ var`,varNamePlaceholder:`nome`,varDescPlaceholder:`descrição`,removeVarTitle:`Remover variável`,required:`obrigatório`,multiline:`multilinha`,enumPlaceholder:`enum: a, b, c`,savePrompt:`Salvar prompt`,saveFailed:`Não foi possível salvar o prompt.`,titleContentRequired:`Título e conteúdo são obrigatórios.`,toggleFavoriteTitle:`Alternar favorito`,selectOption:`— escolher —`,fillMissing:`Preencher: {{missing}}`,insertIntoChat:`Inserir no chat`,selectPromptHint:`Selecione um prompt para pré-visualizar e inserir.`},ye={scopeProject:`Projeto`,scopeGlobal:`Global`,scopeBundled:`Embutido`,timeoutError:`Tempo limite da requisição. Tente novamente.`,updateFailed:`Atualização falhou`,saveFailed:`Salvamento falhou`,uninstallFailed:`Desinstalação falhou`,noSkillSelected:`Nenhuma habilidade selecionada`,selectSkillHint:`Selecione uma habilidade da barra lateral para ver sua documentação`,goToChat:`Ir ao chat`,openSourceRepo:`Abrir repo de origem`,copySourceUrl:`Copiar URL de origem`,updatedLabel:`↑ Atualizado: {{list}}`,upToDateLabel:`— Atualizado: {{list}}`,errorsLabel:`✗ {{list}}`,checkUpdatesTitle:`Verificar atualizações`,exportTitle:`Exportar habilidade como .md`,editTitle:`Editar habilidade`,uninstallTitle:`Desinstalar habilidade`,closeTitle:`Fechar e ir ao chat`,backTitle:`Voltar`,forwardTitle:`Avançar`,relatedFiles:`Arquivos relacionados`,references:`Referências`,goToSkillTitle:`Ir para {{name}}`,loadingContent:`Carregando conteúdo…`,editingLabel:`Editando {{name}}`,editStats:`{{lines}} linhas · {{words}} palavras · {{chars}} caracteres`,charsWarningFmt:`⚠ {{used}} MB / {{limit}} MB`,draftSaved:`Rascunho salvo`,draftRestored:`Rascunho restaurado`,discardDraft:`Descartar rascunho`,splitViewTitle:`Vista dividida`,hidePreviewTitle:`Ocultar pré-visualização`,contentPlaceholder:`Conteúdo da habilidade (markdown)...`,loadFailed:`Falha ao carregar o conteúdo`,noContent:`Sem conteúdo disponível`,uninstallSkillHeading:`Desinstalar habilidade`,uninstallConfirm:`Desinstalar {{name}}?`,uninstallRemovePath:`Isso removerá a habilidade de {{path}} e não pode ser desfeito.`,uninstallAction:`Desinstalar`},be={sessionStats:`Estatísticas da sessão`,clients:`Clientes`,input:`Entrada`,output:`Saída`,cost:`Custo`,agentsSuffix:`agentes`,upPrefix:`ativo há {{time}}`,webuiClient:`Cliente WebUI`,disconnected:`Desconectado`,connected:`Conectado`,tuiClient:`Cliente TUI`,terminal:`Terminal`,repl:`REPL`,coordinator:`COORDENADOR`,fleetSummary:`Resumo da frota`,toolCallsLabel:`Chamadas`,tokensLabel:`Tokens`,coordinatingFleet:`Coordenando frota`,donePrefix:`✓ concluído ·`,failedPrefix:`✕ falhou ·`,seenPrefix:`visto há {{time}}`,availableDesk:`Mesa disponível`,mailboxHub:`Central de correio`,unreadSuffix_one:`{{count}} não lida`,unreadSuffix_other:`{{count}} não lidas`,allClear:`Tudo lido`,total:`Total`,unreadLabel:`Não lidas`,liveActivity:`Atividade ao vivo`,waitingActivity:`Aguardando atividade…`,now:`agora`,fleetHq:`QG da Frota WrongStack`,live:`AO VIVO`,legendStatus:`Status`,legendActive:`Ativo`,legendIdle:`Inativo`,legendError:`Erro`,legendConnections:`Conexões`,legendMail:`Correio`,legendTask:`Tarefa`,legendStatusConn:`Status`,arrange:`Organizar`,arrangeTitle:`Organizar os nós para caberem na tela disponível`,feed:`Feed`,feedTitle:`Alternar feed de atividade ao vivo`,broadcast:`Transmitir`,broadcastTitle:`Transmitir mensagem a cada sessão ao vivo do projeto`,broadcastToAll:`Transmitir a todas as sessões`,broadcastPlaceholder:`Mensagem a cada agente ao vivo do projeto…`,broadcastSendHint:`⌘/Ctrl+Enter para enviar`,openFullView:`Abrir visualização completa de operações`,rowStatus:`Status`,rowModel:`Modelo`,rowTool:`Ferramenta`,rowIterations:`Iterações`,rowToolCalls:`Chamadas`,rowTokensIn:`Tokens de entrada`,rowTokensOut:`Tokens de saída`,rowTokensTotal:`Tokens totais`,rowContext:`Contexto`,rowCost:`Custo`,rowLastSeen:`Visto pela última vez`,rowSurface:`Superfície`,rowBranch:`Ramo`,rowPid:`PID`,rowDir:`Dir.`,rowAgents:`Agentes`,rowUptime:`Tempo ativo`,rowConnections:`Conexões`,rowTotalMessages:`Mensagens totais`,rowUnread:`Não lidas`,recent:`Recentes`,noSubject:`(sem assunto)`,fullOperationStream:`Fluxo completo de operações`,closeEsc:`Fechar (Esc)`,idleDesk:`Mesa inativa`,fleetHqLabel:`QG da Frota`,clientsSuffix_one:`{{count}} cliente`,clientsSuffix_other:`{{count}} clientes`,taskFallback:`tarefa`,controlLabel:`controle`},xe={installTitle:`Instalar habilidade`,createTitle:`Criar habilidade`,exportTitle:`Exportar todas as habilidades como .zip`,checkUpdatesTitle:`Verificar atualizações (todas)`,searchPlaceholder:`Pesquisar habilidades…`,loading:`Carregando…`,noSkills:`Sem habilidades instaladas`,noMatch:`Nenhuma habilidade corresponde ao filtro`,noDescription:`Sem descrição`,scopeForeign:`Externa`,installHeading:`Instalar Habilidade`,installHint:`Insira uma referência de repo GitHub (owner/repo) ou URL completa.`,installPlaceholder:`ex. wrongstack/skill-name ou https://github.com/owner/repo`,installScope:`Escopo de instalação:`,installBtn:`Instalar`,installedMsg:`Instalada: {{names}}`,installFailed:`Instalação falhou`,createHeading:`Criar Habilidade`,createHint:`Scaffold uma nova habilidade. A primeira linha é o trigger.`,nameLabel:`Nome`,namePlaceholder:`ex. minha-nova-habilidade`,descLabel:`Descrição / Trigger`,descPlaceholder:`Use esta habilidade quando <situação>.
5
5
  Triggers: o usuário diz "palavra-chave", "outra".`,saveIn:`Salvar em:`,createBtn:`Criar Habilidade`,createdMsg:`Criada: {{name}}`,createFailed:`Criação falhou`},Se={noEvents:`Sem eventos.`},Ce={pickHint:`Escolha um kit — o agente vai segui-lo.`,gallery:`Galeria`,galleryTitle:`Abrir galeria de pré-visualização ao vivo`,stackTitle:`Stack alvo`,loading:`Carregando kits…`,notFound:`Nenhum kit de design encontrado.`,bestFor:`Ideal para:`,light:`Claro`,dark:`Escuro`,tune:`Ajustar`,font:`Fonte`,set:`Definir`,spaceGrotesk:`Space Grotesk…`,aaHeading:`Aa Título`,theQuickBrownFoxJumpsOver:`Um pequeno jabuti xereta viu dez cegonhas felizes.`,primary:`Primário`,ghost:`Fantasma`,badge:`Selo`,inputField:`Campo de entrada…`,radius:`Raio`,density:`Densidade`,motion:`Movimento`},we={detached:`(separado)`,count_one:`{{count}} worktree`,count_other:`{{count}} worktrees`,baseSuffix:` · base {{base}}`,baseLabel:`base`,cleanOrphans:`Limpar órfãos`,cleanOrphansTitle:`Remover todos os worktrees órfãos`,liveBusyTitle:`Um run está ativo — pare-o primeiro`,rescanTitle:`Re-escanear`,removed_one:`Removido {{count}} worktree.`,removed_other:`Removidos {{count}} worktrees.`,failed:`Falhou`,mergedIntoBase:`{{branch}} mesclado na base.`,conflictMerge:`Conflito ao mesclar {{branch}}: {{files}}`,seeGit:`ver git`,mergeFailed:`Mesclagem falhou: {{reason}}`,unknownReason:`desconhecido`,mergeConfirmTitle:`Mesclar {{branch}} em {{base}}?`,mergeConfirmMsg:`Squash-mescla este branch no branch base. Cancela limpo em caso de conflito.`,mergeAction:`Mesclar`,removeConfirmTitle:`Remover {{branch}}?`,removeConfirmMsg:`Remove forçadamente o checkout do worktree e exclui seu branch. Trabalho não mesclado é descartado.`,empty:`Sem worktrees.`,emptyHint:`Runs SDD / Goal criam worktrees isolados aqui. Órfãos de runs falhos também aparecem.`,actOpenTerm:`Abrir no terminal`,actOpenFolder:`Abrir pasta`,actViewChanges:`Ver alterações`,actMerge:`Mesclar na base`,actRemove:`Remover / descartar`,live:`ativo`,noUncommitted:`Sem alterações não confirmadas`,commitsAhead_one:`{{count}} commit à frente`,commitsAhead_other:`{{count}} commits à frente`,more:`…{{count}} mais`},Te={heading:`Mapa do Escritório`,headingHint:`Visualize sua frota como uma planta de escritório com status dos agentes ao vivo.`,statAgents:`Agentes`,statMail:`Correio`,unreadSuffix:` não lidos`,sectionView:`Visualização`,sectionDisplay:`Exibição`,sectionBackground:`Fundo`,sectionRecent:`Atividade Recente`,eventsTrackedSuffix:` eventos rastreados`,recentHint:`Envios de correio, spawns de agentes e mudanças de status aparecem aqui.`,sectionShortcuts:`Atalhos`,sectionLegend:`Legenda`,hudLabel:`HUD`,hudDesc:`Mostrar overlay de estatísticas de sessão em tempo real`,hudToggle:`Ativar HUD`,minimapLabel:`Minimapa`,minimapDesc:`Mostrar o minimapa de visão geral`,minimapToggle:`Ativar minimapa`,controlsLabel:`Controles`,controlsDesc:`Mostrar controles de zoom e ajuste`,controlsToggle:`Ativar controles`,animateLabel:`Animar arestas`,animateDesc:`Animar o fluxo nas conexões ativas`,animateToggle:`Ativar animação de arestas`,legendLabel:`Mostrar legenda`,legendDesc:`Exibir legenda de status e conexão`,legendToggle:`Ativar legenda`,feedLabel:`Feed ao vivo`,feedDesc:`Faixa inferior de atividade recente entre processos`,feedToggle:`Ativar feed ao vivo`,fitView:`Ajustar`,zoomIn:`Ampliar`,zoomOut:`Reduzir`,resetZoom:`Redefinir zoom`,legendActive:`Ativo (em execução)`,legendIdle:`Inativo`,legendError:`Erro`,legendOffline:`Offline`,bg:{dots:`Pontos`,lines:`Linhas`,cross:`Cruz`,none:`Nenhum`}},Ee={liveProjectOffice:`Escritório do projeto ao vivo`,agents:`agentes`,working:`trabalhando`,toolCalls:`chamadas de ferramentas`,office:`Escritório`,topology:`Topologia`,officeDescription:`Mesas e trabalho dos agentes ao vivo`,topologyDescription:`Clientes, agentes e conexões`,team:`Equipe`,liveDesk:`Mesa ao vivo e trabalho chegando`,lastActions:`Trabalhos recentes`,leadAgent:`Agente líder`,agent:`Agente`,callsCount:`{{count}} chamadas`,recent:`Recentes`,noCalls:`Nenhuma chamada concluída ainda`,telemetryReconnect:`Reconecte este terminal para iniciar o histórico de ferramentas`,thinking:`Pensando`,waiting:`Aguardando trabalho`,preparing:`Preparando a próxima ação…`,deskReady:`A mesa está pronta`,toolCall:`Chamada de ferramenta`,execution:`Execução`,started:`Início`,duration:`Duração`,session:`Sessão`,target:`Destino`,resultSize:`Tamanho do resultado`,lines:`linhas`,bytes:`bytes`,tokens:`tokens`,input:`Entrada`,outputPreview:`Prévia da saída`,readyTitle:`O escritório está pronto`,readyBody:`Os agentes ocuparão uma mesa assim que entrarem neste projeto.`,liveEvent:`fluxo de eventos ao vivo`,connectedSessions_one:`{{count}} sessão conectada`,connectedSessions_other:`{{count}} sessões conectadas`,detailHint:`clique em uma ação para ver a entrada e o resultado exatos`,officeBriefing:`Briefing do escritório`,leaderPrompt:`Último prompt do líder`,activeInstruction:`Instrução ativa`,telemetryWaiting:`Reconecte este terminal para receber instruções ao vivo`,syncWaiting:`aguardando sincronização`,todoTelemetryWaiting:`Reconecte este terminal para receber a lista de tarefas ao vivo`,taskNotReported:`O agente está trabalhando, mas nenhuma descrição de tarefa foi informada`,noPrompt:`Nenhum prompt recebido nesta sessão`,activeTodos:`Tarefas ativas`,todoProgress:`{{done}}/{{total}} concluídas`,allTodosDone:`Todas as tarefas concluídas`,noActiveTodos:`Nenhuma tarefa ativa`,moreTodos:`+{{count}} outras`,currentTask:`Tarefa atual`,task:`Tarefa`,promptReceived:`Recebido`,todos:`Tarefas`,todoStatus:{pending:`Pendente`,in_progress:`Em andamento`,completed:`Concluída`},breakRoom:`Sala de descanso`,onBreak:`{{count}} em pausa`,desksEmpty:`Todos estão em pausa — as mesas estão prontas para a próxima tarefa`,files:`ARQUIVOS`,read:`LEITURA`,write:`ESCRITA`,edit:`EDIÇÃO`,term:`TERM`,live:`AO VIVO`,uniqueFilesTouched:`Arquivos únicos tocados`,fileReads:`Leituras de arquivos`,filesWritten:`Arquivos gravados`,filesEdited:`Arquivos editados`,linesAddedAndRemoved:`Linhas adicionadas e removidas`,terminalCommands:`Comandos do terminal`,incomingAndOutgoingMail:`Correio recebido e enviado`,sessionActivityTotals:`Totais de atividade da sessão`,closeToolDetails:`Fechar detalhes da ferramenta`,closeDetails:`Fechar detalhes`,closeMailDetails:`Fechar detalhes do correio`,closeTaskDetails:`Fechar detalhes da tarefa`,closeOfficeBriefing:`Fechar o briefing do escritório`,priority:`Prioridade`,route:`Rota`},De={injectedHeading:`Memória SAGE injetada`,memoriesLabel_one:`{{count}} memória`,memoriesLabel_other:`{{count}} memórias`},Oe={tabProject:`Projeto SDD`,tabBoard:`Painel SDD ao vivo`,tabSpecs:`Especificações`},ke={label:`Painel lateral`},Ae={deleteTitle:`Excluir esta memória?`,backToList:`Voltar à lista de memórias`,copyId:`Copiar ID da memória`,deletedMemory:`Memória excluída`,anchorCursorHint:`O intervalo de linhas do cursor corresponde à âncora desta memória`,statusDeleted:`excluída`,statusSuperseded:`substituída`,restoreTitle:`Restaurar esta memória ao status ativo`,supersededJumpTitle:`Esta versão foi substituída — ir para a versão ativa`,acceptSuggestionTitle:`Aceitar a sugestão de exclusão da higiene — a memória será esquecida`,rejectSuggestionTitle:`Rejeitar a sugestão — a memória permanece como está e pode ser sugerida novamente`,updateTitle:`Atualizar o conteúdo da memória — o versionamento cria um novo registro ativo`,promoteTitle:"Promover para `permanent` — a higiene nunca mais exibirá isto",openRecordTitle:`Abrir o registro completo no MemoryManager`,fileDrawerAria:`Gaveta de memória de arquivo`,requeryTitle:`Consultar novamente este arquivo`,closeDrawerAria:`Fechar gaveta`,closeDrawerTitle:`Fechar gaveta de memória`,showRecoverable:`Mostrar recuperáveis (excluídas)`,cursorBoostTitle:`Impulso de cursor`,fileScopedTitle:`Escopo de arquivo`,mentionedInTitle:`Mencionado em`,editorKnowledge:`Conhecimento`,editorContentPlaceholder:`Exemplo: o estado da WebUI pertence aos stores Zustand; as mensagens do servidor atualizam esses stores por meio de handlers WebSocket singleton.`,editorImportance:`Importância`,editorConfidence:`Confiança`,editorFreshness:`Frescor`,editorAnchors:`Âncoras`,editorSymbolPlaceholder:`Nome do símbolo`,editorRelationships:`Relacionamentos`,searchAria:`Pesquisar memórias`,searchPlaceholder:`Pesquisar conteúdo, IDs, tags, âncoras…`,clearSearchAria:`Limpar pesquisa`,audienceFilterAria:`Filtrar apenas escopo de público`,audienceFilterTitle:`Mostrar apenas memórias de escopo de público`,clearFiltersAria:`Limpar todos os filtros`,clearFiltersTitle:`Limpar todos os filtros`,allStatuses:`Todos os status`,allKinds:`Todos os tipos`,tagsLabel:`Tags`,popularTags:`Tags populares`,graphAria:`Grafo de relacionamentos de memória`,graphFullscreenAria:`Abrir grafo em tela cheia`,clearTracesTitle:`Limpar todas as trilhas`,closePanelTitle:`Fechar painel`,traceMatched:`correspondente`,traceInjected:`injetado`,traceFiltered:`filtrado`,traceActive:`ativo`,traceExited:`saído`,traceScore:`pontuação`,traceError:`erro`,lifecycleAria:`Registro ao vivo do ciclo de vida da memória`,listAria:`Memórias`,emptyTitle:`O contexto de longo prazo do seu projeto`,emptyVerifiedAnchors:`Âncoras verificadas`,emptyTypedRelations:`Relações tipadas`,emptyAgentRecall:`Recuperação do agente`,lensesAria:`Lentes de memória SAGE`,loadingSage:`Carregando SAGE`,loadingAudience:`Carregando memórias de público`,storeUnavailable:`Armazenamento de memória indisponível`,backToChat:`Voltar ao chat`,sageHeading:`SAGE`,refreshAria:`Atualizar memórias`,tabMemories:`Memórias`,tabActive:`Ativas`,tabNeedsReview:`Requer revisão`,tabGraphEdges:`Arestas do grafo`,libraryAria:`Biblioteca de memórias`,viewAria:`Visualização de memórias`,detailAria:`Detalhe da memória`,fileForDrawerAria:`Arquivo para gaveta de memória`,cursorLabel:`cursor`,reviewLabel:`revisão`,hygieneReviewTitle:`Revisão de higiene: {{reason}} ({{days}} d)`,updatedSuffix:`atualizada {{date}}`,actionRecover:`Recuperar`,actionGoToActive:`Ir para a versão ativa`,actionAcceptDeletion:`Aceitar exclusão`,actionKeep:`Manter`,actionUpdate:`Atualizar`,actionMarkPermanent:`Marcar como permanente`,actionShowFull:`Mostrar completo`,itemLabel:`memórias`,noFile:`(sem arquivo)`,memoriesCount_one:`{{count}} memória`,memoriesCount_other:`{{count}} memórias`,pendingReviewCount_one:`{{count}} revisão pendente`,pendingReviewCount_other:`{{count}} revisões pendentes`,supersededCount:`{{count}} substituída(s)`,linesRange:`linhas {{start}}–{{end}}`,emptyOpenFile:`Abra um arquivo para ver suas memórias.`,loadingMemories:`Carregando memórias…`,errorPrefix:`Erro: {{message}}`,emptyNoMemories:`Nenhuma memória anexada a {{file}} ainda.`,pendingAccepting:`aceitando…`,pendingKeeping:`mantendo…`,pendingUpdating:`atualizando…`,pendingMarking:`marcando…`,pendingRecovering:`recuperando…`,deletedNeverPolicy:`Este registro é somente de auditoria e carrega uma proibição absoluta: nunca pode entrar no contexto do LLM.`,deletedEligiblePolicy:`O registro está inativo e não pode ser editado, mas permanece elegível como evidência histórica quando a recuperação o considerar relevante.`,deletingLabel:`Excluindo…`,actionDeleteMemory:`Excluir memória`,copiedNotice:`ID da memória copiado.`,revisionSuffix:`revisão {{n}}`,memoryRelationships:`Relacionamentos de memória`,captureMemory:`Capturar uma memória`,editMemory:`Editar memória`,editorCreateHint:`Adicione conhecimento durável com metadados de recuperação.`,editorEditHint:`Atualize o conteúdo sem perder a procedência.`,createMemory:`Criar memória`,saveChanges:`Salvar alterações`,addAnchor:`Adicionar âncora`,noAnchors:`Ainda não há âncoras — adicione uma para melhorar a precisão da recuperação`,loadingGraph:`carregando grafo real…`,graphStats:`{{nodes}} nós · {{edges}} arestas`,lifecycleHeading:`Ciclo de vida da memória`,statusWaiting:`aguardando`,statusLive:`ao vivo · {{count}}/100`,noMatching:`Nenhuma memória correspondente`,buildGraph:`Construa seu grafo de memórias`,clearFilters:`Limpar filtros`,createFirst:`Criar primeira memória`,captureButton:`Capturar memória`,memoryCaptured:`Memória capturada.`,memoryUpdated:`Memória atualizada.`,liveStore:`armazenamento ao vivo`,reconnecting:`reconectando`,newMemory:`Nova memória`,hideFileDrawer:`Ocultar gaveta de memória de arquivo`,showFileDrawer:`Mostrar gaveta de memória de arquivo`,hideDrawer:`Ocultar gaveta`,showDrawer:`Mostrar gaveta`,editorCharCount:`{{count}} caracteres`,editorContentLabel:`Conteúdo da memória`,editorKind:`Tipo`,editorScope:`Escopo`,editorLifecycleStatus:`Status do ciclo de vida`,editorSupersedes:`Substitui`,editorContradicts:`Contradiz`,filterByStatus:`Filtrar por status`,filterByKind:`Filtrar por tipo`,graphHeading:`Mapa de relacionamentos`,graphHeadingFull:`Mapa de relacionamentos — {{id}}`,graphOpenFullscreen:`Abrir em tela cheia`,projectKnowledge:`conhecimento do projeto`,sageSubtitle:`Inspecione, conecte, organize e aposente o contexto durável usado entre sessões de agentes.`,emptyBody:`Selecione uma memória para inspecionar seus metadados e o mapa de relacionamentos, ou capture conhecimento que agentes futuros devem recuperar automaticamente.`,tabDeleted:`Excluídas`,fileDrawerLabel:`Gaveta de arquivos`,selectFilePlaceholder:`— selecione um arquivo —`,memoryCountSummary:`{{shown}} de {{total}} memórias`,updatedSortLabel:`atualizado ↓`,tabAllMemories:`Todas as memórias`,tabAllMemoriesHint:`Inspecionar, organizar, aposentar`,tabAudience:`Com público`,tabAudienceHint:`Orientação roteada para agentes`,editorRelationshipsHint:`Referencie IDs de memória exatos. As relações são validadas e as arestas do grafo são reconstruídas pelo SAGE.`,editorTaskTypes:`Tipos de tarefa`,createAction:`Criar`,mutationTimeout:`{{verb}} expirou. Seu rascunho continua aqui.`,loadingSageContent:`Carregando conteúdo SAGE`,injectorActiveInContext:`Ativo no contexto`,injectorInjectionHistory:`Histórico de injeções`,injectorContextTransitions:`Transições de contexto`,metaCreated:`Criada`,metaUpdated:`Atualizada`,metaLastAccessed:`Último acesso`,metaLastVerified:`Última verificação`,referencedUnavailable:`Memória referenciada indisponível`,emptyFiltered:`Altere os filtros ou limpe a consulta de pesquisa.`,emptyCapture:`Capture fatos duráveis, decisões, convenções e notas vinculadas a arquivos para cada agente.`,memoryUnavailable:`A memória está indisponível ou foi removida.`,staleConflicts:`obsoletas + conflitos`},je={enableLayer:`Habilitar esta camada de limite`,outsideScope:`Fora do escopo`,askPermission:`Pedir permissão`,alwaysBlock:`Bloquear sempre`,allow:`Permitir`,allowSelectors:`Permitir seletores`,denySelectors:`Negar seletores`,crossPathSelectors:`O shell “Permitir” é opaco e pode cruzar seletores de caminho.`,removeLayer:`Remover camada`,taskInspector:`Inspetor de tarefas`,task:`Tarefa`,dispatched:`Despachada`,collapseDetails:`Recolher detalhes da tarefa`,taskBoundary:`Limite da tarefa`,title:`Título`,managedStage:`Estágio gerenciado`,status:`Status`,priority:`Prioridade`,type:`Tipo`,labelsCommaSeparated:`Rótulos (separados por vírgula)`,dueDatePlaceholder:`Data de vencimento (ISO ou AAAA-MM-DD)`,estimatedHours:`Horas estimadas`,actualHours:`Horas reais`,selectBlockingTasks:`Selecionar tarefas bloqueadoras…`,selectSequentialChain:`Adicionar tarefas a uma cadeia sequencial…`,enforceChainOrder:`Impor ordem da cadeia como dependências`,assignmentReason:`Motivo da mudança/atribuição (persistido na atividade)`,managedLifecycle:`Transição de ciclo de vida gerenciado`,kanbanAgentTransition:`Transição do Agente Kanban`,completedAction:`Ação concluída / ação do revisor`,progressComment:`Comentário de progresso verdadeiro (obrigatório)`,evidenceUrl:`URL do anexo de evidência`,source:`Origem`,taskId:`ID da tarefa`,run:`Executar`,column:`Coluna`,primaryModelSource:`Origem do modelo principal`,selectProviderModel:`Selecionar provedor/modelo exato…`,fallbackProfile:`Perfil de fallback (o primeiro modelo é o principal)`,selectProfile:`Selecionar perfil configurado…`,fallbackModels:`Modelos de fallback`,addFallbackModel:`Adicionar modelo de fallback…`,role:`Função`,selectRole:`Selecione uma função…`,assignSkills:`Atribuir habilidades obrigatórias…`,restrictTools:`Restringir a ferramentas específicas…`,agentNameOptional:`Nome do agente (opcional)`,retryPolicy:`Política de retentativa`,maxAttempts:`Tentativas máximas`,costCeilingUsd:`Teto de custo em USD`,grantCapability:`Conceder uma capacidade…`,targetBoard:`Quadro de destino`,boardPresence:`Presença no quadro`,liveBoardUsers:`Usuários ativos no quadro`,kanbanAgent:`Agente Kanban`,watchThisBoard:`Observar este quadro`,supervisorEngine:`Motor supervisor`,kanbanAgentModelSource:`Origem do modelo do Agente Kanban`,supervisorSkills:`Habilidades do supervisor`,forceLoadSkills:`Carregar habilidades agenticas à força…`,extraFallbackModels:`Modelos de fallback extras`,optionalFallbacks:`Fallbacks ordenados opcionais…`,queueHealth:`Saúde da fila`,claimableTasks:`Tarefas reivindicáveis`,runningAssignments:`Atribuições em execução`,inReview:`Em revisão`,manuallyBlocked:`Bloqueadas manualmente`,failedTasks:`Tarefas com falha`,blockedByDeps:`Tarefas prontas/pendentes bloqueadas por dependências`,expiredLeases:`Atribuições com concessão expirada`,healthy:`saudável`,costCeilingSum:`Soma de costCeilingUsd para tarefas em execução/na fila`,liveRunSteer:`Execução ao vivo — conduza a partir daqui`,openLiveRun:`Abrir a visualização da execução ao vivo (SDD Hub)`,runAsLiveJob:`Executar este quadro como um trabalho de agente ao vivo:`,startAsGoal:`Iniciar como Meta`,startAsSdd:`Iniciar como SDD`,runControls:`Controles de execução`,workerModel:`Modelo do worker`,setModelForTask:`Definir modelo para esta tarefa…`,newWorkerName:`Novo nome do worker`,duration:`Duração`,liveRun:`Execução ao vivo`,lastResult:`Último resultado`,definitionOfDone:`Definição de Pronto`,failingChecks:`Verificações com falha`,evidenceMissing:`Evidência ausente (verificações de agente/conselho sem referências de apoio)`,needsDecomposition:`Precisa de decomposição`,decompositionPending:`Propostas de decomposição aguardando aprovação`,noOutstanding:`Nenhuma verificação pendente ou questão de decomposição neste quadro.`,kanban:`Kanban`,newBoard:`Novo quadro`,createBoard:`Criar quadro`,deleteTask:`Excluir tarefa`,runFailed:`execução falhou`,splitPendingApproval:`divisão pendente de aprovação`,newTask:`Nova tarefa`,addTask:`Adicionar tarefa`,newColumn:`Nova coluna`,addColumn:`Adicionar coluna`,duplicateBoard:`Duplicar quadro`,confirmDelete:`Confirmar?`,confirmDeleteBoard:`Clique novamente para confirmar a exclusão do quadro`,deleteBoard:`Excluir quadro`,boardBoundary:`Limite do quadro`,noBoardSelected:`Nenhum quadro kanban selecionado.`,expandDetails:`Expandir detalhes da tarefa`,elapsed:`Decorrido`,assigned:`Atribuído`,configuredAgentRoute:`a rota de agente configurada`,subagent:`Subagente`,checkedAgo:`verificado há {{ago}}`,notChecked:`não verificado`,auditInterval:`Intervalo de auditoria (segundos)`,statusReady:`pronto`,statusRunning:`em execução`,statusReview:`em revisão`,statusBlocked:`bloqueado`,statusFailed:`com falha`,statusBlockedByDeps:`bloqueado por dependências`,statusStale:`obsoleto`,runningCost:"~${{cost}} custo em execução",actionPause:`Pausar`,actionResume:`Retomar`,actionRetryFailed:`Repetir com falha`,actionStop:`Parar`,actionReassign:`Reatribuir`,actionRunNow:`Executar agora`,deleteTaskAria:`Excluir tarefa: {{title}}`,confirmDeleteTask:`Clique novamente para confirmar a exclusão da tarefa`,confirmDeleteTaskAria:`Confirmar exclusão: {{title}}`,moveTaskToColumn:`Mover {{title}} para a coluna`,activityNoteTemplate:`{{action}} do WebUI para {{target}}.`},Me={heading:`Trabalhos cron`,subtitle:`Tarefas recorrentes agendadas gerenciadas pelo plugin cron.`,statusDisabled:`Desativado`,statusOverdue:`Atrasado`,statusActive:`Ativo`,jobCount_one:`{{count}} trabalho`,jobCount_other:`{{count}} trabalhos`,enabledCount:`{{count}} ativados`,overdueCount:`{{count}} atrasados`,totalRuns:`{{count}} execuções no total`,maxConcurrent:`máx. {{count}} simultâneos`,emptyTitle:`Nenhum trabalho cron agendado.`,emptyUse:`Use`,emptyToAdd:`para adicionar um.`,thStatus:`Status`,thName:`Nome`,thInterval:`Intervalo`,thRuns:`Execuções`,thNextRun:`Próxima execução`,thLastRun:`Última execução`,thAction:`Ação`,lastFiredAtTitle:`Última ativação às {{time}}`,footerUse:`Use`,footerToAdd:`para adicionar,`,footerToRemove:`para remover.`},Ne={refreshRosterData:`Atualizar dados do roster`,liveEmpty:`Agentes aparecem aqui quando subagentes são iniciados`,fleetInspector:`Inspetor de Frota`,openAgentsPanel:`Abrir painel de agentes`,toolCalls:`Chamadas de ferramentas`,running:`Em execução`,projectAgents:`Agentes do Projeto`,createOrCloneTitle:`Criar ou Clonar Agente do Projeto`,createOrCloneHint:`Herde qualquer agente do roster como modelo e desenvolva uma identidade, política de runtime e histórico aprendido independentes.`,cloneFromRole:`Clonar a partir do papel do roster`,cloneHint:`Prompt, ferramentas, habilidades e padrões são herdados. O aprendizado e edições posteriores permanecem isolados ao novo agente.`,displayName:`Nome de exibição`,descriptionPlaceholder:`Domine os fluxos de trabalho X, Y e Z deste projeto e verifique seus resultados.`,creating:`Criando…`,noCustomizations:`Nenhuma personalização ainda`,selectAgentEmpty:`Selecione um agente para editar personalizações`,saving:`Salvando…`,saveFailed:`Falha ao salvar`,failed:`Falhou`,learningResumed:`Aprendizado automático retomado`,optimizationEmptyToast:`A otimização produziu um resultado vazio. Tente novamente.`,noActiveModelToast:`Nenhum modelo ativo no servidor. Otimização enviada ao agente de chat.`,learningsEmpty:`As entradas de aprendizado aparecem quando os agentes capturam saída`,allRosterAgents:`Todos os Agentes do Roster`,optimizing:`Otimizando…`,paused:`pausado`,selectLearningAgent:`Selecione um agente para ver detalhes de aprendizado`,learningOn:`Aprendizado ativado`,lastCapture:`Última captura`,lifetimeCaptures:`Capturas totais`,learningsLimitExceeded:`Os dados aprendidos excedem o limite flexível ({{bytes}}B / 8.192B). Otimize para sintetizar as entradas brutas em um documento consolidado e reduzir o volume de contexto.`,newPending:`novo pendente`,viewAction:`Visualizar`,applying:`Aplicando…`,searchPlaceholder:`Buscar agentes por nome, papel ou descrição…`,maxIterations:`Máx. de iterações`,maxToolCalls:`Máx. de chamadas de ferramentas`,projectCustomizations:`Personalizações do Projeto`,learnedEntries:`entradas aprendidas`,teachFailed:`Falha ao ensinar`,selectRoleEmpty:`Selecione um papel para inspecionar ou editar`,captureLearned:`Capturar aprendido`,teachThisAgent:`Ensinar este agente`,teachPlaceholder:`Descreva o que você quer que este agente faça melhor… ex.: 'Este agente deve sempre verificar versões no npm antes de recomendar'`,heading:`Elenco de agentes`,headerSummary:`{{customized}} personalizados · {{entries}} entradas aprendidas`,tabLive:`Frota ao vivo`,tabCatalog:`Catálogo do elenco`,tabLearning:`Autoaprendizagem`,tabCustomize:`Personalização`,learning:`aprendendo`,learningPaused:`Aprendizagem pausada`,autoLearningPaused:`Aprendizagem automática pausada`,toolsCount_one:`{{count}} ferramenta`,toolsCount_other:`{{count}} ferramentas`,maxItShort:`máx. {{value}} iter.`,customizedBadge:`Personalizado`,needsSummary:`⚠ Precisa de resumo`,timeout:`Tempo limite`,learnedEntriesCount_one:`{{count}} entrada aprendida`,learnedEntriesCount_other:`{{count}} entradas aprendidas`,sessionCapturesCount_one:`{{count}} captura de sessão`,sessionCapturesCount_other:`{{count}} capturas de sessão`,noAgentsMatch:`Nenhum agente corresponde a "{{query}}"`,footerRosterRoles_one:`função do elenco`,footerRosterRoles_other:`funções do elenco`,footerCustomized:`personalizados`,footerTotalLearned_one:`entrada aprendida no total`,footerTotalLearned_other:`entradas aprendidas no total`,clone:`+ Clonar`,abc:`ABC`,abcGeneratedFromName:`abc (gerado a partir do nome)`,roleIdOptional:`ID da função (opcional)`,purpose:`Finalidade`,taskTypesCommaOrOnePer:`Tipos de tarefa (separados por vírgula ou um por linha)`,cancel:`Cancelar`,selectAnAgentToEditCustomizations:`Selecione um agente para editar as personalizações`,llmImprove:`Melhoria por LLM`,reset:`Redefinir`,editIdentityMd:`Editar identity.md`,editLearnedMd:`Editar learned.md`,editConfigJson:`Editar config.json`,runtimePolicy:`Política de runtime`,retry:`Tentar novamente`,noSelfLearningDataYet:`Ainda não há dados de autoaprendizagem`,review:`revisar →`,selectAnAgentToViewLearning:`Selecione um agente para ver os detalhes de aprendizagem`,entries:`Entradas`,size:`Tamanho`,optimizeLearnings:`Otimizar aprendizados`,keep:`Manter`,drop:`Descartar`,describeACommandPatternOrBehavior:`Descreva um comando, padrão ou comportamento que este agente deve lembrar.`,eGAlwaysUsePnpmForThisProject:`ex.: Sempre use pnpm neste projeto`,teach:`Ensinar`,noActiveFleetAgents:`Nenhum agente de frota ativo`,clear:`Limpar`,agentsTotal:`agentes no total`,leader:`Líder`,iterations:`Iterações`,cost:`Custo`,context:`Contexto`,contextWindow:`Janela de contexto`,error:`Erro`,filterAll:`Todos ({{count}})`,filterRunning:`Em execução ({{count}})`,filterDone:`Concluído ({{count}})`,filterFailed:`Falharam ({{count}})`,optimizeAll:`Otimizar tudo ({{count}})`,policyUpdateFailed:`Falha ao atualizar a política`,noRawEntries:`Ainda não há entradas brutas para otimizar.`,optimizedOk:`Otimizado. Conhecimento consolidado atualizado.`,emptySynthesis:`O modelo retornou um resultado vazio. Nada foi alterado — tente novamente.`,consolidatedWithModel:`Aprendizados consolidados com {{model}}.`,consolidatedPlain:`Aprendizados consolidados.`,resetConfirm:`Redefinir todos os dados específicos do projeto do agente "{{role}}"?`,loadCustomizationFailed:`Falha ao carregar a personalização`,loadRuntimePolicyFailed:`Falha ao carregar a política de runtime`,runtimePolicySaveFailed:`Falha ao salvar a política de runtime`,llmImprovementFailed:`Falha na melhoria por LLM`,agentCreationFailed:`Falha ao criar o agente`,noActiveModelMsg:`Nenhum modelo ativo no servidor — a otimização foi enviada ao agente de chat.`,optimizationFailed:`Falha na otimização`,bulkOptimizationFailed:`Falha na otimização em massa`,taskTypesPlaceholder:`Fluxo X
6
6
  Análise Y
7
7
  Verificação Z`},Pe={generic:{name:`Agente de projeto genérico`,summary:`Modelo flexível que pode ser clonado em funções de projeto com aprendizado independente.`},"audit-log":{name:`Log de auditoria`,summary:`Analisa logs de sessão, fluxos de eventos e rastros do sistema.`},"bug-hunter":{name:`Caçador de bugs`,summary:`Verifica o código em busca de bugs, code smells e antipadrões.`},"refactor-planner":{name:`Planejador de refatoração`,summary:`Analisa a estrutura do código e produz planos de refatoração em fases.`},"security-scanner":{name:`Scanner de segurança`,summary:`Verifica código, configurações e dependências em busca de problemas de segurança.`},critic:{name:`Crítico`,summary:`Avalia decisões, planos e implementações.`},"shadow-agent":{name:`Agente sombra`,summary:`Agente de monitoramento em segundo plano que observa a saúde da frota.`},executor:{name:`Executor`,summary:`Executor de tarefas de uso geral para trabalho delegado.`},chimera:{name:`Chimera`,summary:`Revisão de qualidade do código dos arquivos alterados após a sessão.`},researcher:{name:`Pesquisador`,summary:`Especialista em pesquisa na web e coleta de dados.`},"tech-stack":{name:`Validador de stack tecnológico`,summary:`Valida escolhas de pacotes, bibliotecas e frameworks.`},orchestrator:{name:`Orquestrador`,summary:`Coordena a execução de tarefas multiagente.`},supervisor:{name:`Supervisor`,summary:`Supervisiona a execução de subagentes e trata escalonamentos.`},"quality-gate":{name:`Portão de qualidade`,summary:`Aplica portões de qualidade às implementações.`},architect:{name:`Arquiteto`,summary:`Toma decisões de design e arquitetura.`},"prompt-engineer":{name:`Engenheiro de prompts`,summary:`Projeta e otimiza prompts de sistema.`},mnemosyne:{name:`Mnemosyne`,summary:`Curador de memória — revisa e mantém a integridade do SAGE.`},autophase:{name:`AutoPhase`,summary:`Gerencia a execução autônoma de tarefas em múltiplas fases.`}},Fe={heading:`Elenco personalizado`,loading:`Carregando elenco personalizado…`,loadFailed:`Falha ao carregar o elenco`,invalidJson:`JSON inválido`,noImprovement:`Nenhuma sugestão de melhoria gerada.`,improveFailed:`Falha na melhoria por LLM`,behaviorSaved:`Comportamento salvo em learned.md`,saveFailedServer:`Falha ao salvar — veja os logs do servidor`,emptyTitle:`Nenhum agente de elenco personalizado`,emptyBody:`Agentes específicos do projeto aparecem aqui quando você cria ou edita arquivos em`,createExecutorIdentity:`+ Criar identidade do executor`,entries:`Entradas`,size:`Tamanho`,sessionCaptures:`Capturas de sessão`,editIdentity:`Editar identity.md`,editLearned:`Editar learned.md`,editConfig:`Editar config.json`,reviewEntries:`Revisar entradas ({{count}})`,reviewLearnedEntries:`Revisar entradas aprendidas ({{kept}}/{{total}} mantidas)`,applySelection:`Aplicar seleção`,keep:`✓ Manter`,drop:`✗ Descartar`,identityPlaceholder:`# Identidade de projeto para {{role}}
@@ -1 +1 @@
1
- import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{H as t,ct as n,lt as r,za as i}from"./vendor-BuarzSSb.js";import{t as a}from"./utils-B-9lSDIn.js";var o=e(i(),1),s=r(),c=t(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-[background-color,border-color,color,box-shadow,transform] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 active:translate-y-px`,{variants:{variant:{default:`bg-primary text-primary-foreground shadow-sm shadow-primary/15 hover:bg-primary/90 hover:shadow-md hover:shadow-primary/20`,destructive:`bg-destructive text-destructive-foreground shadow-sm shadow-destructive/15 hover:bg-destructive/90`,outline:`border border-input bg-card/70 shadow-sm hover:border-primary/35 hover:bg-accent/70 hover:text-accent-foreground`,secondary:`border border-border/60 bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80`,ghost:`hover:bg-accent/70 hover:text-accent-foreground`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-10 px-4 py-2`,sm:`h-9 rounded-md px-3`,lg:`h-11 rounded-md px-8`,icon:`h-10 w-10`}},defaultVariants:{variant:`default`,size:`default`}}),l=o.forwardRef(({className:e,variant:t,size:r,asChild:i=!1,...o},l)=>(0,s.jsx)(i?n:`button`,{className:a(c({variant:t,size:r,className:e})),ref:l,...o}));l.displayName=`Button`;export{l as t};
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{Ba as t,H as n,ct as r,lt as i}from"./vendor-GiKfK4Iw.js";import{t as a}from"./utils-CUCQrODG.js";var o=e(t(),1),s=i(),c=n(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-[background-color,border-color,color,box-shadow,transform] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 active:translate-y-px`,{variants:{variant:{default:`bg-primary text-primary-foreground shadow-sm shadow-primary/15 hover:bg-primary/90 hover:shadow-md hover:shadow-primary/20`,destructive:`bg-destructive text-destructive-foreground shadow-sm shadow-destructive/15 hover:bg-destructive/90`,outline:`border border-input bg-card/70 shadow-sm hover:border-primary/35 hover:bg-accent/70 hover:text-accent-foreground`,secondary:`border border-border/60 bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80`,ghost:`hover:bg-accent/70 hover:text-accent-foreground`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-10 px-4 py-2`,sm:`h-9 rounded-md px-3`,lg:`h-11 rounded-md px-8`,icon:`h-10 w-10`}},defaultVariants:{variant:`default`,size:`default`}}),l=o.forwardRef(({className:e,variant:t,size:n,asChild:i=!1,...o},l)=>(0,s.jsx)(i?r:`button`,{className:a(c({variant:t,size:n,className:e})),ref:l,...o}));l.displayName=`Button`;export{l as t};
@@ -1,4 +1,4 @@
1
- import{Ma as e,Na as t}from"./vendor-BuarzSSb.js";import{n}from"./utils-B-9lSDIn.js";function r(e,t){if(e==null){let e=Error(t?`Expected ${t} to be defined`:`Expected value to be defined`);throw e.name=`ExpectDefinedError`,e}return e}function i(e){return e!==`tool_use`&&e!==`tool_call`}var a=/<nextsteps\b[^>]*>\s*\n+/i,o=/^(?:(\d+)[.)]\s*|[-*•]\s*)(.+?)(\s+auto="true")?$/,s=6;function c(e,t=!1,n=!0){return n?d(e,t):u(e)}function l(e,t,n,r){e.push(r?{index:t,text:n,auto:!0}:{index:t,text:n})}function u(e){let t=e.split(`
1
+ import{Na as e,Pa as t}from"./vendor-GiKfK4Iw.js";import{n}from"./utils-CUCQrODG.js";function r(e,t){if(e==null){let e=Error(t?`Expected ${t} to be defined`:`Expected value to be defined`);throw e.name=`ExpectDefinedError`,e}return e}function i(e){return e!==`tool_use`&&e!==`tool_call`}var a=/<nextsteps\b[^>]*>\s*\n+/i,o=/^(?:(\d+)[.)]\s*|[-*•]\s*)(.+?)(\s+auto="true")?$/,s=6;function c(e,t=!1,n=!0){return n?d(e,t):u(e)}function l(e,t,n,r){e.push(r?{index:t,text:n,auto:!0}:{index:t,text:n})}function u(e){let t=e.split(`
2
2
  `),n=[],r=new Set;for(let e of t){let t=e.trim();if(!t)continue;let i=o.exec(t);if(!i)continue;let a=i[1],c=i[2].trim(),u;if(u=a===void 0?n.length+1:Number.parseInt(a,10),r.has(u))continue;r.add(u);let d=!!i[3]&&n.length===0&&u===1;if(l(n,u,c,d),n.length>=s)break}return{steps:n,texts:n.map(e=>e.text),stripped:e,autoTexts:n.filter(e=>e.auto).map(e=>e.text)}}function d(e,t){let n=a.exec(e);if(!n)return{steps:[],texts:[],stripped:e,autoTexts:[]};let r=n.index+n[0].length,i=e.slice(r),c=i.split(`
3
3
  `),u=[],d=new Set;for(let e of c){let t=e.trim();if(!t)continue;let n=o.exec(t);if(!n)break;let r=n[1],i=n[2].trim(),a;if(a=r===void 0?u.length+1:Number.parseInt(r,10),d.has(a))continue;d.add(a);let c=!!n[3]&&u.length===0&&a===1;if(l(u,a,i,c),u.length>=s)break}if(u.length===0||!i.includes(`</nextsteps>`))return{steps:[],texts:[],stripped:e,autoTexts:[]};let p=u.map(e=>e.text),m=u.filter(e=>e.auto).map(e=>e.text),h=n.index,g=n[0].length+f(i,u.length);return{steps:u,texts:p,stripped:(e.slice(0,h)+e.slice(h+g)).replace(/\n{3,}/g,`
4
4
 
@@ -1 +1 @@
1
- import{Na as e}from"./vendor-BuarzSSb.js";var t=8e3,n=2500,r=30*6e4,i=200,a=500,o={read:`read`,read_file:`read`,write:`write`,write_file:`write`,edit:`edit`,patch:`edit`,apply_patch:`edit`,replace:`edit`,delete:`delete`,delete_file:`delete`,remove:`delete`,grep:`search`,glob:`search`,search:`search`,"codebase-search":`search`,"codebase-index":`index`,remember:`memory`,forget:`memory`,memory_search:`memory`,memory_update:`memory`,memory_delete:`memory`};function s(e,t=``){return e===`rename`?`edit`:e in{read:1,write:1,edit:1,delete:1,search:1}?e:o[t]}function c(e){let t=[];for(let n of[`path`,`file`,`filePath`,`target`]){let r=e[n];typeof r==`string`&&t.push(r)}let n=e.files;if(typeof n==`string`&&t.push(n),Array.isArray(n))for(let e of n)typeof e==`string`&&t.push(e);return[...new Set(t)]}function l(e,t){let n=typeof t.old_string==`string`?t.old_string.trim():``,r=typeof t.new_string==`string`?t.new_string.trim():``;if(n||r)return`${n.replace(/\s+/g,` `).slice(0,42)||`∅`} → ${r.replace(/\s+/g,` `).slice(0,42)||`∅`}`;if(typeof t.patch==`string`){let n=d(t);return`${e} +${n?.added??0} −${n?.removed??0}`}let i=typeof t.content==`string`?t.content:void 0;if(i!==void 0){let t=i.length===0?0:i.split(/\r?\n/).length;return`${e} ${t} line${t===1?``:`s`}`}for(let e of[`query`,`pattern`,`old_string`,`new_string`,`text`,`command`]){let n=t[e];if(typeof n==`string`&&n.trim()){let t=n.trim().replace(/\s+/g,` `).slice(0,96);return e===`query`?`"${t}"`:e===`pattern`?`/${t}/`:e===`command`?`$ ${t}`:t}}return e}function u(e){return e.trim().replace(/\s+/g,` `).slice(0,72)}function d(e){let t=typeof e.old_string==`string`?e.old_string:void 0,n=typeof e.new_string==`string`?e.new_string:void 0;if(t!==void 0||n!==void 0){let e=t?t.split(/\r?\n/).length:0;return{added:n?n.split(/\r?\n/).length:0,removed:e,...t?{before:u(t)}:{},...n?{after:u(n)}:{}}}let r=typeof e.patch==`string`?e.patch:void 0;if(r){let e=r.split(/\r?\n/),t=e.filter(e=>e.startsWith(`+`)&&!e.startsWith(`+++`)),n=e.filter(e=>e.startsWith(`-`)&&!e.startsWith(`---`));return{added:t.length,removed:n.length,...n[0]?{before:u(n[0].slice(1))}:{},...t[0]?{after:u(t[0].slice(1))}:{}}}let i=typeof e.content==`string`?e.content:void 0;if(i!==void 0)return{added:i.length===0?0:i.split(/\r?\n/).length,removed:0,...i?{after:u(i)}:{}}}function f(e){let t=e.status??`observed`;return{...e,id:e.id??`${e.toolUseId??`event`}:${e.filePath}:${e.timestamp}`,status:t,source:e.source??`legacy`,agentName:e.agentName??e.agent,agent:e.agent??e.agentName}}function p(e,t){let n=e.get(t.filePath)??[];if(e.set(t.filePath,[t,...n].slice(0,i)),e.size<=a)return;let r=[...e.entries()].sort((e,t)=>(e[1][0]?.timestamp??0)-(t[1][0]?.timestamp??0))[0]?.[0];r&&e.delete(r)}function m(e){return`${e.sessionId??`unscoped`}:${e.agentId??e.agentName??e.agent??`external`}`}function h(e){let t=new Map;for(let n of e){let e=n.agentId??`external`,r=n.agentName??n.agent??`External process`,i=n.sessionId??`unscoped`,a=m(n),o=t.get(a);o?(o.operations.push(n),o.startedAt=Math.min(o.startedAt,n.timestamp)):t.set(a,{key:a,agentId:e,agentName:r,sessionId:i,operations:[n],startedAt:n.timestamp})}return[...t.values()].sort((e,t)=>e.startedAt-t.startedAt)}function g(e,t,n){let r=String(e.name??`unknown`),i=e.input&&typeof e.input==`object`?e.input:{},a=Date.now(),o=String(e.id??`${r}:${a}`),c=d(i);return(t.length>0?t:[{filePath:`(tool:${r})`,operation:`execute`}]).map((u,d)=>({id:`${o}:${d}`,toolUseId:o,filePath:u.filePath,type:u.operation===`execute`?`execute`:s(u.operation,r)??`edit`,toolName:r,summary:l(r,i),timestamp:a,status:n,source:`tool`,attribution:t.length>0?`exact`:`correlated`,...c?{change:c}:{},sessionId:typeof e.sessionId==`string`?e.sessionId:void 0,traceId:typeof e.traceId==`string`?e.traceId:void 0,agentId:typeof e.agentId==`string`?e.agentId:`leader`,agentName:typeof e.agentName==`string`?e.agentName:`LEADER`,...u.line?{line:u.line}:{},...u.endLine?{endLine:u.endLine}:{}}))}function _(e){let t=e.payload??{};if(e.type===`tool.started`||e.type===`tool.executed`||e.type===`codemap.tool_started`||e.type===`codemap.tool_executed`)return g(t,Array.isArray(t.fileTargets)?t.fileTargets:c(t.input&&typeof t.input==`object`?t.input:{}).map(e=>({filePath:e,operation:o[String(t.name??``)]??`edit`})),e.type===`tool.started`||e.type===`codemap.tool_started`?`active`:`completed`);if(e.type===`provider.response`){let e=t.blocks;if(!Array.isArray(e))return[];let n=[];for(let t of e){if(!t||typeof t!=`object`)continue;let e=t;if(e.type!==`tool_use`)continue;let r=String(e.name??``),i=o[r];if(!i)continue;let a=e.input&&typeof e.input==`object`?e.input:{},s=c(a),u=Date.now();s.length===0&&(i===`memory`||i===`search`||i===`index`)&&s.push(`(global)`);for(let e of s)n.push({filePath:e,type:i,toolName:r,summary:l(r,a),timestamp:u})}return n}if(e.type===`tool.progress`){let e=t.event&&typeof t.event==`object`?t.event:void 0;if(e?.type!==`file_changed`||typeof e.path!=`string`)return[];let n=String(e.operation??`edit`);return[{id:`${String(t.id??`progress`)}:${e.path}:${Date.now()}`,toolUseId:typeof t.id==`string`?t.id:void 0,filePath:e.path,type:s(n)??`edit`,toolName:String(t.name??`deterministic-tool`),summary:String(e.text??`tool reported file change`),timestamp:Date.now(),status:`active`,source:`deterministic`,sessionId:typeof t.sessionId==`string`?t.sessionId:void 0,traceId:typeof t.traceId==`string`?t.traceId:void 0,agentId:typeof t.agentId==`string`?t.agentId:void 0,agentName:typeof t.agentName==`string`?t.agentName:void 0,line:typeof e.line==`number`?e.line:void 0,endLine:typeof e.endLine==`number`?e.endLine:void 0,attribution:`exact`}]}if(e.type===`codemap.file_event`){let e=s(String(t.operation??`edit`))??`edit`;return typeof t.filePath==`string`?[{filePath:t.filePath,type:e,toolName:typeof t.toolName==`string`?t.toolName:String(t.source??`watcher`),summary:`${String(t.source??`external`)} ${String(t.operation??`changed`)}`,timestamp:typeof t.at==`number`?t.at:Date.now(),status:t.phase===`started`?`active`:`observed`,source:t.source??`external`,sessionId:typeof t.sessionId==`string`?t.sessionId:void 0,traceId:typeof t.traceId==`string`?t.traceId:void 0,agentId:typeof t.agentId==`string`?t.agentId:void 0,agentName:typeof t.agentName==`string`?t.agentName:void 0,toolUseId:typeof t.toolUseId==`string`?t.toolUseId:void 0,line:typeof t.line==`number`?t.line:void 0,endLine:typeof t.endLine==`number`?t.endLine:void 0}]:[]}return e.type===`file.saved`&&typeof t.filePath==`string`?[{filePath:t.filePath,type:`write`,toolName:`save`,summary:``,timestamp:Date.now(),source:`editor`}]:e.type===`memory.event`&&typeof t.event==`string`?[{filePath:`(memory)`,type:`memory`,toolName:`memory.${t.event}`,summary:String(t.memoryId??``),timestamp:Date.now()}]:[]}var v=e((e,i)=>({history:new Map,pulses:new Map,activeOperations:new Map,totalCount:0,recordActivity(n){let r=f(n);e(e=>{let n=new Map(e.history),i=new Map(e.pulses);return p(n,r),i.set(r.filePath,Date.now()+t),{history:n,pulses:i,totalCount:e.totalCount+1}})},startActivities(n){if(n.length===0)return;let r=n.map(e=>f({...e,status:`active`}));e(e=>{let n=new Map(e.history),i=new Map(e.pulses),a=new Map(e.activeOperations);for(let e of r)if(p(n,e),i.set(e.filePath,Date.now()+t),e.toolUseId){let t=a.get(e.toolUseId)??[];a.set(e.toolUseId,[...t,e])}return{history:n,pulses:i,activeOperations:a,totalCount:e.totalCount+r.length}})},finishTool(n,r){let i=r.timestamp??Date.now();e(e=>{let a=e.activeOperations.get(n)??[];if(a.length===0)return e;let o=new Map(e.history),s=new Map(e.pulses);for(let e of a){let a=o.get(e.filePath)??[];o.set(e.filePath,a.map(e=>e.toolUseId===n?{...e,status:r.ok?`completed`:`failed`,ok:r.ok,completedAt:i,durationMs:r.durationMs??i-e.timestamp}:e)),s.set(e.filePath,Date.now()+t)}let c=new Map(e.activeOperations);return c.delete(n),{history:o,pulses:s,activeOperations:c}})},recordFileEvent(r){let i=f({...r,attribution:r.attribution??(r.agentId?`exact`:`external`)});e(e=>{let r=(e.history.get(i.filePath)??[]).find(e=>e.source!==`watcher`&&e.source!==`external`&&Math.abs(i.timestamp-e.timestamp)<=n);if(r){let n=new Map(e.history);n.set(i.filePath,(n.get(i.filePath)??[]).map(e=>e.id===r.id?{...e,watcherConfirmed:e.watcherConfirmed||i.source===`watcher`||i.source===`editor`}:e));let a=new Map(e.pulses);return a.set(i.filePath,Date.now()+t),{history:n,pulses:a}}let a=i.toolUseId?e.activeOperations.get(i.toolUseId):void 0;if(a&&a.length>0){let n=a[0],r=f({...i,status:`active`,source:i.source??`deterministic`,sessionId:i.sessionId??n.sessionId,traceId:i.traceId??n.traceId,agentId:i.agentId??n.agentId,agentName:i.agentName??n.agentName,agent:i.agent??n.agent,attribution:`exact`}),o=new Map(e.history),s=new Map(e.pulses),c=new Map(e.activeOperations);return p(o,r),s.set(r.filePath,Date.now()+t),c.set(i.toolUseId,[...a,r]),{history:o,pulses:s,activeOperations:c,totalCount:e.totalCount+1}}let o=[...e.activeOperations.values()].flat().filter(e=>e.filePath.startsWith(`(tool:`)&&Math.abs(i.timestamp-e.timestamp)<=3e5);if(o.length===1){let n=o[0],r=f({...i,id:`${n.toolUseId}:${i.filePath}:${i.timestamp}`,toolUseId:n.toolUseId,toolName:n.toolName,summary:`${n.toolName} → filesystem ${i.type}`,status:`active`,source:`deterministic`,sessionId:n.sessionId,traceId:n.traceId,agentId:n.agentId,agentName:n.agentName,agent:n.agent,watcherConfirmed:!0,attribution:`correlated`}),a=new Map(e.history),s=new Map(e.pulses),c=new Map(e.activeOperations);if(p(a,r),s.set(r.filePath,Date.now()+t),r.toolUseId){let e=c.get(r.toolUseId)??[];c.set(r.toolUseId,[...e,r])}return{history:a,pulses:s,activeOperations:c,totalCount:e.totalCount+1}}let s=new Map(e.history),c=new Map(e.pulses);return p(s,i),c.set(i.filePath,Date.now()+t),{history:s,pulses:c,totalCount:e.totalCount+1}})},resolveActivitySymbol(t,n,r){e(e=>{let i=new Map(e.history);i.set(n,(i.get(n)??[]).map(e=>e.toolUseId===t?{...e,symbol:r}:e));let a=new Map(e.activeOperations),o=a.get(t);return o&&a.set(t,o.map(e=>e.filePath===n?{...e,symbol:r}:e)),{history:i,activeOperations:a}})},getActivityForFile(e){return i().history.get(e)??[]},getActiveForFile(e){return[...i().activeOperations.values()].flat().filter(t=>t.filePath===e)},getActiveOperations(){return[...i().activeOperations.values()].flat()},getAgentPresences(){return h(i().getActiveOperations())},getPulsingFiles(){return i()._sweep(),new Set(i().pulses.keys())},getPulseType(e){if(i()._sweep(),i().pulses.has(e))return i().history.get(e)?.[0]?.type},clear(){e({history:new Map,pulses:new Map,activeOperations:new Map,totalCount:0})},_sweep(){let t=Date.now(),n=[...i().pulses].filter(([,e])=>e<t).map(([e])=>e),a=[...i().activeOperations].filter(([,e])=>e.every(e=>t-e.timestamp>r)).map(([e])=>e);n.length===0&&a.length===0||e(e=>{let r=new Map(e.pulses);for(let e of n)r.delete(e);if(a.length===0)return{pulses:r};let i=new Map(e.history),o=new Map(e.activeOperations);for(let e of a){for(let n of o.get(e)??[])i.set(n.filePath,(i.get(n.filePath)??[]).map(n=>n.toolUseId===e?{...n,status:`failed`,ok:!1,completedAt:t,durationMs:t-n.timestamp,summary:`${n.summary||n.toolName} · telemetry timeout`}:n));o.delete(e)}return{pulses:r,history:i,activeOperations:o}})}}));export{v as i,_ as n,h as r,m as t};
1
+ import{Pa as e}from"./vendor-GiKfK4Iw.js";var t=8e3,n=2500,r=30*6e4,i=200,a=500,o={read:`read`,read_file:`read`,write:`write`,write_file:`write`,edit:`edit`,patch:`edit`,apply_patch:`edit`,replace:`edit`,delete:`delete`,delete_file:`delete`,remove:`delete`,grep:`search`,glob:`search`,search:`search`,"codebase-search":`search`,"codebase-index":`index`,remember:`memory`,forget:`memory`,memory_search:`memory`,memory_update:`memory`,memory_delete:`memory`};function s(e,t=``){return e===`rename`?`edit`:e in{read:1,write:1,edit:1,delete:1,search:1}?e:o[t]}function c(e){let t=[];for(let n of[`path`,`file`,`filePath`,`target`]){let r=e[n];typeof r==`string`&&t.push(r)}let n=e.files;if(typeof n==`string`&&t.push(n),Array.isArray(n))for(let e of n)typeof e==`string`&&t.push(e);return[...new Set(t)]}function l(e,t){let n=typeof t.old_string==`string`?t.old_string.trim():``,r=typeof t.new_string==`string`?t.new_string.trim():``;if(n||r)return`${n.replace(/\s+/g,` `).slice(0,42)||`∅`} → ${r.replace(/\s+/g,` `).slice(0,42)||`∅`}`;if(typeof t.patch==`string`){let n=d(t);return`${e} +${n?.added??0} −${n?.removed??0}`}let i=typeof t.content==`string`?t.content:void 0;if(i!==void 0){let t=i.length===0?0:i.split(/\r?\n/).length;return`${e} ${t} line${t===1?``:`s`}`}for(let e of[`query`,`pattern`,`old_string`,`new_string`,`text`,`command`]){let n=t[e];if(typeof n==`string`&&n.trim()){let t=n.trim().replace(/\s+/g,` `).slice(0,96);return e===`query`?`"${t}"`:e===`pattern`?`/${t}/`:e===`command`?`$ ${t}`:t}}return e}function u(e){return e.trim().replace(/\s+/g,` `).slice(0,72)}function d(e){let t=typeof e.old_string==`string`?e.old_string:void 0,n=typeof e.new_string==`string`?e.new_string:void 0;if(t!==void 0||n!==void 0){let e=t?t.split(/\r?\n/).length:0;return{added:n?n.split(/\r?\n/).length:0,removed:e,...t?{before:u(t)}:{},...n?{after:u(n)}:{}}}let r=typeof e.patch==`string`?e.patch:void 0;if(r){let e=r.split(/\r?\n/),t=e.filter(e=>e.startsWith(`+`)&&!e.startsWith(`+++`)),n=e.filter(e=>e.startsWith(`-`)&&!e.startsWith(`---`));return{added:t.length,removed:n.length,...n[0]?{before:u(n[0].slice(1))}:{},...t[0]?{after:u(t[0].slice(1))}:{}}}let i=typeof e.content==`string`?e.content:void 0;if(i!==void 0)return{added:i.length===0?0:i.split(/\r?\n/).length,removed:0,...i?{after:u(i)}:{}}}function f(e){let t=e.status??`observed`;return{...e,id:e.id??`${e.toolUseId??`event`}:${e.filePath}:${e.timestamp}`,status:t,source:e.source??`legacy`,agentName:e.agentName??e.agent,agent:e.agent??e.agentName}}function p(e,t){let n=e.get(t.filePath)??[];if(e.set(t.filePath,[t,...n].slice(0,i)),e.size<=a)return;let r=[...e.entries()].sort((e,t)=>(e[1][0]?.timestamp??0)-(t[1][0]?.timestamp??0))[0]?.[0];r&&e.delete(r)}function m(e){return`${e.sessionId??`unscoped`}:${e.agentId??e.agentName??e.agent??`external`}`}function h(e){let t=new Map;for(let n of e){let e=n.agentId??`external`,r=n.agentName??n.agent??`External process`,i=n.sessionId??`unscoped`,a=m(n),o=t.get(a);o?(o.operations.push(n),o.startedAt=Math.min(o.startedAt,n.timestamp)):t.set(a,{key:a,agentId:e,agentName:r,sessionId:i,operations:[n],startedAt:n.timestamp})}return[...t.values()].sort((e,t)=>e.startedAt-t.startedAt)}function g(e,t,n){let r=String(e.name??`unknown`),i=e.input&&typeof e.input==`object`?e.input:{},a=Date.now(),o=String(e.id??`${r}:${a}`),c=d(i);return(t.length>0?t:[{filePath:`(tool:${r})`,operation:`execute`}]).map((u,d)=>({id:`${o}:${d}`,toolUseId:o,filePath:u.filePath,type:u.operation===`execute`?`execute`:s(u.operation,r)??`edit`,toolName:r,summary:l(r,i),timestamp:a,status:n,source:`tool`,attribution:t.length>0?`exact`:`correlated`,...c?{change:c}:{},sessionId:typeof e.sessionId==`string`?e.sessionId:void 0,traceId:typeof e.traceId==`string`?e.traceId:void 0,agentId:typeof e.agentId==`string`?e.agentId:`leader`,agentName:typeof e.agentName==`string`?e.agentName:`LEADER`,...u.line?{line:u.line}:{},...u.endLine?{endLine:u.endLine}:{}}))}function _(e){let t=e.payload??{};if(e.type===`tool.started`||e.type===`tool.executed`||e.type===`codemap.tool_started`||e.type===`codemap.tool_executed`)return g(t,Array.isArray(t.fileTargets)?t.fileTargets:c(t.input&&typeof t.input==`object`?t.input:{}).map(e=>({filePath:e,operation:o[String(t.name??``)]??`edit`})),e.type===`tool.started`||e.type===`codemap.tool_started`?`active`:`completed`);if(e.type===`provider.response`){let e=t.blocks;if(!Array.isArray(e))return[];let n=[];for(let t of e){if(!t||typeof t!=`object`)continue;let e=t;if(e.type!==`tool_use`)continue;let r=String(e.name??``),i=o[r];if(!i)continue;let a=e.input&&typeof e.input==`object`?e.input:{},s=c(a),u=Date.now();s.length===0&&(i===`memory`||i===`search`||i===`index`)&&s.push(`(global)`);for(let e of s)n.push({filePath:e,type:i,toolName:r,summary:l(r,a),timestamp:u})}return n}if(e.type===`tool.progress`){let e=t.event&&typeof t.event==`object`?t.event:void 0;if(e?.type!==`file_changed`||typeof e.path!=`string`)return[];let n=String(e.operation??`edit`);return[{id:`${String(t.id??`progress`)}:${e.path}:${Date.now()}`,toolUseId:typeof t.id==`string`?t.id:void 0,filePath:e.path,type:s(n)??`edit`,toolName:String(t.name??`deterministic-tool`),summary:String(e.text??`tool reported file change`),timestamp:Date.now(),status:`active`,source:`deterministic`,sessionId:typeof t.sessionId==`string`?t.sessionId:void 0,traceId:typeof t.traceId==`string`?t.traceId:void 0,agentId:typeof t.agentId==`string`?t.agentId:void 0,agentName:typeof t.agentName==`string`?t.agentName:void 0,line:typeof e.line==`number`?e.line:void 0,endLine:typeof e.endLine==`number`?e.endLine:void 0,attribution:`exact`}]}if(e.type===`codemap.file_event`){let e=s(String(t.operation??`edit`))??`edit`;return typeof t.filePath==`string`?[{filePath:t.filePath,type:e,toolName:typeof t.toolName==`string`?t.toolName:String(t.source??`watcher`),summary:`${String(t.source??`external`)} ${String(t.operation??`changed`)}`,timestamp:typeof t.at==`number`?t.at:Date.now(),status:t.phase===`started`?`active`:`observed`,source:t.source??`external`,sessionId:typeof t.sessionId==`string`?t.sessionId:void 0,traceId:typeof t.traceId==`string`?t.traceId:void 0,agentId:typeof t.agentId==`string`?t.agentId:void 0,agentName:typeof t.agentName==`string`?t.agentName:void 0,toolUseId:typeof t.toolUseId==`string`?t.toolUseId:void 0,line:typeof t.line==`number`?t.line:void 0,endLine:typeof t.endLine==`number`?t.endLine:void 0}]:[]}return e.type===`file.saved`&&typeof t.filePath==`string`?[{filePath:t.filePath,type:`write`,toolName:`save`,summary:``,timestamp:Date.now(),source:`editor`}]:e.type===`memory.event`&&typeof t.event==`string`?[{filePath:`(memory)`,type:`memory`,toolName:`memory.${t.event}`,summary:String(t.memoryId??``),timestamp:Date.now()}]:[]}var v=e((e,i)=>({history:new Map,pulses:new Map,activeOperations:new Map,totalCount:0,recordActivity(n){let r=f(n);e(e=>{let n=new Map(e.history),i=new Map(e.pulses);return p(n,r),i.set(r.filePath,Date.now()+t),{history:n,pulses:i,totalCount:e.totalCount+1}})},startActivities(n){if(n.length===0)return;let r=n.map(e=>f({...e,status:`active`}));e(e=>{let n=new Map(e.history),i=new Map(e.pulses),a=new Map(e.activeOperations);for(let e of r)if(p(n,e),i.set(e.filePath,Date.now()+t),e.toolUseId){let t=a.get(e.toolUseId)??[];a.set(e.toolUseId,[...t,e])}return{history:n,pulses:i,activeOperations:a,totalCount:e.totalCount+r.length}})},finishTool(n,r){let i=r.timestamp??Date.now();e(e=>{let a=e.activeOperations.get(n)??[];if(a.length===0)return e;let o=new Map(e.history),s=new Map(e.pulses);for(let e of a){let a=o.get(e.filePath)??[];o.set(e.filePath,a.map(e=>e.toolUseId===n?{...e,status:r.ok?`completed`:`failed`,ok:r.ok,completedAt:i,durationMs:r.durationMs??i-e.timestamp}:e)),s.set(e.filePath,Date.now()+t)}let c=new Map(e.activeOperations);return c.delete(n),{history:o,pulses:s,activeOperations:c}})},recordFileEvent(r){let i=f({...r,attribution:r.attribution??(r.agentId?`exact`:`external`)});e(e=>{let r=(e.history.get(i.filePath)??[]).find(e=>e.source!==`watcher`&&e.source!==`external`&&Math.abs(i.timestamp-e.timestamp)<=n);if(r){let n=new Map(e.history);n.set(i.filePath,(n.get(i.filePath)??[]).map(e=>e.id===r.id?{...e,watcherConfirmed:e.watcherConfirmed||i.source===`watcher`||i.source===`editor`}:e));let a=new Map(e.pulses);return a.set(i.filePath,Date.now()+t),{history:n,pulses:a}}let a=i.toolUseId?e.activeOperations.get(i.toolUseId):void 0;if(a&&a.length>0){let n=a[0],r=f({...i,status:`active`,source:i.source??`deterministic`,sessionId:i.sessionId??n.sessionId,traceId:i.traceId??n.traceId,agentId:i.agentId??n.agentId,agentName:i.agentName??n.agentName,agent:i.agent??n.agent,attribution:`exact`}),o=new Map(e.history),s=new Map(e.pulses),c=new Map(e.activeOperations);return p(o,r),s.set(r.filePath,Date.now()+t),c.set(i.toolUseId,[...a,r]),{history:o,pulses:s,activeOperations:c,totalCount:e.totalCount+1}}let o=[...e.activeOperations.values()].flat().filter(e=>e.filePath.startsWith(`(tool:`)&&Math.abs(i.timestamp-e.timestamp)<=3e5);if(o.length===1){let n=o[0],r=f({...i,id:`${n.toolUseId}:${i.filePath}:${i.timestamp}`,toolUseId:n.toolUseId,toolName:n.toolName,summary:`${n.toolName} → filesystem ${i.type}`,status:`active`,source:`deterministic`,sessionId:n.sessionId,traceId:n.traceId,agentId:n.agentId,agentName:n.agentName,agent:n.agent,watcherConfirmed:!0,attribution:`correlated`}),a=new Map(e.history),s=new Map(e.pulses),c=new Map(e.activeOperations);if(p(a,r),s.set(r.filePath,Date.now()+t),r.toolUseId){let e=c.get(r.toolUseId)??[];c.set(r.toolUseId,[...e,r])}return{history:a,pulses:s,activeOperations:c,totalCount:e.totalCount+1}}let s=new Map(e.history),c=new Map(e.pulses);return p(s,i),c.set(i.filePath,Date.now()+t),{history:s,pulses:c,totalCount:e.totalCount+1}})},resolveActivitySymbol(t,n,r){e(e=>{let i=new Map(e.history);i.set(n,(i.get(n)??[]).map(e=>e.toolUseId===t?{...e,symbol:r}:e));let a=new Map(e.activeOperations),o=a.get(t);return o&&a.set(t,o.map(e=>e.filePath===n?{...e,symbol:r}:e)),{history:i,activeOperations:a}})},getActivityForFile(e){return i().history.get(e)??[]},getActiveForFile(e){return[...i().activeOperations.values()].flat().filter(t=>t.filePath===e)},getActiveOperations(){return[...i().activeOperations.values()].flat()},getAgentPresences(){return h(i().getActiveOperations())},getPulsingFiles(){return i()._sweep(),new Set(i().pulses.keys())},getPulseType(e){if(i()._sweep(),i().pulses.has(e))return i().history.get(e)?.[0]?.type},clear(){e({history:new Map,pulses:new Map,activeOperations:new Map,totalCount:0})},_sweep(){let t=Date.now(),n=[...i().pulses].filter(([,e])=>e<t).map(([e])=>e),a=[...i().activeOperations].filter(([,e])=>e.every(e=>t-e.timestamp>r)).map(([e])=>e);n.length===0&&a.length===0||e(e=>{let r=new Map(e.pulses);for(let e of n)r.delete(e);if(a.length===0)return{pulses:r};let i=new Map(e.history),o=new Map(e.activeOperations);for(let e of a){for(let n of o.get(e)??[])i.set(n.filePath,(i.get(n.filePath)??[]).map(n=>n.toolUseId===e?{...n,status:`failed`,ok:!1,completedAt:t,durationMs:t-n.timestamp,summary:`${n.summary||n.toolName} · telemetry timeout`}:n));o.delete(e)}return{pulses:r,history:i,activeOperations:o}})}}));export{v as i,_ as n,h as r,m as t};
@@ -0,0 +1 @@
1
+ import{Pa as e}from"./vendor-GiKfK4Iw.js";var t=e(e=>({generation:0,lastUpdatedAt:null,notifyIndexUpdated(t=Date.now()){e(e=>({generation:e.generation+1,lastUpdatedAt:t}))}}));export{t};
@@ -1 +1 @@
1
- import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{G as t,J as n,K as r,U as i,W as a,Y as o,dt as s,lt as c,q as l,za as u}from"./vendor-BuarzSSb.js";import{t as d}from"./utils-B-9lSDIn.js";var f=e(u(),1),p=c(),m=i,h=n,g=f.forwardRef(({className:e,...t},n)=>(0,p.jsx)(l,{ref:n,className:d(`fixed inset-0 z-50 bg-black/65 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0`,e),...t}));g.displayName=l.displayName;var _=f.forwardRef(({className:e,children:n,showCloseButton:r=!0,...i},o)=>(0,p.jsxs)(h,{children:[(0,p.jsx)(g,{}),(0,p.jsxs)(t,{ref:o,className:d(`fixed left-[50%] top-[50%] z-50 grid max-h-[calc(100dvh-2rem)] w-[calc(100vw-1.5rem)] max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border border-border/70 bg-card p-5 shadow-2xl duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:p-6`,e),...i,children:[n,r&&(0,p.jsxs)(a,{className:`absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground`,children:[(0,p.jsx)(s,{className:`h-4 w-4`}),(0,p.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]}));_.displayName=t.displayName;var v=({className:e,...t})=>(0,p.jsx)(`div`,{className:d(`flex flex-col space-y-1.5 text-center sm:text-left`,e),...t});v.displayName=`DialogHeader`;var y=({className:e,...t})=>(0,p.jsx)(`div`,{className:d(`flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2`,e),...t});y.displayName=`DialogFooter`;var b=f.forwardRef(({className:e,...t},n)=>(0,p.jsx)(o,{ref:n,className:d(`text-lg font-semibold leading-none`,e),...t}));b.displayName=o.displayName;var x=f.forwardRef(({className:e,...t},n)=>(0,p.jsx)(r,{ref:n,className:d(`text-sm text-muted-foreground`,e),...t}));x.displayName=r.displayName;export{v as a,y as i,_ as n,b as o,x as r,m as t};
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{Ba as t,G as n,J as r,K as i,U as a,W as o,Y as s,dt as c,lt as l,q as u}from"./vendor-GiKfK4Iw.js";import{t as d}from"./utils-CUCQrODG.js";var f=e(t(),1),p=l(),m=a,h=r,g=f.forwardRef(({className:e,...t},n)=>(0,p.jsx)(u,{ref:n,className:d(`fixed inset-0 z-50 bg-black/65 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0`,e),...t}));g.displayName=u.displayName;var _=f.forwardRef(({className:e,children:t,showCloseButton:r=!0,...i},a)=>(0,p.jsxs)(h,{children:[(0,p.jsx)(g,{}),(0,p.jsxs)(n,{ref:a,className:d(`fixed left-[50%] top-[50%] z-50 grid max-h-[calc(100dvh-2rem)] w-[calc(100vw-1.5rem)] max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border border-border/70 bg-card p-5 shadow-2xl duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:p-6`,e),...i,children:[t,r&&(0,p.jsxs)(o,{className:`absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground`,children:[(0,p.jsx)(c,{className:`h-4 w-4`}),(0,p.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]}));_.displayName=n.displayName;var v=({className:e,...t})=>(0,p.jsx)(`div`,{className:d(`flex flex-col space-y-1.5 text-center sm:text-left`,e),...t});v.displayName=`DialogHeader`;var y=({className:e,...t})=>(0,p.jsx)(`div`,{className:d(`flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2`,e),...t});y.displayName=`DialogFooter`;var b=f.forwardRef(({className:e,...t},n)=>(0,p.jsx)(s,{ref:n,className:d(`text-lg font-semibold leading-none`,e),...t}));b.displayName=s.displayName;var x=f.forwardRef(({className:e,...t},n)=>(0,p.jsx)(i,{ref:n,className:d(`text-sm text-muted-foreground`,e),...t}));x.displayName=i.displayName;export{v as a,y as i,_ as n,b as o,x as r,m as t};