@wrongstack/webui 0.309.0 → 0.309.1

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 (89) hide show
  1. package/dist/assets/{AgentRosterView-CbgKjnxJ.js → AgentRosterView-CBiLW8dV.js} +1 -1
  2. package/dist/assets/{AnalyticsDashboard-BXnPG2xB.js → AnalyticsDashboard-Grpp3QKX.js} +1 -1
  3. package/dist/assets/{AudienceMemoryPanel-Ch-jf06O.js → AudienceMemoryPanel-DU3hUuUl.js} +1 -1
  4. package/dist/assets/{ChangesView-5lcal8q4.js → ChangesView-DOrw4udd.js} +1 -1
  5. package/dist/assets/ChronicleDashboard-DlCuQRB8.js +1 -0
  6. package/dist/assets/CodeEditor-CU6zP0r8.js +2 -0
  7. package/dist/assets/CodeMap-BkJqVDg2.js +1 -0
  8. package/dist/assets/{ConfirmModal-KzK0LoJw.js → ConfirmModal-BJOVE-JI.js} +1 -1
  9. package/dist/assets/{CronJobsPanel-aLru0Rd_.js → CronJobsPanel-B3UJP0mn.js} +1 -1
  10. package/dist/assets/{DeadCodeScanPanel-BXpB_M2Z.js → DeadCodeScanPanel-_iUu5-90.js} +1 -1
  11. package/dist/assets/{DebugDashboard-hnhGaWr-.js → DebugDashboard-NTiN0je2.js} +1 -1
  12. package/dist/assets/{DesignGalleryView-CXHgaI2Q.js → DesignGalleryView-BG2Nr8wy.js} +1 -1
  13. package/dist/assets/{GoalView-BB5t68cb.js → GoalView-Dakf9ZR8.js} +1 -1
  14. package/dist/assets/KanbanView-BR07PhbR.js +3 -0
  15. package/dist/assets/{MailboxDetailView-jPxF6ia3.js → MailboxDetailView-D31IhaK_.js} +1 -1
  16. package/dist/assets/{MemoryDrawer-e8UxQq-s.js → MemoryDrawer-6n0Etoz4.js} +1 -1
  17. package/dist/assets/MemoryManager-7DSVhxZf.js +1 -0
  18. package/dist/assets/{ModelPicker-nyXP3xsj.js → ModelPicker-C72kprRH.js} +1 -1
  19. package/dist/assets/OfficeMapPanel-Ce7myLNH.css +1 -0
  20. package/dist/assets/OfficeMapPanel-Dc8-4CiU.js +4 -0
  21. package/dist/assets/{ProcessMonitor-Epj6RrOA.js → ProcessMonitor-BGLc3yNM.js} +1 -1
  22. package/dist/assets/{PromptJournalView-CMlGmjig.js → PromptJournalView-CxDiqUkN.js} +1 -1
  23. package/dist/assets/{QueuePanel-D67eiPuQ.js → QueuePanel-B2f1HbN0.js} +1 -1
  24. package/dist/assets/{RefreshDebugView-CWAwHE9i.js → RefreshDebugView-D8F95QxF.js} +1 -1
  25. package/dist/assets/{RequirementIntakeView-DPj065HL.js → RequirementIntakeView-BRolSCpk.js} +1 -1
  26. package/dist/assets/{SageTabs-BtRa8OZC.js → SageTabs-DblSyqzB.js} +2 -2
  27. package/dist/assets/{SddFlowGraph-DMSN4LTZ.js → SddFlowGraph-YOPsSaFc.js} +1 -1
  28. package/dist/assets/SddHub-IusMUP2D.js +2 -0
  29. package/dist/assets/{SessionInspectView-BdlOiPzO.js → SessionInspectView-B633Bi0X.js} +1 -1
  30. package/dist/assets/SessionList-BCE6NSCu.js +1 -0
  31. package/dist/assets/{SessionsDashboard-BiR0zh-a.js → SessionsDashboard-N__p7_i5.js} +1 -1
  32. package/dist/assets/SetupScreen-B06asuJC.js +1 -0
  33. package/dist/assets/SkillDetailView-BxpQcgfh.js +3 -0
  34. package/dist/assets/{SpecsView-2PqHEXH9.js → SpecsView-Ddbow1sn.js} +1 -1
  35. package/dist/assets/TechStackView-HTZUTbuu.js +2 -0
  36. package/dist/assets/{TerminalPanel-CLUB8F2H.js → TerminalPanel-Bi3CmRvI.js} +1 -1
  37. package/dist/assets/{Toaster-BlD1m8P2.js → Toaster-COVFFUKo.js} +1 -1
  38. package/dist/assets/{activity-DYwBIByU.js → activity-7Sj9fdO-.js} +2 -2
  39. package/dist/assets/{activity-CA5G03Kw.js → activity-B-LcgiXm.js} +2 -2
  40. package/dist/assets/{activity-CezOSNBd.js → activity-B7hiQ_IX.js} +2 -2
  41. package/dist/assets/{activity-C6pIBHte.js → activity-Cq0Lqtgz.js} +2 -2
  42. package/dist/assets/{activity-CxnlCaZu.js → activity-DVuAYnoi.js} +2 -2
  43. package/dist/assets/{activity-l8lDAw8a.js → activity-Dt0RpmkN.js} +2 -2
  44. package/dist/assets/{activity-CkGBp_I-.js → activity-JmCi-KcX.js} +2 -2
  45. package/dist/assets/{button-DvpRpKkt.js → button-DAT5OnLL.js} +1 -1
  46. package/dist/assets/{chat-store-c0pGYczr.js → chat-store-CtIMb3sU.js} +1 -1
  47. package/dist/assets/{codemap-activity-store-BH7Mh4k9.js → codemap-activity-store-CA_14DHd.js} +1 -1
  48. package/dist/assets/codemap-index-store-BlPxA13l.js +1 -0
  49. package/dist/assets/{dialog-BJjDUqb3.js → dialog-BMrjwjA6.js} +1 -1
  50. package/dist/assets/{empty-state-Cefmzojx.js → empty-state-Bf05Z1d2.js} +1 -1
  51. package/dist/assets/{i18n-DbJfY4tY.js → i18n-CYYBUSJB.js} +2 -2
  52. package/dist/assets/{index-DQn-Lz9q.js → index-cUeJ0FkT.js} +55 -54
  53. package/dist/assets/{input-BtoHcCl9.js → input-Ccsxvwz6.js} +1 -1
  54. package/dist/assets/{mailbox-store-bF96Ih2G.js → mailbox-store-BWD7JeF9.js} +1 -1
  55. package/dist/assets/{markdown-CIRD7kOg.js → markdown-Kp5uSgOw.js} +23 -23
  56. package/dist/assets/{roster-ws-DycHs92J.js → roster-ws-lMIf13ag.js} +1 -1
  57. package/dist/assets/{session-store-CKdsROPD.js → session-store-D4PNeAGe.js} +1 -1
  58. package/dist/assets/{shared-B3czc2Dj.js → shared-Y6T3EEnd.js} +1 -1
  59. package/dist/assets/stores-BUtRik4k.js +7 -0
  60. package/dist/assets/{ui-store-xx1NssJI.js → ui-store-DxMnhARg.js} +1 -1
  61. package/dist/assets/useWebSocket-Ew1Bbjci.js +29 -0
  62. package/dist/assets/{utils-tsZEnrBH.js → utils-B5X3DKef.js} +1 -1
  63. package/dist/assets/{vector-memory-panel-C6iWDhkJ.js → vector-memory-panel-CnBqV6GK.js} +1 -1
  64. package/dist/assets/{vendor-C_zEzV4N.js → vendor-DLS502Zs.js} +3 -3
  65. package/dist/assets/{view-navigation-CZKugncK.js → view-navigation-Hd631M1W.js} +1 -1
  66. package/dist/assets/{ws-client-CBfMQmW9.js → ws-client-DYrfK01f.js} +1 -1
  67. package/dist/components/AgentOfficeView/model.d.ts +20 -0
  68. package/dist/components/AgentOfficeView.d.ts +10 -0
  69. package/dist/index.css +114 -7
  70. package/dist/index.html +22 -22
  71. package/dist/index.js +317 -70
  72. package/dist/stores/index.d.ts +1 -1
  73. package/dist/stores/office-map-store.d.ts +6 -0
  74. package/package.json +15 -15
  75. package/dist/assets/ChronicleDashboard-BH9k5NjB.js +0 -1
  76. package/dist/assets/CodeEditor-BrQMwzOp.js +0 -2
  77. package/dist/assets/CodeMap-B5e0v0jn.js +0 -1
  78. package/dist/assets/KanbanView-bZtgy3zZ.js +0 -3
  79. package/dist/assets/MemoryManager-BXYIA9wG.js +0 -1
  80. package/dist/assets/OfficeMapPanel-CBfE7Kli.js +0 -4
  81. package/dist/assets/OfficeMapPanel-D6yTfGIT.css +0 -1
  82. package/dist/assets/SddHub-CuqWpqSd.js +0 -2
  83. package/dist/assets/SessionList-CvvH8SI2.js +0 -1
  84. package/dist/assets/SetupScreen-B8s5fvr8.js +0 -1
  85. package/dist/assets/SkillDetailView-DbXp7-E5.js +0 -3
  86. package/dist/assets/TechStackView-Dnws9pc9.js +0 -2
  87. package/dist/assets/codemap-index-store-BFm1TzVW.js +0 -1
  88. package/dist/assets/stores-C0xX0jn4.js +0 -7
  89. package/dist/assets/useWebSocket-D9Dy4-9x.js +0 -29
