@theia/core 1.76.0-next.7 → 1.76.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (179) hide show
  1. package/README.md +8 -8
  2. package/i18n/nls.cs.json +187 -49
  3. package/i18n/nls.de.json +187 -49
  4. package/i18n/nls.es.json +187 -49
  5. package/i18n/nls.fr.json +187 -49
  6. package/i18n/nls.hu.json +187 -49
  7. package/i18n/nls.it.json +187 -49
  8. package/i18n/nls.ja.json +187 -49
  9. package/i18n/nls.json +187 -49
  10. package/i18n/nls.ko.json +187 -49
  11. package/i18n/nls.pl.json +187 -49
  12. package/i18n/nls.pt-br.json +187 -49
  13. package/i18n/nls.ru.json +187 -49
  14. package/i18n/nls.tr.json +187 -49
  15. package/i18n/nls.zh-cn.json +187 -49
  16. package/i18n/nls.zh-tw.json +187 -49
  17. package/lib/browser/catalog.json +175 -95
  18. package/lib/browser/dialogs.d.ts +2 -0
  19. package/lib/browser/dialogs.d.ts.map +1 -1
  20. package/lib/browser/dialogs.js +9 -5
  21. package/lib/browser/dialogs.js.map +1 -1
  22. package/lib/browser/frontend-application-module.d.ts.map +1 -1
  23. package/lib/browser/frontend-application-module.js +3 -0
  24. package/lib/browser/frontend-application-module.js.map +1 -1
  25. package/lib/browser/index.d.ts +1 -0
  26. package/lib/browser/index.d.ts.map +1 -1
  27. package/lib/browser/index.js +1 -0
  28. package/lib/browser/index.js.map +1 -1
  29. package/lib/browser/resource-context-key.d.ts +25 -0
  30. package/lib/browser/resource-context-key.d.ts.map +1 -1
  31. package/lib/browser/resource-context-key.js +41 -16
  32. package/lib/browser/resource-context-key.js.map +1 -1
  33. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.d.ts +7 -5
  34. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.d.ts.map +1 -1
  35. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.js +13 -12
  36. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.js.map +1 -1
  37. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.d.ts +11 -1
  38. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.d.ts.map +1 -1
  39. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.js +38 -3
  40. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.js.map +1 -1
  41. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.d.ts +2 -1
  42. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.d.ts.map +1 -1
  43. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.js +4 -2
  44. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.js.map +1 -1
  45. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.spec.js +123 -2
  46. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.spec.js.map +1 -1
  47. package/lib/browser/shell/tab-bar-toolbar/tab-toolbar-item.d.ts +12 -4
  48. package/lib/browser/shell/tab-bar-toolbar/tab-toolbar-item.d.ts.map +1 -1
  49. package/lib/browser/shell/tab-bar-toolbar/tab-toolbar-item.js +2 -2
  50. package/lib/browser/shell/tab-bar-toolbar/tab-toolbar-item.js.map +1 -1
  51. package/lib/browser/tree/tree-widget.d.ts +20 -2
  52. package/lib/browser/tree/tree-widget.d.ts.map +1 -1
  53. package/lib/browser/tree/tree-widget.js +31 -13
  54. package/lib/browser/tree/tree-widget.js.map +1 -1
  55. package/lib/browser/tree/tree-widget.spec.d.ts +2 -0
  56. package/lib/browser/tree/tree-widget.spec.d.ts.map +1 -0
  57. package/lib/browser/tree/tree-widget.spec.js +192 -0
  58. package/lib/browser/tree/tree-widget.spec.js.map +1 -0
  59. package/lib/browser/view-container.d.ts.map +1 -1
  60. package/lib/browser/view-container.js +2 -2
  61. package/lib/browser/view-container.js.map +1 -1
  62. package/lib/browser/widget-context-key-contribution.d.ts +17 -0
  63. package/lib/browser/widget-context-key-contribution.d.ts.map +1 -0
  64. package/lib/browser/widget-context-key-contribution.js +20 -0
  65. package/lib/browser/widget-context-key-contribution.js.map +1 -0
  66. package/lib/browser/window/browser-window-module.d.ts.map +1 -1
  67. package/lib/browser/window/browser-window-module.js +3 -0
  68. package/lib/browser/window/browser-window-module.js.map +1 -1
  69. package/lib/browser/window/window-launch-args.d.ts +29 -0
  70. package/lib/browser/window/window-launch-args.d.ts.map +1 -0
  71. package/lib/browser/window/window-launch-args.js +39 -0
  72. package/lib/browser/window/window-launch-args.js.map +1 -0
  73. package/lib/browser-only/frontend-only-application-module.d.ts.map +1 -1
  74. package/lib/browser-only/frontend-only-application-module.js +5 -2
  75. package/lib/browser-only/frontend-only-application-module.js.map +1 -1
  76. package/lib/browser-only/messaging/frontend-only-service-connection-provider.d.ts +3 -1
  77. package/lib/browser-only/messaging/frontend-only-service-connection-provider.d.ts.map +1 -1
  78. package/lib/browser-only/messaging/frontend-only-service-connection-provider.js +8 -7
  79. package/lib/browser-only/messaging/frontend-only-service-connection-provider.js.map +1 -1
  80. package/lib/common/index.d.ts +2 -0
  81. package/lib/common/index.d.ts.map +1 -1
  82. package/lib/common/index.js +2 -0
  83. package/lib/common/index.js.map +1 -1
  84. package/lib/common/launch-arguments.d.ts +32 -0
  85. package/lib/common/launch-arguments.d.ts.map +1 -0
  86. package/lib/common/launch-arguments.js +44 -0
  87. package/lib/common/launch-arguments.js.map +1 -0
  88. package/lib/common/remote-cli-args-contribution.d.ts +22 -0
  89. package/lib/common/remote-cli-args-contribution.d.ts.map +1 -0
  90. package/lib/common/remote-cli-args-contribution.js +20 -0
  91. package/lib/common/remote-cli-args-contribution.js.map +1 -0
  92. package/lib/electron-browser/messaging/electron-ipc-connection-source.d.ts +6 -3
  93. package/lib/electron-browser/messaging/electron-ipc-connection-source.d.ts.map +1 -1
  94. package/lib/electron-browser/messaging/electron-ipc-connection-source.js +4 -3
  95. package/lib/electron-browser/messaging/electron-ipc-connection-source.js.map +1 -1
  96. package/lib/electron-browser/preload.d.ts.map +1 -1
  97. package/lib/electron-browser/preload.js +3 -1
  98. package/lib/electron-browser/preload.js.map +1 -1
  99. package/lib/electron-browser/window/electron-window-launch-args.d.ts +14 -0
  100. package/lib/electron-browser/window/electron-window-launch-args.d.ts.map +1 -0
  101. package/lib/electron-browser/window/electron-window-launch-args.js +41 -0
  102. package/lib/electron-browser/window/electron-window-launch-args.js.map +1 -0
  103. package/lib/electron-browser/window/electron-window-launch-args.spec.d.ts +2 -0
  104. package/lib/electron-browser/window/electron-window-launch-args.spec.d.ts.map +1 -0
  105. package/lib/electron-browser/window/electron-window-launch-args.spec.js +43 -0
  106. package/lib/electron-browser/window/electron-window-launch-args.spec.js.map +1 -0
  107. package/lib/electron-browser/window/electron-window-module.d.ts.map +1 -1
  108. package/lib/electron-browser/window/electron-window-module.js +7 -0
  109. package/lib/electron-browser/window/electron-window-module.js.map +1 -1
  110. package/lib/electron-common/electron-api.d.ts +10 -0
  111. package/lib/electron-common/electron-api.d.ts.map +1 -1
  112. package/lib/electron-common/electron-api.js.map +1 -1
  113. package/lib/electron-main/electron-api-main.d.ts.map +1 -1
  114. package/lib/electron-main/electron-api-main.js +7 -1
  115. package/lib/electron-main/electron-api-main.js.map +1 -1
  116. package/lib/electron-main/electron-main-application-module.d.ts.map +1 -1
  117. package/lib/electron-main/electron-main-application-module.js +2 -0
  118. package/lib/electron-main/electron-main-application-module.js.map +1 -1
  119. package/lib/electron-main/electron-main-application.d.ts +57 -2
  120. package/lib/electron-main/electron-main-application.d.ts.map +1 -1
  121. package/lib/electron-main/electron-main-application.js +68 -8
  122. package/lib/electron-main/electron-main-application.js.map +1 -1
  123. package/lib/electron-main/launch-args-store.d.ts +45 -0
  124. package/lib/electron-main/launch-args-store.d.ts.map +1 -0
  125. package/lib/electron-main/launch-args-store.js +76 -0
  126. package/lib/electron-main/launch-args-store.js.map +1 -0
  127. package/lib/electron-main/launch-args-store.spec.d.ts +2 -0
  128. package/lib/electron-main/launch-args-store.spec.d.ts.map +1 -0
  129. package/lib/electron-main/launch-args-store.spec.js +53 -0
  130. package/lib/electron-main/launch-args-store.spec.js.map +1 -0
  131. package/lib/electron-main/launch-argv-parser.d.ts +19 -0
  132. package/lib/electron-main/launch-argv-parser.d.ts.map +1 -0
  133. package/lib/electron-main/launch-argv-parser.js +71 -0
  134. package/lib/electron-main/launch-argv-parser.js.map +1 -0
  135. package/lib/electron-main/launch-argv-parser.spec.d.ts +2 -0
  136. package/lib/electron-main/launch-argv-parser.spec.d.ts.map +1 -0
  137. package/lib/electron-main/launch-argv-parser.spec.js +62 -0
  138. package/lib/electron-main/launch-argv-parser.spec.js.map +1 -0
  139. package/lib/electron-main/theia-electron-window.d.ts +2 -0
  140. package/lib/electron-main/theia-electron-window.d.ts.map +1 -1
  141. package/lib/electron-main/theia-electron-window.js +12 -0
  142. package/lib/electron-main/theia-electron-window.js.map +1 -1
  143. package/package.json +11 -11
  144. package/src/browser/dialogs.ts +10 -5
  145. package/src/browser/frontend-application-module.ts +5 -1
  146. package/src/browser/index.ts +1 -0
  147. package/src/browser/resource-context-key.ts +61 -16
  148. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.tsx +13 -12
  149. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.ts +36 -4
  150. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar.spec.ts +150 -3
  151. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar.tsx +6 -3
  152. package/src/browser/shell/tab-bar-toolbar/tab-toolbar-item.tsx +13 -5
  153. package/src/browser/style/tree.css +7 -0
  154. package/src/browser/tree/tree-widget.spec.tsx +245 -0
  155. package/src/browser/tree/tree-widget.tsx +36 -12
  156. package/src/browser/view-container.ts +3 -3
  157. package/src/browser/widget-context-key-contribution.ts +34 -0
  158. package/src/browser/window/browser-window-module.ts +3 -0
  159. package/src/browser/window/window-launch-args.ts +53 -0
  160. package/src/browser-only/frontend-only-application-module.ts +5 -2
  161. package/src/browser-only/messaging/frontend-only-service-connection-provider.ts +3 -1
  162. package/src/common/i18n/nls.metadata.json +5246 -1106
  163. package/src/common/index.ts +2 -0
  164. package/src/common/launch-arguments.ts +61 -0
  165. package/src/common/remote-cli-args-contribution.ts +39 -0
  166. package/src/electron-browser/messaging/electron-ipc-connection-source.ts +6 -3
  167. package/src/electron-browser/preload.ts +3 -1
  168. package/src/electron-browser/window/electron-window-launch-args.spec.ts +45 -0
  169. package/src/electron-browser/window/electron-window-launch-args.ts +38 -0
  170. package/src/electron-browser/window/electron-window-module.ts +7 -0
  171. package/src/electron-common/electron-api.ts +10 -0
  172. package/src/electron-main/electron-api-main.ts +7 -1
  173. package/src/electron-main/electron-main-application-module.ts +2 -0
  174. package/src/electron-main/electron-main-application.ts +101 -8
  175. package/src/electron-main/launch-args-store.spec.ts +59 -0
  176. package/src/electron-main/launch-args-store.ts +73 -0
  177. package/src/electron-main/launch-argv-parser.spec.ts +70 -0
  178. package/src/electron-main/launch-argv-parser.ts +66 -0
  179. package/src/electron-main/theia-electron-window.ts +9 -0
package/i18n/nls.de.json CHANGED
@@ -72,6 +72,9 @@
72
72
  "title": "Agenteneinstellungen"
73
73
  },
74
74
  "anthropic": {
75
+ "allowEnvApiKey": {
76
+ "description": "Erlauben Sie Theia, einen in der Umgebung vorhandenen Anthropic-API-Schlüssel (`ANTHROPIC_API_KEY`) zu verwenden. Sie werden einmalig aufgefordert, dies zu bestätigen, bevor der Schlüssel verwendet wird; setzen Sie den Wert wieder auf `false`, um die Einwilligung zu widerrufen."
77
+ },
75
78
  "apiKey": {
76
79
  "description": "Geben Sie einen API-Schlüssel Ihres offiziellen Anthropic-Kontos ein. **Bitte beachten Sie:** Durch die Verwendung dieser Einstellung wird der Anthropic-API-Schlüssel im Klartext auf dem Rechner gespeichert, auf dem Theia ausgeführt wird. Verwenden Sie die Umgebungsvariable `ANTHROPIC_API_KEY`, um den Schlüssel sicher festzulegen."
77
80
  },
@@ -91,13 +94,16 @@
91
94
  "enableStreaming": {
92
95
  "title": "Gibt an, ob die Streaming-API verwendet werden soll. Standardmäßig „true“."
93
96
  },
97
+ "headers": {
98
+ "title": "Zusätzliche HTTP-Header, die mit jeder Anfrage an den Endpunkt gesendet werden"
99
+ },
94
100
  "id": {
95
101
  "title": "Eine eindeutige Kennung, die in der Benutzeroberfläche zur Identifizierung des benutzerdefinierten Modells verwendet wird."
96
102
  },
97
103
  "maxRetries": {
98
104
  "title": "Maximale Anzahl von Wiederholungsversuchen, wenn eine Anfrage fehlschlägt. Standardmäßig 3."
99
105
  },
100
- "mdDescription": "Integrieren Sie benutzerdefinierte Modelle, die mit der Anthropic-API kompatibel sind. Die erforderlichen Attribute sind `model` und `url`. \n Optional können Sie \n - eine eindeutige `id` angeben, um das benutzerdefinierte Modell in der Benutzeroberfläche zu identifizieren. Wenn keine angegeben wird, wird `model` als `id` verwendet. \n - Geben Sie einen `apiKey` an, um auf die unter der angegebenen URL bereitgestellte API zuzugreifen. Verwenden Sie `true`, um die Verwendung des globalen Anthropic-API-Schlüssels anzugeben. \n - Geben Sie `enableStreaming: false` an, um anzugeben, dass Streaming nicht verwendet werden soll. \n - Geben Sie `useCaching: false` an, um anzugeben, dass das Prompt-Caching nicht verwendet werden soll. \n - Geben Sie `maxRetries: <Zahl>` an, um die maximale Anzahl von Wiederholungsversuchen anzugeben, wenn eine Anfrage fehlschlägt. Standardmäßig 3. \n Die Schlussfolgerungsfähigkeiten und das maximale Limit für Ausgabetoken werden aus der Antwort des Endpunkts `/v1/models` abgeleitet.",
106
+ "mdDescription": "Integrieren Sie benutzerdefinierte Modelle, die mit der Anthropic-API kompatibel sind. Die erforderlichen Attribute sind `model` und `url`. \n Optional können Sie \n - eine eindeutige `id` angeben, um das benutzerdefinierte Modell in der Benutzeroberfläche zu identifizieren. Wenn keine angegeben wird, wird `model` als `id` verwendet. \n - Geben Sie einen `apiKey` an, um auf die unter der angegebenen URL bereitgestellte API zuzugreifen. Verwenden Sie `true`, um die Verwendung des globalen Anthropic-API-Schlüssels anzugeben. \n - Geben Sie `enableStreaming: false` an, um festzulegen, dass kein Streaming verwendet werden soll. \n - Geben Sie `useCaching: false` an, um festzulegen, dass das Prompt-Caching nicht verwendet werden soll. \n - Geben Sie `maxRetries: <Zahl>` an, um die maximale Anzahl von Wiederholungsversuchen festzulegen, wenn eine Anfrage fehlschlägt. Standardwert ist 3. \n - Geben Sie `headers` an, um bei jeder Anfrage an den Endpunkt zusätzliche HTTP-Header zu senden, z. B. Header, die von einem vor der API liegenden Gateway benötigt werden. \n Die Fähigkeiten zur Schlussfolgerung und das maximale Limit für ausgegebene Token werden aus der Antwort des Endpunkts unter `/v1/models` abgeleitet.",
101
107
  "modelId": {
102
108
  "title": "Modell-ID"
103
109
  },
@@ -111,8 +117,16 @@
111
117
  "customProvider": {
112
118
  "label": "{0} (Benutzerdefiniert)"
113
119
  },
114
- "models": {
115
- "description": "Offizielle Anthropic-Modelle zur Verwendung"
120
+ "discovery": {
121
+ "cached": "Anzeige zwischengespeicherter Modelle; letzte Aktualisierung fehlgeschlagen: {0}",
122
+ "consentPrompt": "In der Umgebung wurde ein Anthropic-API-Schlüssel gefunden (ANTHROPIC_API_KEY). Soll Theia diesen verwenden dürfen, um Anthropic-Modelle zu erkennen und aufzurufen?",
123
+ "consentRequired": "In der Umgebung wurde ein Anthropic-API-Schlüssel gefunden. Bestätigen Sie dessen Verwendung, um Modelle zu ermitteln.",
124
+ "noKey": "Es wurde kein Anthropic-API-Schlüssel festgelegt. Fügen Sie einen Schlüssel hinzu, um Modelle zu entdecken.",
125
+ "overridden": "Die Modellliste wird manuell konfiguriert. Löschen Sie die Modellüberschreibungen, um die Modelle vom Anbieter erneut zu ermitteln.",
126
+ "useEnvKey": "Schlüssel verwenden"
127
+ },
128
+ "modelOverrides": {
129
+ "description": "Überschreiben Sie die von Anthropic ermittelten Modelle. Wenn das Feld leer ist (Standard), werden die verfügbaren Modelle vom Anbieter ermittelt. Legen Sie explizite Modell-IDs fest, um genau diese zu verwenden; die Ermittlung wird dann überhaupt nicht genutzt."
116
130
  }
117
131
  },
118
132
  "chat": {
@@ -306,7 +320,8 @@
306
320
  "status": {
307
321
  "canceled": "abgebrochen",
308
322
  "generating": "Generieren...",
309
- "starting": "Startet..."
323
+ "starting": "Startet...",
324
+ "waitingForInput": "Warten auf Eingabe"
310
325
  }
311
326
  },
312
327
  "deleteChangeSet": "Änderungssatz löschen",
@@ -320,11 +335,14 @@
320
335
  "failedToLoadChats": "Das Laden der Chat-Sitzungen ist fehlgeschlagen.",
321
336
  "failedToRestoreSession": "Wiederherstellung der Chat-Sitzung fehlgeschlagen",
322
337
  "failedToRetry": "Wiederholungsversuch fehlgeschlagen",
338
+ "find": "Im Chat suchen",
339
+ "findHide": "Im Chat ausblenden/suchen",
323
340
  "focusInput": "Fokus-Chat-Eingabe",
324
341
  "focusResponse": "Fokus-Chat-Antwort",
325
342
  "functions": "Funktionen",
326
343
  "functionsDescription": "Integrierte Funktionen, die von „{0}“-Erweiterungen bereitgestellt werden",
327
344
  "genericCapabilities": "Allgemeine Funktionen",
345
+ "manageModels": "Modelle verwalten…",
328
346
  "mcpFunctionsDescription": "Model Context Protocol (MCP)-Funktionen von verbundenen Servern",
329
347
  "mermaid-rendering": {
330
348
  "copySource": "Quelle kopieren",
@@ -340,7 +358,6 @@
340
358
  "modelUnavailable": "nicht verfügbar",
341
359
  "noChatAgentsAvailable": "Keine Chat-Agenten verfügbar.",
342
360
  "noMatchingCapabilities": "Keine passenden Funktionen",
343
- "openDiff": "Diff öffnen",
344
361
  "openImage": "Bild öffnen",
345
362
  "openOriginalFile": "Originaldatei öffnen",
346
363
  "performThisTask": "Führen Sie diese Aufgabe aus.",
@@ -476,7 +493,6 @@
476
493
  "findMatchingFiles": "Suchen Sie nach Dateien, die dem Glob-Muster „{0}“ im aktuellen Verzeichnis entsprechen.",
477
494
  "findMatchingFilesWithPath": "Suchen Sie Dateien, die dem Glob-Muster „{0}“ entsprechen, innerhalb von „{1}“.",
478
495
  "finding": "Ergebnis",
479
- "from": "Aus",
480
496
  "globPattern": "glob-Muster",
481
497
  "grepOptions": {
482
498
  "caseInsensitive": "Groß-/Kleinschreibung wird nicht berücksichtigt",
@@ -533,7 +549,6 @@
533
549
  "startingLine": "Startlinie",
534
550
  "timeout": "Zeitüberschreitung",
535
551
  "timeoutInMs": "Zeitüberschreitung: {0} ms",
536
- "to": "Zu",
537
552
  "todoList": "Todo-Liste",
538
553
  "todoPriority": {
539
554
  "high": "hoch",
@@ -646,23 +661,32 @@
646
661
  "signIn": "Bei GitHub Copilot anmelden",
647
662
  "signOut": "Bei GitHub Copilot abmelden"
648
663
  },
664
+ "discovery": {
665
+ "disabled": "Der GitHub Copilot-Anbieter ist deaktiviert. Aktivieren Sie ihn, um Modelle zu entdecken.",
666
+ "overridden": "Die Modellliste wird manuell konfiguriert. Löschen Sie die Modellüberschreibungen, um die Modelle erneut aus GitHub Copilot zu ermitteln.",
667
+ "signedOut": "Sie sind nicht bei GitHub Copilot angemeldet. Melden Sie sich an, um die angebotenen Modelle zu entdecken."
668
+ },
649
669
  "enabled": {
650
- "mdDescription": "Aktivieren Sie den GitHub Copilot-Anbieter. Nach der Aktivierung erscheint ein Eintrag in der Statusleiste zur Authentifizierung, und verfügbare Modelle werden aus Ihrem Copilot-Abonnement ermittelt."
670
+ "mdDescription": "Aktivieren Sie den GitHub Copilot-Anbieter. Nach der Aktivierung erscheint ein Eintrag in der Statusleiste zur Authentifizierung, und die verfügbaren Modelle werden aus Ihrem Copilot-Abonnement ermittelt.\n\nAnfragen werden über die offizielle GitHub Copilot-CLI weitergeleitet, die als Hintergrundprozess auf dem Rechner läuft, auf dem das Backend gehostet wird. Ihrer Copilot-Anmeldung werden ausschließlich die Anmeldedaten übermittelt; daher wird weder ein Token in der Umgebung noch eine bestehende Anmeldung der GitHub-CLI verwendet."
651
671
  },
652
672
  "enterpriseUrl": {
653
- "mdDescription": "GitHub Enterprise-Domäne für die Copilot-API (z. B. „github.mycompany.com“). Für GitHub.com leer lassen."
673
+ "mdDescription": "GitHub Enterprise-Domäne zur Authentifizierung und zum Senden von Anfragen (z. B. `github.mycompany.com`). Für GitHub.com leer lassen."
674
+ },
675
+ "enterpriseUrlChanged": "Die GitHub-Copilot-Domain hat sich geändert. Melden Sie sich erneut an, damit die Änderung wirksam wird.",
676
+ "executablePath": {
677
+ "mdDescription": "Speicherort der ausführbaren Datei der GitHub Copilot-CLI auf dem Rechner, auf dem das Backend gehostet wird. Wenn das Feld leer ist (Standard), wird in der Installation der Anwendung, im `PATH` und im globalen `npm`-Verzeichnis nach der CLI gesucht. Legen Sie diesen Wert fest, wenn die CLI an einem anderen Ort installiert ist.\n\nDie CLI ist nicht im Lieferumfang der Anwendung enthalten; installieren Sie sie mit `npm install -g @github/copilot`."
654
678
  },
655
679
  "modelOverrides": {
656
680
  "mdDescription": "Überschreiben Sie die automatisch erkannten GitHub Copilot-Modelle. Wenn das Feld leer ist (Standard), werden die verfügbaren Modelle aus Ihrem Copilot-Abonnement ermittelt. Legen Sie explizite Modell-IDs fest, um die automatische Erkennung zu überschreiben."
657
681
  },
682
+ "signInAgain": "Die Anmeldung bei GitHub Copilot erfolgt nun über die GitHub Copilot-CLI. Ihre bisherige Anmeldung konnte nicht übernommen werden und wurde gelöscht. Bitte melden Sie sich erneut an, um Copilot-Modelle nutzen zu können.",
658
683
  "signOut": {
659
684
  "confirmMessage": "Möchten Sie sich wirklich von GitHub Copilot abmelden?"
660
685
  },
661
686
  "statusBar": {
662
687
  "signedIn": "Bei GitHub Copilot als „{0}“ angemeldet. Zum Abmelden hier klicken.",
663
688
  "signedOut": "Nicht bei GitHub Copilot angemeldet. Klicken Sie hier, um sich anzumelden."
664
- },
665
- "tokenMigration": "Ihre GitHub Copilot-Sitzung verwendete eine veraltete Authentifizierungsmethode und wurde gelöscht. Bitte melden Sie sich erneut an, um auf alle verfügbaren Modelle zugreifen zu können."
689
+ }
666
690
  },
667
691
  "core": {
668
692
  "agentConfiguration": {
@@ -760,12 +784,19 @@
760
784
  "discardCustomPrompt": {
761
785
  "tooltip": "Anpassungen verwerfen"
762
786
  },
787
+ "favoriteModels": {
788
+ "mdDescription": "Modelliert die Modelle, die der Modell-Selektor des KI-Chats zusätzlich zu den neuesten Modellen jedes Anbieters anzeigt, als vollständig qualifizierte IDs (z. B. `anthropic/claude-opus-5`). Dies dient dazu, ein älteres oder auf eine bestimmte Version festgelegtes Modell griffbereit zu halten. Markieren Sie ein Modell auf der Seite des jeweiligen Anbieters in der Ansicht „KI-Konfiguration“, um es hinzuzufügen.",
789
+ "title": "Bevorzugte Modelle"
790
+ },
763
791
  "fileVariable": {
764
792
  "description": "Löst den Inhalt einer Datei auf",
765
793
  "uri": {
766
794
  "description": "Die URI der angeforderten Datei."
767
795
  }
768
796
  },
797
+ "hiddenModels": {
798
+ "mdDescription": "Modelle, die der Modellauswähler des KI-Chats nicht anzeigt, obwohl sie standardmäßig als vollständig qualifizierte IDs (z. B. `google/gemini-flash-lite-latest`) erscheinen würden. Hier landen nur die Modelle, die nicht als Favoriten aufgeführt sind, d. h. die neuesten Modelle eines Anbieters. Deaktivieren Sie ein Modell auf der Seite des jeweiligen Anbieters in der Ansicht „KI-Konfiguration“, um es hinzuzufügen."
799
+ },
769
800
  "languageModelRenderer": {
770
801
  "alias": "[alias] {0}",
771
802
  "purposeTitle": "Zweck: {0}",
@@ -911,7 +942,6 @@
911
942
  "dotRelativePath": "Kurze Referenz zum arbeitsbereichsrelativen Pfad der aktuell geöffneten Datei („currentRelativeFilePath“)."
912
943
  },
913
944
  "variantSet": {
914
- "templateLabel": "Vorlage",
915
945
  "unavailableVariant": "{0} (nicht verfügbar)",
916
946
  "variantCount": "{0} Varianten",
917
947
  "variantCountSingular": "1 Variante"
@@ -931,14 +961,25 @@
931
961
  }
932
962
  },
933
963
  "google": {
964
+ "allowEnvApiKey": {
965
+ "description": "Erlauben Sie Theia, einen in der Umgebung vorhandenen Google-AI-API-Schlüssel (Gemini) zu verwenden (`GOOGLE_API_KEY` / `GEMINI_API_KEY`). Sie werden einmalig aufgefordert, dies zu bestätigen, bevor der Schlüssel verwendet wird; setzen Sie den Wert wieder auf `false`, um die Einwilligung zu widerrufen."
966
+ },
934
967
  "apiKey": {
935
968
  "description": "Geben Sie einen API-Schlüssel Ihres offiziellen Google AI (Gemini)-Kontos ein. **Bitte beachten Sie:** Durch die Verwendung dieser Einstellung wird der GOOGLE AI API-Schlüssel im Klartext auf dem Rechner gespeichert, auf dem Theia läuft. Verwenden Sie die Umgebungsvariable `GOOGLE_API_KEY`, um den Schlüssel sicher festzulegen."
936
969
  },
970
+ "discovery": {
971
+ "cached": "Anzeige zwischengespeicherter Modelle; letzte Aktualisierung fehlgeschlagen: {0}",
972
+ "consentPrompt": "In der Umgebung wurde ein Google-AI-API-Schlüssel gefunden (GOOGLE_API_KEY / GEMINI_API_KEY). Soll Theia diesen verwenden dürfen, um Gemini-Modelle zu erkennen und aufzurufen?",
973
+ "consentRequired": "In der Umgebung wurde ein Google-AI-API-Schlüssel gefunden. Bestätigen Sie dessen Verwendung, um Modelle zu ermitteln.",
974
+ "noKey": "Es wurde kein Google-AI-API-Schlüssel festgelegt. Fügen Sie einen Schlüssel hinzu, um Modelle zu entdecken.",
975
+ "overridden": "Die Modellliste wird manuell konfiguriert. Löschen Sie die Modellüberschreibungen, um die Modelle vom Anbieter erneut zu ermitteln.",
976
+ "useEnvKey": "Schlüssel verwenden"
977
+ },
937
978
  "maxRetriesOnErrors": {
938
979
  "description": "Maximale Anzahl von Wiederholungsversuchen im Falle von Fehlern. Ist dieser Wert kleiner als 1, wird die Wiederholungslogik deaktiviert."
939
980
  },
940
- "models": {
941
- "description": "Offizielle Google Gemini-Modelle zur Verwendung"
981
+ "modelOverrides": {
982
+ "description": "Überschreiben Sie die von Google Gemini ermittelten Modelle. Wenn das Feld leer ist (Standard), werden die verfügbaren Modelle vom Anbieter ermittelt. Legen Sie explizite Modell-IDs fest, um genau diese zu verwenden; die Ermittlung wird dann überhaupt nicht genutzt."
942
983
  },
943
984
  "retryDelayOnOtherErrors": {
944
985
  "description": "Verzögerung in Sekunden zwischen Wiederholungsversuchen bei anderen Fehlern (manchmal meldet Google GenAI Fehler wie unvollständige JSON-Syntax, die vom Modell zurückgegeben wird, oder einen internen Serverfehler 500). Wenn Sie diesen Wert auf -1 setzen, werden Wiederholungsversuche in diesen Fällen verhindert. Andernfalls erfolgt ein Wiederholungsversuch entweder sofort (wenn der Wert auf 0 gesetzt ist) oder nach dieser Verzögerung in Sekunden (wenn der Wert auf eine positive Zahl gesetzt ist)."
@@ -1053,6 +1094,7 @@
1053
1094
  "pageTypeLabel": "Seite"
1054
1095
  },
1055
1096
  "allowAllMode": {
1097
+ "hideForThisSession": "Für diese Sitzung ausblenden",
1056
1098
  "stripTooltip": "Aufrufe von KI-Tools werden in dieser Sitzung ohne Bestätigung ausgeführt. Aktivieren Sie diese Funktion nur in Umgebungen, denen Sie vertrauen.",
1057
1099
  "stripTooltipFooter": "Die Einstellungen werden über --session-preference festgelegt. Starten Sie die Anwendung ohne dieses Flag neu, um Ihre gespeicherten Einstellungen wiederherzustellen.",
1058
1100
  "title": "Theia AI – „Allow-All“-Modus"
@@ -1111,7 +1153,6 @@
1111
1153
  "startNewChat": "Halten Sie Chats kurz und prägnant. [Starten Sie einen neuen Chat]({0}) für eine neue Aufgabe oder [starten Sie einen neuen Chat mit einer Zusammenfassung dieses Chats]({1})."
1112
1154
  }
1113
1155
  },
1114
- "collapseSession": "{0} ausblenden",
1115
1156
  "commandAgent": {
1116
1157
  "commandCallback": {
1117
1158
  "confirmAction": "Verstanden",
@@ -1131,19 +1172,16 @@
1131
1172
  }
1132
1173
  },
1133
1174
  "configurationState": "Konfigurationsprobleme",
1134
- "configureAgent": {
1135
- "header": "Standard-Agent konfigurieren"
1136
- },
1137
1175
  "continueAnyway": "Trotzdem fortfahren",
1138
1176
  "createSkillAgent": {
1139
1177
  "mode": {
1140
1178
  "edit": "Standardmodus"
1141
1179
  }
1142
1180
  },
1181
+ "defaultChatAgentSet": "Der Standard-Chat-Agent lautet nun „{0}“.",
1143
1182
  "enableAI": {
1144
1183
  "mdDescription": "Mit dieser Einstellung können Sie auf die neuesten KI-Funktionen zugreifen. \n Es ist wichtig zu wissen, dass diese Funktionen kontinuierliche Anfragen an die Sprachmodelle (LLMs) generieren können, auf die Sie Zugriff gewähren. Dies kann Kosten verursachen, die Sie genau überwachen müssen. Durch Aktivieren dieser Option erkennen Sie diese Risiken an. \n **Bitte beachten Sie! Die Einstellungen in diesem Abschnitt werden erst wirksam,\n wenn die Hauptfunktion aktiviert ist. Nach Aktivierung der Funktion müssen Sie mindestens einen LLM-Anbieter unten konfigurieren. Siehe auch [die Dokumentation](https://theia-ide.org/docs/user_ai/)**."
1145
1184
  },
1146
- "expandSession": "{0} erweitern",
1147
1185
  "exploreAgent": {
1148
1186
  "description": "Ein Assistent zur Erkundung der Codebasis, der Informationen aus der Codebasis extrahiert und aufbereitet. Er berichtet über vorhandene Fakten, liefert Codeausschnitte und beschreibt beobachtete Muster."
1149
1187
  },
@@ -1201,16 +1239,36 @@
1201
1239
  },
1202
1240
  "model-selection-description": "Wählen Sie in der [AI-Konfigurationsansicht]({0}) aus, welche großen Sprachmodelle (LLMs) von den einzelnen KI-Agenten verwendet werden sollen.",
1203
1241
  "modelsConfiguration": {
1242
+ "awaitingConsent": "Zustimmung ausstehend",
1243
+ "defaultModel": "Eines der neuesten Modelle dieses Anbieters, das der Modell-Selektor des KI-Chats anzeigt, sofern es hier nicht ausgeblendet ist",
1204
1244
  "description": "Konfigurieren Sie Sprachmodell-Anbieter und die für Agenten verfügbaren Modelle.",
1245
+ "discovery": "Modellerkennung",
1246
+ "fetching": "Wird abgerufen…",
1247
+ "filterModels": "Filtermodelle",
1248
+ "hideModel": "Dieses Modell aus der Modellauswahl des KI-Chat-Eingabefelds ausblenden",
1249
+ "modelNotReady": "Noch nicht fertig",
1205
1250
  "modelSettings": "Modelleinstellungen",
1251
+ "noKey": "Kein API-Schlüssel",
1252
+ "noModels": "Es wurden noch keine Modelle gefunden.",
1206
1253
  "noProviders": "Es sind keine Sprachmodell-Anbieter installiert.",
1207
- "providers": "Anbieter"
1208
- },
1209
- "moreAgentsAvailable": {
1210
- "header": "Weitere Agenten sind verfügbar."
1254
+ "providers": "Anbieter",
1255
+ "ready": "Bereit",
1256
+ "refresh": "Modellliste aktualisieren",
1257
+ "refreshUnavailable": "Es gibt nichts zu aktualisieren, bis der Anbieter über Anmeldedaten verfügt",
1258
+ "released": "Veröffentlicht am {0}",
1259
+ "resetShown": "Auf Standardwerte zurücksetzen",
1260
+ "resetShownUnavailable": "Bereits in den Standardeinstellungen",
1261
+ "showAllModels": "Alle erkannten Modelle anzeigen",
1262
+ "showCheckedModels": "Zeige nur die Modelle an, die der Modell-Selektor der KI-Chat-Eingabe anzeigt",
1263
+ "showModel": "Dieses Modell im Modellauswahlfeld der KI-Chat-Eingabe anzeigen",
1264
+ "shownExplanation": "{0} aus „{1}“, angezeigt im Modellauswahlfeld der KI-Chat-Eingabe",
1265
+ "updated": "Aktualisiert{0}"
1266
+ },
1267
+ "noDefaultAgent": {
1268
+ "header": "Kein Standard-Agent"
1211
1269
  },
1212
- "noRecommendedAgents": "Es sind keine empfohlenen Agenten verfügbar.",
1213
1270
  "openAiConfiguration": "OpenAI-Konfiguration",
1271
+ "openGettingStartedWalkthrough": "Erste Schritte mit KI",
1214
1272
  "orchestrator": {
1215
1273
  "error": {
1216
1274
  "noAgents": "Es ist kein Chat-Agent verfügbar, um die Anfrage zu bearbeiten. Bitte überprüfen Sie Ihre Konfiguration, ob einer aktiviert ist."
@@ -1234,8 +1292,7 @@
1234
1292
  "name": "GH PR-Info"
1235
1293
  },
1236
1294
  "localCheckout": {
1237
- "description": "Zieht den Pull-Request lokal ab und sichert bestehende Änderungen im Arbeitsverzeichnis.",
1238
- "name": "Auschecken"
1295
+ "description": "Zieht den Pull-Request lokal ab und sichert bestehende Änderungen im Arbeitsverzeichnis."
1239
1296
  },
1240
1297
  "localValidation": {
1241
1298
  "description": "Führt lokale Installations-, Build-, Lint-, Test- oder vergleichbare Validierungsaufgaben für den Pull-Request aus.",
@@ -1292,6 +1349,7 @@
1292
1349
  "toolConfirmation": "Bestätigungsüberschreibungen pro Tool: {0}",
1293
1350
  "toolConfirmationGeneric": "Bestätigungsüberschreibungen pro Tool festgelegt"
1294
1351
  },
1352
+ "setDefaultChatAgent": "Standard-Chat-Agent festlegen",
1295
1353
  "shellExecutionCapability": {
1296
1354
  "description": "Ermöglicht es dem Agenten, beliebige Shell-Befehle auf dem Host-System auszuführen. Der Agent kann dann die Ausführung von Skripten delegieren, die nicht als Aufgaben verfügbar sind, Systeminformationen abfragen und Vorgänge ausführen, für die es kein spezielles Tool gibt.",
1297
1355
  "name": "Shell-Ausführung"
@@ -1315,9 +1373,6 @@
1315
1373
  "slashCommandsGroupDescription": "Befehlsfragmente, die Sie durch Eingabe von /name im Chat aufrufen können und die einem oder mehreren Agenten zur Verfügung stehen.",
1316
1374
  "slashCommandsSectionHeader": "Slash-Befehle"
1317
1375
  },
1318
- "toolConfirmationInfo": {
1319
- "header": "Bestätigung des Tools"
1320
- },
1321
1376
  "toolConfirmationOverrides": {
1322
1377
  "stripTooltip": "Ein oder mehrere KI-Tools werden für diese Sitzung über Befehlszeilenoptionen automatisch freigegeben.",
1323
1378
  "title": "Überschreibungen der AI-Tool-Bestätigung"
@@ -1380,7 +1435,6 @@
1380
1435
  "filterPlaceholder": "Variablen nach Name oder Beschreibung filtern",
1381
1436
  "noMatches": "Es gibt keine Variablen, die mit „{0}“ übereinstimmen.",
1382
1437
  "noVariables": "Es stehen keine Variablen zur Verfügung.",
1383
- "openAgent": "Agenten-{0} öffnen",
1384
1438
  "optional": "optional",
1385
1439
  "pageSubtitle": "Werte, auf die Sie in einer Eingabeaufforderung mit dem Namen „{0}“ verweisen können. Sie werden zum Zeitpunkt der Anforderung aufgelöst und eingefügt.",
1386
1440
  "plainGroup": "Einfache Variablen",
@@ -1388,7 +1442,40 @@
1388
1442
  "required": "erforderlich",
1389
1443
  "usedByAgents": "Verwendet von Agenten"
1390
1444
  },
1391
- "waitingForInput": "Warten auf Ihre Eingabe"
1445
+ "waitingForInput": "Warten auf Ihre Eingabe",
1446
+ "walkthrough": {
1447
+ "aiSupport": {
1448
+ "description": "\n{0}\nMit KI-Unterstützung: Chatten Sie mit spezialisierten Agenten über Ihr Projekt, lassen Sie diese Code ändern und Aufgaben ausführen, lassen Sie sich den Code während der Eingabe vervollständigen und erhalten Sie Hilfe im Terminal.\n\nDiese Funktionen sind standardmäßig deaktiviert, sodass Sie sie nach eigenem Ermessen aktivieren können.\n\nSobald sie aktiviert sind, können sie kontinuierlich Anfragen an die Sprachmodelle generieren, auf die Sie Zugriff gewähren. Dies kann Kosten verursachen, die Sie genau im Auge behalten sollten.\n\n[Lesen Sie die Dokumentation]({1}\n).\n\nWir freuen uns über Ihr Feedback, Ihre Beiträge und Ihr Sponsoring! Besuchen Sie das [GitHub-Projekt]({2}\n), um die weitere Entwicklung zu unterstützen. Vielen Dank, dass Sie Teil unserer Community sind!\n\nAll dies basiert auf Theia AI, dem Framework für KI-gestützte Tools und IDEs, das als stabile Version veröffentlicht wurde. [Lesen Sie die Framework-Dokumentation]({3}\n).\n",
1449
+ "title": "KI-Unterstützung in „{0}“"
1450
+ },
1451
+ "chooseAgent": {
1452
+ "intro": "Jede Chat-Anfrage wird an einen Agenten weitergeleitet, und einer von ihnen antwortet, sofern Sie nicht selbst einen bestimmten Agenten benennen.\n\n**Legen Sie Ihren Standard-Agenten fest:**\n",
1453
+ "outro": "Sie können in den Einstellungen auch [den Standard-Agenten auswählen]({0}\n) und einen anderen Agenten für eine einzelne Nachricht ansprechen, indem Sie diese mit *@AgentName* beginnen.\nAuf der Seite [Agenten]({1}\n) sind alle Agenten aufgelistet.\n",
1454
+ "title": "Wählen Sie Ihren Standard-Agenten aus"
1455
+ },
1456
+ "connectModel": {
1457
+ "description": "Fügen Sie einen API-Schlüssel für einen gehosteten Anbieter hinzu:\n\n- [OpenAI]({0}\n)\n- [Anthropic]({1}\n)\n- [Google]({2}\n)\n\nMöchten Sie lieber lokal bleiben oder einen anderen Dienst nutzen? Ollama, llamafile und jeder OpenAI-kompatible Endpunkt können auf der Seite [Modelle]({3}\n) eingerichtet werden.\n\nEinige Agenten bringen ihr eigenes Modell mit, zum Beispiel Claude Code, und funktionieren ohne Anbieter.\n",
1458
+ "title": "Ein Sprachmodell verbinden"
1459
+ },
1460
+ "description": "Richten Sie die KI-Funktionen von „{0}“ ein und lernen Sie, wie Sie damit arbeiten.",
1461
+ "enableAi": {
1462
+ "description": "Es werden keinerlei Daten gesendet, bis Sie die KI-Funktionen aktivieren, und Sie können diese jederzeit wieder deaktivieren.\n\n[Öffnen Sie die KI-Konfiguration]({0}\n) und aktivieren Sie die Funktionen dort.\n",
1463
+ "title": "AI-Funktionen aktivieren"
1464
+ },
1465
+ "firstQuestion": {
1466
+ "description": "[Öffnen Sie den KI-Chat]({0}\n) und stellen Sie eine Frage zu Ihrem Projekt.\n\nZwei Dinge tragen dazu bei, dass die Antworten deutlich besser ausfallen:\n\n- *@AgentName* wählt den Agenten für diese Nachricht aus, zum Beispiel *@Coder*.\n- *#* fügt Kontext hinzu, zum Beispiel *#file* oder *#selectedText*. Die Büroklammer-Schaltfläche neben dem Eingabefeld hat dieselbe Funktion.\n\nDer Chat speichert Ihre Sitzungen, sodass Sie eine Unterhaltung später fortsetzen können.\n",
1467
+ "title": "Stellen Sie Ihre erste Frage"
1468
+ },
1469
+ "goFurther": {
1470
+ "description": "Der Chat ist nur der Anfang. Die KI vervollständigt außerdem den Code während der Eingabe und unterstützt Sie im Terminal mit *Strg+I*.\n\n- [Eingabeaufforderungen und Fähigkeiten]({0}\n): Lesen und passen Sie die Anweisungen an, mit denen die Agenten arbeiten.\n- [MCP-Server]({1}\n): Fügen Sie Tools hinzu, die über die in „{3}\n“ enthaltenen hinausgehen.\n- [Token-Verbrauch]({2}\n): Sehen Sie nach, was Ihre Anfragen verbrauchen.\n- [Perspektive wechseln]({5}\n) (experimentell): Das *AI First*-Layout verschiebt den Chat in den Hauptbereich, wobei der Explorer und die Quellcodeverwaltung auf der rechten Seite angezeigt werden.\n\nDie Ansicht „AI History“ (sofern verfügbar) zeigt an, was tatsächlich an das Modell gesendet wurde.\n\nWeitere Informationen finden Sie in [der Dokumentation]({4}\n) – und Ihr Feedback ist jederzeit willkommen.\n",
1471
+ "title": "Weiterlesen"
1472
+ },
1473
+ "title": "Erste Schritte mit KI",
1474
+ "toolConfirmation": {
1475
+ "description": "Agenten greifen über Werkzeuge auf Ihren Arbeitsbereich zu: Sie lesen Dateien, führen Terminalbefehle aus oder bearbeiten Code.\n\nJeder Aufruf eines Tools erfordert zunächst Ihre Bestätigung. Auf der Seite [Tools]({0}\n) können Sie diese Standardeinstellung ändern oder die Tools, denen Sie vertrauen, vorab genehmigen.\n\nKI-Funktionen bleiben vollständig deaktiviert, solange ein Arbeitsbereich nicht als vertrauenswürdig eingestuft ist. [Vertrauensstatus des Arbeitsbereichs verwalten]({1}\n), um dies projektbezogen festzulegen.\n",
1476
+ "title": "Behalten Sie die Kontrolle darüber, was die Agenten tun"
1477
+ }
1478
+ }
1392
1479
  },
1393
1480
  "llamaFile": {
1394
1481
  "prefs": {
@@ -1434,6 +1521,7 @@
1434
1521
  "label": "MCP: MCP-OAuth-Weiterleitungs-URL abrufen"
1435
1522
  },
1436
1523
  "info": {
1524
+ "noToolsAvailable": "Es stehen keine Tools zur Verfügung.",
1437
1525
  "oauthRedirectUrl": "MCP-OAuth-Weiterleitungs-URL: {0}",
1438
1526
  "serverSignedIn": "Angemeldet am MCP-Server „{0}“.",
1439
1527
  "serverSignedOut": "Vom MCP-Server „{0}“ abgemeldet.",
@@ -1609,6 +1697,7 @@
1609
1697
  "serverUrlPlaceholder": "Beispiel: https://mcp.example.com",
1610
1698
  "serverUrlRequired": "Die Server-URL ist für Remote-Server erforderlich."
1611
1699
  },
1700
+ "noServersConfigured": "Es sind keine MCP-Server konfiguriert",
1612
1701
  "oauth": "OAuth",
1613
1702
  "oauthAuthorizationServer": "Autorisierungsserver",
1614
1703
  "oauthClientId": "OAuth-Client-ID",
@@ -1636,6 +1725,9 @@
1636
1725
  "typeRemoteOAuth": "Remote (OAuth)"
1637
1726
  },
1638
1727
  "openai": {
1728
+ "allowEnvApiKey": {
1729
+ "description": "Erlauben Sie Theia, einen in der Umgebung vorhandenen OpenAI-API-Schlüssel (`OPENAI_API_KEY`) zu verwenden. Sie werden einmalig aufgefordert, dies zu bestätigen, bevor der Schlüssel verwendet wird; setzen Sie den Wert wieder auf `false`, um die Zustimmung zu widerrufen."
1730
+ },
1639
1731
  "apiKey": {
1640
1732
  "mdDescription": "Geben Sie einen API-Schlüssel Ihres offiziellen OpenAI-Kontos ein. **Bitte beachten Sie:** Durch die Verwendung dieser Einstellung wird der Open AI API-Schlüssel im Klartext auf dem Rechner gespeichert, auf dem Theia ausgeführt wird. Verwenden Sie die Umgebungsvariable `OPENAI_API_KEY`, um den Schlüssel sicher festzulegen."
1641
1733
  },
@@ -1664,10 +1756,13 @@
1664
1756
  "enableStreaming": {
1665
1757
  "title": "Gibt an, ob die Streaming-API verwendet werden soll. Standardmäßig „true“."
1666
1758
  },
1759
+ "headers": {
1760
+ "title": "Zusätzliche HTTP-Header, die mit jeder Anfrage an den Endpunkt gesendet werden"
1761
+ },
1667
1762
  "id": {
1668
1763
  "title": "Eine eindeutige Kennung, die in der Benutzeroberfläche zur Identifizierung des benutzerdefinierten Modells verwendet wird."
1669
1764
  },
1670
- "mdDescription": "Integrieren Sie benutzerdefinierte Modelle, die mit der OpenAI-API kompatibel sind, beispielsweise über `vllm`. Die erforderlichen Attribute sind `model` und `url`. \n Optional können Sie \n - eine eindeutige `id` angeben, um das benutzerdefinierte Modell in der Benutzeroberfläche zu identifizieren. Wenn keine angegeben wird, wird `model` als `id` verwendet. \n - Geben Sie einen `apiKey` an, um auf die unter der angegebenen URL bereitgestellte API zuzugreifen. Verwenden Sie `true`, um die Verwendung des globalen OpenAI-API-Schlüssels anzugeben. \n - Geben Sie eine `apiVersion` an, um auf die unter der angegebenen URL in Azure bereitgestellte API zuzugreifen. Verwenden Sie `true`, um die Verwendung der globalen OpenAI-API-Version anzugeben. \n - Geben Sie einen `deployment`-Namen für Ihre Azure-Bereitstellung an. \n - Setzen Sie `developerMessageSettings` auf einen der Werte `user`, `system`, `developer`, `mergeWithFollowingUserMessage` oder `skip`, um zu steuern, wie die Entwicklermeldung eingefügt wird (wobei `user`, `system` und `developer` als Rolle verwendet werden, `mergeWithFollowingUserMessage` der folgenden Benutzernachricht die Systemnachricht voranstellt oder die Systemnachricht in eine Benutzernachricht umwandelt, wenn die nächste Nachricht keine Benutzernachricht ist. `skip` entfernt lediglich die Systemnachricht). Die Standardeinstellung ist `developer`. \n - Geben Sie `supportsStructuredOutput: false` an, um festzulegen, dass keine strukturierte Ausgabe verwendet werden soll. \n - Geben Sie `enableStreaming: false` an, um festzulegen, dass kein Streaming verwendet werden soll. \n - Geben Sie `useResponseApi: true` an, um die neuere OpenAI Response API anstelle der Chat Completion API zu verwenden (erfordert einen kompatiblen Endpunkt). \n - Geben Sie `reasoningSupport` an, um den Chat-Reasoning-Selektor zu aktivieren. Geben Sie ein Objekt mit `supportedLevels` (z. B. `[\"off\", \"low\", \"medium\", \"high\", \"auto\"]`) und einem optionalen `defaultLevel` an. \n Weitere Informationen finden Sie in [unserer Dokumentation](https://theia-ide.org/docs/user_ai/#openai-compatible-models-eg-via-vllm).",
1765
+ "mdDescription": "Integrieren Sie benutzerdefinierte Modelle, die mit der OpenAI-API kompatibel sind, beispielsweise über `vllm`. Die erforderlichen Attribute sind `model` und `url`. \n Optional können Sie \n - eine eindeutige `id` angeben, um das benutzerdefinierte Modell in der Benutzeroberfläche zu identifizieren. Wird keine angegeben, wird `model` als `id` verwendet. \n - Geben Sie einen `apiKey` an, um auf die unter der angegebenen URL bereitgestellte API zuzugreifen. Verwenden Sie `true`, um die Verwendung des globalen OpenAI-API-Schlüssels anzugeben. \n - Geben Sie eine `apiVersion` an, um auf die unter der angegebenen URL in Azure bereitgestellte API zuzugreifen. Verwenden Sie `true`, um die Verwendung der globalen OpenAI-API-Version anzugeben. \n - Geben Sie einen `deployment`-Namen für Ihre Azure-Bereitstellung an. \n - Setzen Sie `developerMessageSettings` auf einen der Werte `user`, `system`, `developer`, `mergeWithFollowingUserMessage` oder `skip`, um zu steuern, wie die Entwicklermeldung eingebunden wird (wobei `user`, `system` und `developer` als Rolle verwendet werden; `mergeWithFollowingUserMessage` fügt der folgenden Benutzermeldung die Systemmeldung als Präfix hinzu oder wandelt die Systemmeldung in eine Benutzermeldung um, wenn die nächste Meldung keine Benutzermeldung ist. `skip` entfernt lediglich die Systemmeldung). Standardmäßig ist `developer` eingestellt. \n - Geben Sie `supportsStructuredOutput: false` an, um festzulegen, dass keine strukturierte Ausgabe verwendet werden soll. \n - Geben Sie `enableStreaming: false` an, um festzulegen, dass kein Streaming verwendet werden soll. \n - Geben Sie `useResponseApi: true` an, um die neuere OpenAI Response API anstelle der Chat Completion API zu verwenden (erfordert einen kompatiblen Endpunkt). \n - Geben Sie `reasoningSupport` an, um den Chat-Reasoning-Selektor zu aktivieren. Geben Sie ein Objekt mit `supportedLevels` (z. B. `[\"off\", \"low\", \"medium\", \"high\", \"auto\"]`) und einem optionalen `defaultLevel` an. \n - Geben Sie `headers` an, um bei jeder Anfrage an den Endpunkt zusätzliche HTTP-Header zu senden, z. B. Header, die von einem vor der API geschalteten Gateway benötigt werden. \n Weitere Informationen finden Sie in [unserer Dokumentation](https://theia-ide.org/docs/user_ai/#openai-compatible-models-eg-via-vllm).",
1671
1766
  "modelId": {
1672
1767
  "title": "Modell-ID"
1673
1768
  },
@@ -1687,8 +1782,16 @@
1687
1782
  "customProvider": {
1688
1783
  "label": "{0} (Benutzerdefiniert)"
1689
1784
  },
1690
- "models": {
1691
- "description": "Offizielle OpenAI-Modelle zur Verwendung"
1785
+ "discovery": {
1786
+ "cached": "Anzeige zwischengespeicherter Modelle; letzte Aktualisierung fehlgeschlagen: {0}",
1787
+ "consentPrompt": "In der Umgebung wurde ein OpenAI-API-Schlüssel gefunden (OPENAI_API_KEY). Soll Theia diesen verwenden dürfen, um OpenAI-Modelle zu erkennen und aufzurufen?",
1788
+ "consentRequired": "In der Umgebung wurde ein OpenAI-API-Schlüssel gefunden. Bestätigen Sie dessen Verwendung, um Modelle zu entdecken.",
1789
+ "noKey": "Es wurde kein OpenAI-API-Schlüssel festgelegt. Fügen Sie einen Schlüssel hinzu, um Modelle zu finden.",
1790
+ "overridden": "Die Modellliste wird manuell konfiguriert. Löschen Sie die Modellüberschreibungen, um die Modelle vom Anbieter erneut zu ermitteln.",
1791
+ "useEnvKey": "Schlüssel verwenden"
1792
+ },
1793
+ "modelOverrides": {
1794
+ "description": "Überschreiben Sie die von OpenAI ermittelten Modelle. Wenn das Feld leer ist (Standard), werden die verfügbaren Modelle vom Anbieter ermittelt. Legen Sie explizite Modell-IDs fest, um genau diese zu verwenden; die Ermittlung wird dann überhaupt nicht genutzt."
1692
1795
  },
1693
1796
  "useResponseApi": {
1694
1797
  "mdDescription": "Verwenden Sie für offizielle OpenAI-Modelle die neuere OpenAI Response API anstelle der Chat Completion API. Diese Einstellung gilt nur für offizielle OpenAI-Modelle – benutzerdefinierte Anbieter müssen dies individuell konfigurieren."
@@ -1936,6 +2039,26 @@
1936
2039
  "codeReview": {
1937
2040
  "description": "Leitet nach jeder Implementierung an den Code-Reviewer-Agenten weiter. Blockiert die nächsten Schritte, bis die Überprüfung bestanden ist."
1938
2041
  },
2042
+ "commit-message": {
2043
+ "agent-disabled-tooltip": "Der Commit-Message-Agent ist deaktiviert. Aktivieren Sie ihn in der Ansicht „AI-Konfiguration“.",
2044
+ "cancel-tooltip": "Erstellung der Commit-Meldung abbrechen",
2045
+ "empty": "Das Modell hat eine leere Commit-Meldung zurückgegeben.",
2046
+ "failed": "Die Erstellung der Commit-Meldung ist fehlgeschlagen: {0}",
2047
+ "generate-from-staged": "Commit-Meldung aus vorläufigen Änderungen generieren",
2048
+ "no-changes": "Es sind keine in die Staging-Area übernommenen Änderungen vorhanden, aus denen eine Commit-Meldung generiert werden könnte.",
2049
+ "no-repository": "Es ist kein Repository der Versionsverwaltung ausgewählt.",
2050
+ "replace-prompt": "Das Feld für die Commit-Meldung ist nicht leer. Soll dessen Inhalt durch die generierte Meldung ersetzt werden?",
2051
+ "replace-title": "Commit-Meldung ersetzen",
2052
+ "staged-tooltip": "Commit-Meldung aus vorbereiteten Änderungen generieren"
2053
+ },
2054
+ "commitMessageAgent": {
2055
+ "description": "Erzeugt Git-Commit-Meldungen aus den im Arbeitsbereichs-Repository vorbereiteten Änderungen. Wird über die Eingabe für SCM-Commit-Meldungen mittels der AI-Sparkle-Schaltfläche aufgerufen.",
2056
+ "vars": {
2057
+ "changes": {
2058
+ "description": "Der einheitliche Git-Diff der in die Staging-Area gestellten Änderungen, aus denen die Commit-Meldung generiert wird."
2059
+ }
2060
+ }
2061
+ },
1939
2062
  "fixGhTicketCommand": {
1940
2063
  "argumentHint": "<Ticketnummer>",
1941
2064
  "description": "Analysieren Sie ein GitHub-Ticket und implementieren Sie die Lösung."
@@ -2004,6 +2127,7 @@
2004
2127
  "updateTooltip": "Aktualisierung von {0} auf {1}"
2005
2128
  },
2006
2129
  "autoUpdate": {
2130
+ "aiSettings": "KI-Einstellungen",
2007
2131
  "ask": "Benachrichtigung, wenn ein Update für ein installiertes Skill, einen MCP-Server oder ein Agent-Plugin verfügbar ist.",
2008
2132
  "changeLater": "Sie können dies später unter „{0}“ ändern.",
2009
2133
  "configureDefault": "Konfigurieren Sie die Standardeinstellung unter „{0}“.",
@@ -2040,9 +2164,7 @@
2040
2164
  "oneSkipped": "Komponente „{0}“ übersprungen: {1}"
2041
2165
  },
2042
2166
  "dialog": {
2043
- "contains": "Enthält",
2044
2167
  "endorsedBy": "Empfohlen von",
2045
- "from": "Aus",
2046
2168
  "install": {
2047
2169
  "title": "Agent-Plugin „{0}“ installieren"
2048
2170
  },
@@ -2104,10 +2226,6 @@
2104
2226
  "serverUnknownField": "In der Serverkonfiguration ist das Feld „{0}“ deklariert, was für den jeweiligen Transporttyp nicht zulässig ist.",
2105
2227
  "serverUnknownType": "In der Serverkonfiguration wird der unbekannte Transporttyp „{0}“ deklariert.",
2106
2228
  "serverUnsupportedTransport": "Der MCP-Transport „{0}“ wird nicht unterstützt.",
2107
- "stat": {
2108
- "oneServer": "1 MCP-Server",
2109
- "servers": "{0} MCP-Server"
2110
- },
2111
2229
  "uninstalled": "Deinstalliertes Agent-Plugin „{0}“.",
2112
2230
  "unknownManifestField": "Das unbekannte Feld „{0}“ in der Datei „plugin.json“ wird ignoriert.",
2113
2231
  "unlinked": "Nicht verknüpftes Agent-Plugin „{0}“.",
@@ -2244,7 +2362,6 @@
2244
2362
  "collaborate": "Zusammenarbeiten",
2245
2363
  "collaboration": "Zusammenarbeit",
2246
2364
  "collaborationWorkspace": "Arbeitsbereich für die Zusammenarbeit",
2247
- "connected": "Verbunden",
2248
2365
  "connectedSession": "Mit einer Kollaborationssitzung verbunden",
2249
2366
  "copiedInvitation": "Einladungscode in die Zwischenablage kopiert.",
2250
2367
  "copyAgain": "Erneut kopieren",
@@ -2471,6 +2588,25 @@
2471
2588
  "userSettingsDetail": "Auf alle Arbeitsbereiche anwenden",
2472
2589
  "workspaceSettingsDetail": "Nur auf aktuellen Arbeitsbereich anwenden"
2473
2590
  },
2591
+ "external-api": {
2592
+ "delivery": {
2593
+ "description": "Steuert, ob und wie die externe HTTP-API bereitgestellt wird.",
2594
+ "off": "Die externe API darf nicht bereitgestellt werden.",
2595
+ "samePort": "Stellen Sie die externe API auf demselben Port wie das Backend bereit.",
2596
+ "samePortLabel": "Gleicher Port wie das Backend",
2597
+ "separatePort": "Stellen Sie die externe API auf einem dedizierten Port bereit, der über „externalApi.port“ konfiguriert wird.",
2598
+ "separatePortLabel": "Separater Port"
2599
+ },
2600
+ "hostname": {
2601
+ "description": "Hostname oder IP-Adresse, an die der externe HTTP-API-Server gebunden ist. Verwenden Sie „0.0.0.0“, um Remote-Verbindungen zuzulassen. Ein Name wie „localhost“ wird bei der Auflösung gebunden, sodass Clients, die die andere Loopback-Adresse verwenden, den Server möglicherweise nicht erreichen können; verwenden Sie „127.0.0.1“ oder „::1“, um eine festzulegen. Wird nur verwendet, wenn „externalApi.delivery“ auf „separatePort“ gesetzt ist."
2602
+ },
2603
+ "port": {
2604
+ "description": "Port, über den die externe HTTP-API bereitgestellt wird. Wird nur verwendet, wenn „externalApi.delivery“ auf „separatePort“ gesetzt ist."
2605
+ },
2606
+ "token": {
2607
+ "description": "Für den Zugriff auf geschützte externe API-Endpunkte ist ein Bearer-Token erforderlich („Authorization: Bearer <token>“). Ist das Feld leer, wird die externe API ohne Überprüfung bereitgestellt."
2608
+ }
2609
+ },
2474
2610
  "external-terminal": {
2475
2611
  "cwd": "Aktuelles Arbeitsverzeichnis für neues externes Terminal auswählen"
2476
2612
  },
@@ -2514,10 +2650,6 @@
2514
2650
  "uploadedOutOf": "Hochgeladen von {0} aus {1}"
2515
2651
  },
2516
2652
  "getting-started": {
2517
- "ai": {
2518
- "header": "KI-Unterstützung in „{0}“ ist verfügbar!",
2519
- "openAIChatView": "Öffnen Sie jetzt die KI-Chat-Ansicht, um zu erfahren, wie Sie beginnen können!"
2520
- },
2521
2653
  "apiComparator": "{0} API-Kompatibilität",
2522
2654
  "markStepUndone": "Markierung rückgängig machen",
2523
2655
  "newExtension": "Erstellen einer neuen Erweiterung",
@@ -2736,9 +2868,6 @@
2736
2868
  },
2737
2869
  "toolbar": "Symbolleiste"
2738
2870
  },
2739
- "preview": {
2740
- "openByDefault": "Öffnen Sie standardmäßig die Vorschau anstelle des Editors."
2741
- },
2742
2871
  "property-view": {
2743
2872
  "lastModified": "Zuletzt geändert",
2744
2873
  "noProperties": "Keine Eigenschaften verfügbar.",
@@ -2749,6 +2878,16 @@
2749
2878
  "dev-container": {
2750
2879
  "attach": "An laufenden Container anhängen",
2751
2880
  "attachError": "Verbindung zum Container konnte nicht hergestellt werden: {0}",
2881
+ "attachScreen": {
2882
+ "errorHeader": "Verbindung zum Container konnte nicht hergestellt werden",
2883
+ "firstStartNote": "Der erste Start eines Containers kann ein bis zwei Minuten dauern. Spätere Starts erfolgen deutlich schneller.",
2884
+ "locating": "Container-{0} wird gesucht...",
2885
+ "preparing": "Vorbereitung der Verbindung...",
2886
+ "preparingWorkspace": "Arbeitsbereich wird vorbereitet...",
2887
+ "starting": "Die Anwendung wird im Container gestartet...",
2888
+ "title": "An einen Container anbinden",
2889
+ "titleNamed": "An „{0}“ anhängen"
2890
+ },
2752
2891
  "attachWarning": "Das Anbinden an einen Container führt den darin enthaltenen Code aus. Binden Sie sich nur an Container an, deren Herkunft Sie vertrauen.",
2753
2892
  "attachWarningTitle": "An Container anhängen",
2754
2893
  "attaching": "An einen Container anhängen",
@@ -2799,7 +2938,6 @@
2799
2938
  "amendHeadCommit": "HEAD Commit",
2800
2939
  "amendLastCommit": "Letzten Commit ändern",
2801
2940
  "changeRepository": "Repository ändern...",
2802
- "copyCommitHash": "Commit-Hash kopieren",
2803
2941
  "dirtyDiff": {
2804
2942
  "close": "Schließen Ändern Vorschau anzeigen"
2805
2943
  },