@@ -1,8 +1,8 @@
1
1
  var e={chat:`Sitzung`,agents:`Agents`,history:`Verlauf`,files:`Dateien`,changes:`Änderungen`,mailbox:`Postfach`,skills:`Skills`,worktrees:`Worktrees`,design:`Design Studio`,officemap:`Bürokarte`,settings:`Einstellungen`,sddhub:`SDD`,goal:`Goal`,memory:`Speicher`,fleet:`Fleet`,inspector:`Inspektor`,prompts:`Prompts`,kanban:`Kanban`,codemap:`CodeMap`,techstack:`TechStack`,chronicle:`Chronicle`,intake:`Anforderungen`,roster:`Agenten-Roster`},t={returnToChat:`{{name}} — zurück zum Chat`,returnToChatDefault:`WrongStack — zurück zum Chat`},n={connected:`Verbunden`,disconnected:`Getrennt`,idle:`Inaktiv`,thinking:`Denkt nach`,running:`Läuft`,waiting:`Wartend`,done:`Fertig`,stopped:`Gestoppt`},r={moreWithHidden:`Mehr, {{count}} ausgeblendete Elemente`,moreOptions:`Weitere Optionen`,moreCompactHidden:`Mehr — {{count}} ausgeblendete Panels/Ansichten, Palette, Design, Monitore`,moreCompact:`Mehr — Palette, Design, Monitore`,moreFull:`Mehr — Palette, Design, Tastenkürzel, Monitore`,commandPalette:`Befehls-Palette`,keyboardShortcuts:`Tastenkürzel`,panels:`Panels`,views:`Ansichten`,theme:`Design`,monitors:`Monitore`,fleetMonitor:`Fleet-Inspektor`},i={dragHint:`Ziehen zum Skalieren · Doppelklick zum Zurücksetzen`,collapse:`Panel einklappen (Ctrl+\\)`},a={openDashboard:`Sitzungs-Dashboard öffnen`},o={pending:`ausstehend…`,empty:`Noch keine Agents`,emptyHint:`Subagents erscheinen hier, wenn die Fleet aktiv ist.`,runningCount:`{{count}} läuft`,totalCount:`{{count}} gesamt`,openFull:`Fleet-Inspektor öffnen`,agentsLive:`AGENTS · LIVE`,doneCount:`{{count}} fertig`,failedCount:`{{count}} fehlgeschlagen`,modelsLabel:`Modelle`,shownLabel:`angezeigt`,totalLabel:`gesamt`,leaderFleetTotals:`(Leader {{leader}} · Fleet {{fleet}})`,navHintJk:`j/k oder ↑↓ zum Navigieren`,escCloseDetail:`· Esc um Detail zu schließen`,noAgentsRunning:`Keine Agents aktiv.`,contextUsage:`Kontext-Nutzung`,lastToolLabel:`zuletzt:`,unknownSession:`Unbekannte Session`,sessionCopyTitle:`Session: {{sid}} — klicken zum Kopieren`,sessionWord:`Session`,agentsCountSuffix_one:`{{count}} Agent`,agentsCountSuffix_other:`{{count}} Agents`,sessionTitle:`Session: {{sid}}`,projectSuffix:` · Projekt: {{name}}`,statusIdle:`idle`,filterAll:`Alle`,filterRunning:`Laufend`,filterDone:`Fertig`,filterCompleted:`Fertig`,filterFailed:`Fehlgeschlagen`,clearFinished:`Entfernen`,clearFinishedTitle:`Abgeschlossene Agents entfernen`,rosterHint:`Mit den Pfeiltasten navigieren · Enter zum Aufklappen`,itSuffix:`It.`,tcSuffix:`TA`,toolLog:`Tool-Protokoll`,showAll:`Alle anzeigen`,showFewer:`Weniger anzeigen`,streaming:`Live-Ausgabe`,failure:`Fehler`,timeout:`Zeitüberschreitung`,reRun:`Erneut ausführen`,reRunTitle:`Diesen Agent erneut ausführen (noch nicht implementiert)`,lastToolCalls_one:`Letzter {{count}} Tool-Aufruf`,lastToolCalls_other:`Letzte {{count}} Tool-Aufrufe`,config:`Konfiguration`,configProvider:`Anbieter`,configModel:`Modell`,configDescription:`Beschreibung`,configTaskId:`Task-ID`,transcript:`Transkript`,openInspector:`Im Fleet-Inspektor öffnen`,emptyFilteredTitle:`Keine Agents entsprechen dem Filter`,emptyFilteredHint:`Ändere oder lösche den Filter, um alle Agents zu sehen.`,emptyFilteredClear:`Alle anzeigen`,emptyFinishedTitle:`Alle Tasks abgeschlossen`,emptyFinishedHint:`Alle Agents sind fertig — entferne abgeschlossene Agents oder starte neue Tasks, um hier Aktivität zu sehen.`,emptyFinishedStats:`{{completed}} fertig · {{failed}} fehlgeschlagen`},s={fileCount_one:`{{count}} Datei`,fileCount_other:`{{count}} Dateien`,refreshTitle:`Änderungen aktualisieren`,loading:`Änderungen werden geladen…`,clean:`Keine Änderungen — Arbeitsbaum ist sauber.`,selectPrompt:`Wähle eine geänderte Datei, um den Diff anzuzeigen.`,unified:`Vereinigt`,unifiedTitle:`Vereinigter Diff`,edit:`Bearbeiten`,editTitle:`Side-by-side bearbeitbarer Diff`,loadingDiff:`Diff wird geladen…`,diffTimeout:`Das Diff ist nicht angekommen. Die Datei wurde evtl. geändert oder die Verbindung getrennt.`,binary:`Binärdatei — Diff nicht angezeigt.`,tooLarge:`Datei zu groß für Diff.`},c={openAgentsPanel:`Agenten-Panel öffnen (Live-Fleet)`,hidePanel:`Inspektor-Panel ausblenden`,label:`Inspektor`,openAudit:`Audit-Tab öffnen`,tabFleet:`Fleet`,tabAgents:`Agents`,tabAudit:`Audit`,tabCouncil:`Council`,councilCount:`{{count}} Panel`,councilCount_other:`{{count}} Panels`,councilClear:`Leeren`,councilEmpty:`In dieser Sitzung wurde noch kein Council einberufen.`,councilEmptyHint:`Das Brain beruft für Fragen ab seiner Council-Risikoschwelle ein Multi-Modell-Panel ein. Konfigurierbar unter Einstellungen › Brain › Council.`,collapseAria:`Inspektor-Panel einklappen`,collapseTitle:`Einklappen (Esc)`,noAgentsActive:`Keine Agents aktiv`,agentsAppearHint:`Agents erscheinen hier, wenn die Fleet aktiv ist.`,selected:`{{name}} (ausgewählt)`},l={header:`Nächste Schritte`,autoSubmitting:`automatisches Senden in`,clickToFill:`Klicken zum Ausfüllen`,clickToFillTitle:`Klicken zum Ausfüllen: {{text}}`,auto:`auto`,willAutoSubmit:`Wird nach Countdown automatisch gesendet`,autoFilling:`Wird ausgefüllt`,autoModeIdle:`Auto — warte auf auto="true"-Marker`,nSelected:`{{count}} ausgewählt`,submitN:`{{count}} senden`,deselectTitle:`Auswahl aufheben`,selectTitle:`Für Stapelsendung auswählen`,nSelected_one:`{{count}} ausgewählt`,nSelected_other:`{{count}} ausgewählt`,submitN_one:`{{count}} senden`,submitN_other:`{{count}} senden`},u={onlineCount:`{{count}} online`,messages:`Nachrichten`,compose:`Nachricht verfassen`,recipient:`Empfänger`,messageType:`Typ`,audience:`Zielgruppe`,audienceAll:`Alle Agenten`,audienceLeaders:`Nur Leiter`,priority:`Priorität`,priorityLow:`Niedrig`,priorityNormal:`Normal`,priorityHigh:`Hoch`,subjectPlaceholder:`Betreff (optional)`,bodyPlaceholder:`Nachricht`,leadersOnlyHint:`Nur Leiter-Agenten und Leiter-Oberflächen können diese Nachricht empfangen.`,leadersLabel:`Leiter`,send:`Senden`,sending:`Wird gesendet…`,sent:`Gesendet`,sendFailed:`Mailbox-Nachricht konnte nicht gesendet werden.`,defaultSubject:`WebUI-Nachricht`,deleteAllTitle:`Alle Nachrichten löschen`,deleteAll:`Alle löschen`,deleting:`Wird gelöscht…`,purgeTitle:`Veraltete/verwaiste Nachrichten bereinigen`,purge:`Bereinigen`,purging:`Bereinige…`,compact:`Komprimieren`,compacting:`Komprimiere…`,compactTitle:`Auto-Komprimierung: abgelaufene, von allen gelesene und veraltete Nachrichten entfernen`,compactRemoved:`{{count}} entfernt`,compactExpired:`{{count}} abgelaufen`,compactReadByAll:`{{count}} von allen gelesen`,compactStale:`{{count}} veraltet`,compactRemaining:`{{count}} verbleibend`,newLabel:`NEU`,empty:`Noch keine Nachrichten.`,offlineCount:`+{{count}} offline`,timeNow:`jetzt`,deleteAllConfirmTitle_one:`{{count}} Nachricht löschen?`,deleteAllConfirmTitle_other:`Alle {{count}} Nachrichten löschen?`,deleteAllConfirmBody:`Die Mailbox-Datei wird für jeden Agent abgeschnitten. Dies kann nicht rückgängig gemacht werden.`,purgeConfirmTitle:`Veraltete Nachrichten bereinigen?`,purgeConfirmBody:`Entfernt abgeschlossene Nachrichten älter als 1 Tag und unvollständige Nachrichten älter als 7 Tage. Aktive Nachrichten bleiben erhalten.`,type:{note:`Notiz`,ask:`Frage`,assign:`Zuweisung`,steer:`Lenken`,btw:`Nebenbei`,broadcast:`Rundruf`,status:`Status`,result:`Ergebnis`,review:`Prüfung`},emptyDetail:`Keine Nachricht ausgewählt`,emptyDetailHint:`Klicke im Mailbox-Panel auf eine Nachricht, um sie hier anzuzeigen.`,readBy:`Gelesen von`,backToChat:`Zurück zum Chat`,completed:`Erledigt`,everyone:`alle`,closeTitle:`Schließen (Esc)`,replyTo:`Antwort auf: {{id}}`,completedBy:`Von {{name}} erledigt`,completedByAt:`Von {{name}} am {{time}} erledigt`,outcome:`Ergebnis:`,task:`Aufgabe:`,messageNotFound:`Nachricht nicht gefunden`,messageNotFoundHint:`Diese Nachricht wurde möglicherweise gelöscht oder bereinigt.`,sessionLabel:`Sitzung`,sessionScope:`Sitzung {{sid}}`,sessionScopeTitle:`Nur an Agenten in Sitzung {{sid}} zugestellt`,projectLabel:`Projekt`,projectScope:`Projekt (jeder Agent)`,directScope:`Direkt`,scopeLabel:`Bereich`},d={recentSessions:`Letzte Sitzungen`,deleteEmptyTitle_one:`{{count}} leere Sitzung löschen?`,deleteEmptyTitle_other:`{{count}} leere Sitzungen löschen?`,deleteEmptyConfirmBody:`Sitzungen ohne Token-Nutzung werden von der Festplatte entfernt.`,filterPlaceholder:`Titel, Modell, Anbieter filtern…`,clearFilter:`Filter löschen`,noHistory:`Noch kein Verlauf`,noHistoryHint:`Deine Konversationen erscheinen hier`,noMatches:`Keine Treffer`,noMatchesHint:`Versuche einen anderen Filter`,group:{favorites:`Favoriten`,today:`Heute`,yesterday:`Gestern`,thisWeek:`Diese Woche`,earlier:`Früher`},nicknamePlaceholder:`Spitzname`,empty:`(leer)`,resuming:`wird fortgesetzt…`,active:`aktiv`,renameTitleNickname:`{{nickname}} — original: {{title}}`,renameTitle:`{{title}}
2
2
 
3
- Doppelklick zum Umbenennen`,unfavorite:`Aus Favoriten entfernen`,markFavorite:`Als Favorit markieren`,deleteSessionConfirmTitle:`Sitzung löschen?`,deleteSessionConfirmBody:`"{{name}}" wird von der Festplatte entfernt. Dies kann nicht rückgängig gemacht werden.`,deleteSessionTitle:`Sitzung löschen`,rename:`Sitzung umbenennen`,renameAction:`Umbenennen`,resume:`Sitzung fortsetzen`,resumeShort:`Fortsetzen`,workspaceEyebrow:`Sitzungssteuerung`,workspaceTitle:`Sitzungen`,workspaceHint:`Alle Projektgespräche durchsuchen, prüfen, anheften und fortsetzen.`,tabs:{history:`Verlauf`,live:`Live-Sitzungen`},filters:{all:`Alle`,favorites:`Favoriten`,active:`Aktiv`,completed:`Abgeschlossen`,issues:`Probleme`},status:{active:`Aktiv`,completed:`Abgeschlossen`,error:`Fehler`,timeout:`Zeitüberschreitung`,aborted:`Abgebrochen`,saved:`Gespeicherte Sitzung`},sort:{label:`Sitzungen sortieren`,recent:`Neueste`,tokens:`Meiste Token`,activity:`Meiste Aktivität`},stats:{sessions:`Sitzungen`,tokens:`Token`,tools:`Werkzeugaufrufe`,files:`Geänderte Dateien`,errors:`Fehler`},inspect:`Sitzung untersuchen`},f={actions:{abort:`Abbrechen`,newSession:`Neue Sitzung`,export:`Export`,compact:`Komprimieren`,newSessionConfirm:`Sind Sie sicher?`,newSessionConfirmMessage:`Ein Auftrag wird noch ausgeführt. Trotzdem eine neue Sitzung starten?`,newSessionTitle:`Neue Sitzung starten (Ctrl+N)`,exportTitle:`Chat als Markdown exportieren (Ctrl+E)`,compactTitle:`Kontextfenster komprimieren`,clearTitle:`Kontext löschen (Ctrl+L)`},model:`Modell`,modelTitle:`Modell ändern (Ctrl+M)`,context:`Kontext`,contextTitle:`Klicken für eine Kontextaufschlüsselung`,sessionLabel:`Sitzung`,stats:{messages:`Nachrichten`,elapsed:`Verstrichen`,tokens:`Tokens`,cost:`Kosten`,iteration:`Iteration`,agents:`Agents`,tokensSub:`{{in}} rein / {{out}} raus`,iterationOf:`von {{max}}`,agentsRunning:`{{count}} läuft`},plan:`Plan`,planComplete:`{{pct}}% fertig`,pinned:`Angeheftet`,quickSettings:`Schnelleinstellungen`,autonomy:`Autonomie`,autonomyTitle:`Automatische nächste Schritte stoppen. Ausschalten, um die autonome Schleife des Agenten anzuhalten`,autonomyOptions:{off:`Aus`,suggest:`Vorschlagen`,auto:`Auto`,eternal:`Endlos`,"eternal-parallel":`Endlos Parallel`},yolo:`YOLO-Modus`,yoloTitle:`Tool-Bestätigungsdialoge überspringen`,refine:`Prompts verfeinern`,refineTitle:`Prompts vor dem Senden umschreiben`,sound:`Ton bei Fertigstellung`,soundTitle:`Sanften Gong abspielen, wenn ein Lauf endet`,sessionId:`Sitzung {{id}}`},p={status:{running:`läuft`,completed:`fertig`,failed:`fehlgeschlagen`,timeout:`Zeitüberschreitung`,stopped:`gestoppt`},leader:`Leader`,providerModel:`Anbieter / Modell`,elapsed:`Verstrichen`,running:`läuft…`,iterations:`Iterationen`,toolCalls:`Tool-Aufrufe`,cost:`Kosten`,budgetExtensions:`Budget-Erweiterungen`,activity:`Aktivität`,contextWindow:`Kontextfenster`,tokensUsed:`{{used}} / {{max}} Tokens`,toolRunning:`läuft…`,lastTool:`letztes Tool`,error:`Fehler`,finalOutput:`Endgültige Ausgabe`,copyOutput:`Ausgabe kopieren`,liveOutput:`Live-Ausgabe`,waitingOutput:`Warte auf Ausgabe…`,outputHint:`Die Ausgabe erscheint hier, sobald der Agent Text streamt.`,toolLog:`Tool-Log ({{count}} Aufrufe)`,fail:`Fehlschlag`,moreTools:`+{{count}} weitere Tools`,cardRunning:`läuft {{tool}}`,cardLastTool:`zuletzt: {{tool}}`,contextPercent:`Kontext {{pct}}%`,doneCount:`{{count}} fertig`,errCount:`{{count}} Fehler`,statusRunning:`läuft`,statusDone:`fertig`,statusFailed:`fehlgeschlagen`,statusTimeout:`Timeout`,statusStopped:`gestoppt`,hittingLimitTitle:`⚡ erreicht {{kind}}-Limit ({{used}}/{{limit}})`,budgetExt_one:`{{count}} Budget-Erweiterung`,budgetExt_other:`{{count}} Budget-Erweiterungen`,extendedTimes_one:`Agent hat sein Budget {{count}}-mal wegen langer Tasks erweitert`,extendedTimes_other:`Agent hat sein Budget {{count}}-mal wegen langer Tasks erweitert`,errorLabel:`Fehler`,failureReason:`Fehlergrund`,failed:`Fehlgeschlagen`},m={wsNotConnected:`WebSocket nicht verbunden`,noData:`Keine Debug-Daten empfangen. Der Server unterstützt möglicherweise kein Context-Debugging.`,title:`Kontext-Aufschlüsselung`,windowUsage:`Fensterauslastung`,contextMode:`Kontextmodus`,fetching:`Kontext-Aufschlüsselung wird geladen…`,systemPrompt:`System-Prompt`,tools:`Tools`,messages:`Nachrichten`,tokenAllocation:`Token-Verteilung`,systemTitle:`System: {{tokens}}`,toolsTitle:`Tools: {{tokens}}`,messagesTitle:`Nachrichten: {{tokens}}`,system:`System`,toolBreakdown:`Tool-Aufschlüsselung`,messagesSummary:`Nachrichten ({{count}}) — {{total}} Tok`,barWithTokens:`Kontextfenster: {{tokens}} / {{max}} Token ({{pct}})`,barPct:`Kontextfenster: {{pct}}`,barClick:` — für Aufschlüsselung klicken`},h={header:`✨ Prompt verfeinern`,autoSend:`Auto-Send in {{count}} s`,cancelTitle:`Abbrechen (Esc)`,editLabel:`Verfeinerten Prompt bearbeiten:`,editPlaceholder:`Verfeinerten Prompt bearbeiten ...`,useEdit:`Bearbeitung verwenden`,original:`Original`,refined:`Verfeinert`,yourLanguage:`(deine Sprache)`,refinedTitle:`Klicken oder Enter drücken, um diese Version zu verwenden`,copyToInputTitle:`In die Eingabe kopieren, ohne zu senden`,english:`Englisch`,englishTitle:`e drücken, um die englische Version zu verwenden`,hintRefined:`verfeinert`,hintEnglish:`Englisch`,hintOriginal:`original`,hintEdit:`bearbeiten`,hintRetry:`erneut versuchen`,edit:`Bearbeiten`,useRefined:`Verfeinerte verwenden`,langOriginal:`Original`,langEnglish:`English`,languageTitle:`Standardsprache der Verfeinerung wechseln – Original oder Englisch`,yolo:`YOLO`,yoloTitle:`Bestätigungsabfragen für Tools überspringen`,refining:`Refining…`,sendAsIs:`Send as-is`,failedHeader:`Refinement failed`,retry:`Retry (more time)`,retryBetter:`Besser neu versuchen`,retryFallback:`Retry with {{model}}`,pickModel:`Another model…`,pickModelTitle:`Verfeinerung mit einem anderen Modell wiederholen`,pickModelHint:`Wählen Sie einen Anbieter bzw. ein Modell für die erneute Verfeinerung. Ihr Sitzungsmodell bleibt unverändert.`,countdownHeader:`✨ Verfeinerung beginnt in…`,countdownYourMessage:`Deine Nachricht`,countdownHint:`Verfeinerung beginnt in {{seconds}}s. Klicke „Unverändert senden“, um zu überspringen.`,countdownStartNow:`Jetzt verfeinern`,countdownSendAsIs:`Unverändert senden`,cancelRefineSendOriginal:`Abbrechen & Original senden`},g={heading:`Spezifikationen`,subtitle:`Spezifikationsgetriebene Entwicklung anzeigen und verwalten`,empty:`Keine Specs gefunden. Mit {{command}} eine erstellen.`,tasks:`Aufgaben ({{count}})`,doneCount:`{{count}} erledigt`,runningCount:`{{count}} läuft`,pendingCount:`{{count}} ausstehend`,runTitle:`Dieses Spec als Live-Multi-Agenten-Job ausführen`,run:`Ausführen`,runAsSdd:`Als SDD ausführen`,runAsSddTitle:`Multi-Agenten-SDD-Parallel-Run starten (Worktrees, Verifikation, Live-Board)`,runAsGoal:`Als Goal ausführen`,runAsGoalTitle:`Phasierten Goal-Run aus den Task-Spalten dieser Spec starten`,list:`Liste`,graph:`Graph`,loadingTasks:`Aufgaben werden geladen…`},_={heading:`F5-Resilienz-Prüfer`,subtitle:`Bestätigt, dass die letzte aktive Sitzung, das Transkript und der UI-Zustand einen Page-Refresh überstehen. Öffne diese Ansicht und drücke F5 — jede grüne Zeile sollte grün bleiben.`,recordProbe:`Probe aufzeichnen`,latestSession:`Letzte aktive Sitzung`,restoredLocal:`Aus localStorage wiederhergestellt`,sessionIdExtra:`Session-ID: {{id}}`,noSessionYet:`es wurde noch keine Sitzung gestartet`,activePointer:`Aktiver Session-Zeiger`,lastVisited:`lastVisitedAt-Zeitstempel`,never:`nie`,persistedEnv:`Persistierte Umgebung`,transcriptRehydrate:`Chat-Transkript-Rehydratation`,localTranscript:`Lokales Transkript wiederhergestellt`,messagesExtra:`{{count}} Nachrichten, {{queued}} in Warteschlange`,noMessages:`0 Nachrichten`,noBleed:`Kein Session-Übergriff`,bleedExtra:`gebunden={{bound}} vs aktiv={{active}}`,transcriptBinds:`Transkript bindet an die aktive Sitzung`,uiWorkspace:`UI-Workspace`,noneValue:`(keine)`,payloadSize:`localStorage-Payload (4 Schlüssel): {{count}} Zeichen`,probeLog:`Probe-Protokoll`,noProbes:`Noch keine Probes — drücke oben "Probe aufzeichnen" oder F5 in dieser Ansicht, um einen Rehydratations-Check aufzuzeichnen.`,simulatedF5:`simuliertes F5: persist rehydrate erneut ausführen`},v={status:{pending:`Ausstehend`,in_progress:`In Arbeit`,review:`Review`,failed:`Fehlgeschlagen`,completed:`Erledigt`,queued:`In Warteschlange`,blocked:`Blockiert`,cancelled:`Abgebrochen`},newTaskTitle:`Neue Aufgabe`,newTaskPlaceholder:`Aufgabentitel…`,addTask:`Aufgabe hinzufügen`,empty:`Noch keine Phasen — starte einen Goal-Lauf, um das Board zu füllen.`,summary:`{{phases}} Phasen · {{tasks}} Aufgaben`,phases:`Phasen`,statusTab:`Status`,dropHere:`Aufgaben hier ablegen`,emptySpec:`Noch keine Aufgaben in dieser Spec.`,depGraphHeading:`Abhängigkeitsgraph`,worktreePrefix:`Worktree: {{branch}}`},y={trendUp:`Steigend`,trendDown:`Fallend`,trendStable:`Stabil`,heading:`Debug-Dashboard`,subtitle:`Echtzeit-Monitoring für WrongStack WebUI`,refreshLabel:`Aktualisieren:`,lastUpdated:`Zuletzt aktualisiert: {{time}}`,fetchFailed:`Metriken konnten nicht abgerufen werden`,fileWatcher:`File-Watcher`,watcherStatus:`Watcher-Status`,running:`Läuft`,stopped:`Gestoppt`,activeProjects:`Aktive Projekte`,projectsWatched:`Überwachte Projekte`,fileChanges:`Dateiänderungen`,totalDetected:`Gesamt erkannt`,filesProcessed:`Verarbeitete Dateien`,afterHash:`Nach Hash-Filter`,broadcastsSent:`Gesendete Broadcasts`,toClients:`An WebUI-Clients`,debounceResets:`Debounce-Zurücksetzungen`,rapidWrites:`Schnelle aufeinanderfolgende Schreibvorgänge`,avgDebounce:`Ø Debounce-Verzögerung`,actualDelay:`Tatsächliche Verzögerung`,totalDelay:`Gesamtverzögerung`,sumDelays:`Summe aller Verzögerungen`,browserPerf:`Browser-Leistung`,heapUsed:`Heap verwendet`,jsHeap:`JavaScript-Heap`,heapTotal:`Heap gesamt`,totalHeap:`Gesamte Heap-Größe`,pageUptime:`Seiten-Laufzeit`,sinceLoad:`Seit Seitenladung`,rawData:`Rohdaten`},b={allowlistTitle:`Modell-Allowlist`,modelCount_one:`{{count}} Modell`,modelCount_other:`{{count}} Modelle`,using:`Verwendet`,noModelPicked:`(kein Modell gewählt)`,clearAllowlist:`Allowlist löschen`,clearAllowlistAria:`Gespeicherte Allowlist für {{provider}} löschen`,refresh:`Vom Server aktualisieren`,refreshAria:`Modellliste für {{provider}} aktualisieren`,probing:`Prüfe…`,searchPlaceholder:`Modelle suchen…`,use:`Verwenden`,useModelAria:`Modell {{model}} für {{provider}} verwenden`},x={expandChip:`{{label}} ausklappen`,collapseChip:`{{label}} einklappen`,ahead:`{{count}} voraus`,behind:`{{count}} hinterher`,linesAdded:`{{count}} Zeilen hinzugefügt`,linesDeleted:`{{count}} Zeilen gelöscht`,untrackedFiles:`{{count}} unversionierte Dateien`,customizeTitle:`Dock-Chips anpassen`,dockChips:`Dock-Chips`,noActiveGoal:`Kein aktives Ziel`,noActiveGoalDetail:`Starte ein Ziel aus dem Chat oder dem Goal-Befehl.`,closeWorkspaceInspector:`Workspace-Inspektor schließen`,goal:`Ziel`,goalState:`Zielstatus`,goalStateDetail:`Aktives Ziel und Fortschritt`,fleet:`Flotte`,fleetDetail:`Live-Agentenroster und Aktivität`,work:`Arbeit`,workDetail:`To-dos, Aufgaben und Plan`,worktrees:`Worktrees`,worktreesDetail:`Parallele Branches und Lanes`,collab:`Collab`,collabDetail:`Sitzungsteilnehmer und Steuerung`,inspector:`Workspace-Inspektor`,inspectorNamed:`Workspace-Inspektor: {{name}}`,workspace:`Workspace`,workspaceDetails:`Workspace-Details`},S={leaderBadge:`LEADER`,iters:`Iter.`,tools:`Tools`,activityBins:`Aktivität (12 Bins)`,streamingOutput:`Streaming-Ausgabe`,recentTools:`Letzte Tools`,finalOutput:`Endgültige Ausgabe`,heading:`Agents-Monitor`,prevAgent:`Vorheriger Agent`,nextAgent:`Nächster Agent`,closeAria:`Agents-Monitor schließen`,hintPage:`←→ Seite`,hintNavigate:`↑↓ Liste navigieren`,hintEsc:`Esc schließen`},C={resize:`Terminals skalieren`,labelSingular:`Terminal`,labelPlural:`Terminals`,projectShell:`Projekt-Shell`,maxTerminals:`Maximal {{count}} Terminals`,newTerminal:`Neues Terminal`,restart:`Aktives Terminal neu starten`,closeAll:`Alle Terminals schließen`,closeDock:"Terminal-Dock schließen (Ctrl+`)",closeTab:`{{name}} schließen`,processExited:`[Prozess mit Code {{code}} beendet]`},w={liveStream:`Live-Stream`,events_one:`{{count}} Ereignis`,events_other:`{{count}} Ereignisse`,interruptTitle:`Diesen Agenten kooperativ beim nächsten Schritt stoppen (kein Process-Kill)`,interrupt:`⏸ Unterbrechen`,interrupting:`…`,loading:`Sitzung wird geladen…`,done:`✓✓ erledigt`,read:`✓ gelesen`,delivered:`⏳ zugestellt`,agent:`Agent`,you:`Du`,working:`{{name}} · arbeitet`,claude:`Claude`,priority:`Priorität`,placeholder:`{{label}} → an diese Sitzung…`,send:`Senden`,sendHint:`⌘/Ctrl+Enter zum Senden · beim nächsten Iterationsschritt des Agenten sichtbar`,msgType:{steerLabel:`🔄 Lenken`,steerHint:`Verhalten während der Aufgabe anpassen`,askLabel:`❓ Fragen`,askHint:`Frage — erwartet eine Antwort`,assignLabel:`📋 Zuweisen`,assignHint:`Eine zu erledigende Aufgabe`,noteLabel:`💬 Notiz`,noteHint:`Zur Info, nicht dringend`},sentRunning:`Zugestellt — der laufende Agent sieht es beim nächsten Schritt`,sentIdle:`Zugestellt — Ziel ist inaktiv; erscheint im Postfach, gelesen beim nächsten Lauf`,sentFailed:`Fehlgeschlagen: {{error}}`,interruptReason:`Operator hat Stopp aus Fleet HQ angefordert`,interruptSent:`Unterbrechung gesendet — Agent stoppt beim nächsten Schritt (kein Kill)`,interruptFailed:`Unterbrechung fehlgeschlagen: {{error}}`},T={empty:`Noch keine Seiteneffekte aufgezeichnet.`,emptyHint:`Bash-Befehle, Paketinstallationen und Netzwerkanfragen erscheinen hier.`,heading:`Seiteneffekte`,exportTitle:`Gefilterte Seiteneffekte als CSV exportieren`,all:`Alle`,colTime:`Zeit`,colTool:`Tool`,colRisk:`Risiko`,colDetail:`Detail`,colOutcome:`Ergebnis`},E={elapsedHm:`vor {{h}}h {{m}}m`,elapsedMs:`vor {{m}}m {{s}}s`,elapsedS:`vor {{s}}s`,heading:`Fleet-Monitor`,clientsHeading:`Verbundene Clients`,terminal:`Terminal`,webui:`Web-UI`,repl:`REPL`,totalConnected:`insgesamt verbunden`,mailQueue:`Mail-Warteschlange`,total:`Gesamt`,open:`Offen`,unread:`Ungelesen`,agents:`Agents`,messagesSub:`Nachrichten`,uncompletedSub:`unabgeschlossen`,waitingSub:`wartend`,ofTotal:`von {{count}} gesamt`,agentRoster:`Agenten-Roster`,liveMailActivity:`Live-Mail-Aktivität`,noActivity:`Keine aktuelle Aktivität`,mailboxAgents:`Mailbox-Agents`,noMailboxAgents:`Keine Agents registriert`,moreCount:`+{{count}} weitere`,agentFallback:`Agent`,fleetAgents:`Fleet-Agents`,noFleetAgents:`Keine Fleet-Agents aktiv`,iter:`Iter.`,mailType:{sent:`Gesendet`,delivered:`Zugestellt`,read:`Gelesen`,completed:`Abgeschlossen`}},D={status:{pending:`ausstehend`,queued:`in Warteschlange`,in_progress:`läuft`,blocked:`blockiert`,review:`Review`,failed:`fehlgeschlagen`,completed:`erledigt`,cancelled:`abgebrochen`},activityHeading:`Aktivität`,feedEmpty:`Noch nichts — Ereignisse erscheinen hier, sobald Agents Aufgaben übernehmen und abschließen.`,destroyTitle:`SDD-Projekt zerstören?`,destroyDesc:`Das löscht den Run und seine Arbeit. Nicht rückgängig zu machen (das optionale Commit-Revert ist historienwahrend).`,stopRun:`Run stoppen`,stopRunAgents_one:`Run stoppen ({{count}} Agent arbeitet)`,stopRunAgents_other:`Run stoppen ({{count}} Agents arbeiten)`,removeWorktreesAll:`Alle Git-Worktrees + wstack/ap/*-Branches entfernen — inklusive nicht gemergter Arbeit`,removeWorktreesCount_one:`{{count}} Git-Worktree + wstack/ap/*-Branches entfernen — inklusive nicht gemergter Arbeit`,removeWorktreesCount_other:`{{count}} Git-Worktrees + wstack/ap/*-Branches entfernen — inklusive nicht gemergter Arbeit`,deleteArtifacts:`Alle SDD-Artefakte löschen (Specs, Task-Graph, Board, Session)`,revertMerged_one:`Auch {{count}} gemergtes Commit revertieren`,revertMerged_other:`Auch {{count}} gemergte Commits revertieren`,revertHint:`Fügt Revert-Commits hinzu (Historie bleibt). Wird verweigert, wenn der Working Tree dirty ist.`,baseBranchFallback:`der Basis-Branch`,noteLeaveMerged:`Gemergte Commits bleiben auf dem Basis-Branch. Setze den Haken oben, um sie auch rückgängig zu machen.`,noteAbandon:`Stelle sicher, dass du diesen Run wirklich aufgeben willst.`,destroying:`Zerstöre…`,destroyAll:`Alles zerstören`,kanbanBacklog:`Backlog`,kanbanReady:`Bereit`,kanbanRunning:`Läuft`,kanbanReview:`Review`,kanbanFailed:`Fehlgeschlagen`,kanbanDone:`Erledigt`,kanbanEmpty:`leer`},O={collapseToLines:`Auf erste {{count}} Zeilen einklappen`,showAllLines:`Alle {{total}} Zeilen anzeigen ({{more}} mehr)`,exitCode:`Exit-Code:`,jsonLines:`JSON · {{count}} Zeilen`,collapse:`einklappen`,expand:`ausklappen`},k={heading:`Design Studio — Galerie`,kitsCount:`{{count}} Kits`,searchPlaceholder:`Kits suchen…`,stackTitle:`Stack für Use + Materialize`,wrote:`{{path}} geschrieben`,materializeFailed:`Materialize fehlgeschlagen: {{error}}`,verifyError:`Prüfen: {{error}}`,verifyOffPalette:`Prüfen: {{pct}}% on-palette — {{count}} off-palette in {{files}} Datei(en)`,verifyClean:`Prüfen: sauber ✓ ({{files}} Datei(en) on-palette)`,writing:`Theme-Datei wird geschrieben…`,scanning:`UI-Dateien werden gescannt…`,active:`Aktiv`,reapply:`Erneut anwenden`,use:`Verwenden`,materializeTitle:`Tokens in eine {{stack}}-Theme-Datei schreiben`,materialize:`Materialisieren`,verifyTitle:`UI-Dateien auf Off-Palette-Farben prüfen`,verify:`Prüfen`,colors:`Farben`},A={summary_one:`{{count}} Phase · {{pct}}% fertig`,summary_other:`{{count}} Phasen · {{pct}}% fertig`,switchBoard:`Board wechseln`,boardsCount_one:`{{count}} Board…`,boardsCount_other:`{{count}} Boards…`,toggleAutonomousTitle:`Autonomen Modus umschalten`,autonomous:`Autonom`,manual:`Manuell`,resumeTitle:`Lauf fortsetzen`,pauseTitle:`Lauf pausieren`,resume:`Fortsetzen`,pause:`Pausieren`,stopTitle:`Lauf stoppen — bricht laufende Agents sofort ab`,stop:`Stopp`,newTitle:`Dieses Board löschen und einen neuen Goal-Lauf starten`,newLabel:`Neu`,revertConfirm:`Commits des Laufs zurücksetzen?`,revertTitle:`Diesen Lauf zurücknehmen — gelandete Commits per git-revert und Worktrees entfernen`,revert:`Zurücknehmen`,goal:`Ziel`,planning:`Phasen werden geplant…`,planningBody:`Dein Ziel wurde empfangen. WrongStack zerlegt es in Phasen und Aufgaben — das Board erscheint hier, sobald der Plan steht.`,startHeading:`Phasenplan starten`,startBody:`Beschreibe, was du bauen willst. WrongStack plant Phasen und Aufgaben und führt sie aus — beobachte und lenke den Lauf auf dem Board.`,startPlaceholder:`z.B. Eine REST-API für Benutzerverwaltung mit Express und SQLite bauen...`,isolateLabel:`Jede Phase im eigenen Git-Worktree isolieren`,startButton:`Goal starten`,ctrlHint:`Ctrl+Enter zum Starten`,isolateOn:`Phasen laufen in isolierten Worktrees, squash-merged zurück`,isolateOff:`Phasen laufen direkt auf dem aktuellen Branch`,lanes:`Spuren`,graph:`Graph`,planningAck:`🚀 **Goal** — verstanden. Plane Phasen für dein Ziel…`,assess:{analyzing:`Analysiere Zielumfang…`,realistic:`✓ Umfang sieht realistisch aus`,durationConcern:`⚠ Dauerbedenken`,durationClaimed:`Angegebene Dauer: {{duration}}`,recommendation:`Empfohlen: {{duration}}`,concerns:`Bedenken`,analysisFailed:`Zielumfang konnte nicht analysiert werden`,override:`Trotzdem starten`,overrideTitle:`Warnung zurücksetzen und Start-Button aktivieren`,disableTitle:`Dieses Ziel hat eine unrealistische Dauer — mit "Trotzdem starten" überschreiben`},multiBoardLabel:`In mehrere Kanban-Boards aufteilen`,verifyTasksLabel:`Verifizierung für jede Aufgabe erforderlich`,chimeraReviewLabel:`Chimera-Auto-Review aktivieren`},j={noObservers:`Keine Live-Beobachter`,observerTitle:`Als nur-lesen-Beobachter beitreten (Phase 1)`,observerRole:`Beobachter`,annotatorTitle:`Als Annotator beitreten — hinterlasse Notizen zu Tool-Aufrufen (Phase 2)`,annotatorRole:`Annotator`,controllerTitle:`Als Controller beitreten — kann die Agent-Schleife pausieren (Phase 3)`,controllerRole:`Controller`,errorPrefix:`Collab: {{error}}`,dismiss:`verwerfen`,observers_one:`{{count}} Beobachter`,observers_other:`{{count}} Beobachter`,annotationsTitle:`{{count}} offene Anmerkung(en) — Annotatoren prüfen diese Sitzung`,notes_one:`{{count}} Notiz`,notes_other:`{{count}} Notizen`,pausedTitle:`Agent-Schleife pausiert — ein Controller prüft`,paused:`pausiert`,joinedTitle:`Beigetreten {{time}}`,grantTitle:`Kontrolle geben — diesen Teilnehmer zum Controller befördern`,injectTitle:`Ein synthetisches Ergebnis für einen laufenden Tool-Aufruf injizieren`,inject:`Injizieren`,resumeTitle:`Agent-Schleife fortsetzen`,resume:`Fortsetzen`,pauseTitle:`Agent vor dem nächsten Tool-Aufruf pausieren`,pauseAgent:`Agent pausieren`,leaveTitle:`Beobachter-Sitzung verlassen`,leave:`Verlassen`,injectToolResult:`Tool-Ergebnis injizieren`,close:`schließen`,targetTool:`Ziel-tool_use-id`,targetPlaceholder:`laufenden Aufruf wählen oder tool_use-id eingeben`,toolFallback:`Tool`,noPendingTools:`Keine laufenden Tool-Aufrufe — gib eine tool_use-id ein oder pausiere den Agent zuerst.`,resultContent:`Ergebnisinhalt`,resultPlaceholder:`Synthetisches Tool-Ergebnis, das dem Agent statt der Ausführung zugeführt wird`,markError:`als Fehler markieren`,reasonPlaceholder:`Grund (Audit-Log)`,queueInjection:`Injektion einreihen`,controllerInjection:`Controller-Injektion`},M={connected:`Verbunden`,reconnecting:`Verbinde erneut mit Backend (Versuch {{attempt}}) — erneut in {{remaining}} s`,disconnected:`Verbindung zum Backend getrennt`,retry:`Jetzt erneut versuchen`,retryTitle:`Verbindung jetzt erneut versuchen`,dismissTitle:`Verwerfen (Chip in der Topbar zeigt weiterhin den Status)`},N={modePrefix:`Modus:`,activeTitle:`Aktiver Modus`,heading:`Modus`,defaultName:`Standard`,defaultDesc:`Standard-Agent-Verhalten`},P={clickTitle:`Klicken für Kostenaufschlüsselung pro Zug`,heading:`Kostenaufschlüsselung`,noPricing:`Keine Preisgebung für das aktuelle Modell — Kostenwerte sind null.`,noTurns:`Noch keine abgeschlossenen Züge. Führe einen Prompt aus, um hier die Kosten pro Zug zu sehen.`,topExpensive_one:`Teuerster Zug`,topExpensive_other:`Die {{count}} teuersten Züge`},F={runDefault:`Run-Standard`,useRunDefault:`Run-Standard verwenden`,filterPlaceholder:`Modelle filtern…`,loading:`Modelle werden geladen…`,noMatch:`Kein Treffer`},I={heading:`Modell wechseln`,filterPlaceholder:`Anbieter und Modelle filtern…`,providerFilter:`Anbieter`,providerFilterAll:`Alle Anbieter`,noSavedProviders:`Keine gespeicherten Anbieter — zuerst einen Schlüssel in den Einstellungen registrieren.`,noMatch:`Keine passenden Modelle`,active:`aktiv`},L={todos:`Todos`,tasks:`Aufgaben`,plan:`Plan`},R={toggleAria:`Umschalten: {{content}}`,removeTitle:`Todo entfernen`,removeAria:`"{{content}}" entfernen`,completedCount_one:`{{count}} erledigt`,completedCount_other:`{{count}} erledigt`,blockedBy:`Wartet auf: {{work}}`},z={start:`Starten`,complete:`Abschließen`,retry:`Erneut versuchen`,assign:`Zuweisen`,assignTitle:`Agent zuweisen`,unassigned:`Nicht zugewiesen`,statusPending:`Ausstehend`,statusInProgress:`In Arbeit`,statusBlocked:`Blockiert`,statusFailed:`Fehlgeschlagen`,statusReview:`Review`,statusDone:`Erledigt`,startTitle:`Starten`,completeTitle:`Abschließen`,fail:`Fehlschlagen`,failTitle:`Als fehlgeschlagen markieren`,boardCount:`{{total}} Aufgaben · {{done}} erledigt`},B={toolCalls_one:`{{count}} Werkzeugaufruf`,toolCalls_other:`{{count}} Werkzeugaufrufe`},V={removeTitle:`Referenz entfernen`,linesCount_one:`{{count}} Zeile`,linesCount_other:`{{count}} Zeilen`},H={statusOpen:`Offen`,statusInProgress:`In Arbeit`,statusDone:`Erledigt`,startTitle:`Starten`,doneTitle:`Als erledigt markieren`,reopenTitle:`Wieder öffnen`,reopen:`Wieder öffnen`},U={heading:`@ Dateien`,noMatch:`Keine Dateien passen zu „{{query}}“`,searching:`Projekt wird durchsucht…`,selectInsertEscDismiss:`↑/↓ auswählen · ↵ einfügen · Esc schließen`},W={dismiss:`Verwerfen`},G={placeholder:`Im Chat suchen…`,prevHit:`Vorheriger Treffer`,nextHit:`Nächster Treffer`,close:`Schließen (Esc)`},K={statusPending:`Ausstehend`,statusReady:`Bereit`,statusRunning:`Läuft`,statusPaused:`Pausiert`,statusCompleted:`Abgeschlossen`,statusFailed:`Fehlgeschlagen`,statusSkipped:`Übersprungen`,heading:`Phasen`,autonomousOn:`● Autonom`,autonomousOff:`○ Manuell`,autonomousOnTitle:`Autonomer Modus aktiv — klicken zum Pausieren`,autonomousOffTitle:`Manueller Modus — klicken zum Aktivieren des autonomen Modus`,overallProgress:`Gesamtfortschritt`,tasksSuffix:`{{done}}/{{total}} Aufgaben`,agentsSuffix_one:`{{count}} Agent`,agentsSuffix_other:`{{count}} Agents`},q={triggerTitle:`Kontextfenster-Modus`,ctxPrefix:`ctx:`,opsHeading:`Kontextoperationen`,compactNow:`Jetzt komprimieren`,compactNowDesc:`Alte Tool-Ausgaben kürzen`,compactAggressive:`Aggressiv komprimieren`,compactAggressiveDesc:`Maximale Kürzung jetzt`,repairContext:`Kontext reparieren`,repairDesc:`Verwaiste Tool-Use-Blöcke beheben`,debugContext:`Kontext debuggen`,debugDesc:`Größenaufschlüsselung pro Abschnitt`,windowHeading:`Kontextfenster`,keepElide:`{{k}} letzte behalten · {{t}}+ Token kürzen`,fallbackName:`Ausgeglichen`,fallbackDesc:`Standard-Rolling-Komprimierung`},J={kindAssistant:`Assistent`,kindThinking:`Denken`,kindToolCall:`Werkzeugaufruf`,kindToolResult:`Werkzeugergebnis`,kindError:`Fehler`,kindStatus:`Status`,kindSystem:`System`,title:`Chat-Verlauf`,copyTitle:`Agenten-Chatverlauf kopieren`,empty:`Noch kein Chat-Verlauf für diesen Agenten.`},Y={heading:`Autonomiemodus`,titlePrefix:`Autonomie: {{label}}`,descOff:`Volle manuelle Kontrolle — Agent wartet auf deine Eingabe.`,descSuggest:`Agent schlägt nächste Schritte vor, wartet aber auf Genehmigung.`,descAuto:`Agent setzt nach kurzer Bestätigungsverzögerung automatisch fort.`,descEternal:`Agent läuft autonom, bis das Ziel erreicht ist.`,descEternalParallel:`Multi-Agenten autonome Ausführung — Fleet-Modus.`,labelOff:`Aus`,labelSuggest:`Vorschlagen`,labelAuto:`Auto`,labelEternal:`Endlos`,labelEternalParallel:`Endlos parallel`},X={heading:`Nachrichtenwarteschlange`,subtitle:`{{count}} in Warteschlange · Nachrichten werden gesendet, bevor der Agent fertig ist`,btwTitle:`Nebenbei — als Folgenachricht gesendet, ohne den laufenden Agent zu unterbrechen`,steerTitle:`Lenken — unterbricht den laufenden Agent und leitet ihn mit dieser Nachricht um`,queueTitle:`Eingereiht — zurückgehalten bis der aktuelle Agent-Lauf endet, dann in Reihenfolge gesendet`,sortNewestTitle:`Nach neuesten sortiert — klicken für älteste zuerst`,sortOldestTitle:`Nach ältesten sortiert — klicken für neueste zuerst`,newest:`Neueste`,oldest:`Älteste`,clear:`Leeren`,clearTitle:`Alle Nachrichten aus der Warteschlange löschen`,closeTitle:`Schließen`,emptyTitle:`Warteschlange ist leer`,emptyBody:`Nutze die btw-/steer-/„Zur Warteschlange“-Schaltflächen neben der Eingabe, um Nachrichten hinzuzufügen. Eingereihte Einträge werden in Reihenfolge gesendet, wenn der aktuelle Agent-Lauf endet.`,removeTitle:`Aus Warteschlange entfernen`,clearDispatchedTitle:`Nachrichten aus der Warteschlange löschen — bereits gesendete Notizen können nicht zurückgenommen werden`,dispatchedTitle:`Bereits an den Agenten gesendet`,dispatchedLabel:`Gesendet`,footer:`Nachrichten werden in Ankunftsreihenfolge gesendet, wenn der aktuelle Agent-Lauf endet. Nutze die Sortierung, um neueste zuerst zu sehen.`},Z={heading:`Sitzungs-Checkpoints`,countSuffix_one:`{{count}} Checkpoint`,countSuffix_other:`{{count}} Checkpoints`,description:`Sitzung zu einem beliebigen Checkpoint zurückspulen. Nachrichten und Dateiänderungen kehren zu diesem Punkt zurück — das LLM setzt von dort fort, als wäre nichts danach passiert.`,emptyTitle:`Noch keine Checkpoints`,emptyBody:`Checkpoints werden automatisch bei jeder gesendeten Nachricht erstellt. Sende ein paar Nachrichten und komme zurück.`,latest:`aktuell`,msgSuffix_one:`{{count}} Nachricht`,msgSuffix_other:`{{count}} Nachrichten`,footerPre:`Beliebigen Checkpoint zum Zurückspulen klicken`,footerPost:`zum Schließen`},Q={statusActive:`Aktiv`,statusPaused:`Pausiert`,statusDone:`Erledigt`,statusFailed:`Fehlgeschlagen`,statusAbandoned:`Aufgegeben`,heading:`Ziel`,refined:`Verfeinert`,progress:`Fortschritt`,iterations:`Iterationen`,deliverables:`Lieferobjekte`,recentActivity:`Letzte Aktivität`},$={cleanTitle_one:`{{count}} verwaisten Worktree entfernen?`,cleanTitle_other:`{{count}} verwaiste Worktrees entfernen?`,cleanMessage:`Entfernt jeden übriggebliebenen Git-Worktree + wstack/ap-Branch vorheriger Läufe zwangsweise. Nicht gemergte Arbeit darin geht verloren.`,cleanConfirm:`Verwaiste entfernen`,orphanCount_one:`{{count}} verwaister Worktree aus vorherigen Läufen`,orphanCount_other:`{{count}} verwaiste Worktrees aus vorherigen Läufen`,andMore:`…und {{count}} weitere`,cleanButtonTitle:`Alle verwaisten Worktrees + Branches zwangsweise entfernen`,removed_one:`✓ {{count}} verwaister Worktree entfernt.`,removed_other:`✓ {{count}} verwaiste Worktrees entfernt.`,cleanupFailed:`Bereinigung fehlgeschlagen`,lanesHeading:`Worktrees`,base:`Basis`,isolatedCount_one:`{{count}} isoliert`,isolatedCount_other:`{{count}} isoliert`,statusAllocating:`zuweisend`,statusActive:`aktiv`,statusCommitting:`committend`,statusMerging:`mergend`,statusMerged:`gemergt`,statusConflict:`Konflikt`,statusFailed:`fehlgeschlagen`,conflictBadge:`KONFLIKT`,graphAria:`Worktree-Branch-Graph ab {{base}}`,mergedLabel:`✓ gemergt → {{base}}`},ee={heading:`Laufende Prozesse`,subtitle:`{{active}} aktiv · {{total}} gesamt`,killAll:`Alle beenden`,emptyTitle:`Keine Prozesse verfolgt`,emptyBody:`Prozesse erscheinen hier, wenn der Agent bash- oder exec-Tools ausführt. Aktive Prozesse zeigen eine pulsierende LED.`,pidLabel:`PID {{pid}}`,protected:`geschützt`,protectedTitle:`Geschützt — überlebt kill/killAll`,background:`im Hintergrund`,backgroundTitle:`Abgekoppelter Prozess — läuft nach dem Beenden von CLI/WebUI weiter`,confirmKillBackground:`Abgekoppelten Hintergrundprozess {{pid}} beenden?`,confirmKillAll:`Alle {{count}} laufenden Prozesse beenden?`,killTitle:`PID {{pid}} beenden`},te={tooLarge:`Diff ausgelassen (Datei zu groß für die Inline-Darstellung).`},ne={placeholder:`Ausweichmodell hinzufügen…`,emptyHint:`Wird in Reihenfolge versucht, wenn das primäre Modell ratelimitiert oder hängt.`,moveUp:`Nach oben`,moveDown:`Nach unten`},re={loading:`Sitzungen werden geladen...`,apiUnavailable:`Sitzungs-API nicht verfügbar:`,empty:`Keine Live-Sitzungen. Öffne eine weitere wstack-Instanz, um sie hier zu sehen.`,heading:`Live-Sitzungen ({{count}})`,autoRefresh:`Auto-Aktualisierung alle 5 s`,pidLabel:`PID {{pid}}`,agentMeta:`{{iter}} Iterationen · {{tools}} Tools · {{ago}}`,andMore:`... und {{count}} weitere`,noAgents:`Keine Agents`},ie={applyTitle:`Die bearbeitete Version auf die Festplatte schreiben`,applying:`Anwenden…`,applied:`Angewandt`,apply:`Anwenden`},ae={showStack_one:`Stack-Trace zeigen ({{count}} Frame)`,showStack_other:`Stack-Trace zeigen ({{count}} Frames)`,hideStack_one:`Stack-Trace verbergen ({{count}} Frame)`,hideStack_other:`Stack-Trace verbergen ({{count}} Frames)`},oe={liveHeading:`Live`,clients:`Clients`,agents:`Agents`,model:`Modell`,mode:`Modus`,toolCalls:`Tool-Aufrufe`,displayHeading:`Anzeige`,statsHud:`Stats-HUD`,legends:`Legenden`,minimap:`Minimap`,zoomControls:`Zoom-Steuerung`,animateWires:`Kabel animieren`,backgroundHeading:`Hintergrund`,bgDots:`Punkte`,bgLines:`Linien`,bgCross:`Kreuz`,bgNone:`Keine`},se={noParams:`(keine Parameter)`,itemCount_one:`{{count}} Element`,itemCount_other:`{{count}} Elemente`,keyCount_one:`{{count}} Schlüssel`,keyCount_other:`{{count}} Schlüssel`},ce={roleYou:`Du`,roleTool:`Tool`,roleThinking:`Denken`,roleAssistant:`Assistent`,inputLabel:`Eingabe`,downloadTitle:`Als Datei herunterladen`,empty:`(leer)`,hideDetails:`Details verbergen`,showDetails:`Details zeigen`,showDetailsLines_one:`Details zeigen ({{count}} Zeile)`,showDetailsLines_other:`Details zeigen ({{count}} Zeilen)`,editHint:`⌘/Ctrl+Enter zum Speichern · Esc zum Abbrechen`,saveResend:`Speichern & erneut senden`,thinkingProcess:`Denkprozess`,thinkingMeta:`Iter {{iter}} · {{dur}} · {{lines}}`,replay:`Replay`,linesSuffix_one:`{{count}} Zeile`,linesSuffix_other:`{{count}} Zeilen`,copyLog:`Log kopieren`,showFullLog:`Vollständiges Log zeigen`,typing:`Tippt…`,noContent:`Kein Inhalt`,imageNotRetained:`Bildvorschau wird nach dem Neuladen nicht behalten`,failedToSend:`⚠ Senden fehlgeschlagen`,autoPaused:`⚠️ _Auto-Fortsetzen pausiert — maximale aufeinanderfolgende automatische Züge erreicht. Tippe etwas zum Fortfahren (Autonomie bleibt an)._`,autoLoopHalted:`⚠️ _Automatisches Senden gestoppt, weil sich dieselbe Eingabe wiederholt hat. Die Autonomie bleibt aktiv; gib eine neue Eingabe ein, um den Schleifenschutz zurückzusetzen._`,rsIterations:`Iterationen: {{n}}`,rsTools:`Tool-Aufrufe: {{n}}`,rsElapsed:`Verstrichen: {{s}}`,rsCost:`Kosten: {{c}}`,useInput:`Eingabe: {{n}}`,useOutput:`Ausgabe: {{n}}`,useCacheRead:`Cache-Lesung: {{n}}`,useCost:`Kosten: {{c}}`,renderedLabel:`Gerendert`,rawLabel:`Raw`,showRenderedTitle:`Gerendertes Markdown zeigen`,showRawTitle:`Raw-Markdown-Quelle zeigen`,editTitle:`Diesen Prompt bearbeiten & erneut senden`,editLabel:`Bearbeiten`,unpinTitle:`Lösen`,pinTitle:`Diese Antwort anheften`,pinnedLabel:`Angeheftet`,pinLabel:`Anheften`,regenerateTitle:`Diese Antwort neu generieren`,retryLabel:`Erneut versuchen`},le={toolFallback:`Tool`,toolFailed:`Tool fehlgeschlagen`},ue={heading:`Tastaturkürzel`,footerPre:`Jederzeit`,footerPost:`drücken, um diese Liste wieder zu öffnen.`,sectionGlobal:`Global`,sectionTuiParity:`TUI-Panel-Parität`,sectionFleet:`Fleet & Agents`,sectionChatInput:`Chat-Eingabe`,sectionChat:`Chat`,sectionChatNav:`Chat-Navigation (beim Nicht-Tippen)`,dCommandPalette:`Befehls-Palette öffnen`,dShowOverlay:`Diese Kürzel-Overlay zeigen`,dToggleSidebar:`Seitenleiste umschalten`,dOpenPanel:`Seitenleiste öffnen (Session, Agents, Verlauf, Dateien, Changes, Mailbox, Skills, Office Map)`,dDesignStudio:`Design-Studio-Seitenleiste öffnen`,dWorktrees:`Worktree-Seitenleiste öffnen`,dSettings:`Einstellungen öffnen`,dMemory:`Memory öffnen`,dFocusInput:`Nachrichteneingabe fokussieren`,dSessionPanel:`Session-Panel`,dFleetOverlay:`Fleet-Monitor-Overlay`,dAgentsOverlay:`Agents-Monitor-Overlay`,dWorktreeMonitor:`Worktree-Monitor`,dPlanPanel:`Plan-Panel`,dTodosPanel:`Todos-Panel`,dQueuePanel:`Queue-Panel`,dProcessMonitor:`Prozess-Monitor`,dGoalPanel:`Ziel-Panel`,dSessionsDashboard:`Session-Dashboard`,dOfficeMap:`Koordinator-Office-Map`,dDockPicker:`Dock-Chip-Wähler`,dOpenFleet:`Fleet-Monitor-Overlay öffnen`,dOpenAgents:`Agents-Monitor-Overlay öffnen`,dNavigateAgents:`Agents im Monitor navigieren`,dSelectAgent:`Fokussierten Agent wählen`,dCloseOverlay:`Aktives Overlay schließen`,dSendMessage:`Nachricht senden`,dNewline:`Zeilenumbruch einfügen`,dRecallPrev:`Vorherigen Prompt abrufen (bei leerer Eingabe)`,dRecallNext:`Nächsten Prompt abrufen`,dSlashPopup:`Slash-Befehl-Popup öffnen`,dAutocomplete:`Hervorgehobenen Befehl autovervollständigen`,dDismissPopup:`Popup schließen / Eingabe löschen`,dSearchChat:`Im aktuellen Chat suchen`,dClearContext:`Kontext löschen (wie /clear)`,dNewSession:`Neue Session starten (wie /new)`,dExportMarkdown:`Chat als Markdown exportieren`,dModelSwitcher:`Quick-Model-Switcher-Overlay`,dCompactDensity:`Kompakte UI-Dichte umschalten`,dAbortRun:`Aktuellen Run abbrechen (während läuft)`,dFocusNext:`Nächste Nachricht fokussieren (Alias: ↓)`,dFocusPrev:`Vorherige Nachricht fokussieren (Alias: ↑)`,dJumpFirst:`Zur ersten Nachricht springen`,dJumpLast:`Zur letzten Nachricht springen`,dCopyFocused:`Fokussierten Nachrichtentext kopieren`,dClearFocused:`Fokussierte Nachricht löschen`},de={titleFallback:`Live SDD Board`,defaultModelTitle:`Run-Standard-Workermodell (pro-Task-Overrides haben Vorrang)`,graphLabel:`Graph`,kanbanLabel:`Kanban`,retryAllTitle:`Jede fehlgeschlagene Task zurück in pending einreihen`,retryFailed:`Fehlgeschlagene erneut ({{count}})`,resume:`Fortsetzen`,pause:`Pausieren`,stop:`Stopp`,cleanTitle:`Git-Worktrees + wstack/ap-Branches des Runs entfernen`,cleanWorktrees:`Worktrees bereinigen`,rollbackTitle:`{{count}} gemergte(s) Commit(s) auf {{base}} revertieren`,rollback:`Rollback ({{count}})`,stopping:`Stoppt…`,destroying:`Zerstört…`,destroyTitle:`Stoppen, alle Worktrees entfernen, optional gemergte Commits revertieren und das SDD-Projekt löschen`,destroy:`Zerstören`,statDone:`fertig`,statRunning:`läuft`,statFailed:`fehlgeschlagen`,statWave:`welle`,statElapsed:`verstrichen`,noActiveWorkers:`keine aktiven Worker`,deadlock:`Deadlock — Tasks blockiert durch fehlgeschlagene Arbeit:`,noRunTitle:`Kein aktiver SDD-Run.`,noRunBody:`Starte einen im New-SDD-Project-Assistenten oder per /sdd execute in der CLI — Agents erscheinen hier live, jeder in einem isolierten Worktree.`,clickTaskHint:`Task für Details klicken`,lcClean:`Bereinigen`,lcRollback:`Rollback`,lcDestroy:`Zerstören`,lcFailed:`{{op}} fehlgeschlagen: {{reason}}`,lcUnknownError:`unbekannter Fehler`,lcWorktrees_one:`{{count}} Worktree entfernt`,lcWorktrees_other:`{{count}} Worktrees entfernt`,lcCommits_one:`{{count}} Commit revertiert`,lcCommits_other:`{{count}} Commits revertiert`,lcDeleted:`gelöscht {{items}}`,lcNothing:`nichts zu tun`,lcNote:`{{op}}: {{body}} — Hinweis: {{reason}}`,lcOk:`{{op}}: {{body}}`},fe={backTitle:`Zur Aktivität zurück`,expandTitle:`Aufgabendetails erweitern`,collapseTitle:`Aufgabendetails verkleinern`,eventLog:`Aufgaben-Ereignisprotokoll`,newestFirst:`neueste zuerst`,noEvents:`Für diese Aufgabe wurde noch keine Aktivität aufgezeichnet.`,workingOn:`arbeitet an dieser Task`,assigned:`zugewiesen`,metaPriority:`Priorität`,metaType:`Typ`,metaDuration:`Dauer`,metaElapsed:`Verstrichen`,metaRetries:`Versuche`,metaWorktree:`Worktree`,workerModel:`Worker-Modell`,runDefault:`Run-Standard: {{model}}`,runDefaultPlaceholder:`Run-Standard`,runDefaultPlaceholderModel:`Run-Standard ({{model}})`,verificationCmd:`Verifikationsbefehl`,gatesCompletion:`schließt Completion ab (exit 0)`,verifyPlaceholder:`z. B. pnpm vitest run path/to/file`,addVerify:`+ Verifikationsbefehl hinzufügen`,description:`Beschreibung`,timeline:`Zeitleiste`,dependsOn:`Hängt ab von`,blocks:`Blockiert`,newWorkerPlaceholder:`Neuer Worker-Name…`,confirmStop:`Diese laufende Task stoppen?`,confirmDelete:`Diese Task aus dem Run löschen?`,retryTitle:`Diese Task zurück in pending einreihen`,reassign:`Neu zuweisen`,stopTitle:`Den Worker auf dieser Task abbrechen`,splitTitle:`Diese Task in separate Worker-Sub-Tasks aufteilen`,split:`Aufteilen`,splitHint:`Eine Sub-Task pro Zeile — Titel :: Beschreibung (Beschreibung optional)`,splitPlaceholder:`Datenlayer schreiben :: Repository hinzufügen
3
+ Doppelklick zum Umbenennen`,unfavorite:`Aus Favoriten entfernen`,markFavorite:`Als Favorit markieren`,deleteSessionConfirmTitle:`Sitzung löschen?`,deleteSessionConfirmBody:`"{{name}}" wird von der Festplatte entfernt. Dies kann nicht rückgängig gemacht werden.`,deleteSessionTitle:`Sitzung löschen`,rename:`Sitzung umbenennen`,renameAction:`Umbenennen`,resume:`Sitzung fortsetzen`,resumeShort:`Fortsetzen`,workspaceEyebrow:`Sitzungssteuerung`,workspaceTitle:`Sitzungen`,workspaceHint:`Alle Projektgespräche durchsuchen, prüfen, anheften und fortsetzen.`,tabs:{history:`Verlauf`,live:`Live-Sitzungen`},filters:{all:`Alle`,favorites:`Favoriten`,active:`Aktiv`,completed:`Abgeschlossen`,issues:`Probleme`},status:{active:`Aktiv`,completed:`Abgeschlossen`,error:`Fehler`,timeout:`Zeitüberschreitung`,aborted:`Abgebrochen`,saved:`Gespeicherte Sitzung`},sort:{label:`Sitzungen sortieren`,recent:`Neueste`,tokens:`Meiste Token`,activity:`Meiste Aktivität`},stats:{sessions:`Sitzungen`,tokens:`Token`,tools:`Werkzeugaufrufe`,files:`Geänderte Dateien`,errors:`Fehler`},inspect:`Sitzung untersuchen`},f={actions:{abort:`Abbrechen`,newSession:`Neue Sitzung`,export:`Export`,compact:`Komprimieren`,newSessionConfirm:`Sind Sie sicher?`,newSessionConfirmMessage:`Ein Auftrag wird noch ausgeführt. Trotzdem eine neue Sitzung starten?`,newSessionTitle:`Neue Sitzung starten (Ctrl+N)`,exportTitle:`Chat als Markdown exportieren (Ctrl+E)`,compactTitle:`Kontextfenster komprimieren`,clearTitle:`Kontext löschen (Ctrl+L)`},model:`Modell`,modelTitle:`Modell ändern (Ctrl+M)`,context:`Kontext`,contextTitle:`Klicken für eine Kontextaufschlüsselung`,sessionLabel:`Sitzung`,stats:{messages:`Nachrichten`,elapsed:`Verstrichen`,tokens:`Tokens`,cost:`Kosten`,iteration:`Iteration`,agents:`Agents`,tokensSub:`{{in}} rein / {{out}} raus`,iterationOf:`von {{max}}`,agentsRunning:`{{count}} läuft`},plan:`Plan`,planComplete:`{{pct}}% fertig`,pinned:`Angeheftet`,quickSettings:`Schnelleinstellungen`,autonomy:`Autonomie`,autonomyTitle:`Automatische nächste Schritte stoppen. Ausschalten, um die autonome Schleife des Agenten anzuhalten`,autonomyOptions:{off:`Aus`,suggest:`Vorschlagen`,auto:`Auto`,eternal:`Endlos`,"eternal-parallel":`Endlos Parallel`},yolo:`YOLO-Modus`,yoloTitle:`Tool-Bestätigungsdialoge überspringen`,refine:`Prompts verfeinern`,refineTitle:`Prompts vor dem Senden umschreiben`,sound:`Ton bei Fertigstellung`,soundTitle:`Sanften Gong abspielen, wenn ein Lauf endet`,sessionId:`Sitzung {{id}}`},p={status:{running:`läuft`,completed:`fertig`,failed:`fehlgeschlagen`,timeout:`Zeitüberschreitung`,stopped:`gestoppt`},leader:`Leader`,providerModel:`Anbieter / Modell`,elapsed:`Verstrichen`,running:`läuft…`,iterations:`Iterationen`,toolCalls:`Tool-Aufrufe`,cost:`Kosten`,budgetExtensions:`Budget-Erweiterungen`,activity:`Aktivität`,contextWindow:`Kontextfenster`,tokensUsed:`{{used}} / {{max}} Tokens`,toolRunning:`läuft…`,lastTool:`letztes Tool`,error:`Fehler`,finalOutput:`Endgültige Ausgabe`,copyOutput:`Ausgabe kopieren`,liveOutput:`Live-Ausgabe`,waitingOutput:`Warte auf Ausgabe…`,outputHint:`Die Ausgabe erscheint hier, sobald der Agent Text streamt.`,toolLog:`Tool-Log ({{count}} Aufrufe)`,fail:`Fehlschlag`,moreTools:`+{{count}} weitere Tools`,cardRunning:`läuft {{tool}}`,cardLastTool:`zuletzt: {{tool}}`,contextPercent:`Kontext {{pct}}%`,doneCount:`{{count}} fertig`,errCount:`{{count}} Fehler`,statusRunning:`läuft`,statusDone:`fertig`,statusFailed:`fehlgeschlagen`,statusTimeout:`Timeout`,statusStopped:`gestoppt`,hittingLimitTitle:`⚡ erreicht {{kind}}-Limit ({{used}}/{{limit}})`,budgetExt_one:`{{count}} Budget-Erweiterung`,budgetExt_other:`{{count}} Budget-Erweiterungen`,extendedTimes_one:`Agent hat sein Budget {{count}}-mal wegen langer Tasks erweitert`,extendedTimes_other:`Agent hat sein Budget {{count}}-mal wegen langer Tasks erweitert`,errorLabel:`Fehler`,failureReason:`Fehlergrund`,failed:`Fehlgeschlagen`},m={wsNotConnected:`WebSocket nicht verbunden`,noData:`Keine Debug-Daten empfangen. Der Server unterstützt möglicherweise kein Context-Debugging.`,title:`Kontext-Aufschlüsselung`,windowUsage:`Fensterauslastung`,contextMode:`Kontextmodus`,fetching:`Kontext-Aufschlüsselung wird geladen…`,systemPrompt:`System-Prompt`,tools:`Tools`,messages:`Nachrichten`,tokenAllocation:`Token-Verteilung`,systemTitle:`System: {{tokens}}`,toolsTitle:`Tools: {{tokens}}`,messagesTitle:`Nachrichten: {{tokens}}`,system:`System`,toolBreakdown:`Tool-Aufschlüsselung`,messagesSummary:`Nachrichten ({{count}}) — {{total}} Tok`,barWithTokens:`Kontextfenster: {{tokens}} / {{max}} Token ({{pct}})`,barPct:`Kontextfenster: {{pct}}`,barClick:` — für Aufschlüsselung klicken`},h={header:`✨ Prompt verfeinern`,autoSend:`Auto-Send in {{count}} s`,cancelTitle:`Abbrechen (Esc)`,editLabel:`Verfeinerten Prompt bearbeiten:`,editPlaceholder:`Verfeinerten Prompt bearbeiten ...`,useEdit:`Bearbeitung verwenden`,original:`Original`,refined:`Verfeinert`,yourLanguage:`(deine Sprache)`,refinedTitle:`Klicken oder Enter drücken, um diese Version zu verwenden`,copyToInputTitle:`In die Eingabe kopieren, ohne zu senden`,english:`Englisch`,englishTitle:`e drücken, um die englische Version zu verwenden`,hintRefined:`verfeinert`,hintEnglish:`Englisch`,hintOriginal:`original`,hintEdit:`bearbeiten`,hintRetry:`erneut versuchen`,edit:`Bearbeiten`,useRefined:`Verfeinerte verwenden`,langOriginal:`Original`,langEnglish:`English`,languageTitle:`Standardsprache der Verfeinerung wechseln – Original oder Englisch`,yolo:`YOLO`,yoloTitle:`Bestätigungsabfragen für Tools überspringen`,refining:`Refining…`,sendAsIs:`Send as-is`,failedHeader:`Refinement failed`,retry:`Retry (more time)`,retryBetter:`Besser neu versuchen`,retryFallback:`Retry with {{model}}`,pickModel:`Another model…`,pickModelTitle:`Verfeinerung mit einem anderen Modell wiederholen`,pickModelHint:`Wählen Sie einen Anbieter bzw. ein Modell für die erneute Verfeinerung. Ihr Sitzungsmodell bleibt unverändert.`,countdownHeader:`✨ Verfeinerung beginnt in…`,countdownYourMessage:`Deine Nachricht`,countdownHint:`Verfeinerung beginnt in {{seconds}}s. Klicke „Unverändert senden“, um zu überspringen.`,countdownStartNow:`Jetzt verfeinern`,countdownSendAsIs:`Unverändert senden`,cancelRefineSendOriginal:`Abbrechen & Original senden`},g={heading:`Spezifikationen`,subtitle:`Spezifikationsgetriebene Entwicklung anzeigen und verwalten`,empty:`Keine Specs gefunden. Mit {{command}} eine erstellen.`,tasks:`Aufgaben ({{count}})`,doneCount:`{{count}} erledigt`,runningCount:`{{count}} läuft`,pendingCount:`{{count}} ausstehend`,runTitle:`Dieses Spec als Live-Multi-Agenten-Job ausführen`,run:`Ausführen`,runAsSdd:`Als SDD ausführen`,runAsSddTitle:`Multi-Agenten-SDD-Parallel-Run starten (Worktrees, Verifikation, Live-Board)`,runAsGoal:`Als Goal ausführen`,runAsGoalTitle:`Phasierten Goal-Run aus den Task-Spalten dieser Spec starten`,list:`Liste`,graph:`Graph`,loadingTasks:`Aufgaben werden geladen…`},_={heading:`F5-Resilienz-Prüfer`,subtitle:`Bestätigt, dass die letzte aktive Sitzung, das Transkript und der UI-Zustand einen Page-Refresh überstehen. Öffne diese Ansicht und drücke F5 — jede grüne Zeile sollte grün bleiben.`,recordProbe:`Probe aufzeichnen`,latestSession:`Letzte aktive Sitzung`,restoredLocal:`Aus localStorage wiederhergestellt`,sessionIdExtra:`Session-ID: {{id}}`,noSessionYet:`es wurde noch keine Sitzung gestartet`,activePointer:`Aktiver Session-Zeiger`,lastVisited:`lastVisitedAt-Zeitstempel`,never:`nie`,persistedEnv:`Persistierte Umgebung`,transcriptRehydrate:`Chat-Transkript-Rehydratation`,localTranscript:`Lokales Transkript wiederhergestellt`,messagesExtra:`{{count}} Nachrichten, {{queued}} in Warteschlange`,noMessages:`0 Nachrichten`,noBleed:`Kein Session-Übergriff`,bleedExtra:`gebunden={{bound}} vs aktiv={{active}}`,transcriptBinds:`Transkript bindet an die aktive Sitzung`,uiWorkspace:`UI-Workspace`,noneValue:`(keine)`,payloadSize:`localStorage-Payload (4 Schlüssel): {{count}} Zeichen`,probeLog:`Probe-Protokoll`,noProbes:`Noch keine Probes — drücke oben "Probe aufzeichnen" oder F5 in dieser Ansicht, um einen Rehydratations-Check aufzuzeichnen.`,simulatedF5:`simuliertes F5: persist rehydrate erneut ausführen`},v={status:{pending:`Ausstehend`,in_progress:`In Arbeit`,review:`Review`,failed:`Fehlgeschlagen`,completed:`Erledigt`,queued:`In Warteschlange`,blocked:`Blockiert`,cancelled:`Abgebrochen`},newTaskTitle:`Neue Aufgabe`,newTaskPlaceholder:`Aufgabentitel…`,addTask:`Aufgabe hinzufügen`,empty:`Noch keine Phasen — starte einen Goal-Lauf, um das Board zu füllen.`,summary:`{{phases}} Phasen · {{tasks}} Aufgaben`,phases:`Phasen`,statusTab:`Status`,dropHere:`Aufgaben hier ablegen`,emptySpec:`Noch keine Aufgaben in dieser Spec.`,depGraphHeading:`Abhängigkeitsgraph`,worktreePrefix:`Worktree: {{branch}}`},y={trendUp:`Steigend`,trendDown:`Fallend`,trendStable:`Stabil`,heading:`Debug-Dashboard`,subtitle:`Echtzeit-Monitoring für WrongStack WebUI`,refreshLabel:`Aktualisieren:`,lastUpdated:`Zuletzt aktualisiert: {{time}}`,fetchFailed:`Metriken konnten nicht abgerufen werden`,fileWatcher:`File-Watcher`,watcherStatus:`Watcher-Status`,running:`Läuft`,stopped:`Gestoppt`,activeProjects:`Aktive Projekte`,projectsWatched:`Überwachte Projekte`,fileChanges:`Dateiänderungen`,totalDetected:`Gesamt erkannt`,filesProcessed:`Verarbeitete Dateien`,afterHash:`Nach Hash-Filter`,broadcastsSent:`Gesendete Broadcasts`,toClients:`An WebUI-Clients`,debounceResets:`Debounce-Zurücksetzungen`,rapidWrites:`Schnelle aufeinanderfolgende Schreibvorgänge`,avgDebounce:`Ø Debounce-Verzögerung`,actualDelay:`Tatsächliche Verzögerung`,totalDelay:`Gesamtverzögerung`,sumDelays:`Summe aller Verzögerungen`,browserPerf:`Browser-Leistung`,heapUsed:`Heap verwendet`,jsHeap:`JavaScript-Heap`,heapTotal:`Heap gesamt`,totalHeap:`Gesamte Heap-Größe`,pageUptime:`Seiten-Laufzeit`,sinceLoad:`Seit Seitenladung`,rawData:`Rohdaten`},b={allowlistTitle:`Modell-Allowlist`,modelCount_one:`{{count}} Modell`,modelCount_other:`{{count}} Modelle`,using:`Verwendet`,noModelPicked:`(kein Modell gewählt)`,clearAllowlist:`Allowlist löschen`,clearAllowlistAria:`Gespeicherte Allowlist für {{provider}} löschen`,refresh:`Vom Server aktualisieren`,refreshAria:`Modellliste für {{provider}} aktualisieren`,probing:`Prüfe…`,searchPlaceholder:`Modelle suchen…`,use:`Verwenden`,useModelAria:`Modell {{model}} für {{provider}} verwenden`},x={expandChip:`{{label}} ausklappen`,collapseChip:`{{label}} einklappen`,ahead:`{{count}} voraus`,behind:`{{count}} hinterher`,linesAdded:`{{count}} Zeilen hinzugefügt`,linesDeleted:`{{count}} Zeilen gelöscht`,untrackedFiles:`{{count}} unversionierte Dateien`,customizeTitle:`Dock-Chips anpassen`,dockChips:`Dock-Chips`,noActiveGoal:`Kein aktives Ziel`,noActiveGoalDetail:`Starte ein Ziel aus dem Chat oder dem Goal-Befehl.`,closeWorkspaceInspector:`Workspace-Inspektor schließen`,goal:`Ziel`,goalState:`Zielstatus`,goalStateDetail:`Aktives Ziel und Fortschritt`,fleet:`Flotte`,fleetDetail:`Live-Agentenroster und Aktivität`,work:`Arbeit`,workDetail:`To-dos, Aufgaben und Plan`,worktrees:`Worktrees`,worktreesDetail:`Parallele Branches und Lanes`,collab:`Collab`,collabDetail:`Sitzungsteilnehmer und Steuerung`,inspector:`Workspace-Inspektor`,inspectorNamed:`Workspace-Inspektor: {{name}}`,workspace:`Workspace`,workspaceDetails:`Workspace-Details`},S={leaderBadge:`LEADER`,iters:`Iter.`,tools:`Tools`,activityBins:`Aktivität (12 Bins)`,streamingOutput:`Streaming-Ausgabe`,recentTools:`Letzte Tools`,finalOutput:`Endgültige Ausgabe`,heading:`Agents-Monitor`,prevAgent:`Vorheriger Agent`,nextAgent:`Nächster Agent`,closeAria:`Agents-Monitor schließen`,hintPage:`←→ Seite`,hintNavigate:`↑↓ Liste navigieren`,hintEsc:`Esc schließen`},C={resize:`Terminals skalieren`,labelSingular:`Terminal`,labelPlural:`Terminals`,projectShell:`Projekt-Shell`,maxTerminals:`Maximal {{count}} Terminals`,newTerminal:`Neues Terminal`,restart:`Aktives Terminal neu starten`,closeAll:`Alle Terminals schließen`,closeDock:"Terminal-Dock schließen (Ctrl+`)",closeTab:`{{name}} schließen`,processExited:`[Prozess mit Code {{code}} beendet]`},w={liveStream:`Live-Stream`,events_one:`{{count}} Ereignis`,events_other:`{{count}} Ereignisse`,interruptTitle:`Diesen Agenten kooperativ beim nächsten Schritt stoppen (kein Process-Kill)`,interrupt:`⏸ Unterbrechen`,interrupting:`…`,loading:`Sitzung wird geladen…`,done:`✓✓ erledigt`,read:`✓ gelesen`,delivered:`⏳ zugestellt`,agent:`Agent`,you:`Du`,working:`{{name}} · arbeitet`,claude:`Claude`,priority:`Priorität`,placeholder:`{{label}} → an diese Sitzung…`,send:`Senden`,sendHint:`⌘/Ctrl+Enter zum Senden · beim nächsten Iterationsschritt des Agenten sichtbar`,msgType:{steerLabel:`🔄 Lenken`,steerHint:`Verhalten während der Aufgabe anpassen`,askLabel:`❓ Fragen`,askHint:`Frage — erwartet eine Antwort`,assignLabel:`📋 Zuweisen`,assignHint:`Eine zu erledigende Aufgabe`,noteLabel:`💬 Notiz`,noteHint:`Zur Info, nicht dringend`},sentRunning:`Zugestellt — der laufende Agent sieht es beim nächsten Schritt`,sentIdle:`Zugestellt — Ziel ist inaktiv; erscheint im Postfach, gelesen beim nächsten Lauf`,sentFailed:`Fehlgeschlagen: {{error}}`,interruptReason:`Operator hat Stopp aus Fleet HQ angefordert`,interruptSent:`Unterbrechung gesendet — Agent stoppt beim nächsten Schritt (kein Kill)`,interruptFailed:`Unterbrechung fehlgeschlagen: {{error}}`},T={empty:`Noch keine Seiteneffekte aufgezeichnet.`,emptyHint:`Bash-Befehle, Paketinstallationen und Netzwerkanfragen erscheinen hier.`,heading:`Seiteneffekte`,exportTitle:`Gefilterte Seiteneffekte als CSV exportieren`,all:`Alle`,colTime:`Zeit`,colTool:`Tool`,colRisk:`Risiko`,colDetail:`Detail`,colOutcome:`Ergebnis`},E={elapsedHm:`vor {{h}}h {{m}}m`,elapsedMs:`vor {{m}}m {{s}}s`,elapsedS:`vor {{s}}s`,heading:`Fleet-Monitor`,clientsHeading:`Verbundene Clients`,terminal:`Terminal`,webui:`Web-UI`,repl:`REPL`,totalConnected:`insgesamt verbunden`,mailQueue:`Mail-Warteschlange`,total:`Gesamt`,open:`Offen`,unread:`Ungelesen`,agents:`Agents`,messagesSub:`Nachrichten`,uncompletedSub:`unabgeschlossen`,waitingSub:`wartend`,ofTotal:`von {{count}} gesamt`,agentRoster:`Agenten-Roster`,liveMailActivity:`Live-Mail-Aktivität`,noActivity:`Keine aktuelle Aktivität`,mailboxAgents:`Mailbox-Agents`,noMailboxAgents:`Keine Agents registriert`,moreCount:`+{{count}} weitere`,agentFallback:`Agent`,fleetAgents:`Fleet-Agents`,noFleetAgents:`Keine Fleet-Agents aktiv`,iter:`Iter.`,mailType:{sent:`Gesendet`,delivered:`Zugestellt`,read:`Gelesen`,completed:`Abgeschlossen`}},D={status:{pending:`ausstehend`,queued:`in Warteschlange`,in_progress:`läuft`,blocked:`blockiert`,review:`Review`,failed:`fehlgeschlagen`,completed:`erledigt`,cancelled:`abgebrochen`},activityHeading:`Aktivität`,feedEmpty:`Noch nichts — Ereignisse erscheinen hier, sobald Agents Aufgaben übernehmen und abschließen.`,destroyTitle:`SDD-Projekt zerstören?`,destroyDesc:`Das löscht den Run und seine Arbeit. Nicht rückgängig zu machen (das optionale Commit-Revert ist historienwahrend).`,stopRun:`Run stoppen`,stopRunAgents_one:`Run stoppen ({{count}} Agent arbeitet)`,stopRunAgents_other:`Run stoppen ({{count}} Agents arbeiten)`,removeWorktreesAll:`Alle Git-Worktrees + wstack/ap/*-Branches entfernen — inklusive nicht gemergter Arbeit`,removeWorktreesCount_one:`{{count}} Git-Worktree + wstack/ap/*-Branches entfernen — inklusive nicht gemergter Arbeit`,removeWorktreesCount_other:`{{count}} Git-Worktrees + wstack/ap/*-Branches entfernen — inklusive nicht gemergter Arbeit`,deleteArtifacts:`Alle SDD-Artefakte löschen (Specs, Task-Graph, Board, Session)`,revertMerged_one:`Auch {{count}} gemergtes Commit revertieren`,revertMerged_other:`Auch {{count}} gemergte Commits revertieren`,revertHint:`Fügt Revert-Commits hinzu (Historie bleibt). Wird verweigert, wenn der Working Tree dirty ist.`,baseBranchFallback:`der Basis-Branch`,noteLeaveMerged:`Gemergte Commits bleiben auf dem Basis-Branch. Setze den Haken oben, um sie auch rückgängig zu machen.`,noteAbandon:`Stelle sicher, dass du diesen Run wirklich aufgeben willst.`,destroying:`Zerstöre…`,destroyAll:`Alles zerstören`,kanbanBacklog:`Backlog`,kanbanReady:`Bereit`,kanbanRunning:`Läuft`,kanbanReview:`Review`,kanbanFailed:`Fehlgeschlagen`,kanbanDone:`Erledigt`,kanbanEmpty:`leer`},O={collapseToLines:`Auf erste {{count}} Zeilen einklappen`,showAllLines:`Alle {{total}} Zeilen anzeigen ({{more}} mehr)`,exitCode:`Exit-Code:`,jsonLines:`JSON · {{count}} Zeilen`,collapse:`einklappen`,expand:`ausklappen`},k={heading:`Design Studio — Galerie`,kitsCount:`{{count}} Kits`,searchPlaceholder:`Kits suchen…`,stackTitle:`Stack für Use + Materialize`,wrote:`{{path}} geschrieben`,materializeFailed:`Materialize fehlgeschlagen: {{error}}`,verifyError:`Prüfen: {{error}}`,verifyOffPalette:`Prüfen: {{pct}}% on-palette — {{count}} off-palette in {{files}} Datei(en)`,verifyClean:`Prüfen: sauber ✓ ({{files}} Datei(en) on-palette)`,writing:`Theme-Datei wird geschrieben…`,scanning:`UI-Dateien werden gescannt…`,active:`Aktiv`,reapply:`Erneut anwenden`,use:`Verwenden`,materializeTitle:`Tokens in eine {{stack}}-Theme-Datei schreiben`,materialize:`Materialisieren`,verifyTitle:`UI-Dateien auf Off-Palette-Farben prüfen`,verify:`Prüfen`,colors:`Farben`},A={summary_one:`{{count}} Phase · {{pct}}% fertig`,summary_other:`{{count}} Phasen · {{pct}}% fertig`,switchBoard:`Board wechseln`,boardsCount_one:`{{count}} Board…`,boardsCount_other:`{{count}} Boards…`,toggleAutonomousTitle:`Autonomen Modus umschalten`,autonomous:`Autonom`,manual:`Manuell`,resumeTitle:`Lauf fortsetzen`,pauseTitle:`Lauf pausieren`,resume:`Fortsetzen`,pause:`Pausieren`,stopTitle:`Lauf stoppen — bricht laufende Agents sofort ab`,stop:`Stopp`,newTitle:`Dieses Board löschen und einen neuen Goal-Lauf starten`,newLabel:`Neu`,revertConfirm:`Commits des Laufs zurücksetzen?`,revertTitle:`Diesen Lauf zurücknehmen — gelandete Commits per git-revert und Worktrees entfernen`,revert:`Zurücknehmen`,goal:`Ziel`,planning:`Phasen werden geplant…`,planningBody:`Dein Ziel wurde empfangen. WrongStack zerlegt es in Phasen und Aufgaben — das Board erscheint hier, sobald der Plan steht.`,startHeading:`Phasenplan starten`,startBody:`Beschreibe, was du bauen willst. WrongStack plant Phasen und Aufgaben und führt sie aus — beobachte und lenke den Lauf auf dem Board.`,startPlaceholder:`z.B. Eine REST-API für Benutzerverwaltung mit Express und SQLite bauen...`,isolateLabel:`Jede Phase im eigenen Git-Worktree isolieren`,startButton:`Goal starten`,ctrlHint:`Ctrl+Enter zum Starten`,isolateOn:`Phasen laufen in isolierten Worktrees, squash-merged zurück`,isolateOff:`Phasen laufen direkt auf dem aktuellen Branch`,lanes:`Spuren`,graph:`Graph`,planningAck:`🚀 **Goal** — verstanden. Plane Phasen für dein Ziel…`,assess:{analyzing:`Analysiere Zielumfang…`,realistic:`✓ Umfang sieht realistisch aus`,durationConcern:`⚠ Dauerbedenken`,durationClaimed:`Angegebene Dauer: {{duration}}`,recommendation:`Empfohlen: {{duration}}`,concerns:`Bedenken`,analysisFailed:`Zielumfang konnte nicht analysiert werden`,override:`Trotzdem starten`,overrideTitle:`Warnung zurücksetzen und Start-Button aktivieren`,disableTitle:`Dieses Ziel hat eine unrealistische Dauer — mit "Trotzdem starten" überschreiben`},multiBoardLabel:`In mehrere Kanban-Boards aufteilen`,verifyTasksLabel:`Verifizierung für jede Aufgabe erforderlich`,chimeraReviewLabel:`Chimera-Auto-Review aktivieren`},j={noObservers:`Keine Live-Beobachter`,observerTitle:`Als nur-lesen-Beobachter beitreten (Phase 1)`,observerRole:`Beobachter`,annotatorTitle:`Als Annotator beitreten — hinterlasse Notizen zu Tool-Aufrufen (Phase 2)`,annotatorRole:`Annotator`,controllerTitle:`Als Controller beitreten — kann die Agent-Schleife pausieren (Phase 3)`,controllerRole:`Controller`,errorPrefix:`Collab: {{error}}`,dismiss:`verwerfen`,observers_one:`{{count}} Beobachter`,observers_other:`{{count}} Beobachter`,annotationsTitle:`{{count}} offene Anmerkung(en) — Annotatoren prüfen diese Sitzung`,notes_one:`{{count}} Notiz`,notes_other:`{{count}} Notizen`,pausedTitle:`Agent-Schleife pausiert — ein Controller prüft`,paused:`pausiert`,joinedTitle:`Beigetreten {{time}}`,grantTitle:`Kontrolle geben — diesen Teilnehmer zum Controller befördern`,injectTitle:`Ein synthetisches Ergebnis für einen laufenden Tool-Aufruf injizieren`,inject:`Injizieren`,resumeTitle:`Agent-Schleife fortsetzen`,resume:`Fortsetzen`,pauseTitle:`Agent vor dem nächsten Tool-Aufruf pausieren`,pauseAgent:`Agent pausieren`,leaveTitle:`Beobachter-Sitzung verlassen`,leave:`Verlassen`,injectToolResult:`Tool-Ergebnis injizieren`,close:`schließen`,targetTool:`Ziel-tool_use-id`,targetPlaceholder:`laufenden Aufruf wählen oder tool_use-id eingeben`,toolFallback:`Tool`,noPendingTools:`Keine laufenden Tool-Aufrufe — gib eine tool_use-id ein oder pausiere den Agent zuerst.`,resultContent:`Ergebnisinhalt`,resultPlaceholder:`Synthetisches Tool-Ergebnis, das dem Agent statt der Ausführung zugeführt wird`,markError:`als Fehler markieren`,reasonPlaceholder:`Grund (Audit-Log)`,queueInjection:`Injektion einreihen`,controllerInjection:`Controller-Injektion`},M={connected:`Verbunden`,reconnecting:`Verbinde erneut mit Backend (Versuch {{attempt}}) — erneut in {{remaining}} s`,disconnected:`Verbindung zum Backend getrennt`,retry:`Jetzt erneut versuchen`,retryTitle:`Verbindung jetzt erneut versuchen`,dismissTitle:`Verwerfen (Chip in der Topbar zeigt weiterhin den Status)`},N={modePrefix:`Modus:`,activeTitle:`Aktiver Modus`,heading:`Modus`,defaultName:`Standard`,defaultDesc:`Standard-Agent-Verhalten`},P={clickTitle:`Klicken für Kostenaufschlüsselung pro Zug`,heading:`Kostenaufschlüsselung`,noPricing:`Keine Preisgebung für das aktuelle Modell — Kostenwerte sind null.`,noTurns:`Noch keine abgeschlossenen Züge. Führe einen Prompt aus, um hier die Kosten pro Zug zu sehen.`,topExpensive_one:`Teuerster Zug`,topExpensive_other:`Die {{count}} teuersten Züge`},F={runDefault:`Run-Standard`,useRunDefault:`Run-Standard verwenden`,filterPlaceholder:`Modelle filtern…`,loading:`Modelle werden geladen…`,noMatch:`Kein Treffer`},I={heading:`Modell wechseln`,filterPlaceholder:`Anbieter und Modelle filtern…`,providerFilter:`Anbieter`,providerFilterAll:`Alle Anbieter`,noSavedProviders:`Keine gespeicherten Anbieter — zuerst einen Schlüssel in den Einstellungen registrieren.`,noMatch:`Keine passenden Modelle`,active:`aktiv`},L={todos:`Todos`,tasks:`Aufgaben`,plan:`Plan`},R={toggleAria:`Umschalten: {{content}}`,removeTitle:`Todo entfernen`,removeAria:`"{{content}}" entfernen`,completedCount_one:`{{count}} erledigt`,completedCount_other:`{{count}} erledigt`,blockedBy:`Wartet auf: {{work}}`},z={start:`Starten`,complete:`Abschließen`,retry:`Erneut versuchen`,assign:`Zuweisen`,assignTitle:`Agent zuweisen`,unassigned:`Nicht zugewiesen`,statusPending:`Ausstehend`,statusInProgress:`In Arbeit`,statusBlocked:`Blockiert`,statusFailed:`Fehlgeschlagen`,statusReview:`Review`,statusDone:`Erledigt`,startTitle:`Starten`,completeTitle:`Abschließen`,fail:`Fehlschlagen`,failTitle:`Als fehlgeschlagen markieren`,boardCount:`{{total}} Aufgaben · {{done}} erledigt`},B={toolCalls_one:`{{count}} Werkzeugaufruf`,toolCalls_other:`{{count}} Werkzeugaufrufe`},V={removeTitle:`Referenz entfernen`,linesCount_one:`{{count}} Zeile`,linesCount_other:`{{count}} Zeilen`},H={statusOpen:`Offen`,statusInProgress:`In Arbeit`,statusDone:`Erledigt`,startTitle:`Starten`,doneTitle:`Als erledigt markieren`,reopenTitle:`Wieder öffnen`,reopen:`Wieder öffnen`},U={heading:`@ Dateien`,noMatch:`Keine Dateien passen zu „{{query}}“`,searching:`Projekt wird durchsucht…`,selectInsertEscDismiss:`↑/↓ auswählen · ↵ einfügen · Esc schließen`},W={dismiss:`Verwerfen`},G={placeholder:`Im Chat suchen…`,prevHit:`Vorheriger Treffer`,nextHit:`Nächster Treffer`,close:`Schließen (Esc)`},K={statusPending:`Ausstehend`,statusReady:`Bereit`,statusRunning:`Läuft`,statusPaused:`Pausiert`,statusCompleted:`Abgeschlossen`,statusFailed:`Fehlgeschlagen`,statusSkipped:`Übersprungen`,heading:`Phasen`,autonomousOn:`● Autonom`,autonomousOff:`○ Manuell`,autonomousOnTitle:`Autonomer Modus aktiv — klicken zum Pausieren`,autonomousOffTitle:`Manueller Modus — klicken zum Aktivieren des autonomen Modus`,overallProgress:`Gesamtfortschritt`,tasksSuffix:`{{done}}/{{total}} Aufgaben`,agentsSuffix_one:`{{count}} Agent`,agentsSuffix_other:`{{count}} Agents`},q={triggerTitle:`Kontextfenster-Modus`,ctxPrefix:`ctx:`,opsHeading:`Kontextoperationen`,compactNow:`Jetzt komprimieren`,compactNowDesc:`Alte Tool-Ausgaben kürzen`,compactAggressive:`Aggressiv komprimieren`,compactAggressiveDesc:`Maximale Kürzung jetzt`,repairContext:`Kontext reparieren`,repairDesc:`Verwaiste Tool-Use-Blöcke beheben`,debugContext:`Kontext debuggen`,debugDesc:`Größenaufschlüsselung pro Abschnitt`,windowHeading:`Kontextfenster`,keepElide:`{{k}} letzte behalten · {{t}}+ Token kürzen`,fallbackName:`Ausgeglichen`,fallbackDesc:`Standard-Rolling-Komprimierung`},J={kindAssistant:`Assistent`,kindThinking:`Denken`,kindToolCall:`Werkzeugaufruf`,kindToolResult:`Werkzeugergebnis`,kindError:`Fehler`,kindStatus:`Status`,kindSystem:`System`,title:`Chat-Verlauf`,copyTitle:`Agenten-Chatverlauf kopieren`,empty:`Noch kein Chat-Verlauf für diesen Agenten.`},Y={heading:`Autonomiemodus`,titlePrefix:`Autonomie: {{label}}`,descOff:`Volle manuelle Kontrolle — Agent wartet auf deine Eingabe.`,descSuggest:`Agent schlägt nächste Schritte vor, wartet aber auf Genehmigung.`,descAuto:`Agent setzt nach kurzer Bestätigungsverzögerung automatisch fort.`,descEternal:`Agent läuft autonom, bis das Ziel erreicht ist.`,descEternalParallel:`Multi-Agenten autonome Ausführung — Fleet-Modus.`,labelOff:`Aus`,labelSuggest:`Vorschlagen`,labelAuto:`Auto`,labelEternal:`Endlos`,labelEternalParallel:`Endlos parallel`},X={heading:`Nachrichtenwarteschlange`,subtitle:`{{count}} in Warteschlange · Nachrichten werden gesendet, bevor der Agent fertig ist`,btwTitle:`Nebenbei — als Folgenachricht gesendet, ohne den laufenden Agent zu unterbrechen`,steerTitle:`Lenken — unterbricht den laufenden Agent und leitet ihn mit dieser Nachricht um`,queueTitle:`Eingereiht — zurückgehalten bis der aktuelle Agent-Lauf endet, dann in Reihenfolge gesendet`,sortNewestTitle:`Nach neuesten sortiert — klicken für älteste zuerst`,sortOldestTitle:`Nach ältesten sortiert — klicken für neueste zuerst`,newest:`Neueste`,oldest:`Älteste`,clear:`Leeren`,clearTitle:`Alle Nachrichten aus der Warteschlange löschen`,closeTitle:`Schließen`,emptyTitle:`Warteschlange ist leer`,emptyBody:`Nutze die btw-/steer-/„Zur Warteschlange“-Schaltflächen neben der Eingabe, um Nachrichten hinzuzufügen. Eingereihte Einträge werden in Reihenfolge gesendet, wenn der aktuelle Agent-Lauf endet.`,removeTitle:`Aus Warteschlange entfernen`,clearDispatchedTitle:`Nachrichten aus der Warteschlange löschen — bereits gesendete Notizen können nicht zurückgenommen werden`,dispatchedTitle:`Bereits an den Agenten gesendet`,dispatchedLabel:`Gesendet`,footer:`Nachrichten werden in Ankunftsreihenfolge gesendet, wenn der aktuelle Agent-Lauf endet. Nutze die Sortierung, um neueste zuerst zu sehen.`},Z={heading:`Sitzungs-Checkpoints`,countSuffix_one:`{{count}} Checkpoint`,countSuffix_other:`{{count}} Checkpoints`,description:`Sitzung zu einem beliebigen Checkpoint zurückspulen. Nachrichten und Dateiänderungen kehren zu diesem Punkt zurück — das LLM setzt von dort fort, als wäre nichts danach passiert.`,emptyTitle:`Noch keine Checkpoints`,emptyBody:`Checkpoints werden automatisch bei jeder gesendeten Nachricht erstellt. Sende ein paar Nachrichten und komme zurück.`,latest:`aktuell`,msgSuffix_one:`{{count}} Nachricht`,msgSuffix_other:`{{count}} Nachrichten`,footerPre:`Beliebigen Checkpoint zum Zurückspulen klicken`,footerPost:`zum Schließen`},Q={statusActive:`Aktiv`,statusPaused:`Pausiert`,statusDone:`Erledigt`,statusFailed:`Fehlgeschlagen`,statusAbandoned:`Aufgegeben`,heading:`Ziel`,refined:`Verfeinert`,progress:`Fortschritt`,iterations:`Iterationen`,deliverables:`Lieferobjekte`,recentActivity:`Letzte Aktivität`},$={cleanTitle_one:`{{count}} verwaisten Worktree entfernen?`,cleanTitle_other:`{{count}} verwaiste Worktrees entfernen?`,cleanMessage:`Entfernt jeden übriggebliebenen Git-Worktree + wstack/ap-Branch vorheriger Läufe zwangsweise. Nicht gemergte Arbeit darin geht verloren.`,cleanConfirm:`Verwaiste entfernen`,orphanCount_one:`{{count}} verwaister Worktree aus vorherigen Läufen`,orphanCount_other:`{{count}} verwaiste Worktrees aus vorherigen Läufen`,andMore:`…und {{count}} weitere`,cleanButtonTitle:`Alle verwaisten Worktrees + Branches zwangsweise entfernen`,removed_one:`✓ {{count}} verwaister Worktree entfernt.`,removed_other:`✓ {{count}} verwaiste Worktrees entfernt.`,cleanupFailed:`Bereinigung fehlgeschlagen`,lanesHeading:`Worktrees`,base:`Basis`,isolatedCount_one:`{{count}} isoliert`,isolatedCount_other:`{{count}} isoliert`,statusAllocating:`zuweisend`,statusActive:`aktiv`,statusCommitting:`committend`,statusMerging:`mergend`,statusMerged:`gemergt`,statusConflict:`Konflikt`,statusFailed:`fehlgeschlagen`,conflictBadge:`KONFLIKT`,graphAria:`Worktree-Branch-Graph ab {{base}}`,mergedLabel:`✓ gemergt → {{base}}`},ee={heading:`Laufende Prozesse`,subtitle:`{{active}} aktiv · {{total}} gesamt`,killAll:`Alle beenden`,emptyTitle:`Keine Prozesse verfolgt`,emptyBody:`Prozesse erscheinen hier, wenn der Agent bash- oder exec-Tools ausführt. Aktive Prozesse zeigen eine pulsierende LED.`,pidLabel:`PID {{pid}}`,protected:`geschützt`,protectedTitle:`Geschützt — überlebt kill/killAll`,background:`im Hintergrund`,backgroundTitle:`Abgekoppelter Prozess — läuft nach dem Beenden von CLI/WebUI weiter`,confirmKillBackground:`Abgekoppelten Hintergrundprozess {{pid}} beenden?`,confirmKillAll:`Alle {{count}} laufenden Prozesse beenden?`,killTitle:`PID {{pid}} beenden`},te={tooLarge:`Diff ausgelassen (Datei zu groß für die Inline-Darstellung).`},ne={placeholder:`Ausweichmodell hinzufügen…`,emptyHint:`Wird in Reihenfolge versucht, wenn das primäre Modell ratelimitiert oder hängt.`,moveUp:`Nach oben`,moveDown:`Nach unten`},re={loading:`Sitzungen werden geladen...`,apiUnavailable:`Sitzungs-API nicht verfügbar:`,empty:`Keine Live-Sitzungen. Öffne eine weitere wstack-Instanz, um sie hier zu sehen.`,heading:`Live-Sitzungen ({{count}})`,autoRefresh:`Auto-Aktualisierung alle 5 s`,pidLabel:`PID {{pid}}`,agentMeta:`{{iter}} Iterationen · {{tools}} Tools · {{ago}}`,andMore:`... und {{count}} weitere`,noAgents:`Keine Agents`},ie={applyTitle:`Die bearbeitete Version auf die Festplatte schreiben`,applying:`Anwenden…`,applied:`Angewandt`,apply:`Anwenden`},ae={showStack_one:`Stack-Trace zeigen ({{count}} Frame)`,showStack_other:`Stack-Trace zeigen ({{count}} Frames)`,hideStack_one:`Stack-Trace verbergen ({{count}} Frame)`,hideStack_other:`Stack-Trace verbergen ({{count}} Frames)`},oe={liveHeading:`Live`,clients:`Clients`,agents:`Agents`,model:`Modell`,mode:`Modus`,toolCalls:`Tool-Aufrufe`,displayHeading:`Anzeige`,statsHud:`Stats-HUD`,legends:`Legenden`,minimap:`Minimap`,zoomControls:`Zoom-Steuerung`,animateWires:`Kabel animieren`,backgroundHeading:`Hintergrund`,waitThresholdHeading:`Warteschwelle`,waitThresholdHint:`Live-Schreibtisch nach so viel Stille als wartend markieren`,bgDots:`Punkte`,bgLines:`Linien`,bgCross:`Kreuz`,bgNone:`Keine`},se={noParams:`(keine Parameter)`,itemCount_one:`{{count}} Element`,itemCount_other:`{{count}} Elemente`,keyCount_one:`{{count}} Schlüssel`,keyCount_other:`{{count}} Schlüssel`},ce={roleYou:`Du`,roleTool:`Tool`,roleThinking:`Denken`,roleAssistant:`Assistent`,inputLabel:`Eingabe`,downloadTitle:`Als Datei herunterladen`,empty:`(leer)`,hideDetails:`Details verbergen`,showDetails:`Details zeigen`,showDetailsLines_one:`Details zeigen ({{count}} Zeile)`,showDetailsLines_other:`Details zeigen ({{count}} Zeilen)`,editHint:`⌘/Ctrl+Enter zum Speichern · Esc zum Abbrechen`,saveResend:`Speichern & erneut senden`,thinkingProcess:`Denkprozess`,thinkingMeta:`Iter {{iter}} · {{dur}} · {{lines}}`,replay:`Replay`,linesSuffix_one:`{{count}} Zeile`,linesSuffix_other:`{{count}} Zeilen`,copyLog:`Log kopieren`,showFullLog:`Vollständiges Log zeigen`,typing:`Tippt…`,noContent:`Kein Inhalt`,imageNotRetained:`Bildvorschau wird nach dem Neuladen nicht behalten`,failedToSend:`⚠ Senden fehlgeschlagen`,autoPaused:`⚠️ _Auto-Fortsetzen pausiert — maximale aufeinanderfolgende automatische Züge erreicht. Tippe etwas zum Fortfahren (Autonomie bleibt an)._`,autoLoopHalted:`⚠️ _Automatisches Senden gestoppt, weil sich dieselbe Eingabe wiederholt hat. Die Autonomie bleibt aktiv; gib eine neue Eingabe ein, um den Schleifenschutz zurückzusetzen._`,rsIterations:`Iterationen: {{n}}`,rsTools:`Tool-Aufrufe: {{n}}`,rsElapsed:`Verstrichen: {{s}}`,rsCost:`Kosten: {{c}}`,useInput:`Eingabe: {{n}}`,useOutput:`Ausgabe: {{n}}`,useCacheRead:`Cache-Lesung: {{n}}`,useCost:`Kosten: {{c}}`,renderedLabel:`Gerendert`,rawLabel:`Raw`,showRenderedTitle:`Gerendertes Markdown zeigen`,showRawTitle:`Raw-Markdown-Quelle zeigen`,editTitle:`Diesen Prompt bearbeiten & erneut senden`,editLabel:`Bearbeiten`,unpinTitle:`Lösen`,pinTitle:`Diese Antwort anheften`,pinnedLabel:`Angeheftet`,pinLabel:`Anheften`,regenerateTitle:`Diese Antwort neu generieren`,retryLabel:`Erneut versuchen`},le={toolFallback:`Tool`,toolFailed:`Tool fehlgeschlagen`},ue={heading:`Tastaturkürzel`,footerPre:`Jederzeit`,footerPost:`drücken, um diese Liste wieder zu öffnen.`,sectionGlobal:`Global`,sectionTuiParity:`TUI-Panel-Parität`,sectionFleet:`Fleet & Agents`,sectionChatInput:`Chat-Eingabe`,sectionChat:`Chat`,sectionChatNav:`Chat-Navigation (beim Nicht-Tippen)`,dCommandPalette:`Befehls-Palette öffnen`,dShowOverlay:`Diese Kürzel-Overlay zeigen`,dToggleSidebar:`Seitenleiste umschalten`,dOpenPanel:`Seitenleiste öffnen (Session, Agents, Verlauf, Dateien, Changes, Mailbox, Skills, Office Map)`,dDesignStudio:`Design-Studio-Seitenleiste öffnen`,dWorktrees:`Worktree-Seitenleiste öffnen`,dSettings:`Einstellungen öffnen`,dMemory:`Memory öffnen`,dFocusInput:`Nachrichteneingabe fokussieren`,dSessionPanel:`Session-Panel`,dFleetOverlay:`Fleet-Monitor-Overlay`,dAgentsOverlay:`Agents-Monitor-Overlay`,dWorktreeMonitor:`Worktree-Monitor`,dPlanPanel:`Plan-Panel`,dTodosPanel:`Todos-Panel`,dQueuePanel:`Queue-Panel`,dProcessMonitor:`Prozess-Monitor`,dGoalPanel:`Ziel-Panel`,dSessionsDashboard:`Session-Dashboard`,dOfficeMap:`Koordinator-Office-Map`,dDockPicker:`Dock-Chip-Wähler`,dOpenFleet:`Fleet-Monitor-Overlay öffnen`,dOpenAgents:`Agents-Monitor-Overlay öffnen`,dNavigateAgents:`Agents im Monitor navigieren`,dSelectAgent:`Fokussierten Agent wählen`,dCloseOverlay:`Aktives Overlay schließen`,dSendMessage:`Nachricht senden`,dNewline:`Zeilenumbruch einfügen`,dRecallPrev:`Vorherigen Prompt abrufen (bei leerer Eingabe)`,dRecallNext:`Nächsten Prompt abrufen`,dSlashPopup:`Slash-Befehl-Popup öffnen`,dAutocomplete:`Hervorgehobenen Befehl autovervollständigen`,dDismissPopup:`Popup schließen / Eingabe löschen`,dSearchChat:`Im aktuellen Chat suchen`,dClearContext:`Kontext löschen (wie /clear)`,dNewSession:`Neue Session starten (wie /new)`,dExportMarkdown:`Chat als Markdown exportieren`,dModelSwitcher:`Quick-Model-Switcher-Overlay`,dCompactDensity:`Kompakte UI-Dichte umschalten`,dAbortRun:`Aktuellen Run abbrechen (während läuft)`,dFocusNext:`Nächste Nachricht fokussieren (Alias: ↓)`,dFocusPrev:`Vorherige Nachricht fokussieren (Alias: ↑)`,dJumpFirst:`Zur ersten Nachricht springen`,dJumpLast:`Zur letzten Nachricht springen`,dCopyFocused:`Fokussierten Nachrichtentext kopieren`,dClearFocused:`Fokussierte Nachricht löschen`},de={titleFallback:`Live SDD Board`,defaultModelTitle:`Run-Standard-Workermodell (pro-Task-Overrides haben Vorrang)`,graphLabel:`Graph`,kanbanLabel:`Kanban`,retryAllTitle:`Jede fehlgeschlagene Task zurück in pending einreihen`,retryFailed:`Fehlgeschlagene erneut ({{count}})`,resume:`Fortsetzen`,pause:`Pausieren`,stop:`Stopp`,cleanTitle:`Git-Worktrees + wstack/ap-Branches des Runs entfernen`,cleanWorktrees:`Worktrees bereinigen`,rollbackTitle:`{{count}} gemergte(s) Commit(s) auf {{base}} revertieren`,rollback:`Rollback ({{count}})`,stopping:`Stoppt…`,destroying:`Zerstört…`,destroyTitle:`Stoppen, alle Worktrees entfernen, optional gemergte Commits revertieren und das SDD-Projekt löschen`,destroy:`Zerstören`,statDone:`fertig`,statRunning:`läuft`,statFailed:`fehlgeschlagen`,statWave:`welle`,statElapsed:`verstrichen`,noActiveWorkers:`keine aktiven Worker`,deadlock:`Deadlock — Tasks blockiert durch fehlgeschlagene Arbeit:`,noRunTitle:`Kein aktiver SDD-Run.`,noRunBody:`Starte einen im New-SDD-Project-Assistenten oder per /sdd execute in der CLI — Agents erscheinen hier live, jeder in einem isolierten Worktree.`,clickTaskHint:`Task für Details klicken`,lcClean:`Bereinigen`,lcRollback:`Rollback`,lcDestroy:`Zerstören`,lcFailed:`{{op}} fehlgeschlagen: {{reason}}`,lcUnknownError:`unbekannter Fehler`,lcWorktrees_one:`{{count}} Worktree entfernt`,lcWorktrees_other:`{{count}} Worktrees entfernt`,lcCommits_one:`{{count}} Commit revertiert`,lcCommits_other:`{{count}} Commits revertiert`,lcDeleted:`gelöscht {{items}}`,lcNothing:`nichts zu tun`,lcNote:`{{op}}: {{body}} — Hinweis: {{reason}}`,lcOk:`{{op}}: {{body}}`},fe={backTitle:`Zur Aktivität zurück`,expandTitle:`Aufgabendetails erweitern`,collapseTitle:`Aufgabendetails verkleinern`,eventLog:`Aufgaben-Ereignisprotokoll`,newestFirst:`neueste zuerst`,noEvents:`Für diese Aufgabe wurde noch keine Aktivität aufgezeichnet.`,workingOn:`arbeitet an dieser Task`,assigned:`zugewiesen`,metaPriority:`Priorität`,metaType:`Typ`,metaDuration:`Dauer`,metaElapsed:`Verstrichen`,metaRetries:`Versuche`,metaWorktree:`Worktree`,workerModel:`Worker-Modell`,runDefault:`Run-Standard: {{model}}`,runDefaultPlaceholder:`Run-Standard`,runDefaultPlaceholderModel:`Run-Standard ({{model}})`,verificationCmd:`Verifikationsbefehl`,gatesCompletion:`schließt Completion ab (exit 0)`,verifyPlaceholder:`z. B. pnpm vitest run path/to/file`,addVerify:`+ Verifikationsbefehl hinzufügen`,description:`Beschreibung`,timeline:`Zeitleiste`,dependsOn:`Hängt ab von`,blocks:`Blockiert`,newWorkerPlaceholder:`Neuer Worker-Name…`,confirmStop:`Diese laufende Task stoppen?`,confirmDelete:`Diese Task aus dem Run löschen?`,retryTitle:`Diese Task zurück in pending einreihen`,reassign:`Neu zuweisen`,stopTitle:`Den Worker auf dieser Task abbrechen`,splitTitle:`Diese Task in separate Worker-Sub-Tasks aufteilen`,split:`Aufteilen`,splitHint:`Eine Sub-Task pro Zeile — Titel :: Beschreibung (Beschreibung optional)`,splitPlaceholder:`Datenlayer schreiben :: Repository hinzufügen
4
4
  UI verdrahten`,splitInto:`In Sub-Tasks aufteilen`,deleteTitle:`Diese nicht gestartete Task aus dem Run entfernen`},pe={phaseStart:`Start`,phaseInterview:`Interview`,phaseSpecReview:`Spec-Review`,phasePlanning:`Planung`,phaseTaskReview:`Task-Review`,phaseRunning:`Läuft`,phaseDone:`Fertig`,titleFallback:`Neues SDD-Projekt`,questionsSuffix:`{{cur}}/{{max}} Fragen`,tasksSuffix:`{{count}} Tasks`,runCfgTitle:`Run-Konfiguration — Standardmodell + Fallback-Kette`,modelsLabel:`Modelle`,startRun:`Run starten`,defaultWorkerModel:`Standard-Worker-Modell`,leaderDefaultPlaceholder:`Leader / Session-Standard`,useSessionDefault:`Session-Standard verwenden`,fallbackChain:`Fallback-Kette`,appliesToAll:`Gilt für jede Task. Pro-Task vom Live-Board nach Run-Start überschreiben.`,parallelAgents:`Parallele Agents`,isolateWorktrees:`In Git-Worktrees isolieren`,worktreeOn:`Jede Task läuft im eigenen Worktree, bei Abschluss squash-gemergt.`,worktreeOff:`Tasks laufen direkt auf dem aktuellen Branch (keine Isolation).`,planDecompose:`Große Tasks automatisch aufteilen`,planDecomposeOn:`Vor dem Dispatch Tasks aufteilen, die die Atomizitäts-Engine als zu groß markiert.`,planDecomposeOff:`Genehmigten Task-Graphen unverändert lassen (bei Fehlschlag ggf. zur Laufzeit splitten).`,goalPrompt:`Was willst du bauen?`,goalPlaceholder:`z. B. OAuth-Login (Google + GitHub) mit Session-Management hinzufügen`,startingInterview:`Interview startet…`,startInterview:`Interview starten`,introBody:`Ein isolierter Agent interviewt dich, um eine Spec zu bauen, zerlegt sie in einen abhängigkeitsgeordneten Task-Graphen, dann führt eine echte Multi-Agenten-Fleet ihn aus — live auf dem Board schauen. Bei Refresh oder Neustart wird das Interview automatisch fortgesetzt.`,taskGraphSummary:`Task-Graph · {{count}} Tasks, abhängigkeitsgeordnet`,dragToExplore:`ziehen zum Erkunden`,show:`zeigen`,goalLabel:`Ziel`,implementationPlan:`Implementationsplan`,approveSpec:`Spec genehmigen → Implementation planen`,approveTasks:`Tasks genehmigen`,approvePlan:`Plan genehmigen`,backToQuestions:`Zurück zu den Fragen`,backToQuestionsTitle:`Spec ablehnen und zur Fragephase zurückkehren`,backToSpec:`Zurück zur Spec`,backToSpecTitle:`Plan ablehnen und zur Spec-Überprüfung zurückkehren`,rewindToPhaseTitle:`Zu dieser Phase zurückkehren, um zu überarbeiten`,quickBestPractice:`Best Practice anwenden`,quickBestPracticeDirective:`Verwende dafür branchenübliche Best Practices.`,generateSpecNow:`Spec jetzt generieren`,generateSpecNowTitle:`Spezifikation jetzt mit den gesammelten Anforderungen erstellen`,interviewProgress:`Interview-Fortschritt`,questionOf:`Frage {{current}} von {{max}}`,minRequiredMet:`Erforderliche Mindestfragen erfüllt ✓`,minRequiredRemaining:`Noch {{count}} erforderlich`,answerPlaceholder:`Frage beantworten…`,changePlaceholder:`Änderung anfordern…`,resumeBanner:`Interview aus einer vorherigen Sitzung fortgesetzt — dort weitermachen, wo du aufgehört hast.`,openLiveBoard:`Live-Board öffnen`,discardInterview:`Verwerfen & neu starten`,discardTitle:`Dieses Interview abbrechen und die gespeicherte Sitzung löschen`},me={emptyDir:`leer`,loadFailed:`Dateien konnten nicht geladen werden: {{error}}`,expandAllTitle:`Alle Verzeichnisse aufklappen`,expandAll:`Alle aufklappen`,collapseAllTitle:`Alle Verzeichnisse zuklappen`,collapse:`Zuklappen`,folders_one:`{{count}} Ordner`,folders_other:`{{count}} Ordner`,currentDirTitle:`Aktuelles Verzeichnis: {{path}}`,navigateToTitle:`Nach {{path}} navigieren`,filesSuffix_one:`{{count}} Datei`,filesSuffix_other:`{{count}} Dateien`,goToDir:`zum Ordner`,navigateParentTitle:`Zum übergeordneten Ordner von {{path}} navigieren`,parentDirectory:`übergeordneter Ordner`,noFiles:`Keine Dateien gefunden`,copyAbsPath:`Absoluten Pfad kopieren`,copyRelPath:`Relativen Pfad kopieren`,openInTerminal:`Im Terminal öffnen`,openInFileManager:`Im Dateimanager öffnen`,mentionInChat:`Im Chat erwähnen`,copyPath:`Pfad kopieren`,newFile:`Neue Datei`,newFolder:`Neuer Ordner`,newFileTitle:`Neue Datei erstellen`,newFolderTitle:`Neuen Ordner erstellen`,delete:`Löschen`,confirmDeleteDir:`"{{name}}" und alle Inhalte löschen?`,rename:`Umbenennen`,renameTitle:`Neuen Namen eingeben`,sortByName:`Name`,sortByNameTitle:`Nach Name sortieren (Standard)`,sortBySize:`Größe`,sortBySizeTitle:`Nach Dateigröße sortieren (größte zuerst)`,search:`Dateien durchsuchen`,searchPlaceholder:`Filtern…`},he={sendSelectionAction:`Auswahl an Chat senden`,noFilesOpen:`Keine Dateien offen`,selectToEdit:`Wähle eine Datei aus dem Explorer zum Bearbeiten`,sendSelectedTitle:`Ausgewählte Zeilen an Chat senden`,mentionFileTitle:`Diese Datei im Chat erwähnen`,sendToChat:`An Chat senden`,mentionFile:`Datei erwähnen`,loadingEditor:`Editor wird geladen…`,selectTab:`Wähle einen Tab um den Inhalt zu sehen`},ge={title:`Dateiaktivität`,overview:`Übersicht`,changes:`Änderungen`,context:`Kontext`,logs:`Protokolle`,memory:`Erinnerungen`,lines:`Zeilen`,resizeHint:`Zum Ändern der Größe ziehen · Doppelklick zum Zurücksetzen`,refresh:`Dateinachweise aktualisieren`,evidenceCount_one:`{{count}} Ereignis`,evidenceCount_other:`{{count}} Ereignisse`,mutations30m:`Änderungen · 30 Min.`,sessions:`Sitzungen`,actors:`Akteure`,linkedWork:`Arbeitsbezüge`,workLinks:`Kanban / Aufgabe`,recentActivity:`Letzte Dateiaktivität`,events:`Ereignisse`,noEvidence:`Dieser Datei wurde noch keine Aktivität zugeordnet.`,noSessions:`Noch keine Sitzungszuordnung.`,noActors:`Noch keine Akteurszuordnung.`,noWorkLinks:`Kein Kanban-, SDD- oder Aufgabenbezug erfasst.`,taskOrTodo:`Task / Aufgabe`,loadingEvidence:`Dateinachweise werden geladen…`,gitToBuffer:`Git HEAD → aktueller Monaco-Puffer`,savedToBuffer:`Zuletzt gespeichert → aktueller Monaco-Puffer`,unsaved:`ungespeicherter Puffer`,lifetimeTitle:`Gesamter Verlauf`,lifetimeChanges:`Änderungen`,lifetimeSessions:`Sitzungen`,lifetimeTasks:`Aufgaben`,lifetimeBoards:`Boards`,lifetimeSince:`seit {{date}}`,lifetimeTools:`über {{tools}}`,level:{quiet:`ruhig`,active:`aktiv`,churn:`hohe Änderungsrate`},analysisTitle:{quiet:`Keine aktuelle Änderungsrate`,active:`Diese Datei wird geändert`,churn:`Wiederholte Änderungen erkannt`},analysisBody:{quiet:`In den letzten 30 Minuten wurden keine zugeordneten Änderungen erfasst.`,active:`{{mutations}} Änderungen durch {{actors}} Akteure in {{sessions}} Sitzungen in den letzten 30 Minuten.`,churn:`Hohe Änderungsrate: {{mutations}} Änderungen durch {{actors}} Akteure in {{sessions}} Sitzungen. Vor der nächsten Änderung überlappende Arbeiten prüfen.`}},_e={loading:`Analytics werden geladen…`,heading:`Analytics-Dashboard`,autoRefresh:`Auto-Aktualisierung alle 10 s`,liveSessions:`Live-Sessions`,agents:`Agents`,agentsActive:`{{count}} aktiv`,totalEvents:`Ereignisse gesamt`,categoriesSub:`{{count}} Kategorien`,toolCalls:`Tool-Aufrufe`,iterationsSub:`{{count}} Iterationen`,sessionCost:`Session-Kosten`,tokensSub:`{{input}} rein / {{output}} raus`,sessionDuration:`Session-Dauer`,messagesSub:`{{count}} Nachrichten`,eventsByCategory:`Ereignisse nach Kategorie`,noEvents:`Noch keine Ereignisse aufgezeichnet.`,topEvents:`Top-Ereignisse`,activeSessionUsage:`Aktive Session-Nutzung`,provider:`Anbieter`,model:`Modell`,inputTokens:`Eingabe-Token`,outputTokens:`Ausgabe-Token`,cacheRatio:`Cache-Verhältnis`,filesRead:`Gelesene Dateien`,noSession:`Keine aktive Session oder warte auf Daten…`,healthErrors:`Health & Fehler`,errorEvents:`Fehler-Ereignisse`,warningEvents:`Warn-Ereignisse`,cacheHitRate:`Cache-Trefferquote`,totalCategories:`Kategorien gesamt`,waitingData:`Warte auf Daten…`,recentEvents:`Letzte Ereignisse`,noRecentEvents:`Keine aktuellen Ereignisse. Interagiere mit der UI um Ereignisse zu erzeugen.`},ve={heading:`Prompt-Bibliothek`,searchPlaceholder:`Prompts suchen…`,newPrompt:`+ Neues Prompt`,all:`Alle`,recent:`◷ Zuletzt`,favorites:`★ Favoriten`,noMatch:`Keine passenden Prompts.`,newPromptHeading:`Neues Prompt`,titlePlaceholder:`Titel *`,descPlaceholder:`Einzeilige Beschreibung`,categoryPlaceholder:`Kategorie`,tagsPlaceholder:`tags, kommasepariert`,contentPlaceholder:`Prompt-Inhalt * — {{name}} für Variablen`,variables:`Variablen`,addVar:`+ Var`,varNamePlaceholder:`Name`,varDescPlaceholder:`Beschreibung`,removeVarTitle:`Variable entfernen`,required:`erforderlich`,multiline:`mehrzeilig`,enumPlaceholder:`enum: a, b, c`,savePrompt:`Prompt speichern`,saveFailed:`Prompt konnte nicht gespeichert werden.`,titleContentRequired:`Titel und Inhalt sind erforderlich.`,toggleFavoriteTitle:`Favorit umschalten`,selectOption:`— wählen —`,fillMissing:`Ausfüllen: {{missing}}`,insertIntoChat:`In Chat einfügen`,selectPromptHint:`Prompt zum Vorschauen und Einfügen wählen.`},ye={scopeProject:`Projekt`,scopeGlobal:`Global`,scopeBundled:`Gebündelt`,timeoutError:`Zeitüberschreitung der Anfrage. Bitte erneut versuchen.`,updateFailed:`Update fehlgeschlagen`,saveFailed:`Speichern fehlgeschlagen`,uninstallFailed:`Deinstallation fehlgeschlagen`,noSkillSelected:`Kein Skill gewählt`,selectSkillHint:`Wähle einen Skill aus der Sidebar um die Doku zu sehen`,goToChat:`Zum Chat`,openSourceRepo:`Quell-Repo öffnen`,copySourceUrl:`Quell-URL kopieren`,updatedLabel:`↑ Aktualisiert: {{list}}`,upToDateLabel:`— Aktuell: {{list}}`,errorsLabel:`✗ {{list}}`,checkUpdatesTitle:`Auf Updates prüfen`,exportTitle:`Skill als .md exportieren`,editTitle:`Skill bearbeiten`,uninstallTitle:`Skill deinstallieren`,closeTitle:`Schließen und zum Chat`,backTitle:`Zurück`,forwardTitle:`Vor`,relatedFiles:`Verwandte Dateien`,references:`Referenzen`,goToSkillTitle:`Zu {{name}}`,loadingContent:`Skill-Inhalt wird geladen…`,editingLabel:`Bearbeite {{name}}`,editStats:`{{lines}} Zeilen · {{words}} Wörter · {{chars}} Zeichen`,charsWarningFmt:`⚠ {{used}} MB / {{limit}} MB`,draftSaved:`Entwurf gespeichert`,draftRestored:`Entwurf wiederhergestellt`,discardDraft:`Entwurf verwerfen`,splitViewTitle:`Geteilte Ansicht`,hidePreviewTitle:`Vorschau verbergen`,contentPlaceholder:`Skill-Inhalt (Markdown)...`,loadFailed:`Skill-Inhalt konnte nicht geladen werden`,noContent:`Kein Skill-Inhalt verfügbar`,uninstallSkillHeading:`Skill deinstallieren`,uninstallConfirm:`{{name}} deinstallieren?`,uninstallRemovePath:`Dies entfernt den Skill aus {{path}} und kann nicht rückgängig gemacht werden.`,uninstallAction:`Deinstallieren`},be={sessionStats:`Session-Stats`,clients:`Clients`,input:`Eingabe`,output:`Ausgabe`,cost:`Kosten`,agentsSuffix:`Agents`,upPrefix:`seit {{time}}`,webuiClient:`WebUI-Client`,disconnected:`Getrennt`,connected:`Verbunden`,tuiClient:`TUI-Client`,terminal:`Terminal`,repl:`REPL`,coordinator:`KOORDINATOR`,fleetSummary:`Fleet-Zusammenfassung`,toolCallsLabel:`Tool-Aufrufe`,tokensLabel:`Token`,coordinatingFleet:`Koordiniert Fleet`,donePrefix:`✓ fertig ·`,failedPrefix:`✕ fehlgeschlagen ·`,seenPrefix:`vor {{time}} gesehen`,availableDesk:`Freier Schreibtisch`,mailboxHub:`Postfach-Zentrale`,unreadSuffix_one:`{{count}} ungelesen`,unreadSuffix_other:`{{count}} ungelesen`,allClear:`Alles erledigt`,total:`Gesamt`,unreadLabel:`Ungelesen`,liveActivity:`Live-Aktivität`,waitingActivity:`Warte auf Aktivität…`,now:`jetzt`,fleetHq:`WrongStack Fleet-Zentrale`,live:`LIVE`,legendStatus:`Status`,legendActive:`Aktiv`,legendIdle:`Idle`,legendError:`Fehler`,legendConnections:`Verbindungen`,legendMail:`Mail`,legendTask:`Task`,legendStatusConn:`Status`,arrange:`Anordnen`,arrangeTitle:`Knoten passend auf der verfügbaren Fläche anordnen`,feed:`Feed`,feedTitle:`Live-Aktivitäts-Feed umschalten`,broadcast:`Broadcast`,broadcastTitle:`Nachricht an jede Live-Session im Projekt`,broadcastToAll:`An alle Sessions broadcasten`,broadcastPlaceholder:`Nachricht an jeden Live-Agent im Projekt…`,broadcastSendHint:`⌘/Ctrl+Enter zum Senden`,openFullView:`Vollständige Operationsansicht öffnen`,rowStatus:`Status`,rowModel:`Modell`,rowTool:`Tool`,rowIterations:`Iterationen`,rowToolCalls:`Tool-Aufrufe`,rowTokensIn:`Token rein`,rowTokensOut:`Token raus`,rowTokensTotal:`Token gesamt`,rowContext:`Kontext`,rowCost:`Kosten`,rowLastSeen:`Zuletzt gesehen`,rowSurface:`Oberfläche`,rowBranch:`Branch`,rowPid:`PID`,rowDir:`Verz.`,rowAgents:`Agents`,rowUptime:`Uptime`,rowConnections:`Verbindungen`,rowTotalMessages:`Nachrichten gesamt`,rowUnread:`Ungelesen`,recent:`Neueste`,noSubject:`(kein Betreff)`,fullOperationStream:`Vollständiger Operations-Stream`,closeEsc:`Schließen (Esc)`,idleDesk:`Freier Platz`,fleetHqLabel:`Fleet-Zentrale`,clientsSuffix_one:`{{count}} Client`,clientsSuffix_other:`{{count}} Clients`,taskFallback:`Task`,controlLabel:`Steuerung`},xe={installTitle:`Skill installieren`,createTitle:`Skill erstellen`,exportTitle:`Alle Skills als .zip exportieren`,checkUpdatesTitle:`Auf Updates prüfen (alle Skills)`,searchPlaceholder:`Skills suchen…`,loading:`Lädt…`,noSkills:`Keine Skills installiert`,noMatch:`Keine Skills passen zum Filter`,noDescription:`Keine Beschreibung`,scopeForeign:`Fremd`,installHeading:`Skill Installieren`,installHint:`GitHub-Repo-Referenz (owner/repo) oder vollständige URL eingeben.`,installPlaceholder:`z. B. wrongstack/skill-name oder https://github.com/owner/repo`,installScope:`Installations-Scope:`,installBtn:`Installieren`,installedMsg:`Installiert: {{names}}`,installFailed:`Installation fehlgeschlagen`,createHeading:`Skill Erstellen`,createHint:`Neuen Skill scaffolding. Erste Zeile ist der Trigger; weitere Zeilen die Beschreibung.`,nameLabel:`Name`,namePlaceholder:`z. B. mein-neuer-skill`,descLabel:`Beschreibung / Trigger`,descPlaceholder:`Verwende diesen Skill bei <Trigger-Situation>.
5
- Trigger: User sagt "Schlüsselwort", "anderes".`,saveIn:`Speichern in:`,createBtn:`Skill Erstellen`,createdMsg:`Erstellt: {{name}}`,createFailed:`Erstellung fehlgeschlagen`},Se={noEvents:`Noch keine Ereignisse.`},Ce={pickHint:`Kit wählen — der Agent hält sich daran.`,gallery:`Galerie`,galleryTitle:`Live-Vorschau-Galerie öffnen`,stackTitle:`Ziel-Stack`,loading:`Kits werden geladen…`,notFound:`Keine Design-Kits gefunden.`,bestFor:`Am besten für:`,light:`Hell`,dark:`Dunkel`,tune:`Feinabstimmung`,font:`Schriftart`,set:`Setzen`,spaceGrotesk:`Space Grotesk…`,aaHeading:`Aa Überschrift`,theQuickBrownFoxJumpsOver:`Franz jagt im komplett verwahrlosten Taxi quer durch Bayern.`,primary:`Primär`,ghost:`Ghost`,badge:`Badge`,inputField:`Eingabefeld…`,radius:`Radius`,density:`Dichte`,motion:`Bewegung`},we={detached:`(losgelöst)`,count_one:`{{count}} Worktree`,count_other:`{{count}} Worktrees`,baseSuffix:` · Basis {{base}}`,baseLabel:`Basis`,cleanOrphans:`Verwaiste entfernen`,cleanOrphansTitle:`Alle verwaisten Worktrees entfernen`,liveBusyTitle:`Ein Lauf ist aktiv — zuerst stoppen`,rescanTitle:`Neu scannen`,removed_one:`{{count}} Worktree entfernt.`,removed_other:`{{count}} Worktrees entfernt.`,failed:`Fehlgeschlagen`,mergedIntoBase:`{{branch}} in Basis zusammengeführt.`,conflictMerge:`Konflikt beim Zusammenführen von {{branch}}: {{files}}`,seeGit:`siehe git`,mergeFailed:`Zusammenführen fehlgeschlagen: {{reason}}`,unknownReason:`unbekannt`,mergeConfirmTitle:`{{branch}} in {{base}} zusammenführen?`,mergeConfirmMsg:`Squash-merged diesen Branch auf den Basis-Branch. Bricht sauber ab bei Konflikten.`,mergeAction:`Zusammenführen`,removeConfirmTitle:`{{branch}} entfernen?`,removeConfirmMsg:`Entfernt das Worktree-Checkout und löscht seinen Branch. Nicht zusammengeführte Arbeit geht verloren.`,empty:`Keine Worktrees.`,emptyHint:`SDD-/Goal-Läufe erstellen hier isolierte Worktrees. Verwaiste abgestürzter Läufe erscheinen ebenfalls.`,actOpenTerm:`Im Terminal öffnen`,actOpenFolder:`Ordner öffnen`,actViewChanges:`Änderungen ansehen`,actMerge:`In Basis zusammenführen`,actRemove:`Entfernen / verwerfen`,live:`live`,noUncommitted:`Keine ungespeicherten Änderungen`,commitsAhead_one:`{{count}} Commit voraus`,commitsAhead_other:`{{count}} Commits voraus`,more:`…{{count}} mehr`},Te={heading:`Bürokarte`,headingHint:`Visualisieren Sie Ihre Flotte als Bürogrundriss mit Live-Agent-Status.`,statAgents:`Agenten`,statMail:`Post`,unreadSuffix:` ungelesen`,sectionView:`Ansicht`,sectionDisplay:`Anzeige`,sectionBackground:`Hintergrund`,sectionRecent:`Letzte Aktivität`,eventsTrackedSuffix:` Ereignisse verfolgt`,recentHint:`Post-Sends, Agent-Spawns und Statusänderungen erscheinen hier.`,sectionShortcuts:`Tastenkürzel`,sectionLegend:`Legende`,hudLabel:`HUD`,hudDesc:`Echtzeit-Sitzungsstatistik-Overlay anzeigen`,hudToggle:`HUD umschalten`,minimapLabel:`Minimap`,minimapDesc:`Übersichts-Minimap anzeigen`,minimapToggle:`Minimap umschalten`,controlsLabel:`Steuerung`,controlsDesc:`Zoom- und Fit-Steuerung anzeigen`,controlsToggle:`Steuerung umschalten`,animateLabel:`Kanten animieren`,animateDesc:`Fluss auf aktiven Verbindungen animieren`,animateToggle:`Kantenanimation umschalten`,legendLabel:`Legende anzeigen`,legendDesc:`Status- und Verbindungslegende anzeigen`,legendToggle:`Legende umschalten`,feedLabel:`Live-Feed`,feedDesc:`Unterer Streifen mit letzter prozessübergreifender Aktivität`,feedToggle:`Live-Feed umschalten`,fitView:`Anpassen`,zoomIn:`Vergrößern`,zoomOut:`Verkleinern`,resetZoom:`Zoom zurücksetzen`,legendActive:`Aktiv (läuft)`,legendIdle:`Inaktiv`,legendError:`Fehler`,legendOffline:`Offline`,bg:{dots:`Punkte`,lines:`Linien`,cross:`Kreuz`,none:`Keine`}},Ee={liveProjectOffice:`Live-Projektbüro`,agents:`Agents`,working:`aktiv`,toolCalls:`Tool-Aufrufe`,office:`Büro`,topology:`Topologie`,officeDescription:`Live-Agentenplätze und Arbeit`,topologyDescription:`Clients, Agenten und Verbindungen`,team:`Team`,liveDesk:`Live-Arbeitsplatz & eingehende Arbeit`,lastActions:`Letzte Arbeiten`,leadAgent:`Lead Agent`,agent:`Agent`,callsCount:`{{count}} Aufrufe`,recent:`Zuletzt`,noCalls:`Noch keine abgeschlossenen Aufrufe`,telemetryReconnect:`Terminal neu verbinden, um den Tool-Verlauf zu starten`,thinking:`Denkt nach`,waiting:`Wartet auf Arbeit`,preparing:`Nächste Aktion wird vorbereitet…`,deskReady:`Arbeitsplatz ist bereit`,toolCall:`Tool-Aufruf`,execution:`Ausführung`,started:`Gestartet`,duration:`Dauer`,session:`Sitzung`,target:`Ziel`,resultSize:`Ergebnisgröße`,lines:`Zeilen`,bytes:`Bytes`,tokens:`Tokens`,input:`Eingabe`,outputPreview:`Ausgabevorschau`,readyTitle:`Das Büro ist bereit`,readyBody:`Agents nehmen einen Platz ein, sobald sie diesem Projekt beitreten.`,liveEvent:`Live-Ereignisstrom`,connectedSessions_one:`{{count}} verbundene Sitzung`,connectedSessions_other:`{{count}} verbundene Sitzungen`,detailHint:`Aktion anklicken, um exakte Eingabe- und Ergebnisdetails zu sehen`,officeBriefing:`Büro-Briefing`,leaderPrompt:`Letzter Prompt des Leaders`,activeInstruction:`Aktive Anweisung`,telemetryWaiting:`Terminal neu verbinden, um Live-Anweisungen zu empfangen`,syncWaiting:`Warten auf Synchronisierung`,todoTelemetryWaiting:`Terminal neu verbinden, um die Live-Aufgabenliste zu empfangen`,taskNotReported:`Agent arbeitet, aber es wurde keine Aufgabenbeschreibung gemeldet`,noPrompt:`In dieser Sitzung wurde noch kein Prompt empfangen`,activeTodos:`Aktive Aufgaben`,todoProgress:`{{done}}/{{total}} erledigt`,allTodosDone:`Alle Aufgaben erledigt`,noActiveTodos:`Noch keine aktiven Aufgaben`,moreTodos:`+{{count}} weitere`,currentTask:`Aktuelle Aufgabe`,task:`Aufgabe`,promptReceived:`Empfangen`,todos:`Aufgaben`,todoStatus:{pending:`Ausstehend`,in_progress:`In Bearbeitung`,completed:`Abgeschlossen`},breakRoom:`Pausenraum`,onBreak:`{{count}} in der Pause`,desksEmpty:`Alle machen Pause — die Schreibtische sind bereit für die nächste Aufgabe`,files:`DATEIEN`,read:`LESEN`,write:`SCHREIBEN`,edit:`BEARBEITEN`,term:`TERM`,live:`LIVE`,uniqueFilesTouched:`Berührte eindeutige Dateien`,fileReads:`Dateilesevorgänge`,filesWritten:`Geschriebene Dateien`,filesEdited:`Bearbeitete Dateien`,linesAddedAndRemoved:`Hinzugefügte und entfernte Zeilen`,terminalCommands:`Terminalbefehle`,incomingAndOutgoingMail:`Ein- und ausgehende Nachrichten`,sessionActivityTotals:`Gesamtwerte der Sitzungsaktivität`,closeToolDetails:`Tool-Details schließen`,closeDetails:`Details schließen`,closeMailDetails:`Nachrichtendetails schließen`,closeTaskDetails:`Aufgabendetails schließen`,closeOfficeBriefing:`Büro-Briefing schließen`,priority:`Priorität`,route:`Route`},De={injectedHeading:`SAGE-Speicher eingefügt`,memoriesLabel_one:`{{count}} Erinnerung`,memoriesLabel_other:`{{count}} Erinnerungen`},Oe={tabProject:`SDD-Projekt`,tabBoard:`Live SDD-Board`,tabSpecs:`Spezifikationen`},ke={label:`Seitenleiste`},Ae={deleteTitle:`Diesen Speicher löschen?`,backToList:`Zurück zur Speicherliste`,copyId:`Speicher-ID kopieren`,deletedMemory:`Gelöschter Speicher`,anchorCursorHint:`Der Zeilenbereich des Cursors entspricht dem Anker dieses Speichers`,statusDeleted:`gelöscht`,statusSuperseded:`überschrieben`,restoreTitle:`Diesen Speicher in den aktiven Status zurückversetzen`,supersededJumpTitle:`Diese Version ist überschrieben — zur aktiven Version springen`,acceptSuggestionTitle:`Löschvorschlag der Hygiene annehmen — Speicher wird vergessen`,rejectSuggestionTitle:`Vorschlag ablehnen — Speicher bleibt unverändert und kann später erneut vorgeschlagen werden`,updateTitle:`Inhalt des Speichers aktualisieren — Versionierung erstellt einen neuen aktiven Datensatz`,promoteTitle:"Auf `permanent` anheben — Hygiene blendet dies nie wieder ein",openRecordTitle:`Vollständigen Datensatz in MemoryManager öffnen`,fileDrawerAria:`Datei-Speicher-Schublade`,requeryTitle:`Diese Datei erneut abfragen`,closeDrawerAria:`Schublade schließen`,closeDrawerTitle:`Speicher-Schublade schließen`,showRecoverable:`Wiederherstellbare anzeigen (gelöscht)`,cursorBoostTitle:`Cursor-Boost`,fileScopedTitle:`Dateibezogen`,mentionedInTitle:`Erwähnt in`,editorKnowledge:`Wissen`,editorContentPlaceholder:`Beispiel: Der WebUI-Zustand gehört zu Zustand-Stores; Servermeldungen aktualisieren diese Stores über Singleton-WebSocket-Handler.`,editorImportance:`Wichtigkeit`,editorConfidence:`Konfidenz`,editorFreshness:`Aktualität`,editorAnchors:`Anker`,editorSymbolPlaceholder:`Symbolname`,editorRelationships:`Beziehungen`,searchAria:`Speicher durchsuchen`,searchPlaceholder:`Inhalt, IDs, Tags, Anker durchsuchen…`,clearSearchAria:`Suche löschen`,audienceFilterAria:`Nur zielgruppengebunden filtern`,audienceFilterTitle:`Nur zielgruppengebundene Speicher anzeigen`,clearFiltersAria:`Alle Filter löschen`,clearFiltersTitle:`Alle Filter löschen`,allStatuses:`Alle Status`,allKinds:`Alle Arten`,tagsLabel:`Tags`,popularTags:`Beliebte Tags`,graphAria:`Speicher-Beziehungsgraph`,graphFullscreenAria:`Graphen im Vollbild öffnen`,clearTracesTitle:`Alle Spuren löschen`,closePanelTitle:`Panel schließen`,traceMatched:`übereinstimmend`,traceInjected:`eingefügt`,traceFiltered:`gefiltert`,traceActive:`aktiv`,traceExited:`beendet`,traceScore:`Punktzahl`,traceError:`Fehler`,lifecycleAria:`Live-Protokoll des Speicherlebenszyklus`,listAria:`Speicher`,emptyTitle:`Der langfristige Kontext Ihres Projekts`,emptyVerifiedAnchors:`Verifizierte Anker`,emptyTypedRelations:`Typisierte Beziehungen`,emptyAgentRecall:`Agent-Abruf`,lensesAria:`SAGE-Speicherlinsen`,loadingSage:`SAGE wird geladen`,loadingAudience:`Zielgruppenspeicher werden geladen`,loadingVectorMemory:`Vektorspeicher wird geladen`,storeUnavailable:`Speicher-Store nicht verfügbar`,backToChat:`Zurück zum Chat`,sageHeading:`SAGE`,refreshAria:`Speicher aktualisieren`,tabMemories:`Speicher`,tabActive:`Aktiv`,tabReview:`Prüfung`,tabNeedsReview:`Prüfung nötig`,reviewLoading:`Prüfungswarteschlange wird geladen…`,reviewLoadTimeout:`Prüfungswarteschlange hat nicht rechtzeitig geantwortet.`,reviewEmptyTitle:`Keine ausstehenden Prüfungen`,reviewEmptyHint:`Hygiene- und Triage-Vorschläge erscheinen hier zum Annehmen/Ablehnen.`,reviewPendingCount_one:`{{count}} ausstehende Prüfung`,reviewPendingCount_other:`{{count}} ausstehende Prüfungen`,reviewSelectAll:`Alle auswählen`,reviewClearSelection:`Auswahl aufheben`,reviewSelectOne:`Prüfungselement auswählen`,reviewBulkAccept:`Auswahl annehmen`,reviewBulkKeep:`Auswahl behalten`,tabGraphEdges:`Graphkanten`,libraryAria:`Speicherbibliothek`,viewAria:`Speicheransicht`,detailAria:`Speicherdetail`,fileForDrawerAria:`Datei für Speicher-Schublade`,cursorLabel:`Cursor`,reviewLabel:`Prüfung`,hygieneReviewTitle:`Hygiene-Prüfung: {{reason}} ({{days}} Tage alt)`,updatedSuffix:`aktualisiert {{date}}`,actionRecover:`Wiederherstellen`,actionGoToActive:`Zur aktiven Version`,actionAcceptDeletion:`Löschung akzeptieren`,actionKeep:`Behalten`,actionUpdate:`Aktualisieren`,actionMarkPermanent:`Als permanent markieren`,actionShowFull:`Vollständig anzeigen`,itemLabel:`Speicher`,noFile:`(keine Datei)`,memoriesCount_one:`{{count}} Speicher`,memoriesCount_other:`{{count}} Speicher`,pendingReviewCount_one:`{{count}} ausstehende Prüfung`,pendingReviewCount_other:`{{count}} ausstehende Prüfungen`,supersededCount:`{{count}} überschrieben`,linesRange:`Zeilen {{start}}–{{end}}`,emptyOpenFile:`Öffnen Sie eine Datei, um ihre Speicher zu sehen.`,loadingMemories:`Speicher werden geladen…`,errorPrefix:`Fehler: {{message}}`,emptyNoMemories:`Noch keine Speicher an {{file}} angehängt.`,pendingAccepting:`akzeptiere…`,pendingKeeping:`behalte…`,pendingUpdating:`aktualisiere…`,pendingMarking:`markiere…`,pendingRecovering:`stelle wieder her…`,deletedNeverPolicy:`Dieser Datensatz dient nur der Prüfung und trägt ein absolutes Verbot: Er darf niemals in den LLM-Kontext gelangen.`,deletedEligiblePolicy:`Der Datensatz ist inaktiv und nicht bearbeitbar, bleibt aber als historisches Beweisstück geeignet, wenn die Abfrage ihn als relevant findet.`,deletingLabel:`Wird gelöscht…`,actionDeleteMemory:`Speicher löschen`,copiedNotice:`Speicher-ID kopiert.`,revisionSuffix:`Revision {{n}}`,memoryRelationships:`Speicherbeziehungen`,captureMemory:`Einen Speicher erfassen`,editMemory:`Speicher bearbeiten`,editorCreateHint:`Dauerhaftes Wissen mit Abruf-Metadaten hinzufügen.`,editorEditHint:`Inhalt aktualisieren, ohne die Herkunft zu verlieren.`,createMemory:`Speicher erstellen`,saveChanges:`Änderungen speichern`,addAnchor:`Anker hinzufügen`,noAnchors:`Noch keine Anker — fügen Sie einen hinzu, um die Abrufpräzision zu verbessern`,loadingGraph:`echter Graph wird geladen…`,graphStats:`{{nodes}} Knoten · {{edges}} Kanten`,lifecycleHeading:`Speicherlebenszyklus`,statusWaiting:`wartet`,statusLive:`live · {{count}}/100`,noMatching:`Keine passenden Speicher`,buildGraph:`Speichergraph erstellen`,clearFilters:`Filter löschen`,createFirst:`Ersten Speicher erstellen`,captureButton:`Speicher erfassen`,memoryCaptured:`Speicher erfasst.`,memoryUpdated:`Speicher aktualisiert.`,liveStore:`Live-Speicher`,reconnecting:`wird neu verbunden`,newMemory:`Neuer Speicher`,hideFileDrawer:`Datei-Speicher-Schublade ausblenden`,showFileDrawer:`Datei-Speicher-Schublade einblenden`,hideDrawer:`Schublade ausblenden`,showDrawer:`Schublade einblenden`,editorCharCount:`{{count}} Zeichen`,editorContentLabel:`Speicherinhalt`,editorKind:`Art`,editorScope:`Bereich`,editorLifecycleStatus:`Lebenszyklusstatus`,editorSupersedes:`Ersetzt`,editorContradicts:`Widerspricht`,filterByStatus:`Nach Status filtern`,filterByKind:`Nach Art filtern`,graphHeading:`Beziehungsgraph`,graphHeadingFull:`Beziehungsgraph — {{id}}`,graphOpenFullscreen:`Vollbild öffnen`,projectKnowledge:`Projektwissen`,sageSubtitle:`Dauerhaften Kontext prüfen, verbinden, kuratieren und ausmustern, der in Agentensitzungen verwendet wird.`,emptyBody:`Wählen Sie einen Speicher, um Metadaten und Beziehungsgraph zu prüfen, oder erfassen Sie Wissen, das künftige Agenten automatisch abrufen sollen.`,tabDeleted:`Gelöscht`,fileDrawerLabel:`Datei-Schublade`,selectFilePlaceholder:`— Datei auswählen —`,memoryCountSummary:`{{shown}} von {{total}} Speichern`,updatedSortLabel:`aktualisiert ↓`,searchBreakdownAria:`Suchaufschlüsselung`,searchBreakdownTitle:`Suche: {{query}}`,searchBreakdownDual:`dualkanal`,searchBreakdownLexicalOnly:`nur lexikalisch`,searchBreakdownLoading:`Dualkanalsuche läuft…`,searchBreakdownEmpty:`Keine Treffer in einem der Kanäle.`,searchBreakdownSourceLabel:`Quelle: {{source}}`,tabAllMemories:`Alle Speicher`,tabAllMemoriesHint:`Prüfen, kuratieren, ausmustern`,tabAudience:`Zielgruppenbezogen`,tabAudienceHint:`An Agenten geroutete Anleitung`,tabVectorMemory:`Vektorspeicher`,tabVectorMemoryHint:`Semantischer Embedding-Speicher`,editorRelationshipsHint:`Verweisen Sie auf exakte Speicher-IDs. Beziehungen werden validiert und Graphkanten von SAGE neu aufgebaut.`,editorTaskTypes:`Aufgabentypen`,createAction:`Erstellen`,mutationTimeout:`{{verb}} abgelaufen. Ihr Entwurf ist noch da.`,loadingSageContent:`SAGE-Inhalt wird geladen`,injectorActiveInContext:`Im Kontext aktiv`,injectorInjectionHistory:`Injektionsverlauf`,injectorContextTransitions:`Kontextübergänge`,metaCreated:`Erstellt`,metaUpdated:`Aktualisiert`,metaLastAccessed:`Zuletzt aufgerufen`,metaLastVerified:`Zuletzt verifiziert`,referencedUnavailable:`Referenzierter Speicher nicht verfügbar`,emptyFiltered:`Ändern Sie die Filter oder leeren Sie die Suchanfrage.`,emptyCapture:`Erfassen Sie dauerhafte Fakten, Entscheidungen, Konventionen und dateigebundene Notizen für jeden Agenten.`,memoryUnavailable:`Der Eintrag ist nicht verfügbar oder wurde entfernt.`,staleConflicts:`veraltet + Konflikte`},je={enableLayer:`Diese Grenzschicht aktivieren`,outsideScope:`Außerhalb des Geltungsbereichs`,askPermission:`Um Erlaubnis fragen`,alwaysBlock:`Immer blockieren`,allow:`Erlauben`,allowSelectors:`Selektoren erlauben`,denySelectors:`Selektoren verweigern`,crossPathSelectors:`Die Shell „Erlauben“ ist opak und kann pfadübergreifende Selektoren durchlassen.`,removeLayer:`Schicht entfernen`,taskInspector:`Task-Inspektor`,task:`Task`,dispatched:`Gesendet`,collapseDetails:`Task-Details einklappen`,taskBoundary:`Task-Grenze`,title:`Titel`,managedStage:`Verwaltete Stufe`,status:`Status`,priority:`Priorität`,type:`Typ`,labelsCommaSeparated:`Labels (durch Komma getrennt)`,dueDatePlaceholder:`Fälligkeitsdatum (ISO oder JJJJ-MM-TT)`,estimatedHours:`Geschätzte Stunden`,actualHours:`Tatsächliche Stunden`,selectBlockingTasks:`Blockierende Tasks auswählen…`,selectSequentialChain:`Tasks zu einer sequenziellen Kette hinzufügen…`,enforceChainOrder:`Kettenreihenfolge als Abhängigkeiten erzwingen`,assignmentReason:`Änderungs- / Zuweisungsgrund (in Aktivität gespeichert)`,managedLifecycle:`Verwalteter Lebenszyklusübergang`,kanbanAgentTransition:`Kanban-Agent-Übergang`,completedAction:`Abgeschlossene Aktion / Reviewer-Aktion`,progressComment:`Wahrheitsgemäßer Fortschrittskommentar (erforderlich)`,evidenceUrl:`URL des Beleganhangs`,source:`Quelle`,taskId:`Task-ID`,run:`Ausführen`,column:`Spalte`,primaryModelSource:`Primäre Modellquelle`,selectProviderModel:`Genauen Anbieter / Modell auswählen…`,fallbackProfile:`Fallback-Profil (erstes Modell ist primär)`,selectProfile:`Konfiguriertes Profil auswählen…`,fallbackModels:`Fallback-Modelle`,addFallbackModel:`Fallback-Modell hinzufügen…`,role:`Rolle`,selectRole:`Rolle auswählen…`,assignSkills:`Erforderliche Fähigkeiten zuweisen…`,restrictTools:`Auf bestimmte Tools beschränken…`,agentNameOptional:`Agentenname (optional)`,retryPolicy:`Wiederholungsrichtlinie`,maxAttempts:`Maximale Versuche`,costCeilingUsd:`Kostenobergrenze USD`,grantCapability:`Fähigkeit gewähren…`,targetBoard:`Ziel-Board`,boardPresence:`Board-Präsenz`,liveBoardUsers:`Aktive Board-Benutzer`,kanbanAgent:`Kanban-Agent`,watchThisBoard:`Dieses Board beobachten`,supervisorEngine:`Supervisor-Engine`,kanbanAgentModelSource:`Kanban-Agent-Modellquelle`,supervisorSkills:`Supervisor-Fähigkeiten`,forceLoadSkills:`Agentische Fähigkeiten laden erzwingen…`,extraFallbackModels:`Zusätzliche Fallback-Modelle`,optionalFallbacks:`Optionale geordnete Fallbacks…`,queueHealth:`Warteschlangenstatus`,claimableTasks:`Beanspruchbare Tasks`,runningAssignments:`Laufende Zuweisungen`,inReview:`In Überprüfung`,manuallyBlocked:`Manuell blockiert`,failedTasks:`Fehlgeschlagene Tasks`,blockedByDeps:`Bereit/anstehend, blockiert durch Abhängigkeiten`,expiredLeases:`Abgelaufene Lease-Zuweisungen`,healthy:`gesund`,costCeilingSum:`Summe der costCeilingUsd für laufende/queued Tasks`,liveRunSteer:`Live-Lauf — hier steuern`,openLiveRun:`Live-Lauf-Ansicht öffnen (SDD Hub)`,runAsLiveJob:`Dieses Board als Live-Agent-Job ausführen:`,startAsGoal:`Als Ziel starten`,startAsSdd:`Als SDD starten`,runControls:`Ausführungssteuerung`,workerModel:`Worker-Modell`,setModelForTask:`Modell für diesen Task festlegen…`,newWorkerName:`Neuer Worker-Name`,duration:`Dauer`,liveRun:`Live-Lauf`,lastResult:`Letztes Ergebnis`,definitionOfDone:`Definition of Done`,failingChecks:`Fehlgeschlagene Prüfungen`,evidenceMissing:`Belege fehlen (Agent/Council-Prüfungen ohne unterstützende Referenzen)`,needsDecomposition:`Zerlegung erforderlich`,decompositionPending:`Zerlegungsvorschläge warten auf Genehmigung`,noOutstanding:`Keine offenen Überprüfungs- oder Zerlegungsprobleme auf diesem Board.`,kanban:`Kanban`,newBoard:`Neues Board`,createBoard:`Board erstellen`,deleteTask:`Task löschen`,runFailed:`Ausführung fehlgeschlagen`,splitPendingApproval:`Aufteilung wartet auf Genehmigung`,newTask:`Neuer Task`,addTask:`Task hinzufügen`,duplicateBoard:`Board duplizieren`,boardHistory:`Board-Verlauf`,noHistory:`Noch kein Verlauf`,confirmDelete:`Bestätigen?`,confirmDeleteBoard:`Erneut klicken, um das Löschen des Boards zu bestätigen`,deleteBoard:`Board löschen`,boardBoundary:`Board-Grenze`,noBoardSelected:`Kein Kanban-Board ausgewählt.`,expandDetails:`Task-Details erweitern`,elapsed:`Verstrichen`,assigned:`Zugewiesen`,configuredAgentRoute:`die konfigurierte Agent-Route`,subagent:`Subagent`,checkedAgo:`vor {{ago}} geprüft`,notChecked:`nicht geprüft`,auditInterval:`Prüfintervall (Sekunden)`,statusReady:`bereit`,statusRunning:`läuft`,statusReview:`prüfung`,statusBlocked:`blockiert`,statusFailed:`fehlgeschlagen`,statusBlockedByDeps:`durch Abhängigkeiten blockiert`,statusStale:`veraltet`,runningCost:"~${{cost}} laufende Kosten",actionPause:`Pause`,actionResume:`Fortsetzen`,actionRetryFailed:`Fehlgeschlagene erneut versuchen`,actionStop:`Stopp`,actionReassign:`Neu zuweisen`,actionRunNow:`Jetzt ausführen`,deleteTaskAria:`Task löschen: {{title}}`,confirmDeleteTask:`Erneut klicken, um das Löschen der Aufgabe zu bestätigen`,confirmDeleteTaskAria:`Löschen bestätigen: {{title}}`,moveTaskToColumn:`{{title}} in Spalte verschieben`,activityNoteTemplate:`{{action}} von WebUI an {{target}}.`},Me={heading:`Cron-Jobs`,subtitle:`Geplante wiederkehrende Aufgaben, verwaltet vom Cron-Plugin.`,statusDisabled:`Deaktiviert`,statusOverdue:`Überfällig`,statusActive:`Aktiv`,jobCount_one:`{{count}} Job`,jobCount_other:`{{count}} Jobs`,enabledCount:`{{count}} aktiviert`,overdueCount:`{{count}} überfällig`,totalRuns:`{{count}} Läufe gesamt`,maxConcurrent:`max. {{count}} gleichzeitig`,emptyTitle:`Keine Cron-Jobs geplant.`,emptyUse:`Zum Hinzufügen`,emptyToAdd:`verwenden.`,thStatus:`Status`,thName:`Name`,thInterval:`Intervall`,thRuns:`Läufe`,thNextRun:`Nächster Lauf`,thLastRun:`Letzter Lauf`,thAction:`Aktion`,lastFiredAtTitle:`Zuletzt ausgelöst um {{time}}`,footerUse:`Zum Hinzufügen`,footerToAdd:`verwenden,`,footerToRemove:`zum Entfernen verwenden.`},Ne={refreshRosterData:`Roster-Daten aktualisieren`,liveEmpty:`Agenten erscheinen hier, wenn Subagenten spawnen`,fleetInspector:`Flotteninspektor`,openAgentsPanel:`Agenten-Panel öffnen`,toolCalls:`Werkzeugaufrufe`,running:`Läuft`,projectAgents:`Projekt-Agenten`,createOrCloneTitle:`Projekt-Agent erstellen oder klonen`,createOrCloneHint:`Beliebigen Roster-Agenten als Vorlage übernehmen und dann eine eigene Identität, Laufzeitrichtlinie und Lernhistorie entwickeln.`,cloneFromRole:`Aus Roster-Rolle klonen`,cloneHint:`Prompt, Werkzeuge, Fähigkeiten und Standardeinstellungen werden übernommen. Lernen und spätere Änderungen bleiben auf den neuen Agenten beschränkt.`,displayName:`Anzeigename`,descriptionPlaceholder:`Eigene X-, Y- und Z-Workflows für dieses Projekt besitzen und Ergebnisse überprüfen.`,creating:`Wird erstellt…`,noCustomizations:`Noch keine Anpassungen`,selectAgentEmpty:`Agent zum Bearbeiten der Anpassungen auswählen`,saving:`Wird gespeichert…`,saveFailed:`Speichern fehlgeschlagen`,failed:`Fehlgeschlagen`,learningResumed:`Automatisches Lernen fortgesetzt`,optimizationEmptyToast:`Optimierung ergab ein leeres Ergebnis. Bitte erneut versuchen.`,noActiveModelToast:`Kein aktives Modell auf dem Server. Optimierung an den Chat-Agenten gesendet.`,learningsEmpty:`Lerneinträge erscheinen, wenn Agenten Ausgaben erfassen`,allRosterAgents:`Alle Roster-Agenten`,optimizing:`Optimiert…`,paused:`pausiert`,selectLearningAgent:`Agent zum Anzeigen der Lerndetails auswählen`,learningOn:`Lernen aktiv`,lastCapture:`Letzte Erfassung`,lifetimeCaptures:`Lebenszeit-Erfassungen`,hitRate:`Trefferquote`,neverUsed:`Nie verwendet`,learningsLimitExceeded:`Gelernte Daten überschreiten das weiche Limit ({{bytes}}B / 8.192B). Optimieren, um Roheinträge zu einem konsolidierten Dokument zusammenzufassen und das Kontextvolumen zu reduzieren.`,newPending:`neu ausstehend`,viewAction:`Anzeigen`,applying:`Wird angewendet…`,searchPlaceholder:`Agenten nach Name, Rolle oder Beschreibung suchen…`,maxIterations:`Max. Iterationen`,maxToolCalls:`Max. Werkzeugaufrufe`,projectCustomizations:`Projekt-Anpassungen`,learnedEntries:`gelernte Einträge`,teachFailed:`Lehren fehlgeschlagen`,selectRoleEmpty:`Rolle zum Prüfen oder Bearbeiten auswählen`,captureLearned:`Gelerntes erfassen`,teachThisAgent:`Diesen Agenten lehren`,teachPlaceholder:`Beschreiben, was dieser Agent besser machen soll … z. B. „Dieser Agent soll Versionen immer von npm prüfen, bevor er sie empfiehlt“`,heading:`Agenten-Roster`,headerSummary:`{{customized}} angepasst · {{entries}} gelernte Einträge`,tabLive:`Live-Flotte`,tabCatalog:`Roster-Katalog`,tabLearning:`Selbstlernen`,tabCustomize:`Anpassung`,learning:`lernt`,learningPaused:`Lernen pausiert`,autoLearningPaused:`Automatisches Lernen pausiert`,toolsCount_one:`{{count}} Tool`,toolsCount_other:`{{count}} Tools`,maxItShort:`max. {{value}} Iter.`,customizedBadge:`Angepasst`,needsSummary:`⚠ Zusammenfassung nötig`,timeout:`Zeitlimit`,learnedEntriesCount_one:`{{count}} gelernter Eintrag`,learnedEntriesCount_other:`{{count}} gelernte Einträge`,sessionCapturesCount_one:`{{count}} Sitzungserfassung`,sessionCapturesCount_other:`{{count}} Sitzungserfassungen`,noAgentsMatch:`Keine Agenten passen zu „{{query}}“`,footerRosterRoles_one:`Roster-Rolle`,footerRosterRoles_other:`Roster-Rollen`,footerCustomized:`angepasst`,footerTotalLearned_one:`gelernter Eintrag insgesamt`,footerTotalLearned_other:`gelernte Einträge insgesamt`,clone:`+ Klonen`,abc:`ABC`,abcGeneratedFromName:`abc (aus dem Namen erzeugt)`,roleIdOptional:`Rollen-ID (optional)`,purpose:`Zweck`,taskTypesCommaOrOnePer:`Aufgabentypen (kommagetrennt oder einer pro Zeile)`,cancel:`Abbrechen`,selectAnAgentToEditCustomizations:`Wählen Sie einen Agenten, um Anpassungen zu bearbeiten`,llmImprove:`LLM-Verbesserung`,reset:`Zurücksetzen`,editIdentityMd:`identity.md bearbeiten`,editLearnedMd:`learned.md bearbeiten`,editConfigJson:`config.json bearbeiten`,runtimePolicy:`Laufzeitrichtlinie`,retry:`Erneut versuchen`,noSelfLearningDataYet:`Noch keine Selbstlerndaten`,review:`prüfen →`,selectAnAgentToViewLearning:`Wählen Sie einen Agenten, um Lerndetails anzuzeigen`,entries:`Einträge`,size:`Größe`,optimizeLearnings:`Gelerntes optimieren`,keep:`Behalten`,drop:`Verwerfen`,describeACommandPatternOrBehavior:`Beschreiben Sie einen Befehl, ein Muster oder ein Verhalten, das dieser Agent sich merken soll.`,eGAlwaysUsePnpmForThisProject:`z. B. Für dieses Projekt immer pnpm verwenden`,teach:`Beibringen`,noActiveFleetAgents:`Keine aktiven Flottenagenten`,clear:`Leeren`,agentsTotal:`Agenten insgesamt`,leader:`Leiter`,iterations:`Iterationen`,cost:`Kosten`,context:`Kontext`,contextWindow:`Kontextfenster`,error:`Fehler`,filterAll:`Alle ({{count}})`,filterRunning:`Laufend ({{count}})`,filterDone:`Fertig ({{count}})`,filterFailed:`Fehlgeschlagen ({{count}})`,optimizeAll:`Alle optimieren ({{count}})`,policyUpdateFailed:`Richtlinienaktualisierung fehlgeschlagen`,noRawEntries:`Noch keine Rohdaten zum Optimieren.`,optimizedOk:`Optimiert. Konsolidiertes Wissen aktualisiert.`,emptySynthesis:`Das Modell lieferte ein leeres Ergebnis. Es wurde nichts geändert – bitte erneut versuchen.`,consolidatedWithModel:`Gelerntes mit {{model}} konsolidiert.`,consolidatedPlain:`Gelerntes konsolidiert.`,resetConfirm:`Alle projektspezifischen Daten für den Agenten „{{role}}“ zurücksetzen?`,loadCustomizationFailed:`Anpassung konnte nicht geladen werden`,loadRuntimePolicyFailed:`Laufzeitrichtlinie konnte nicht geladen werden`,runtimePolicySaveFailed:`Speichern der Laufzeitrichtlinie fehlgeschlagen`,llmImprovementFailed:`LLM-Verbesserung fehlgeschlagen`,agentCreationFailed:`Agentenerstellung fehlgeschlagen`,noActiveModelMsg:`Kein aktives Modell auf dem Server – Optimierung stattdessen an den Chat-Agenten gesendet.`,optimizationFailed:`Optimierung fehlgeschlagen`,bulkOptimizationFailed:`Massenoptimierung fehlgeschlagen`,taskTypesPlaceholder:`X-Workflow
5
+ Trigger: User sagt "Schlüsselwort", "anderes".`,saveIn:`Speichern in:`,createBtn:`Skill Erstellen`,createdMsg:`Erstellt: {{name}}`,createFailed:`Erstellung fehlgeschlagen`},Se={noEvents:`Noch keine Ereignisse.`},Ce={pickHint:`Kit wählen — der Agent hält sich daran.`,gallery:`Galerie`,galleryTitle:`Live-Vorschau-Galerie öffnen`,stackTitle:`Ziel-Stack`,loading:`Kits werden geladen…`,notFound:`Keine Design-Kits gefunden.`,bestFor:`Am besten für:`,light:`Hell`,dark:`Dunkel`,tune:`Feinabstimmung`,font:`Schriftart`,set:`Setzen`,spaceGrotesk:`Space Grotesk…`,aaHeading:`Aa Überschrift`,theQuickBrownFoxJumpsOver:`Franz jagt im komplett verwahrlosten Taxi quer durch Bayern.`,primary:`Primär`,ghost:`Ghost`,badge:`Badge`,inputField:`Eingabefeld…`,radius:`Radius`,density:`Dichte`,motion:`Bewegung`},we={detached:`(losgelöst)`,count_one:`{{count}} Worktree`,count_other:`{{count}} Worktrees`,baseSuffix:` · Basis {{base}}`,baseLabel:`Basis`,cleanOrphans:`Verwaiste entfernen`,cleanOrphansTitle:`Alle verwaisten Worktrees entfernen`,liveBusyTitle:`Ein Lauf ist aktiv — zuerst stoppen`,rescanTitle:`Neu scannen`,removed_one:`{{count}} Worktree entfernt.`,removed_other:`{{count}} Worktrees entfernt.`,failed:`Fehlgeschlagen`,mergedIntoBase:`{{branch}} in Basis zusammengeführt.`,conflictMerge:`Konflikt beim Zusammenführen von {{branch}}: {{files}}`,seeGit:`siehe git`,mergeFailed:`Zusammenführen fehlgeschlagen: {{reason}}`,unknownReason:`unbekannt`,mergeConfirmTitle:`{{branch}} in {{base}} zusammenführen?`,mergeConfirmMsg:`Squash-merged diesen Branch auf den Basis-Branch. Bricht sauber ab bei Konflikten.`,mergeAction:`Zusammenführen`,removeConfirmTitle:`{{branch}} entfernen?`,removeConfirmMsg:`Entfernt das Worktree-Checkout und löscht seinen Branch. Nicht zusammengeführte Arbeit geht verloren.`,empty:`Keine Worktrees.`,emptyHint:`SDD-/Goal-Läufe erstellen hier isolierte Worktrees. Verwaiste abgestürzter Läufe erscheinen ebenfalls.`,actOpenTerm:`Im Terminal öffnen`,actOpenFolder:`Ordner öffnen`,actViewChanges:`Änderungen ansehen`,actMerge:`In Basis zusammenführen`,actRemove:`Entfernen / verwerfen`,live:`live`,noUncommitted:`Keine ungespeicherten Änderungen`,commitsAhead_one:`{{count}} Commit voraus`,commitsAhead_other:`{{count}} Commits voraus`,more:`…{{count}} mehr`},Te={heading:`Bürokarte`,headingHint:`Visualisieren Sie Ihre Flotte als Bürogrundriss mit Live-Agent-Status.`,statAgents:`Agenten`,statMail:`Post`,unreadSuffix:` ungelesen`,sectionView:`Ansicht`,sectionDisplay:`Anzeige`,sectionBackground:`Hintergrund`,sectionRecent:`Letzte Aktivität`,eventsTrackedSuffix:` Ereignisse verfolgt`,recentHint:`Post-Sends, Agent-Spawns und Statusänderungen erscheinen hier.`,sectionShortcuts:`Tastenkürzel`,sectionLegend:`Legende`,hudLabel:`HUD`,hudDesc:`Echtzeit-Sitzungsstatistik-Overlay anzeigen`,hudToggle:`HUD umschalten`,minimapLabel:`Minimap`,minimapDesc:`Übersichts-Minimap anzeigen`,minimapToggle:`Minimap umschalten`,controlsLabel:`Steuerung`,controlsDesc:`Zoom- und Fit-Steuerung anzeigen`,controlsToggle:`Steuerung umschalten`,animateLabel:`Kanten animieren`,animateDesc:`Fluss auf aktiven Verbindungen animieren`,animateToggle:`Kantenanimation umschalten`,legendLabel:`Legende anzeigen`,legendDesc:`Status- und Verbindungslegende anzeigen`,legendToggle:`Legende umschalten`,feedLabel:`Live-Feed`,feedDesc:`Unterer Streifen mit letzter prozessübergreifender Aktivität`,feedToggle:`Live-Feed umschalten`,fitView:`Anpassen`,zoomIn:`Vergrößern`,zoomOut:`Verkleinern`,resetZoom:`Zoom zurücksetzen`,legendActive:`Aktiv (läuft)`,legendIdle:`Inaktiv`,legendError:`Fehler`,legendOffline:`Offline`,bg:{dots:`Punkte`,lines:`Linien`,cross:`Kreuz`,none:`Keine`}},Ee={liveProjectOffice:`Live-Projektbüro`,agents:`Agents`,working:`aktiv`,toolCalls:`Tool-Aufrufe`,office:`Büro`,topology:`Topologie`,officeDescription:`Live-Agentenplätze und Arbeit`,topologyDescription:`Clients, Agenten und Verbindungen`,team:`Team`,liveDesk:`Live-Arbeitsplatz & eingehende Arbeit`,lastActions:`Letzte Arbeiten`,leadAgent:`Lead Agent`,agent:`Agent`,callsCount:`{{count}} Aufrufe`,recent:`Zuletzt`,noCalls:`Noch keine abgeschlossenen Aufrufe`,telemetryReconnect:`Terminal neu verbinden, um den Tool-Verlauf zu starten`,thinking:`Denkt nach`,waiting:`Wartet auf Arbeit`,preparing:`Nächste Aktion wird vorbereitet…`,deskReady:`Arbeitsplatz ist bereit`,toolCall:`Tool-Aufruf`,execution:`Ausführung`,started:`Gestartet`,duration:`Dauer`,session:`Sitzung`,target:`Ziel`,resultSize:`Ergebnisgröße`,lines:`Zeilen`,bytes:`Bytes`,tokens:`Tokens`,input:`Eingabe`,outputPreview:`Ausgabevorschau`,readyTitle:`Das Büro ist bereit`,readyBody:`Agents nehmen einen Platz ein, sobald sie diesem Projekt beitreten.`,liveEvent:`Live-Ereignisstrom`,connectedSessions_one:`{{count}} verbundene Sitzung`,connectedSessions_other:`{{count}} verbundene Sitzungen`,detailHint:`Aktion anklicken, um exakte Eingabe- und Ergebnisdetails zu sehen`,officeBriefing:`Büro-Briefing`,leaderPrompt:`Letzter Prompt des Leaders`,activeInstruction:`Aktive Anweisung`,telemetryWaiting:`Terminal neu verbinden, um Live-Anweisungen zu empfangen`,syncWaiting:`Warten auf Synchronisierung`,todoTelemetryWaiting:`Terminal neu verbinden, um die Live-Aufgabenliste zu empfangen`,taskNotReported:`Agent arbeitet, aber es wurde keine Aufgabenbeschreibung gemeldet`,waitingForReply:`Wartet auf eine Antwort auf „{{subject}}“ — vor {{duration}} gesendet`,waitingMailFallback:`eine aktuelle Nachricht`,waitingTelemetry:`Wartet — noch keine Telemetrie von diesem Terminal`,waitingNoWork:`Wartet auf Arbeit — seit {{duration}} keine Aktivität (zuletzt: {{last}})`,waitingNothingYet:`noch nichts`,contextUsed:`Belegtes Kontextfenster`,cost:`Kosten`,noPrompt:`In dieser Sitzung wurde noch kein Prompt empfangen`,activeTodos:`Aktive Aufgaben`,todoProgress:`{{done}}/{{total}} erledigt`,allTodosDone:`Alle Aufgaben erledigt`,noActiveTodos:`Noch keine aktiven Aufgaben`,moreTodos:`+{{count}} weitere`,currentTask:`Aktuelle Aufgabe`,task:`Aufgabe`,promptReceived:`Empfangen`,todos:`Aufgaben`,todoStatus:{pending:`Ausstehend`,in_progress:`In Bearbeitung`,completed:`Abgeschlossen`},breakRoom:`Pausenraum`,onBreak:`{{count}} in der Pause`,desksEmpty:`Alle machen Pause — die Schreibtische sind bereit für die nächste Aufgabe`,files:`DATEIEN`,read:`LESEN`,write:`SCHREIBEN`,edit:`BEARBEITEN`,term:`TERM`,live:`LIVE`,uniqueFilesTouched:`Berührte eindeutige Dateien`,fileReads:`Dateilesevorgänge`,filesWritten:`Geschriebene Dateien`,filesEdited:`Bearbeitete Dateien`,linesAddedAndRemoved:`Hinzugefügte und entfernte Zeilen`,terminalCommands:`Terminalbefehle`,incomingAndOutgoingMail:`Ein- und ausgehende Nachrichten`,sessionActivityTotals:`Gesamtwerte der Sitzungsaktivität`,closeToolDetails:`Tool-Details schließen`,closeDetails:`Details schließen`,closeMailDetails:`Nachrichtendetails schließen`,closeTaskDetails:`Aufgabendetails schließen`,closeOfficeBriefing:`Büro-Briefing schließen`,priority:`Priorität`,route:`Route`},De={injectedHeading:`SAGE-Speicher eingefügt`,memoriesLabel_one:`{{count}} Erinnerung`,memoriesLabel_other:`{{count}} Erinnerungen`},Oe={tabProject:`SDD-Projekt`,tabBoard:`Live SDD-Board`,tabSpecs:`Spezifikationen`},ke={label:`Seitenleiste`},Ae={deleteTitle:`Diesen Speicher löschen?`,backToList:`Zurück zur Speicherliste`,copyId:`Speicher-ID kopieren`,deletedMemory:`Gelöschter Speicher`,anchorCursorHint:`Der Zeilenbereich des Cursors entspricht dem Anker dieses Speichers`,statusDeleted:`gelöscht`,statusSuperseded:`überschrieben`,restoreTitle:`Diesen Speicher in den aktiven Status zurückversetzen`,supersededJumpTitle:`Diese Version ist überschrieben — zur aktiven Version springen`,acceptSuggestionTitle:`Löschvorschlag der Hygiene annehmen — Speicher wird vergessen`,rejectSuggestionTitle:`Vorschlag ablehnen — Speicher bleibt unverändert und kann später erneut vorgeschlagen werden`,updateTitle:`Inhalt des Speichers aktualisieren — Versionierung erstellt einen neuen aktiven Datensatz`,promoteTitle:"Auf `permanent` anheben — Hygiene blendet dies nie wieder ein",openRecordTitle:`Vollständigen Datensatz in MemoryManager öffnen`,fileDrawerAria:`Datei-Speicher-Schublade`,requeryTitle:`Diese Datei erneut abfragen`,closeDrawerAria:`Schublade schließen`,closeDrawerTitle:`Speicher-Schublade schließen`,showRecoverable:`Wiederherstellbare anzeigen (gelöscht)`,cursorBoostTitle:`Cursor-Boost`,fileScopedTitle:`Dateibezogen`,mentionedInTitle:`Erwähnt in`,editorKnowledge:`Wissen`,editorContentPlaceholder:`Beispiel: Der WebUI-Zustand gehört zu Zustand-Stores; Servermeldungen aktualisieren diese Stores über Singleton-WebSocket-Handler.`,editorImportance:`Wichtigkeit`,editorConfidence:`Konfidenz`,editorFreshness:`Aktualität`,editorAnchors:`Anker`,editorSymbolPlaceholder:`Symbolname`,editorRelationships:`Beziehungen`,searchAria:`Speicher durchsuchen`,searchPlaceholder:`Inhalt, IDs, Tags, Anker durchsuchen…`,clearSearchAria:`Suche löschen`,audienceFilterAria:`Nur zielgruppengebunden filtern`,audienceFilterTitle:`Nur zielgruppengebundene Speicher anzeigen`,clearFiltersAria:`Alle Filter löschen`,clearFiltersTitle:`Alle Filter löschen`,allStatuses:`Alle Status`,allKinds:`Alle Arten`,tagsLabel:`Tags`,popularTags:`Beliebte Tags`,graphAria:`Speicher-Beziehungsgraph`,graphFullscreenAria:`Graphen im Vollbild öffnen`,clearTracesTitle:`Alle Spuren löschen`,closePanelTitle:`Panel schließen`,traceMatched:`übereinstimmend`,traceInjected:`eingefügt`,traceFiltered:`gefiltert`,traceActive:`aktiv`,traceExited:`beendet`,traceScore:`Punktzahl`,traceError:`Fehler`,lifecycleAria:`Live-Protokoll des Speicherlebenszyklus`,listAria:`Speicher`,emptyTitle:`Der langfristige Kontext Ihres Projekts`,emptyVerifiedAnchors:`Verifizierte Anker`,emptyTypedRelations:`Typisierte Beziehungen`,emptyAgentRecall:`Agent-Abruf`,lensesAria:`SAGE-Speicherlinsen`,loadingSage:`SAGE wird geladen`,loadingAudience:`Zielgruppenspeicher werden geladen`,loadingVectorMemory:`Vektorspeicher wird geladen`,storeUnavailable:`Speicher-Store nicht verfügbar`,backToChat:`Zurück zum Chat`,sageHeading:`SAGE`,refreshAria:`Speicher aktualisieren`,tabMemories:`Speicher`,tabActive:`Aktiv`,tabReview:`Prüfung`,tabNeedsReview:`Prüfung nötig`,reviewLoading:`Prüfungswarteschlange wird geladen…`,reviewLoadTimeout:`Prüfungswarteschlange hat nicht rechtzeitig geantwortet.`,reviewEmptyTitle:`Keine ausstehenden Prüfungen`,reviewEmptyHint:`Hygiene- und Triage-Vorschläge erscheinen hier zum Annehmen/Ablehnen.`,reviewPendingCount_one:`{{count}} ausstehende Prüfung`,reviewPendingCount_other:`{{count}} ausstehende Prüfungen`,reviewSelectAll:`Alle auswählen`,reviewClearSelection:`Auswahl aufheben`,reviewSelectOne:`Prüfungselement auswählen`,reviewBulkAccept:`Auswahl annehmen`,reviewBulkKeep:`Auswahl behalten`,tabGraphEdges:`Graphkanten`,libraryAria:`Speicherbibliothek`,viewAria:`Speicheransicht`,detailAria:`Speicherdetail`,fileForDrawerAria:`Datei für Speicher-Schublade`,cursorLabel:`Cursor`,reviewLabel:`Prüfung`,hygieneReviewTitle:`Hygiene-Prüfung: {{reason}} ({{days}} Tage alt)`,updatedSuffix:`aktualisiert {{date}}`,actionRecover:`Wiederherstellen`,actionGoToActive:`Zur aktiven Version`,actionAcceptDeletion:`Löschung akzeptieren`,actionKeep:`Behalten`,actionUpdate:`Aktualisieren`,actionMarkPermanent:`Als permanent markieren`,actionShowFull:`Vollständig anzeigen`,itemLabel:`Speicher`,noFile:`(keine Datei)`,memoriesCount_one:`{{count}} Speicher`,memoriesCount_other:`{{count}} Speicher`,pendingReviewCount_one:`{{count}} ausstehende Prüfung`,pendingReviewCount_other:`{{count}} ausstehende Prüfungen`,supersededCount:`{{count}} überschrieben`,linesRange:`Zeilen {{start}}–{{end}}`,emptyOpenFile:`Öffnen Sie eine Datei, um ihre Speicher zu sehen.`,loadingMemories:`Speicher werden geladen…`,errorPrefix:`Fehler: {{message}}`,emptyNoMemories:`Noch keine Speicher an {{file}} angehängt.`,pendingAccepting:`akzeptiere…`,pendingKeeping:`behalte…`,pendingUpdating:`aktualisiere…`,pendingMarking:`markiere…`,pendingRecovering:`stelle wieder her…`,deletedNeverPolicy:`Dieser Datensatz dient nur der Prüfung und trägt ein absolutes Verbot: Er darf niemals in den LLM-Kontext gelangen.`,deletedEligiblePolicy:`Der Datensatz ist inaktiv und nicht bearbeitbar, bleibt aber als historisches Beweisstück geeignet, wenn die Abfrage ihn als relevant findet.`,deletingLabel:`Wird gelöscht…`,actionDeleteMemory:`Speicher löschen`,copiedNotice:`Speicher-ID kopiert.`,revisionSuffix:`Revision {{n}}`,memoryRelationships:`Speicherbeziehungen`,captureMemory:`Einen Speicher erfassen`,editMemory:`Speicher bearbeiten`,editorCreateHint:`Dauerhaftes Wissen mit Abruf-Metadaten hinzufügen.`,editorEditHint:`Inhalt aktualisieren, ohne die Herkunft zu verlieren.`,createMemory:`Speicher erstellen`,saveChanges:`Änderungen speichern`,addAnchor:`Anker hinzufügen`,noAnchors:`Noch keine Anker — fügen Sie einen hinzu, um die Abrufpräzision zu verbessern`,loadingGraph:`echter Graph wird geladen…`,graphStats:`{{nodes}} Knoten · {{edges}} Kanten`,lifecycleHeading:`Speicherlebenszyklus`,statusWaiting:`wartet`,statusLive:`live · {{count}}/100`,noMatching:`Keine passenden Speicher`,buildGraph:`Speichergraph erstellen`,clearFilters:`Filter löschen`,createFirst:`Ersten Speicher erstellen`,captureButton:`Speicher erfassen`,memoryCaptured:`Speicher erfasst.`,memoryUpdated:`Speicher aktualisiert.`,liveStore:`Live-Speicher`,reconnecting:`wird neu verbunden`,newMemory:`Neuer Speicher`,hideFileDrawer:`Datei-Speicher-Schublade ausblenden`,showFileDrawer:`Datei-Speicher-Schublade einblenden`,hideDrawer:`Schublade ausblenden`,showDrawer:`Schublade einblenden`,editorCharCount:`{{count}} Zeichen`,editorContentLabel:`Speicherinhalt`,editorKind:`Art`,editorScope:`Bereich`,editorLifecycleStatus:`Lebenszyklusstatus`,editorSupersedes:`Ersetzt`,editorContradicts:`Widerspricht`,filterByStatus:`Nach Status filtern`,filterByKind:`Nach Art filtern`,graphHeading:`Beziehungsgraph`,graphHeadingFull:`Beziehungsgraph — {{id}}`,graphOpenFullscreen:`Vollbild öffnen`,projectKnowledge:`Projektwissen`,sageSubtitle:`Dauerhaften Kontext prüfen, verbinden, kuratieren und ausmustern, der in Agentensitzungen verwendet wird.`,emptyBody:`Wählen Sie einen Speicher, um Metadaten und Beziehungsgraph zu prüfen, oder erfassen Sie Wissen, das künftige Agenten automatisch abrufen sollen.`,tabDeleted:`Gelöscht`,fileDrawerLabel:`Datei-Schublade`,selectFilePlaceholder:`— Datei auswählen —`,memoryCountSummary:`{{shown}} von {{total}} Speichern`,updatedSortLabel:`aktualisiert ↓`,searchBreakdownAria:`Suchaufschlüsselung`,searchBreakdownTitle:`Suche: {{query}}`,searchBreakdownDual:`dualkanal`,searchBreakdownLexicalOnly:`nur lexikalisch`,searchBreakdownLoading:`Dualkanalsuche läuft…`,searchBreakdownEmpty:`Keine Treffer in einem der Kanäle.`,searchBreakdownSourceLabel:`Quelle: {{source}}`,tabAllMemories:`Alle Speicher`,tabAllMemoriesHint:`Prüfen, kuratieren, ausmustern`,tabAudience:`Zielgruppenbezogen`,tabAudienceHint:`An Agenten geroutete Anleitung`,tabVectorMemory:`Vektorspeicher`,tabVectorMemoryHint:`Semantischer Embedding-Speicher`,editorRelationshipsHint:`Verweisen Sie auf exakte Speicher-IDs. Beziehungen werden validiert und Graphkanten von SAGE neu aufgebaut.`,editorTaskTypes:`Aufgabentypen`,createAction:`Erstellen`,mutationTimeout:`{{verb}} abgelaufen. Ihr Entwurf ist noch da.`,loadingSageContent:`SAGE-Inhalt wird geladen`,injectorActiveInContext:`Im Kontext aktiv`,injectorInjectionHistory:`Injektionsverlauf`,injectorContextTransitions:`Kontextübergänge`,metaCreated:`Erstellt`,metaUpdated:`Aktualisiert`,metaLastAccessed:`Zuletzt aufgerufen`,metaLastVerified:`Zuletzt verifiziert`,referencedUnavailable:`Referenzierter Speicher nicht verfügbar`,emptyFiltered:`Ändern Sie die Filter oder leeren Sie die Suchanfrage.`,emptyCapture:`Erfassen Sie dauerhafte Fakten, Entscheidungen, Konventionen und dateigebundene Notizen für jeden Agenten.`,memoryUnavailable:`Der Eintrag ist nicht verfügbar oder wurde entfernt.`,staleConflicts:`veraltet + Konflikte`},je={enableLayer:`Diese Grenzschicht aktivieren`,outsideScope:`Außerhalb des Geltungsbereichs`,askPermission:`Um Erlaubnis fragen`,alwaysBlock:`Immer blockieren`,allow:`Erlauben`,allowSelectors:`Selektoren erlauben`,denySelectors:`Selektoren verweigern`,crossPathSelectors:`Die Shell „Erlauben“ ist opak und kann pfadübergreifende Selektoren durchlassen.`,removeLayer:`Schicht entfernen`,taskInspector:`Task-Inspektor`,task:`Task`,dispatched:`Gesendet`,collapseDetails:`Task-Details einklappen`,taskBoundary:`Task-Grenze`,title:`Titel`,managedStage:`Verwaltete Stufe`,status:`Status`,priority:`Priorität`,type:`Typ`,labelsCommaSeparated:`Labels (durch Komma getrennt)`,dueDatePlaceholder:`Fälligkeitsdatum (ISO oder JJJJ-MM-TT)`,estimatedHours:`Geschätzte Stunden`,actualHours:`Tatsächliche Stunden`,selectBlockingTasks:`Blockierende Tasks auswählen…`,selectSequentialChain:`Tasks zu einer sequenziellen Kette hinzufügen…`,enforceChainOrder:`Kettenreihenfolge als Abhängigkeiten erzwingen`,assignmentReason:`Änderungs- / Zuweisungsgrund (in Aktivität gespeichert)`,managedLifecycle:`Verwalteter Lebenszyklusübergang`,kanbanAgentTransition:`Kanban-Agent-Übergang`,completedAction:`Abgeschlossene Aktion / Reviewer-Aktion`,progressComment:`Wahrheitsgemäßer Fortschrittskommentar (erforderlich)`,evidenceUrl:`URL des Beleganhangs`,source:`Quelle`,taskId:`Task-ID`,run:`Ausführen`,column:`Spalte`,primaryModelSource:`Primäre Modellquelle`,selectProviderModel:`Genauen Anbieter / Modell auswählen…`,fallbackProfile:`Fallback-Profil (erstes Modell ist primär)`,selectProfile:`Konfiguriertes Profil auswählen…`,fallbackModels:`Fallback-Modelle`,addFallbackModel:`Fallback-Modell hinzufügen…`,role:`Rolle`,selectRole:`Rolle auswählen…`,assignSkills:`Erforderliche Fähigkeiten zuweisen…`,restrictTools:`Auf bestimmte Tools beschränken…`,agentNameOptional:`Agentenname (optional)`,retryPolicy:`Wiederholungsrichtlinie`,maxAttempts:`Maximale Versuche`,costCeilingUsd:`Kostenobergrenze USD`,grantCapability:`Fähigkeit gewähren…`,targetBoard:`Ziel-Board`,boardPresence:`Board-Präsenz`,liveBoardUsers:`Aktive Board-Benutzer`,kanbanAgent:`Kanban-Agent`,watchThisBoard:`Dieses Board beobachten`,supervisorEngine:`Supervisor-Engine`,kanbanAgentModelSource:`Kanban-Agent-Modellquelle`,supervisorSkills:`Supervisor-Fähigkeiten`,forceLoadSkills:`Agentische Fähigkeiten laden erzwingen…`,extraFallbackModels:`Zusätzliche Fallback-Modelle`,optionalFallbacks:`Optionale geordnete Fallbacks…`,queueHealth:`Warteschlangenstatus`,claimableTasks:`Beanspruchbare Tasks`,runningAssignments:`Laufende Zuweisungen`,inReview:`In Überprüfung`,manuallyBlocked:`Manuell blockiert`,failedTasks:`Fehlgeschlagene Tasks`,blockedByDeps:`Bereit/anstehend, blockiert durch Abhängigkeiten`,expiredLeases:`Abgelaufene Lease-Zuweisungen`,healthy:`gesund`,costCeilingSum:`Summe der costCeilingUsd für laufende/queued Tasks`,liveRunSteer:`Live-Lauf — hier steuern`,openLiveRun:`Live-Lauf-Ansicht öffnen (SDD Hub)`,runAsLiveJob:`Dieses Board als Live-Agent-Job ausführen:`,startAsGoal:`Als Ziel starten`,startAsSdd:`Als SDD starten`,runControls:`Ausführungssteuerung`,workerModel:`Worker-Modell`,setModelForTask:`Modell für diesen Task festlegen…`,newWorkerName:`Neuer Worker-Name`,duration:`Dauer`,liveRun:`Live-Lauf`,lastResult:`Letztes Ergebnis`,definitionOfDone:`Definition of Done`,failingChecks:`Fehlgeschlagene Prüfungen`,evidenceMissing:`Belege fehlen (Agent/Council-Prüfungen ohne unterstützende Referenzen)`,needsDecomposition:`Zerlegung erforderlich`,decompositionPending:`Zerlegungsvorschläge warten auf Genehmigung`,noOutstanding:`Keine offenen Überprüfungs- oder Zerlegungsprobleme auf diesem Board.`,kanban:`Kanban`,newBoard:`Neues Board`,createBoard:`Board erstellen`,deleteTask:`Task löschen`,runFailed:`Ausführung fehlgeschlagen`,splitPendingApproval:`Aufteilung wartet auf Genehmigung`,newTask:`Neuer Task`,addTask:`Task hinzufügen`,duplicateBoard:`Board duplizieren`,boardHistory:`Board-Verlauf`,noHistory:`Noch kein Verlauf`,confirmDelete:`Bestätigen?`,confirmDeleteBoard:`Erneut klicken, um das Löschen des Boards zu bestätigen`,deleteBoard:`Board löschen`,boardBoundary:`Board-Grenze`,noBoardSelected:`Kein Kanban-Board ausgewählt.`,expandDetails:`Task-Details erweitern`,elapsed:`Verstrichen`,assigned:`Zugewiesen`,configuredAgentRoute:`die konfigurierte Agent-Route`,subagent:`Subagent`,checkedAgo:`vor {{ago}} geprüft`,notChecked:`nicht geprüft`,auditInterval:`Prüfintervall (Sekunden)`,statusReady:`bereit`,statusRunning:`läuft`,statusReview:`prüfung`,statusBlocked:`blockiert`,statusFailed:`fehlgeschlagen`,statusBlockedByDeps:`durch Abhängigkeiten blockiert`,statusStale:`veraltet`,runningCost:"~${{cost}} laufende Kosten",actionPause:`Pause`,actionResume:`Fortsetzen`,actionRetryFailed:`Fehlgeschlagene erneut versuchen`,actionStop:`Stopp`,actionReassign:`Neu zuweisen`,actionRunNow:`Jetzt ausführen`,deleteTaskAria:`Task löschen: {{title}}`,confirmDeleteTask:`Erneut klicken, um das Löschen der Aufgabe zu bestätigen`,confirmDeleteTaskAria:`Löschen bestätigen: {{title}}`,moveTaskToColumn:`{{title}} in Spalte verschieben`,activityNoteTemplate:`{{action}} von WebUI an {{target}}.`},Me={heading:`Cron-Jobs`,subtitle:`Geplante wiederkehrende Aufgaben, verwaltet vom Cron-Plugin.`,statusDisabled:`Deaktiviert`,statusOverdue:`Überfällig`,statusActive:`Aktiv`,jobCount_one:`{{count}} Job`,jobCount_other:`{{count}} Jobs`,enabledCount:`{{count}} aktiviert`,overdueCount:`{{count}} überfällig`,totalRuns:`{{count}} Läufe gesamt`,maxConcurrent:`max. {{count}} gleichzeitig`,emptyTitle:`Keine Cron-Jobs geplant.`,emptyUse:`Zum Hinzufügen`,emptyToAdd:`verwenden.`,thStatus:`Status`,thName:`Name`,thInterval:`Intervall`,thRuns:`Läufe`,thNextRun:`Nächster Lauf`,thLastRun:`Letzter Lauf`,thAction:`Aktion`,lastFiredAtTitle:`Zuletzt ausgelöst um {{time}}`,footerUse:`Zum Hinzufügen`,footerToAdd:`verwenden,`,footerToRemove:`zum Entfernen verwenden.`},Ne={refreshRosterData:`Roster-Daten aktualisieren`,liveEmpty:`Agenten erscheinen hier, wenn Subagenten spawnen`,fleetInspector:`Flotteninspektor`,openAgentsPanel:`Agenten-Panel öffnen`,toolCalls:`Werkzeugaufrufe`,running:`Läuft`,projectAgents:`Projekt-Agenten`,createOrCloneTitle:`Projekt-Agent erstellen oder klonen`,createOrCloneHint:`Beliebigen Roster-Agenten als Vorlage übernehmen und dann eine eigene Identität, Laufzeitrichtlinie und Lernhistorie entwickeln.`,cloneFromRole:`Aus Roster-Rolle klonen`,cloneHint:`Prompt, Werkzeuge, Fähigkeiten und Standardeinstellungen werden übernommen. Lernen und spätere Änderungen bleiben auf den neuen Agenten beschränkt.`,displayName:`Anzeigename`,descriptionPlaceholder:`Eigene X-, Y- und Z-Workflows für dieses Projekt besitzen und Ergebnisse überprüfen.`,creating:`Wird erstellt…`,noCustomizations:`Noch keine Anpassungen`,selectAgentEmpty:`Agent zum Bearbeiten der Anpassungen auswählen`,saving:`Wird gespeichert…`,saveFailed:`Speichern fehlgeschlagen`,failed:`Fehlgeschlagen`,learningResumed:`Automatisches Lernen fortgesetzt`,optimizationEmptyToast:`Optimierung ergab ein leeres Ergebnis. Bitte erneut versuchen.`,noActiveModelToast:`Kein aktives Modell auf dem Server. Optimierung an den Chat-Agenten gesendet.`,learningsEmpty:`Lerneinträge erscheinen, wenn Agenten Ausgaben erfassen`,allRosterAgents:`Alle Roster-Agenten`,optimizing:`Optimiert…`,paused:`pausiert`,selectLearningAgent:`Agent zum Anzeigen der Lerndetails auswählen`,learningOn:`Lernen aktiv`,lastCapture:`Letzte Erfassung`,lifetimeCaptures:`Lebenszeit-Erfassungen`,hitRate:`Trefferquote`,neverUsed:`Nie verwendet`,learningsLimitExceeded:`Gelernte Daten überschreiten das weiche Limit ({{bytes}}B / 8.192B). Optimieren, um Roheinträge zu einem konsolidierten Dokument zusammenzufassen und das Kontextvolumen zu reduzieren.`,newPending:`neu ausstehend`,viewAction:`Anzeigen`,applying:`Wird angewendet…`,searchPlaceholder:`Agenten nach Name, Rolle oder Beschreibung suchen…`,maxIterations:`Max. Iterationen`,maxToolCalls:`Max. Werkzeugaufrufe`,projectCustomizations:`Projekt-Anpassungen`,learnedEntries:`gelernte Einträge`,teachFailed:`Lehren fehlgeschlagen`,selectRoleEmpty:`Rolle zum Prüfen oder Bearbeiten auswählen`,captureLearned:`Gelerntes erfassen`,teachThisAgent:`Diesen Agenten lehren`,teachPlaceholder:`Beschreiben, was dieser Agent besser machen soll … z. B. „Dieser Agent soll Versionen immer von npm prüfen, bevor er sie empfiehlt“`,heading:`Agenten-Roster`,headerSummary:`{{customized}} angepasst · {{entries}} gelernte Einträge`,tabLive:`Live-Flotte`,tabCatalog:`Roster-Katalog`,tabLearning:`Selbstlernen`,tabCustomize:`Anpassung`,learning:`lernt`,learningPaused:`Lernen pausiert`,autoLearningPaused:`Automatisches Lernen pausiert`,toolsCount_one:`{{count}} Tool`,toolsCount_other:`{{count}} Tools`,maxItShort:`max. {{value}} Iter.`,customizedBadge:`Angepasst`,needsSummary:`⚠ Zusammenfassung nötig`,timeout:`Zeitlimit`,learnedEntriesCount_one:`{{count}} gelernter Eintrag`,learnedEntriesCount_other:`{{count}} gelernte Einträge`,sessionCapturesCount_one:`{{count}} Sitzungserfassung`,sessionCapturesCount_other:`{{count}} Sitzungserfassungen`,noAgentsMatch:`Keine Agenten passen zu „{{query}}“`,footerRosterRoles_one:`Roster-Rolle`,footerRosterRoles_other:`Roster-Rollen`,footerCustomized:`angepasst`,footerTotalLearned_one:`gelernter Eintrag insgesamt`,footerTotalLearned_other:`gelernte Einträge insgesamt`,clone:`+ Klonen`,abc:`ABC`,abcGeneratedFromName:`abc (aus dem Namen erzeugt)`,roleIdOptional:`Rollen-ID (optional)`,purpose:`Zweck`,taskTypesCommaOrOnePer:`Aufgabentypen (kommagetrennt oder einer pro Zeile)`,cancel:`Abbrechen`,selectAnAgentToEditCustomizations:`Wählen Sie einen Agenten, um Anpassungen zu bearbeiten`,llmImprove:`LLM-Verbesserung`,reset:`Zurücksetzen`,editIdentityMd:`identity.md bearbeiten`,editLearnedMd:`learned.md bearbeiten`,editConfigJson:`config.json bearbeiten`,runtimePolicy:`Laufzeitrichtlinie`,retry:`Erneut versuchen`,noSelfLearningDataYet:`Noch keine Selbstlerndaten`,review:`prüfen →`,selectAnAgentToViewLearning:`Wählen Sie einen Agenten, um Lerndetails anzuzeigen`,entries:`Einträge`,size:`Größe`,optimizeLearnings:`Gelerntes optimieren`,keep:`Behalten`,drop:`Verwerfen`,describeACommandPatternOrBehavior:`Beschreiben Sie einen Befehl, ein Muster oder ein Verhalten, das dieser Agent sich merken soll.`,eGAlwaysUsePnpmForThisProject:`z. B. Für dieses Projekt immer pnpm verwenden`,teach:`Beibringen`,noActiveFleetAgents:`Keine aktiven Flottenagenten`,clear:`Leeren`,agentsTotal:`Agenten insgesamt`,leader:`Leiter`,iterations:`Iterationen`,cost:`Kosten`,context:`Kontext`,contextWindow:`Kontextfenster`,error:`Fehler`,filterAll:`Alle ({{count}})`,filterRunning:`Laufend ({{count}})`,filterDone:`Fertig ({{count}})`,filterFailed:`Fehlgeschlagen ({{count}})`,optimizeAll:`Alle optimieren ({{count}})`,policyUpdateFailed:`Richtlinienaktualisierung fehlgeschlagen`,noRawEntries:`Noch keine Rohdaten zum Optimieren.`,optimizedOk:`Optimiert. Konsolidiertes Wissen aktualisiert.`,emptySynthesis:`Das Modell lieferte ein leeres Ergebnis. Es wurde nichts geändert – bitte erneut versuchen.`,consolidatedWithModel:`Gelerntes mit {{model}} konsolidiert.`,consolidatedPlain:`Gelerntes konsolidiert.`,resetConfirm:`Alle projektspezifischen Daten für den Agenten „{{role}}“ zurücksetzen?`,loadCustomizationFailed:`Anpassung konnte nicht geladen werden`,loadRuntimePolicyFailed:`Laufzeitrichtlinie konnte nicht geladen werden`,runtimePolicySaveFailed:`Speichern der Laufzeitrichtlinie fehlgeschlagen`,llmImprovementFailed:`LLM-Verbesserung fehlgeschlagen`,agentCreationFailed:`Agentenerstellung fehlgeschlagen`,noActiveModelMsg:`Kein aktives Modell auf dem Server – Optimierung stattdessen an den Chat-Agenten gesendet.`,optimizationFailed:`Optimierung fehlgeschlagen`,bulkOptimizationFailed:`Massenoptimierung fehlgeschlagen`,taskTypesPlaceholder:`X-Workflow
6
6
  Y-Analyse
7
7
  Z-Verifizierung`},Pe={generic:{name:`Generischer Projekt-Agent`,summary:`Flexible Vorlage, die zu eigenständig lernenden Projektrollen geklont werden kann.`},"audit-log":{name:`Audit-Protokoll`,summary:`Analysiert Sitzungsprotokolle, Ereignisströme und System-Traces.`},"bug-hunter":{name:`Bug-Jäger`,summary:`Durchsucht Code nach Fehlern, Code Smells und Anti-Patterns.`},"refactor-planner":{name:`Refactoring-Planer`,summary:`Analysiert die Codestruktur und erstellt phasenweise Refactoring-Pläne.`},"security-scanner":{name:`Sicherheits-Scanner`,summary:`Prüft Code, Konfigurationen und Abhängigkeiten auf Sicherheitsprobleme.`},critic:{name:`Kritiker`,summary:`Bewertet Entscheidungen, Pläne und Implementierungen.`},"shadow-agent":{name:`Schatten-Agent`,summary:`Hintergrund-Agent, der den Zustand der Flotte überwacht.`},executor:{name:`Executor`,summary:`Universeller Aufgaben-Executor für delegierte Arbeit.`},chimera:{name:`Chimera`,summary:`Codequalitätsprüfung geänderter Dateien nach der Sitzung.`},researcher:{name:`Rechercheur`,summary:`Spezialist für Webrecherche und Datenerhebung.`},"tech-stack":{name:`Tech-Stack-Validator`,summary:`Validiert Paket-, Bibliotheks- und Framework-Entscheidungen.`},orchestrator:{name:`Orchestrator`,summary:`Koordiniert die Aufgabenausführung mehrerer Agenten.`},supervisor:{name:`Supervisor`,summary:`Überwacht die Ausführung von Subagenten und bearbeitet Eskalationen.`},"quality-gate":{name:`Quality Gate`,summary:`Setzt Qualitätsanforderungen bei Implementierungen durch.`},architect:{name:`Architekt`,summary:`Trifft Design- und Architekturentscheidungen.`},"prompt-engineer":{name:`Prompt-Engineer`,summary:`Entwirft und optimiert System-Prompts.`},mnemosyne:{name:`Mnemosyne`,summary:`Speicher-Kurator – prüft und wahrt die Integrität von SAGE.`},autophase:{name:`AutoPhase`,summary:`Verwaltet die mehrphasige autonome Aufgabenausführung.`}},Fe={heading:`Eigenes Roster`,loading:`Eigenes Roster wird geladen…`,loadFailed:`Roster konnte nicht geladen werden`,invalidJson:`Ungültiges JSON`,noImprovement:`Kein Verbesserungsvorschlag erzeugt.`,improveFailed:`LLM-Verbesserung fehlgeschlagen`,behaviorSaved:`Verhalten in learned.md gespeichert`,saveFailedServer:`Speichern fehlgeschlagen – siehe Serverprotokolle`,emptyTitle:`Keine eigenen Roster-Agenten`,emptyBody:`Projektspezifische Agenten erscheinen hier, sobald Sie Dateien hier anlegen oder bearbeiten:`,createExecutorIdentity:`+ Executor-Identität erstellen`,entries:`Einträge`,size:`Größe`,sessionCaptures:`Sitzungserfassungen`,editIdentity:`identity.md bearbeiten`,editLearned:`learned.md bearbeiten`,editConfig:`config.json bearbeiten`,reviewEntries:`Einträge prüfen ({{count}})`,reviewLearnedEntries:`Gelernte Einträge prüfen ({{kept}}/{{total}} behalten)`,applySelection:`Auswahl anwenden`,keep:`✓ Behalten`,drop:`✗ Verwerfen`,identityPlaceholder:`# Projektidentität für {{role}}
8
8
 
@@ -1 +1 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{Ga as t,H as n,ct as r,lt as i}from"./vendor-C_zEzV4N.js";import{t as a}from"./utils-tsZEnrBH.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
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{Ga as t,H as n,ct as r,lt as i}from"./vendor-DLS502Zs.js";import{t as a}from"./utils-B5X3DKef.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{Ra as e,za as t}from"./vendor-C_zEzV4N.js";import{n}from"./utils-tsZEnrBH.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){if(!e||typeof e!=`object`||Array.isArray(e))return[];let t=e.steps;if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!e||typeof e!=`object`||Array.isArray(e))continue;let t=e.text;if(typeof t!=`string`||!t.trim())continue;let r=n.length===0&&e.auto===!0;if(n.push(r?{index:n.length+1,text:t.trim(),auto:!0}:{index:n.length+1,text:t.trim()}),n.length>=c)break}return n}function a(e){return e!==`tool_use`&&e!==`tool_call`}var o=/<nextsteps\b[^>]*>\s*\n+/i,s=/^(?:(\d+)[.)]\s*|[-*•]\s*)(.+?)(\s+auto="true")?$/,c=6;function l(e,t=!0){return t?f(e):d(e)}function u(e,t,n,r){e.push(r?{index:t,text:n,auto:!0}:{index:t,text:n})}function d(e){let t=e.split(`
1
+ import{Ra as e,za as t}from"./vendor-DLS502Zs.js";import{n}from"./utils-B5X3DKef.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){if(!e||typeof e!=`object`||Array.isArray(e))return[];let t=e.steps;if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!e||typeof e!=`object`||Array.isArray(e))continue;let t=e.text;if(typeof t!=`string`||!t.trim())continue;let r=n.length===0&&e.auto===!0;if(n.push(r?{index:n.length+1,text:t.trim(),auto:!0}:{index:n.length+1,text:t.trim()}),n.length>=c)break}return n}function a(e){return e!==`tool_use`&&e!==`tool_call`}var o=/<nextsteps\b[^>]*>\s*\n+/i,s=/^(?:(\d+)[.)]\s*|[-*•]\s*)(.+?)(\s+auto="true")?$/,c=6;function l(e,t=!0){return t?f(e):d(e)}function u(e,t,n,r){e.push(r?{index:t,text:n,auto:!0}:{index:t,text:n})}function d(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=s.exec(t);if(!i)continue;let a=i[1],o=i[2].trim(),l;if(l=a===void 0?n.length+1:Number.parseInt(a,10),r.has(l))continue;r.add(l);let d=!!i[3]&&n.length===0&&l===1;if(u(n,l,o,d),n.length>=c)break}return{steps:n,texts:n.map(e=>e.text),stripped:e,autoTexts:n.filter(e=>e.auto).map(e=>e.text)}}function f(e){let t=o.exec(e);if(!t)return{steps:[],texts:[],stripped:e,autoTexts:[]};let n=t.index+t[0].length,r=e.slice(n),i=r.split(`
3
3
  `),a=[],l=new Set;for(let e of i){let t=e.trim();if(!t)continue;let n=s.exec(t);if(!n)break;let r=n[1],i=n[2].trim(),o;if(o=r===void 0?a.length+1:Number.parseInt(r,10),l.has(o))continue;l.add(o);let d=!!n[3]&&a.length===0&&o===1;if(u(a,o,i,d),a.length>=c)break}if(a.length===0||!r.includes(`</nextsteps>`))return{steps:[],texts:[],stripped:e,autoTexts:[]};let d=a.map(e=>e.text),f=a.filter(e=>e.auto).map(e=>e.text),m=t.index,h=t[0].length+p(r,a.length);return{steps:a,texts:d,stripped:(e.slice(0,m)+e.slice(m+h)).replace(/\n{3,}/g,`
4
4
 
@@ -1 +1 @@
1
- import{za as e}from"./vendor-C_zEzV4N.js";var t=8e3,n=2500,r=18e5,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{za as e}from"./vendor-DLS502Zs.js";var t=8e3,n=2500,r=18e5,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{za as e}from"./vendor-DLS502Zs.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-hePW80VL.js";import{G as t,Ga 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-C_zEzV4N.js";import{t as d}from"./utils-tsZEnrBH.js";var f=e(n(),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:n,showCloseButton:r=!0,...i},a)=>(0,p.jsxs)(h,{children:[(0,p.jsx)(g,{}),(0,p.jsxs)(t,{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:[n,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=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)(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};
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{G as t,Ga 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-DLS502Zs.js";import{t as d}from"./utils-B5X3DKef.js";var f=e(n(),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:n,showCloseButton:r=!0,...i},a)=>(0,p.jsxs)(h,{children:[(0,p.jsx)(g,{}),(0,p.jsxs)(t,{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:[n,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=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)(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};
@@ -1 +1 @@
1
- import{lt as e}from"./vendor-C_zEzV4N.js";import{t}from"./utils-tsZEnrBH.js";var n=e();function r({icon:e,title:r,description:i,action:a,className:o,panel:s=!0}){return(0,n.jsx)(`div`,{className:t(`flex min-h-0 min-w-0 flex-1 items-center justify-center p-4`,s&&`bg-[hsl(var(--surface-2)/0.45)]`,o),children:(0,n.jsxs)(`div`,{className:`ws-surface flex max-w-md flex-col items-center gap-3 rounded-xl p-6 text-center text-muted-foreground`,children:[e&&(0,n.jsx)(`span`,{className:`flex h-12 w-12 items-center justify-center rounded-lg bg-primary/10 text-primary`,children:e}),(0,n.jsxs)(`div`,{children:[(0,n.jsx)(`p`,{className:`text-base font-semibold text-foreground`,children:r}),i&&(0,n.jsx)(`p`,{className:`mt-1 text-sm`,children:i})]}),a&&(0,n.jsx)(`button`,{type:`button`,onClick:a.onClick,className:`mt-1 rounded-md border border-border/70 bg-card/70 px-4 py-2 text-sm text-foreground shadow-sm transition-colors hover:bg-accent`,children:a.label})]})})}export{r as t};
1
+ import{lt as e}from"./vendor-DLS502Zs.js";import{t}from"./utils-B5X3DKef.js";var n=e();function r({icon:e,title:r,description:i,action:a,className:o,panel:s=!0}){return(0,n.jsx)(`div`,{className:t(`flex min-h-0 min-w-0 flex-1 items-center justify-center p-4`,s&&`bg-[hsl(var(--surface-2)/0.45)]`,o),children:(0,n.jsxs)(`div`,{className:`ws-surface flex max-w-md flex-col items-center gap-3 rounded-xl p-6 text-center text-muted-foreground`,children:[e&&(0,n.jsx)(`span`,{className:`flex h-12 w-12 items-center justify-center rounded-lg bg-primary/10 text-primary`,children:e}),(0,n.jsxs)(`div`,{children:[(0,n.jsx)(`p`,{className:`text-base font-semibold text-foreground`,children:r}),i&&(0,n.jsx)(`p`,{className:`mt-1 text-sm`,children:i})]}),a&&(0,n.jsx)(`button`,{type:`button`,onClick:a.onClick,className:`mt-1 rounded-md border border-border/70 bg-card/70 px-4 py-2 text-sm text-foreground shadow-sm transition-colors hover:bg-accent`,children:a.label})]})})}export{r as t};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/activity-CezOSNBd.js","assets/rolldown-runtime-hePW80VL.js","assets/chat-CzaGXz_W.js","assets/commandPalette-BovBiPec.js","assets/common-BBHmIHQW.js","assets/settings-DfID_cS9.js","assets/setup-DfcCCvUO.js","assets/toasts-DOfXc7Rt.js"])))=>i.map(i=>d[i]);
2
- import{Ha as e,Ra as t,Ua as n,Va as r,za as i}from"./vendor-C_zEzV4N.js";import{t as a}from"./activity-CezOSNBd.js";import{t as o}from"./chat-CzaGXz_W.js";import{t as s}from"./commandPalette-BovBiPec.js";import{t as c}from"./common-BBHmIHQW.js";import{t as l}from"./settings-DfID_cS9.js";import{t as u}from"./setup-DfcCCvUO.js";import{t as d}from"./toasts-DOfXc7Rt.js";import{s as f}from"./monaco-BCqJp2xW.js";var p=(e,t,n)=>{let r=t.lastIndexOf(`?`),i=e[r===-1||r<t.lastIndexOf(`/`)?t:t.slice(0,r)];return i?typeof i==`function`?i():Promise.resolve(i):new Promise((e,r)=>{(typeof queueMicrotask==`function`?queueMicrotask:setTimeout)(r.bind(null,Error(`Unknown variable dynamic import: `+t+(t.split(`/`).length===n?``:`. Note that variables only represent file names one level deep.`))))})},m=[`en`,`tr`,`de`,`fr`,`it`,`es`,`pt-BR`],h=[{code:`en`,name:`English`},{code:`tr`,name:`Türkçe`},{code:`de`,name:`Deutsch`},{code:`fr`,name:`Français`},{code:`it`,name:`Italiano`},{code:`es`,name:`Español`},{code:`pt-BR`,name:`Português (Brasil)`}],g=new Set(m);function _(){return typeof navigator>`u`||!navigator.language?`en`:y(navigator.language)}function v(e){return!e||typeof e!=`string`?_():y(e)}function y(e){let t=e.trim().toLowerCase();if(!t)return`en`;if(g.has(t))return t;let n=t.split(`-`)[0];return n&&g.has(n)?n:n===`pt`?`pt-BR`:`en`}var b={autonomy:`auto`,autonomyDelayMs:45e3,autoProceedMaxIterations:50,yolo:!0,maxIterations:500,chime:!1,confirmExit:!0,fleetChatVerbosity:`off`,nextPrediction:!1,nextStepsTool:!1,fallbackModels:[],fallbackProfiles:{},favoriteModels:[],favoriteModelsOnly:!1,modelMatrix:{},fallbackAuto:!0,modelAvailabilitySchedule:[],featureMcp:!0,featurePlugins:!0,featureMemory:!0,featureSkills:!0,featureModelsRegistry:!0,indexOnStart:!0,contextAutoCompact:!0,contextStrategy:`hybrid`,contextMode:`balanced`,tokenSavingTier:`auto`,maxConcurrent:10,titleAnimation:!0,logLevel:`info`,auditLevel:`standard`,enhanceEnabled:!0,enhanceDelayMs:6e4,enhanceCountdownMs:3e3,enhanceLanguage:`original`,refinerProvider:``,refinerModel:``,refinerFallbackProfile:``,thinkingWord:`thinking`,statuslineMode:`minimum`,animationStyle:`rainbow`,showThinkingLogs:!0,groupToolCalls:!0,autoCollapseInput:!1,showModelReasoning:!0,showAgentSwarmPanel:`bottom`,allowOutsideProjectRoot:!0,reasoningMode:`auto`,reasoningEffort:`high`,reasoningPreserve:!1,cacheTtl:`default`,breakerEnabled:!1,breakerAutoKillResetMs:6e4,fsAccess:`unrestricted`,debugStream:!1,hqEnabled:!1,hqUrl:``,hqToken:``,hqRawContent:!1,tgConfigured:!1,tgSessionEnd:!1,tgDelegate:!0,tgLongToolMs:3e4,uiLocale:_(),chimeraAutoFix:`off`,readSymbols:!1,showSageMemoryInject:!1,sageMemoryInjectThreshold:.85,preRefineSeconds:3,multiDiffSummaryThreshold:5,chimeraEnabled:!0,chimeraProvider:``,chimeraModel:``,chimeraMaxFiles:15,autoReviewEnabled:!1,autoReviewProvider:``,autoReviewModel:``,autoReviewFallbackProfile:``,autoReviewModelSelection:`round-robin`,autoReviewFallbackModels:[],autoReviewDebounceMs:15e3,autoReviewMaxFilesPerBatch:15,autoReviewMaxConcurrentReviews:2,autoReviewCascadeOn:`off`,pluginsEnabled:{}},x=i()(t(e=>({...b,set:t=>e(t),reset:()=>e(b)}),{name:`wrongstack-local-prefs`,version:15,migrate:(e,t)=>{let n=e??{};return t<12&&n.autoReviewDebounceMs===5e3&&(n.autoReviewDebounceMs=15e3),typeof n.fleetChatVerbosity!=`string`&&(n.fleetChatVerbosity=n.streamFleet===!0?`full`:(n.streamFleet,`off`),delete n.streamFleet),n.fleetChatVerbosity!==`off`&&n.fleetChatVerbosity!==`full`&&(n.fleetChatVerbosity=`off`),[`hybrid`,`intelligent`,`selective`].includes(n.contextStrategy)||(n.contextStrategy=`hybrid`),n.auditLevel===`verbose`&&(n.auditLevel=`full`),[`minimal`,`standard`,`full`].includes(n.auditLevel)||(n.auditLevel=`standard`),typeof n.autoProceedMaxIterations!=`number`&&(n.autoProceedMaxIterations=50),(!n.fallbackProfiles||typeof n.fallbackProfiles!=`object`||Array.isArray(n.fallbackProfiles))&&(n.fallbackProfiles={}),Array.isArray(n.favoriteModels)||(n.favoriteModels=[]),typeof n.favoriteModelsOnly!=`boolean`&&(n.favoriteModelsOnly=!1),Array.isArray(n.modelAvailabilitySchedule)||(n.modelAvailabilitySchedule=[]),(!n.modelMatrix||typeof n.modelMatrix!=`object`||Array.isArray(n.modelMatrix))&&(n.modelMatrix={}),(typeof n.uiLocale!=`string`||!n.uiLocale)&&(n.uiLocale=_()),typeof n.breakerEnabled!=`boolean`&&(n.breakerEnabled=!1),typeof n.breakerAutoKillResetMs!=`number`&&(n.breakerAutoKillResetMs=6e4),n.fsAccess!==`unrestricted`&&n.fsAccess!==`project`&&(n.fsAccess=`unrestricted`),typeof n.debugStream!=`boolean`&&(n.debugStream=!1),typeof n.chimeraEnabled!=`boolean`&&(n.chimeraEnabled=!0),typeof n.chimeraProvider!=`string`&&(n.chimeraProvider=``),typeof n.chimeraModel!=`string`&&(n.chimeraModel=``),n.chimeraAutoFix!==`off`&&n.chimeraAutoFix!==`ask`&&n.chimeraAutoFix!==`auto`&&(n.chimeraAutoFix=`off`),(typeof n.chimeraMaxFiles!=`number`||!Number.isFinite(n.chimeraMaxFiles)||n.chimeraMaxFiles<1)&&(n.chimeraMaxFiles=15),typeof n.autoReviewEnabled!=`boolean`&&(n.autoReviewEnabled=!1),typeof n.autoReviewProvider!=`string`&&(n.autoReviewProvider=``),typeof n.autoReviewModel!=`string`&&(n.autoReviewModel=``),typeof n.autoReviewFallbackProfile!=`string`&&(n.autoReviewFallbackProfile=``),n.autoReviewModelSelection!==`round-robin`&&n.autoReviewModelSelection!==`random`&&(n.autoReviewModelSelection=`round-robin`),Array.isArray(n.autoReviewFallbackModels)||(n.autoReviewFallbackModels=[]),(typeof n.autoReviewDebounceMs!=`number`||!Number.isFinite(n.autoReviewDebounceMs)||n.autoReviewDebounceMs<0)&&(n.autoReviewDebounceMs=15e3),(typeof n.autoReviewMaxFilesPerBatch!=`number`||!Number.isFinite(n.autoReviewMaxFilesPerBatch)||n.autoReviewMaxFilesPerBatch<1)&&(n.autoReviewMaxFilesPerBatch=15),(typeof n.autoReviewMaxConcurrentReviews!=`number`||!Number.isFinite(n.autoReviewMaxConcurrentReviews)||n.autoReviewMaxConcurrentReviews<1)&&(n.autoReviewMaxConcurrentReviews=2),n.autoReviewCascadeOn!==`off`&&n.autoReviewCascadeOn!==`critical`&&n.autoReviewCascadeOn!==`high`&&(n.autoReviewCascadeOn=`off`),typeof n.showModelReasoning!=`boolean`&&(n.showModelReasoning=!0),typeof n.autoCollapseInput!=`boolean`&&(n.autoCollapseInput=!1),typeof n.showAgentSwarmPanel==`boolean`?n.showAgentSwarmPanel=n.showAgentSwarmPanel?`bottom`:`off`:(typeof n.showAgentSwarmPanel!=`string`||![`bottom`,`sidebar`,`off`].includes(n.showAgentSwarmPanel))&&(n.showAgentSwarmPanel=`bottom`),typeof n.allowOutsideProjectRoot!=`boolean`&&(n.allowOutsideProjectRoot=!0),typeof n.readSymbols!=`boolean`&&(n.readSymbols=!1),typeof n.showSageMemoryInject!=`boolean`&&(n.showSageMemoryInject=!1),(typeof n.sageMemoryInjectThreshold!=`number`||!Number.isFinite(n.sageMemoryInjectThreshold)||n.sageMemoryInjectThreshold<0||n.sageMemoryInjectThreshold>1)&&(n.sageMemoryInjectThreshold=.85),(typeof n.preRefineSeconds!=`number`||!Number.isFinite(n.preRefineSeconds)||n.preRefineSeconds<0)&&(n.preRefineSeconds=3),(typeof n.multiDiffSummaryThreshold!=`number`||!Number.isFinite(n.multiDiffSummaryThreshold)||n.multiDiffSummaryThreshold<0)&&(n.multiDiffSummaryThreshold=5),n},partialize:e=>{let{hqToken:t,...n}=e;return n},merge:(e,t)=>{let{hqToken:n,...r}=e??{};return{...t,...r,hqToken:``}}})),S=[`common`,`activity`,`chat`,`commandPalette`,`settings`,`setup`,`toasts`];function C(){try{return v(x.getState().uiLocale)}catch{return`en`}}n.use(r).use(e((e,t)=>p(Object.assign({"./locales/de/activity.json":()=>f(()=>import(`./activity-CkGBp_I-.js`),[]),"./locales/de/chat.json":()=>f(()=>import(`./chat-BnkVCZ3Q.js`),[]),"./locales/de/commandPalette.json":()=>f(()=>import(`./commandPalette-aaAou3Tl.js`),[]),"./locales/de/common.json":()=>f(()=>import(`./common-C3PzxyXg.js`),[]),"./locales/de/settings.json":()=>f(()=>import(`./settings-B36QpLU8.js`),[]),"./locales/de/setup.json":()=>f(()=>import(`./setup-DD8rKpQU.js`),[]),"./locales/de/toasts.json":()=>f(()=>import(`./toasts-CFzweRH5.js`),[]),"./locales/en/activity.json":()=>f(()=>import(`./activity-CezOSNBd.js`).then(e=>e.n),__vite__mapDeps([0,1])),"./locales/en/chat.json":()=>f(()=>import(`./chat-CzaGXz_W.js`).then(e=>e.n),__vite__mapDeps([2,1])),"./locales/en/commandPalette.json":()=>f(()=>import(`./commandPalette-BovBiPec.js`).then(e=>e.n),__vite__mapDeps([3,1])),"./locales/en/common.json":()=>f(()=>import(`./common-BBHmIHQW.js`).then(e=>e.n),__vite__mapDeps([4,1])),"./locales/en/settings.json":()=>f(()=>import(`./settings-DfID_cS9.js`).then(e=>e.n),__vite__mapDeps([5,1])),"./locales/en/setup.json":()=>f(()=>import(`./setup-DfcCCvUO.js`).then(e=>e.n),__vite__mapDeps([6,1])),"./locales/en/toasts.json":()=>f(()=>import(`./toasts-DOfXc7Rt.js`).then(e=>e.n),__vite__mapDeps([7,1])),"./locales/es/activity.json":()=>f(()=>import(`./activity-C6pIBHte.js`),[]),"./locales/es/chat.json":()=>f(()=>import(`./chat-BPuAsrkF.js`),[]),"./locales/es/commandPalette.json":()=>f(()=>import(`./commandPalette-Nlxs0V7J.js`),[]),"./locales/es/common.json":()=>f(()=>import(`./common-CUWL8eNX.js`),[]),"./locales/es/settings.json":()=>f(()=>import(`./settings-B8uABeWU.js`),[]),"./locales/es/setup.json":()=>f(()=>import(`./setup-COxU-AT_.js`),[]),"./locales/es/toasts.json":()=>f(()=>import(`./toasts-BwQJwYLe.js`),[]),"./locales/fr/activity.json":()=>f(()=>import(`./activity-CxnlCaZu.js`),[]),"./locales/fr/chat.json":()=>f(()=>import(`./chat-BfQBSiII.js`),[]),"./locales/fr/commandPalette.json":()=>f(()=>import(`./commandPalette-Dfk74u87.js`),[]),"./locales/fr/common.json":()=>f(()=>import(`./common-xPePelft.js`),[]),"./locales/fr/settings.json":()=>f(()=>import(`./settings-RQKnX4dA.js`),[]),"./locales/fr/setup.json":()=>f(()=>import(`./setup-CMteRkTs.js`),[]),"./locales/fr/toasts.json":()=>f(()=>import(`./toasts-BCDGDcyq.js`),[]),"./locales/it/activity.json":()=>f(()=>import(`./activity-l8lDAw8a.js`),[]),"./locales/it/chat.json":()=>f(()=>import(`./chat-CR2B97dj.js`),[]),"./locales/it/commandPalette.json":()=>f(()=>import(`./commandPalette-CUh_kgfp.js`),[]),"./locales/it/common.json":()=>f(()=>import(`./common-DuR5FTPN.js`),[]),"./locales/it/settings.json":()=>f(()=>import(`./settings-CSwU_zzD.js`),[]),"./locales/it/setup.json":()=>f(()=>import(`./setup-pPW1kVR_.js`),[]),"./locales/it/toasts.json":()=>f(()=>import(`./toasts-Dm12Nq8t.js`),[]),"./locales/pt-BR/activity.json":()=>f(()=>import(`./activity-CA5G03Kw.js`),[]),"./locales/pt-BR/chat.json":()=>f(()=>import(`./chat-DResBrkV.js`),[]),"./locales/pt-BR/commandPalette.json":()=>f(()=>import(`./commandPalette-tFxIIhvU.js`),[]),"./locales/pt-BR/common.json":()=>f(()=>import(`./common-CvSB5NM3.js`),[]),"./locales/pt-BR/settings.json":()=>f(()=>import(`./settings-B8Hgh9_X.js`),[]),"./locales/pt-BR/setup.json":()=>f(()=>import(`./setup-BOYK0I6-.js`),[]),"./locales/pt-BR/toasts.json":()=>f(()=>import(`./toasts-frBt6fvE.js`),[]),"./locales/tr/activity.json":()=>f(()=>import(`./activity-DYwBIByU.js`),[]),"./locales/tr/chat.json":()=>f(()=>import(`./chat-Di8o0wDz.js`),[]),"./locales/tr/commandPalette.json":()=>f(()=>import(`./commandPalette-CGMq-qlP.js`),[]),"./locales/tr/common.json":()=>f(()=>import(`./common-DT2FL9xN.js`),[]),"./locales/tr/settings.json":()=>f(()=>import(`./settings-FXJ8SsEh.js`),[]),"./locales/tr/setup.json":()=>f(()=>import(`./setup-Bd23KLtt.js`),[]),"./locales/tr/toasts.json":()=>f(()=>import(`./toasts-DDYQsJV8.js`),[])}),`./locales/${e}/${t}.json`,4))).init({lng:C(),fallbackLng:`en`,supportedLngs:[...m],ns:[...S],defaultNS:`common`,partialBundledLanguages:!0,resources:{en:{common:c,activity:a,chat:o,commandPalette:s,settings:l,setup:u,toasts:d}},interpolation:{escapeValue:!1},react:{useSuspense:!1},returnNull:!1});function w(e){typeof document<`u`&&(document.documentElement.lang=e)}w(n.language||`en`),x.subscribe((e,t)=>{let r=e.uiLocale;r&&r!==t.uiLocale&&r!==n.language&&n.changeLanguage(r).then(()=>w(r))});function T(){window.wrongstackDesktopHost?.onLocaleChanged?.(e=>{if(!e)return;let t=v(e);if(t===n.language)return;let r=x.getState();r.uiLocale!==t&&r.set({uiLocale:t}),n.changeLanguage(t).then(()=>w(t))})}try{T()}catch{}export{h as n,x as t};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/activity-B7hiQ_IX.js","assets/rolldown-runtime-hePW80VL.js","assets/chat-CzaGXz_W.js","assets/commandPalette-BovBiPec.js","assets/common-BBHmIHQW.js","assets/settings-DfID_cS9.js","assets/setup-DfcCCvUO.js","assets/toasts-DOfXc7Rt.js"])))=>i.map(i=>d[i]);
2
+ import{Ha as e,Ra as t,Ua as n,Va as r,za as i}from"./vendor-DLS502Zs.js";import{t as a}from"./activity-B7hiQ_IX.js";import{t as o}from"./chat-CzaGXz_W.js";import{t as s}from"./commandPalette-BovBiPec.js";import{t as c}from"./common-BBHmIHQW.js";import{t as l}from"./settings-DfID_cS9.js";import{t as u}from"./setup-DfcCCvUO.js";import{t as d}from"./toasts-DOfXc7Rt.js";import{s as f}from"./monaco-BCqJp2xW.js";var p=(e,t,n)=>{let r=t.lastIndexOf(`?`),i=e[r===-1||r<t.lastIndexOf(`/`)?t:t.slice(0,r)];return i?typeof i==`function`?i():Promise.resolve(i):new Promise((e,r)=>{(typeof queueMicrotask==`function`?queueMicrotask:setTimeout)(r.bind(null,Error(`Unknown variable dynamic import: `+t+(t.split(`/`).length===n?``:`. Note that variables only represent file names one level deep.`))))})},m=[`en`,`tr`,`de`,`fr`,`it`,`es`,`pt-BR`],h=[{code:`en`,name:`English`},{code:`tr`,name:`Türkçe`},{code:`de`,name:`Deutsch`},{code:`fr`,name:`Français`},{code:`it`,name:`Italiano`},{code:`es`,name:`Español`},{code:`pt-BR`,name:`Português (Brasil)`}],g=new Set(m);function _(){return typeof navigator>`u`||!navigator.language?`en`:y(navigator.language)}function v(e){return!e||typeof e!=`string`?_():y(e)}function y(e){let t=e.trim().toLowerCase();if(!t)return`en`;if(g.has(t))return t;let n=t.split(`-`)[0];return n&&g.has(n)?n:n===`pt`?`pt-BR`:`en`}var b={autonomy:`auto`,autonomyDelayMs:45e3,autoProceedMaxIterations:50,yolo:!0,maxIterations:500,chime:!1,confirmExit:!0,fleetChatVerbosity:`off`,nextPrediction:!1,nextStepsTool:!1,fallbackModels:[],fallbackProfiles:{},favoriteModels:[],favoriteModelsOnly:!1,modelMatrix:{},fallbackAuto:!0,modelAvailabilitySchedule:[],featureMcp:!0,featurePlugins:!0,featureMemory:!0,featureSkills:!0,featureModelsRegistry:!0,indexOnStart:!0,contextAutoCompact:!0,contextStrategy:`hybrid`,contextMode:`balanced`,tokenSavingTier:`auto`,maxConcurrent:10,titleAnimation:!0,logLevel:`info`,auditLevel:`standard`,enhanceEnabled:!0,enhanceDelayMs:6e4,enhanceCountdownMs:3e3,enhanceLanguage:`original`,refinerProvider:``,refinerModel:``,refinerFallbackProfile:``,thinkingWord:`thinking`,statuslineMode:`minimum`,animationStyle:`rainbow`,showThinkingLogs:!0,groupToolCalls:!0,autoCollapseInput:!1,showModelReasoning:!0,showAgentSwarmPanel:`bottom`,allowOutsideProjectRoot:!0,reasoningMode:`auto`,reasoningEffort:`high`,reasoningPreserve:!1,cacheTtl:`default`,breakerEnabled:!1,breakerAutoKillResetMs:6e4,fsAccess:`unrestricted`,debugStream:!1,hqEnabled:!1,hqUrl:``,hqToken:``,hqRawContent:!1,tgConfigured:!1,tgSessionEnd:!1,tgDelegate:!0,tgLongToolMs:3e4,uiLocale:_(),chimeraAutoFix:`off`,readSymbols:!1,showSageMemoryInject:!1,sageMemoryInjectThreshold:.85,preRefineSeconds:3,multiDiffSummaryThreshold:5,chimeraEnabled:!0,chimeraProvider:``,chimeraModel:``,chimeraMaxFiles:15,autoReviewEnabled:!1,autoReviewProvider:``,autoReviewModel:``,autoReviewFallbackProfile:``,autoReviewModelSelection:`round-robin`,autoReviewFallbackModels:[],autoReviewDebounceMs:15e3,autoReviewMaxFilesPerBatch:15,autoReviewMaxConcurrentReviews:2,autoReviewCascadeOn:`off`,pluginsEnabled:{}},x=i()(t(e=>({...b,set:t=>e(t),reset:()=>e(b)}),{name:`wrongstack-local-prefs`,version:15,migrate:(e,t)=>{let n=e??{};return t<12&&n.autoReviewDebounceMs===5e3&&(n.autoReviewDebounceMs=15e3),typeof n.fleetChatVerbosity!=`string`&&(n.fleetChatVerbosity=n.streamFleet===!0?`full`:(n.streamFleet,`off`),delete n.streamFleet),n.fleetChatVerbosity!==`off`&&n.fleetChatVerbosity!==`full`&&(n.fleetChatVerbosity=`off`),[`hybrid`,`intelligent`,`selective`].includes(n.contextStrategy)||(n.contextStrategy=`hybrid`),n.auditLevel===`verbose`&&(n.auditLevel=`full`),[`minimal`,`standard`,`full`].includes(n.auditLevel)||(n.auditLevel=`standard`),typeof n.autoProceedMaxIterations!=`number`&&(n.autoProceedMaxIterations=50),(!n.fallbackProfiles||typeof n.fallbackProfiles!=`object`||Array.isArray(n.fallbackProfiles))&&(n.fallbackProfiles={}),Array.isArray(n.favoriteModels)||(n.favoriteModels=[]),typeof n.favoriteModelsOnly!=`boolean`&&(n.favoriteModelsOnly=!1),Array.isArray(n.modelAvailabilitySchedule)||(n.modelAvailabilitySchedule=[]),(!n.modelMatrix||typeof n.modelMatrix!=`object`||Array.isArray(n.modelMatrix))&&(n.modelMatrix={}),(typeof n.uiLocale!=`string`||!n.uiLocale)&&(n.uiLocale=_()),typeof n.breakerEnabled!=`boolean`&&(n.breakerEnabled=!1),typeof n.breakerAutoKillResetMs!=`number`&&(n.breakerAutoKillResetMs=6e4),n.fsAccess!==`unrestricted`&&n.fsAccess!==`project`&&(n.fsAccess=`unrestricted`),typeof n.debugStream!=`boolean`&&(n.debugStream=!1),typeof n.chimeraEnabled!=`boolean`&&(n.chimeraEnabled=!0),typeof n.chimeraProvider!=`string`&&(n.chimeraProvider=``),typeof n.chimeraModel!=`string`&&(n.chimeraModel=``),n.chimeraAutoFix!==`off`&&n.chimeraAutoFix!==`ask`&&n.chimeraAutoFix!==`auto`&&(n.chimeraAutoFix=`off`),(typeof n.chimeraMaxFiles!=`number`||!Number.isFinite(n.chimeraMaxFiles)||n.chimeraMaxFiles<1)&&(n.chimeraMaxFiles=15),typeof n.autoReviewEnabled!=`boolean`&&(n.autoReviewEnabled=!1),typeof n.autoReviewProvider!=`string`&&(n.autoReviewProvider=``),typeof n.autoReviewModel!=`string`&&(n.autoReviewModel=``),typeof n.autoReviewFallbackProfile!=`string`&&(n.autoReviewFallbackProfile=``),n.autoReviewModelSelection!==`round-robin`&&n.autoReviewModelSelection!==`random`&&(n.autoReviewModelSelection=`round-robin`),Array.isArray(n.autoReviewFallbackModels)||(n.autoReviewFallbackModels=[]),(typeof n.autoReviewDebounceMs!=`number`||!Number.isFinite(n.autoReviewDebounceMs)||n.autoReviewDebounceMs<0)&&(n.autoReviewDebounceMs=15e3),(typeof n.autoReviewMaxFilesPerBatch!=`number`||!Number.isFinite(n.autoReviewMaxFilesPerBatch)||n.autoReviewMaxFilesPerBatch<1)&&(n.autoReviewMaxFilesPerBatch=15),(typeof n.autoReviewMaxConcurrentReviews!=`number`||!Number.isFinite(n.autoReviewMaxConcurrentReviews)||n.autoReviewMaxConcurrentReviews<1)&&(n.autoReviewMaxConcurrentReviews=2),n.autoReviewCascadeOn!==`off`&&n.autoReviewCascadeOn!==`critical`&&n.autoReviewCascadeOn!==`high`&&(n.autoReviewCascadeOn=`off`),typeof n.showModelReasoning!=`boolean`&&(n.showModelReasoning=!0),typeof n.autoCollapseInput!=`boolean`&&(n.autoCollapseInput=!1),typeof n.showAgentSwarmPanel==`boolean`?n.showAgentSwarmPanel=n.showAgentSwarmPanel?`bottom`:`off`:(typeof n.showAgentSwarmPanel!=`string`||![`bottom`,`sidebar`,`off`].includes(n.showAgentSwarmPanel))&&(n.showAgentSwarmPanel=`bottom`),typeof n.allowOutsideProjectRoot!=`boolean`&&(n.allowOutsideProjectRoot=!0),typeof n.readSymbols!=`boolean`&&(n.readSymbols=!1),typeof n.showSageMemoryInject!=`boolean`&&(n.showSageMemoryInject=!1),(typeof n.sageMemoryInjectThreshold!=`number`||!Number.isFinite(n.sageMemoryInjectThreshold)||n.sageMemoryInjectThreshold<0||n.sageMemoryInjectThreshold>1)&&(n.sageMemoryInjectThreshold=.85),(typeof n.preRefineSeconds!=`number`||!Number.isFinite(n.preRefineSeconds)||n.preRefineSeconds<0)&&(n.preRefineSeconds=3),(typeof n.multiDiffSummaryThreshold!=`number`||!Number.isFinite(n.multiDiffSummaryThreshold)||n.multiDiffSummaryThreshold<0)&&(n.multiDiffSummaryThreshold=5),n},partialize:e=>{let{hqToken:t,...n}=e;return n},merge:(e,t)=>{let{hqToken:n,...r}=e??{};return{...t,...r,hqToken:``}}})),S=[`common`,`activity`,`chat`,`commandPalette`,`settings`,`setup`,`toasts`];function C(){try{return v(x.getState().uiLocale)}catch{return`en`}}n.use(r).use(e((e,t)=>p(Object.assign({"./locales/de/activity.json":()=>f(()=>import(`./activity-JmCi-KcX.js`),[]),"./locales/de/chat.json":()=>f(()=>import(`./chat-BnkVCZ3Q.js`),[]),"./locales/de/commandPalette.json":()=>f(()=>import(`./commandPalette-aaAou3Tl.js`),[]),"./locales/de/common.json":()=>f(()=>import(`./common-C3PzxyXg.js`),[]),"./locales/de/settings.json":()=>f(()=>import(`./settings-B36QpLU8.js`),[]),"./locales/de/setup.json":()=>f(()=>import(`./setup-DD8rKpQU.js`),[]),"./locales/de/toasts.json":()=>f(()=>import(`./toasts-CFzweRH5.js`),[]),"./locales/en/activity.json":()=>f(()=>import(`./activity-B7hiQ_IX.js`).then(e=>e.n),__vite__mapDeps([0,1])),"./locales/en/chat.json":()=>f(()=>import(`./chat-CzaGXz_W.js`).then(e=>e.n),__vite__mapDeps([2,1])),"./locales/en/commandPalette.json":()=>f(()=>import(`./commandPalette-BovBiPec.js`).then(e=>e.n),__vite__mapDeps([3,1])),"./locales/en/common.json":()=>f(()=>import(`./common-BBHmIHQW.js`).then(e=>e.n),__vite__mapDeps([4,1])),"./locales/en/settings.json":()=>f(()=>import(`./settings-DfID_cS9.js`).then(e=>e.n),__vite__mapDeps([5,1])),"./locales/en/setup.json":()=>f(()=>import(`./setup-DfcCCvUO.js`).then(e=>e.n),__vite__mapDeps([6,1])),"./locales/en/toasts.json":()=>f(()=>import(`./toasts-DOfXc7Rt.js`).then(e=>e.n),__vite__mapDeps([7,1])),"./locales/es/activity.json":()=>f(()=>import(`./activity-Cq0Lqtgz.js`),[]),"./locales/es/chat.json":()=>f(()=>import(`./chat-BPuAsrkF.js`),[]),"./locales/es/commandPalette.json":()=>f(()=>import(`./commandPalette-Nlxs0V7J.js`),[]),"./locales/es/common.json":()=>f(()=>import(`./common-CUWL8eNX.js`),[]),"./locales/es/settings.json":()=>f(()=>import(`./settings-B8uABeWU.js`),[]),"./locales/es/setup.json":()=>f(()=>import(`./setup-COxU-AT_.js`),[]),"./locales/es/toasts.json":()=>f(()=>import(`./toasts-BwQJwYLe.js`),[]),"./locales/fr/activity.json":()=>f(()=>import(`./activity-DVuAYnoi.js`),[]),"./locales/fr/chat.json":()=>f(()=>import(`./chat-BfQBSiII.js`),[]),"./locales/fr/commandPalette.json":()=>f(()=>import(`./commandPalette-Dfk74u87.js`),[]),"./locales/fr/common.json":()=>f(()=>import(`./common-xPePelft.js`),[]),"./locales/fr/settings.json":()=>f(()=>import(`./settings-RQKnX4dA.js`),[]),"./locales/fr/setup.json":()=>f(()=>import(`./setup-CMteRkTs.js`),[]),"./locales/fr/toasts.json":()=>f(()=>import(`./toasts-BCDGDcyq.js`),[]),"./locales/it/activity.json":()=>f(()=>import(`./activity-Dt0RpmkN.js`),[]),"./locales/it/chat.json":()=>f(()=>import(`./chat-CR2B97dj.js`),[]),"./locales/it/commandPalette.json":()=>f(()=>import(`./commandPalette-CUh_kgfp.js`),[]),"./locales/it/common.json":()=>f(()=>import(`./common-DuR5FTPN.js`),[]),"./locales/it/settings.json":()=>f(()=>import(`./settings-CSwU_zzD.js`),[]),"./locales/it/setup.json":()=>f(()=>import(`./setup-pPW1kVR_.js`),[]),"./locales/it/toasts.json":()=>f(()=>import(`./toasts-Dm12Nq8t.js`),[]),"./locales/pt-BR/activity.json":()=>f(()=>import(`./activity-B-LcgiXm.js`),[]),"./locales/pt-BR/chat.json":()=>f(()=>import(`./chat-DResBrkV.js`),[]),"./locales/pt-BR/commandPalette.json":()=>f(()=>import(`./commandPalette-tFxIIhvU.js`),[]),"./locales/pt-BR/common.json":()=>f(()=>import(`./common-CvSB5NM3.js`),[]),"./locales/pt-BR/settings.json":()=>f(()=>import(`./settings-B8Hgh9_X.js`),[]),"./locales/pt-BR/setup.json":()=>f(()=>import(`./setup-BOYK0I6-.js`),[]),"./locales/pt-BR/toasts.json":()=>f(()=>import(`./toasts-frBt6fvE.js`),[]),"./locales/tr/activity.json":()=>f(()=>import(`./activity-7Sj9fdO-.js`),[]),"./locales/tr/chat.json":()=>f(()=>import(`./chat-Di8o0wDz.js`),[]),"./locales/tr/commandPalette.json":()=>f(()=>import(`./commandPalette-CGMq-qlP.js`),[]),"./locales/tr/common.json":()=>f(()=>import(`./common-DT2FL9xN.js`),[]),"./locales/tr/settings.json":()=>f(()=>import(`./settings-FXJ8SsEh.js`),[]),"./locales/tr/setup.json":()=>f(()=>import(`./setup-Bd23KLtt.js`),[]),"./locales/tr/toasts.json":()=>f(()=>import(`./toasts-DDYQsJV8.js`),[])}),`./locales/${e}/${t}.json`,4))).init({lng:C(),fallbackLng:`en`,supportedLngs:[...m],ns:[...S],defaultNS:`common`,partialBundledLanguages:!0,resources:{en:{common:c,activity:a,chat:o,commandPalette:s,settings:l,setup:u,toasts:d}},interpolation:{escapeValue:!1},react:{useSuspense:!1},returnNull:!1});function w(e){typeof document<`u`&&(document.documentElement.lang=e)}w(n.language||`en`),x.subscribe((e,t)=>{let r=e.uiLocale;r&&r!==t.uiLocale&&r!==n.language&&n.changeLanguage(r).then(()=>w(r))});function T(){window.wrongstackDesktopHost?.onLocaleChanged?.(e=>{if(!e)return;let t=v(e);if(t===n.language)return;let r=x.getState();r.uiLocale!==t&&r.set({uiLocale:t}),n.changeLanguage(t).then(()=>w(t))})}try{T()}catch{}export{h as n,x as t};