Просмотр исходного кода

Make Posthog telemetry the default (#7909)

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Matt Rubens 3 месяцев назад
Родитель
Сommit
33fe6fb9c6
46 измененных файлов с 100 добавлено и 201 удалено
  1. 5 5
      PRIVACY.md
  2. 3 3
      packages/telemetry/src/TelemetryService.ts
  3. 1 1
      packages/types/src/telemetry.ts
  4. 3 3
      src/core/webview/webviewMessageHandler.ts
  5. 2 2
      webview-ui/src/App.tsx
  6. 1 1
      webview-ui/src/components/chat/ChatView.tsx
  7. 26 58
      webview-ui/src/components/common/TelemetryBanner.tsx
  8. 1 1
      webview-ui/src/components/settings/About.tsx
  9. 1 1
      webview-ui/src/i18n/locales/ca/settings.json
  10. 2 6
      webview-ui/src/i18n/locales/ca/welcome.json
  11. 1 1
      webview-ui/src/i18n/locales/de/settings.json
  12. 2 6
      webview-ui/src/i18n/locales/de/welcome.json
  13. 1 1
      webview-ui/src/i18n/locales/en/settings.json
  14. 2 6
      webview-ui/src/i18n/locales/en/welcome.json
  15. 1 1
      webview-ui/src/i18n/locales/es/settings.json
  16. 2 6
      webview-ui/src/i18n/locales/es/welcome.json
  17. 1 1
      webview-ui/src/i18n/locales/fr/settings.json
  18. 2 6
      webview-ui/src/i18n/locales/fr/welcome.json
  19. 1 1
      webview-ui/src/i18n/locales/hi/settings.json
  20. 2 6
      webview-ui/src/i18n/locales/hi/welcome.json
  21. 1 1
      webview-ui/src/i18n/locales/id/settings.json
  22. 2 6
      webview-ui/src/i18n/locales/id/welcome.json
  23. 1 1
      webview-ui/src/i18n/locales/it/settings.json
  24. 2 6
      webview-ui/src/i18n/locales/it/welcome.json
  25. 1 1
      webview-ui/src/i18n/locales/ja/settings.json
  26. 2 6
      webview-ui/src/i18n/locales/ja/welcome.json
  27. 1 1
      webview-ui/src/i18n/locales/ko/settings.json
  28. 2 6
      webview-ui/src/i18n/locales/ko/welcome.json
  29. 1 1
      webview-ui/src/i18n/locales/nl/settings.json
  30. 2 6
      webview-ui/src/i18n/locales/nl/welcome.json
  31. 1 1
      webview-ui/src/i18n/locales/pl/settings.json
  32. 2 6
      webview-ui/src/i18n/locales/pl/welcome.json
  33. 1 1
      webview-ui/src/i18n/locales/pt-BR/settings.json
  34. 2 6
      webview-ui/src/i18n/locales/pt-BR/welcome.json
  35. 1 1
      webview-ui/src/i18n/locales/ru/settings.json
  36. 2 6
      webview-ui/src/i18n/locales/ru/welcome.json
  37. 1 1
      webview-ui/src/i18n/locales/tr/settings.json
  38. 2 6
      webview-ui/src/i18n/locales/tr/welcome.json
  39. 1 1
      webview-ui/src/i18n/locales/vi/settings.json
  40. 2 6
      webview-ui/src/i18n/locales/vi/welcome.json
  41. 1 1
      webview-ui/src/i18n/locales/zh-CN/settings.json
  42. 2 6
      webview-ui/src/i18n/locales/zh-CN/welcome.json
  43. 1 1
      webview-ui/src/i18n/locales/zh-TW/settings.json
  44. 2 6
      webview-ui/src/i18n/locales/zh-TW/welcome.json
  45. 3 0
      webview-ui/src/index.css
  46. 1 1
      webview-ui/src/utils/TelemetryClient.ts

+ 5 - 5
PRIVACY.md

@@ -1,6 +1,6 @@
 # Roo Code Privacy Policy
 
-**Last Updated: August 20th, 2025**
+**Last Updated: September 11th, 2025**
 
 Roo Code respects your privacy and is committed to transparency about how we handle your data. Below is a simple breakdown of where key pieces of data go—and, importantly, where they don’t.
 
@@ -10,19 +10,19 @@ Roo Code respects your privacy and is committed to transparency about how we han
 - **Commands**: Any commands executed through Roo Code happen on your local environment. However, when you use AI-powered features, the relevant code and context from your commands may be transmitted to your chosen AI model provider (e.g., OpenAI, Anthropic, OpenRouter) to generate responses. We do not have access to or store this data, but AI providers may process it per their privacy policies.
 - **Prompts & AI Requests**: When you use AI-powered features, your prompts and relevant project context are sent to your chosen AI model provider (e.g., OpenAI, Anthropic, OpenRouter) to generate responses. We do not store or process this data. These AI providers have their own privacy policies and may store data per their terms of service. If you choose Roo Code Cloud as the provider (proxy mode), prompts may transit Roo Code servers only to forward them to the upstream model and are not stored.
 - **API Keys & Credentials**: If you enter an API key (e.g., to connect an AI model), it is stored locally on your device and never sent to us or any third party, except the provider you have chosen.
-- **Telemetry (Usage Data)**: We only collect feature usage and error data if you explicitly opt-in. This telemetry is powered by PostHog and helps us understand feature usage to improve Roo Code. This includes your VS Code machine ID and feature usage patterns and exception reports. We do **not** collect personally identifiable information, your code, or AI prompts.
-- **Marketplace Requests**: When you browse or search the Marketplace for Model Configuration Profiles (MCPs) or Custom Modes, Roo Code makes a secure API call to Roo Codes backend servers to retrieve listing information. These requests send only the query parameters (e.g., extension version, search term) necessary to fulfill the request and do not include your code, prompts, or personally identifiable information.
+- **Telemetry (Usage Data)**: We collect anonymous feature usage and error data to help us improve Roo Code. This telemetry is powered by PostHog and includes your VS Code machine ID, feature usage patterns, and exception reports. This telemetry does **not** collect personally identifiable information, your code, or AI prompts. You can opt out of this telemetry at any time through the settings.
+- **Marketplace Requests**: When you browse or search the Marketplace for Model Configuration Profiles (MCPs) or Custom Modes, Roo Code makes a secure API call to Roo Code's backend servers to retrieve listing information. These requests send only the query parameters (e.g., extension version, search term) necessary to fulfill the request and do not include your code, prompts, or personally identifiable information.
 
 ### **How We Use Your Data (If Collected)**
 
-- If you opt-in to telemetry, we use it to understand feature usage and improve Roo Code.
+- We use telemetry to understand feature usage and improve Roo Code.
 - We do **not** sell or share your data.
 - We do **not** train any models on your data.
 
 ### **Your Choices & Control**
 
 - You can run models locally to prevent data being sent to third-parties.
-- By default, telemetry collection is off and if you turn it on, you can opt out of telemetry at any time.
+- Telemetry collection is enabled by default to help us improve Roo Code, but you can opt out at any time through the settings.
 - You can delete Roo Code to stop all data collection.
 
 ### **Security & Updates**

+ 3 - 3
packages/telemetry/src/TelemetryService.ts

@@ -36,14 +36,14 @@ export class TelemetryService {
 
 	/**
 	 * Updates the telemetry state based on user preferences and VSCode settings
-	 * @param didUserOptIn Whether the user has explicitly opted into telemetry
+	 * @param isOptedIn Whether the user is opted into telemetry
 	 */
-	public updateTelemetryState(didUserOptIn: boolean): void {
+	public updateTelemetryState(isOptedIn: boolean): void {
 		if (!this.isReady) {
 			return
 		}
 
-		this.clients.forEach((client) => client.updateTelemetryState(didUserOptIn))
+		this.clients.forEach((client) => client.updateTelemetryState(isOptedIn))
 	}
 
 	/**

+ 1 - 1
packages/types/src/telemetry.ts

@@ -242,7 +242,7 @@ export interface TelemetryClient {
 
 	setProvider(provider: TelemetryPropertiesProvider): void
 	capture(options: TelemetryEvent): Promise<void>
-	updateTelemetryState(didUserOptIn: boolean): void
+	updateTelemetryState(isOptedIn: boolean): void
 	isTelemetryEnabled(): boolean
 	shutdown(): Promise<void>
 }

+ 3 - 3
src/core/webview/webviewMessageHandler.ts

@@ -490,10 +490,10 @@ export const webviewMessageHandler = async (
 					),
 				)
 
-			// If user already opted in to telemetry, enable telemetry service
+			// Enable telemetry by default (when unset) or when explicitly enabled
 			provider.getStateToPostToWebview().then((state) => {
 				const { telemetrySetting } = state
-				const isOptedIn = telemetrySetting === "enabled"
+				const isOptedIn = telemetrySetting !== "disabled"
 				TelemetryService.instance.updateTelemetryState(isOptedIn)
 			})
 
@@ -2289,7 +2289,7 @@ export const webviewMessageHandler = async (
 		case "telemetrySetting": {
 			const telemetrySetting = message.text as TelemetrySetting
 			await updateGlobalState("telemetrySetting", telemetrySetting)
-			const isOptedIn = telemetrySetting === "enabled"
+			const isOptedIn = telemetrySetting !== "disabled"
 			TelemetryService.instance.updateTelemetryState(isOptedIn)
 			await provider.postStateToWebview()
 			break

+ 2 - 2
webview-ui/src/App.tsx

@@ -192,11 +192,11 @@ const App = () => {
 	useEvent("message", onMessage)
 
 	useEffect(() => {
-		if (shouldShowAnnouncement) {
+		if (shouldShowAnnouncement && tab === "chat") {
 			setShowAnnouncement(true)
 			vscode.postMessage({ type: "didShowAnnouncement" })
 		}
-	}, [shouldShowAnnouncement])
+	}, [shouldShowAnnouncement, tab])
 
 	useEffect(() => {
 		if (didHydrateState) {

+ 1 - 1
webview-ui/src/components/chat/ChatView.tsx

@@ -1777,6 +1777,7 @@ const ChatViewComponent: React.ForwardRefRenderFunction<ChatViewRef, ChatViewPro
 		<div
 			data-testid="chat-view"
 			className={isHidden ? "hidden" : "fixed top-0 left-0 right-0 bottom-0 flex flex-col overflow-hidden"}>
+			{telemetrySetting === "unset" && <TelemetryBanner />}
 			{(showAnnouncement || showAnnouncementModal) && (
 				<Announcement
 					hideAnnouncement={() => {
@@ -1840,7 +1841,6 @@ const ChatViewComponent: React.ForwardRefRenderFunction<ChatViewRef, ChatViewPro
 						/>
 
 						<RooHero />
-						{telemetrySetting === "unset" && <TelemetryBanner />}
 
 						<div className="mb-2.5">
 							{cloudIsAuthenticated || taskHistory.length < 4 ? (

+ 26 - 58
webview-ui/src/components/common/TelemetryBanner.tsx

@@ -1,85 +1,53 @@
 import { memo, useState } from "react"
-import { VSCodeButton, VSCodeLink } from "@vscode/webview-ui-toolkit/react"
-import styled from "styled-components"
 import { Trans } from "react-i18next"
+import { VSCodeLink } from "@vscode/webview-ui-toolkit/react"
 
 import type { TelemetrySetting } from "@roo-code/types"
 
 import { vscode } from "@src/utils/vscode"
 import { useAppTranslation } from "@src/i18n/TranslationContext"
 
-const BannerContainer = styled.div`
-	background-color: var(--vscode-banner-background);
-	padding: 12px 20px;
-	display: flex;
-	flex-direction: column;
-	gap: 10px;
-	flex-shrink: 0;
-	margin-bottom: 6px;
-`
-
-const ButtonContainer = styled.div`
-	display: flex;
-	gap: 8px;
-	width: 100%;
-	& > vscode-button {
-		flex: 1;
-	}
-`
-
 const TelemetryBanner = () => {
 	const { t } = useAppTranslation()
-	const [hasChosen, setHasChosen] = useState(false)
+	const [isDismissed, setIsDismissed] = useState(false)
 
-	const handleAllow = () => {
-		setHasChosen(true)
+	const handleClose = () => {
+		setIsDismissed(true)
 		vscode.postMessage({ type: "telemetrySetting", text: "enabled" satisfies TelemetrySetting })
 	}
 
-	const handleDeny = () => {
-		setHasChosen(true)
-		vscode.postMessage({ type: "telemetrySetting", text: "disabled" satisfies TelemetrySetting })
-	}
-
 	const handleOpenSettings = () => {
 		window.postMessage({
 			type: "action",
 			action: "settingsButtonClicked",
-			values: { section: "about" }, // Link directly to about settings with telemetry controls
+			values: { section: "about" },
 		})
 	}
 
+	if (isDismissed) {
+		return null
+	}
+
 	return (
-		<BannerContainer>
+		<div className="relative px-4 py-2.5 pr-10 bg-vscode-banner-background border-b border-vscode-panel-border text-sm leading-normal text-vscode-foreground">
+			{/* Close button (X) */}
+			<button
+				onClick={handleClose}
+				className="absolute top-1.5 right-2 bg-transparent border-none text-vscode-foreground cursor-pointer text-2xl p-1 opacity-70 hover:opacity-100 transition-opacity duration-200 leading-none"
+				aria-label="Close">
+				×
+			</button>
+
+			<div className="mb-0.5 font-bold">{t("welcome:telemetry.helpImprove")}</div>
 			<div>
-				<strong>{t("welcome:telemetry.title")}</strong>
-				<div className="mt-1">
-					<Trans
-						i18nKey="welcome:telemetry.anonymousTelemetry"
-						components={{
-							privacyLink: <VSCodeLink href="https://roocode.com/privacy" />,
-						}}
-					/>
-					<div className="mt-1">
-						<Trans
-							i18nKey="welcome:telemetry.changeSettings"
-							components={{
-								settingsLink: <VSCodeLink href="#" onClick={handleOpenSettings} />,
-							}}
-						/>
-						.
-					</div>
-				</div>
+				<Trans
+					i18nKey="welcome:telemetry.helpImproveMessage"
+					components={{
+						settingsLink: <VSCodeLink href="#" onClick={handleOpenSettings} />,
+					}}
+				/>
 			</div>
-			<ButtonContainer>
-				<VSCodeButton appearance="primary" onClick={handleAllow} disabled={hasChosen}>
-					{t("welcome:telemetry.allow")}
-				</VSCodeButton>
-				<VSCodeButton appearance="secondary" onClick={handleDeny} disabled={hasChosen}>
-					{t("welcome:telemetry.deny")}
-				</VSCodeButton>
-			</ButtonContainer>
-		</BannerContainer>
+		</div>
 	)
 }
 

+ 1 - 1
webview-ui/src/components/settings/About.tsx

@@ -40,7 +40,7 @@ export const About = ({ telemetrySetting, setTelemetrySetting, className, ...pro
 			<Section>
 				<div>
 					<VSCodeCheckbox
-						checked={telemetrySetting === "enabled"}
+						checked={telemetrySetting !== "disabled"}
 						onChange={(e: any) => {
 							const checked = e.target.checked === true
 							setTelemetrySetting(checked ? "enabled" : "disabled")

+ 1 - 1
webview-ui/src/i18n/locales/ca/settings.json

@@ -792,7 +792,7 @@
 		"feedback": "Si teniu qualsevol pregunta o comentari, no dubteu a obrir un issue a <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> o unir-vos a <redditLink>reddit.com/r/RooCode</redditLink> o <discordLink>discord.gg/roocode</discordLink>",
 		"telemetry": {
 			"label": "Permetre informes anònims d'errors i ús",
-			"description": "Ajudeu a millorar Roo Code enviant dades d'ús anònimes i informes d'errors. Mai s'envia codi, prompts o informació personal. Vegeu la nostra política de privacitat per a més detalls."
+			"description": "Ajuda a millorar Roo Code enviant dades d'ús anònimes i informes d'error. Aquesta telemetria no recull codi, prompts o informació personal. Consulta la nostra <privacyLink>política de privacitat</privacyLink> per a més detalls. Pots desactivar-ho en qualsevol moment."
 		},
 		"settings": {
 			"import": "Importar",

+ 2 - 6
webview-ui/src/i18n/locales/ca/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "Recomanem utilitzar un router LLM:",
 	"startCustom": "O pots utilitzar la teva pròpia clau API:",
 	"telemetry": {
-		"title": "Ajuda a millorar Roo Code",
-		"anonymousTelemetry": "Envia dades d'ús i errors anònims per ajudar-nos a corregir errors i millorar l'extensió. No s'envia mai cap codi, text o informació personal.",
-		"changeSettings": "Sempre pots canviar això a la part inferior de la <settingsLink>configuració</settingsLink>",
-		"settings": "configuració",
-		"allow": "Permetre",
-		"deny": "Denegar"
+		"helpImprove": "Ajuda a millorar Roo Code",
+		"helpImproveMessage": "Roo Code recopila dades d'errors i d'ús per ajudar-nos a corregir errors i millorar l'extensió. Aquesta telemetria no recopila codi, prompts o informació personal. Pots desactivar això a la <settingsLink>configuració</settingsLink>."
 	},
 	"importSettings": "Importar configuració"
 }

+ 1 - 1
webview-ui/src/i18n/locales/de/settings.json

@@ -792,7 +792,7 @@
 		"feedback": "Wenn du Fragen oder Feedback hast, kannst du gerne ein Issue auf <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> eröffnen oder <redditLink>reddit.com/r/RooCode</redditLink> oder <discordLink>discord.gg/roocode</discordLink> beitreten",
 		"telemetry": {
 			"label": "Anonyme Fehler- und Nutzungsberichte zulassen",
-			"description": "Hilf mit, Roo Code zu verbessern, indem du anonyme Nutzungsdaten und Fehlerberichte sendest. Es werden niemals Code, Prompts oder persönliche Informationen gesendet (es sei denn, du verbindest dich mit Roo Code Cloud). Weitere Einzelheiten findest du in unserer <privacyLink>Datenschutzrichtlinie</privacyLink>."
+			"description": "Hilf mit, Roo Code zu verbessern, indem du anonyme Nutzungsdaten und Fehlerberichte sendest. Diese Telemetrie sammelt keine Code-, Prompt- oder persönliche Informationen. Weitere Einzelheiten findest du in unserer <privacyLink>Datenschutzrichtlinie</privacyLink>."
 		},
 		"settings": {
 			"import": "Importieren",

+ 2 - 6
webview-ui/src/i18n/locales/de/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "Wir empfehlen die Verwendung eines LLM-Routers:",
 	"startCustom": "Oder du kannst deinen eigenen API-Schlüssel verwenden:",
 	"telemetry": {
-		"title": "Hilf, Roo Code zu verbessern",
-		"anonymousTelemetry": "Sende anonyme Fehler- und Nutzungsdaten, um uns bei der Fehlerbehebung und Verbesserung der Erweiterung zu helfen. Es werden niemals Code, Texte oder persönliche Informationen gesendet.",
-		"changeSettings": "Du kannst dies jederzeit unten in den <settingsLink>Einstellungen</settingsLink> ändern",
-		"settings": "Einstellungen",
-		"allow": "Erlauben",
-		"deny": "Ablehnen"
+		"helpImprove": "Hilf, Roo Code zu verbessern",
+		"helpImproveMessage": "Roo Code sammelt Fehler- und Nutzungsdaten, um uns dabei zu helfen, Fehler zu beheben und die Erweiterung zu verbessern. Diese Telemetrie sammelt keine Code-, Prompt- oder persönliche Informationen. Du kannst diese in den <settingsLink>Einstellungen</settingsLink> deaktivieren."
 	},
 	"importSettings": "Einstellungen importieren"
 }

+ 1 - 1
webview-ui/src/i18n/locales/en/settings.json

@@ -791,7 +791,7 @@
 		"feedback": "If you have any questions or feedback, feel free to open an issue at <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> or join <redditLink>reddit.com/r/RooCode</redditLink> or <discordLink>discord.gg/roocode</discordLink>",
 		"telemetry": {
 			"label": "Allow anonymous error and usage reporting",
-			"description": "Help improve Roo Code by sending anonymous usage data and error reports. No code, prompts, or personal information is ever sent (unless you connect to Roo Code Cloud). See our <privacyLink>privacy policy</privacyLink> for more details."
+			"description": "Help improve Roo Code by sending anonymous usage data and error reports. This telemetry does not collect code, prompts or personal information. See our <privacyLink>privacy policy</privacyLink> for more details."
 		},
 		"settings": {
 			"import": "Import",

+ 2 - 6
webview-ui/src/i18n/locales/en/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "We recommend using an LLM Router:",
 	"startCustom": "Or you can bring your provider API key:",
 	"telemetry": {
-		"title": "Help Improve Roo Code",
-		"anonymousTelemetry": "Send anonymous error and usage data to help us fix bugs and improve the extension. No code, prompts, or personal information is ever sent (unless you connect to Roo Code Cloud). See our <privacyLink>privacy policy</privacyLink> for more details.",
-		"changeSettings": "You can always change this at the bottom of the <settingsLink>settings</settingsLink>",
-		"settings": "settings",
-		"allow": "Allow",
-		"deny": "Deny"
+		"helpImprove": "Help Improve Roo Code",
+		"helpImproveMessage": "Roo Code collects error and usage data to help us fix bugs and improve the extension. This telemetry does not collect code, prompts or personal information. You can turn this off in <settingsLink>settings</settingsLink>."
 	},
 	"importSettings": "Import Settings"
 }

+ 1 - 1
webview-ui/src/i18n/locales/es/settings.json

@@ -792,7 +792,7 @@
 		"feedback": "Si tiene alguna pregunta o comentario, no dude en abrir un issue en <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> o unirse a <redditLink>reddit.com/r/RooCode</redditLink> o <discordLink>discord.gg/roocode</discordLink>",
 		"telemetry": {
 			"label": "Permitir informes anónimos de errores y uso",
-			"description": "Ayude a mejorar Roo Code enviando datos de uso anónimos e informes de errores. Nunca se envía código, prompts o información personal. Consulte nuestra política de privacidad para más detalles."
+			"description": "Ayuda a mejorar Roo Code enviando datos de uso anónimos e informes de errores. Esta telemetría no recopila código, prompts o información personal. Consulta nuestra <privacyLink>política de privacidad</privacyLink> para más detalles."
 		},
 		"settings": {
 			"import": "Importar",

+ 2 - 6
webview-ui/src/i18n/locales/es/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "Recomendamos usar un router LLM:",
 	"startCustom": "O puedes traer tu propia clave API:",
 	"telemetry": {
-		"title": "Ayuda a mejorar Roo Code",
-		"anonymousTelemetry": "Envía datos de uso y errores anónimos para ayudarnos a corregir errores y mejorar la extensión. Nunca se envía código, texto o información personal.",
-		"changeSettings": "Siempre puedes cambiar esto en la parte inferior de la <settingsLink>configuración</settingsLink>",
-		"settings": "configuración",
-		"allow": "Permitir",
-		"deny": "Denegar"
+		"helpImprove": "Ayuda a mejorar Roo Code",
+		"helpImproveMessage": "Roo Code recopila datos de errores y uso para ayudarnos a corregir errores y mejorar la extensión. Esta telemetría no recopila código, prompts o información personal. Puedes desactivar esto en la <settingsLink>configuración</settingsLink>."
 	},
 	"importSettings": "Importar configuración"
 }

+ 1 - 1
webview-ui/src/i18n/locales/fr/settings.json

@@ -792,7 +792,7 @@
 		"feedback": "Si vous avez des questions ou des commentaires, n'hésitez pas à ouvrir un problème sur <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> ou à rejoindre <redditLink>reddit.com/r/RooCode</redditLink> ou <discordLink>discord.gg/roocode</discordLink>",
 		"telemetry": {
 			"label": "Autoriser les rapports anonymes d'erreurs et d'utilisation",
-			"description": "Aidez à améliorer Roo Code en envoyant des données d'utilisation anonymes et des rapports d'erreurs. Aucun code, prompt ou information personnelle n'est jamais envoyé. Consultez notre politique de confidentialité pour plus de détails."
+			"description": "Aidez à améliorer Roo Code en envoyant des données d'utilisation anonymes et des rapports d'erreurs. Cette télémétrie ne collecte pas de code, de prompts ou d'informations personnelles. Consultez notre <privacyLink>politique de confidentialité</privacyLink> pour plus de détails."
 		},
 		"settings": {
 			"import": "Importer",

+ 2 - 6
webview-ui/src/i18n/locales/fr/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "Nous recommandons d'utiliser un routeur LLM :",
 	"startCustom": "Ou tu peux apporter ta propre clé API :",
 	"telemetry": {
-		"title": "Aide à améliorer Roo Code",
-		"anonymousTelemetry": "Envoie des données d'utilisation et d'erreurs anonymes pour nous aider à corriger les bugs et améliorer l'extension. Aucun code, texte ou information personnelle n'est jamais envoyé.",
-		"changeSettings": "Tu peux toujours modifier cela en bas des <settingsLink>paramètres</settingsLink>",
-		"settings": "paramètres",
-		"allow": "Autoriser",
-		"deny": "Refuser"
+		"helpImprove": "Aide à améliorer Roo Code",
+		"helpImproveMessage": "Roo Code collecte des données d'erreurs et d'utilisation pour nous aider à corriger les bugs et améliorer l'extension. Cette télémétrie ne collecte pas de code, de prompts ou d'informations personnelles. Tu peux désactiver ceci dans les <settingsLink>paramètres</settingsLink>."
 	},
 	"importSettings": "Importer les paramètres"
 }

+ 1 - 1
webview-ui/src/i18n/locales/hi/settings.json

@@ -793,7 +793,7 @@
 		"feedback": "यदि आपके कोई प्रश्न या प्रतिक्रिया है, तो <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> पर एक मुद्दा खोलने या <redditLink>reddit.com/r/RooCode</redditLink> या <discordLink>discord.gg/roocode</discordLink> में शामिल होने में संकोच न करें",
 		"telemetry": {
 			"label": "गुमनाम त्रुटि और उपयोग रिपोर्टिंग की अनुमति दें",
-			"description": "गुमनाम उपयोग डेटा और त्रुटि रिपोर्ट भेजकर Roo Code को बेहतर बनाने में मदद करें। कोड, प्रॉम्प्ट, या व्यक्तिगत जानकारी कभी भी नहीं भेजी जाती है। अधिक विवरण के लिए हमारी गोपनीयता नीति देखें।"
+			"description": "गुमनाम उपयोग डेटा और त्रुटि रिपोर्ट भेजकर Roo Code को बेहतर बनाने में मदद करें। यह टेलीमेट्री कोड, प्रॉम्प्ट या व्यक्तिगत जानकारी एकत्र नहीं करती। अधिक विवरण के लिए हमारी <privacyLink>गोपनीयता नीति</privacyLink> देखें। आप इसे कभी भी बंद कर सकते हैं।"
 		},
 		"settings": {
 			"import": "इम्पोर्ट",

+ 2 - 6
webview-ui/src/i18n/locales/hi/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "हम एक LLM राउटर का उपयोग करने की सलाह देते हैं:",
 	"startCustom": "या आप अपनी खुद की API कुंजी ला सकते हैं:",
 	"telemetry": {
-		"title": "Roo Code को बेहतर बनाने में मदद करें",
-		"anonymousTelemetry": "बग ठीक करने और एक्सटेंशन को बेहतर बनाने में हमारी मदद करने के लिए गुमनाम त्रुटि और उपयोग डेटा भेजें। कोड, संकेत या व्यक्तिगत जानकारी कभी नहीं भेजी जाती है।",
-		"changeSettings": "आप इसे हमेशा <settingsLink>सेटिंग्स</settingsLink> के निचले भाग में बदल सकते हैं",
-		"settings": "सेटिंग्स",
-		"allow": "अनुमति दें",
-		"deny": "अस्वीकार करें"
+		"helpImprove": "Roo Code को बेहतर बनाने में मदद करें",
+		"helpImproveMessage": "Roo Code बग्स को ठीक करने और एक्सटेंशन को बेहतर बनाने में हमारी मदद करने के लिए त्रुटि और उपयोग डेटा एकत्र करता है। यह टेलीमेट्री कोड, प्रॉम्प्ट या व्यक्तिगत जानकारी एकत्र नहीं करती। आप इसे <settingsLink>सेटिंग्स</settingsLink> में बंद कर सकते हैं।"
 	},
 	"importSettings": "सेटिंग्स आयात करें"
 }

+ 1 - 1
webview-ui/src/i18n/locales/id/settings.json

@@ -822,7 +822,7 @@
 		"feedback": "Jika kamu punya pertanyaan atau feedback, jangan ragu untuk membuka issue di <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> atau bergabung <redditLink>reddit.com/r/RooCode</redditLink> atau <discordLink>discord.gg/roocode</discordLink>",
 		"telemetry": {
 			"label": "Izinkan pelaporan error dan penggunaan anonim",
-			"description": "Bantu tingkatkan Roo Code dengan mengirim data penggunaan anonim dan laporan error. Tidak ada kode, prompt, atau informasi pribadi yang pernah dikirim. Lihat kebijakan privasi kami untuk detail lebih lanjut."
+			"description": "Bantu tingkatkan Roo Code dengan mengirimkan data penggunaan anonim dan laporan error. Telemetri ini tidak mengumpulkan kode, prompt, atau informasi pribadi. Lihat <privacyLink>kebijakan privasi</privacyLink> kami untuk detail lebih lanjut. Anda dapat menonaktifkannya kapan saja."
 		},
 		"settings": {
 			"import": "Impor",

+ 2 - 6
webview-ui/src/i18n/locales/id/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "Kami merekomendasikan menggunakan Router LLM:",
 	"startCustom": "Atau Anda dapat menggunakan API key Anda sendiri:",
 	"telemetry": {
-		"title": "Bantu Tingkatkan Roo Code",
-		"anonymousTelemetry": "Kirim data error dan penggunaan anonim untuk membantu kami memperbaiki bug dan meningkatkan ekstensi. Tidak ada kode, prompt, atau informasi pribadi yang pernah dikirim.",
-		"changeSettings": "Anda selalu dapat mengubah ini di bagian bawah <settingsLink>pengaturan</settingsLink>",
-		"settings": "pengaturan",
-		"allow": "Izinkan",
-		"deny": "Tolak"
+		"helpImprove": "Bantu Tingkatkan Roo Code",
+		"helpImproveMessage": "Roo Code mengumpulkan data kesalahan dan penggunaan untuk membantu kami memperbaiki bug dan meningkatkan ekstensi. Telemetri ini tidak mengumpulkan kode, prompt, atau informasi pribadi. Anda dapat menonaktifkan ini di <settingsLink>pengaturan</settingsLink>."
 	},
 	"importSettings": "Impor Pengaturan"
 }

+ 1 - 1
webview-ui/src/i18n/locales/it/settings.json

@@ -793,7 +793,7 @@
 		"feedback": "Se hai domande o feedback, sentiti libero di aprire un issue su <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> o unirti a <redditLink>reddit.com/r/RooCode</redditLink> o <discordLink>discord.gg/roocode</discordLink>",
 		"telemetry": {
 			"label": "Consenti segnalazioni anonime di errori e utilizzo",
-			"description": "Aiuta a migliorare Roo Code inviando dati di utilizzo anonimi e segnalazioni di errori. Non vengono mai inviati codice, prompt o informazioni personali. Consulta la nostra politica sulla privacy per maggiori dettagli."
+			"description": "Aiuta a migliorare Roo Code inviando dati di utilizzo anonimi e segnalazioni di errori. Questa telemetria non raccoglie codice, prompt o informazioni personali. Consulta la nostra <privacyLink>informativa sulla privacy</privacyLink> per maggiori dettagli."
 		},
 		"settings": {
 			"import": "Importa",

+ 2 - 6
webview-ui/src/i18n/locales/it/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "Consigliamo di utilizzare un router LLM:",
 	"startCustom": "Oppure puoi utilizzare la tua chiave API:",
 	"telemetry": {
-		"title": "Aiuta a migliorare Roo Code",
-		"anonymousTelemetry": "Invia dati di utilizzo ed errori anonimi per aiutarci a correggere bug e migliorare l'estensione. Non viene mai inviato codice, testo o informazioni personali.",
-		"changeSettings": "Puoi sempre cambiare questo in fondo alle <settingsLink>impostazioni</settingsLink>",
-		"settings": "impostazioni",
-		"allow": "Consenti",
-		"deny": "Nega"
+		"helpImprove": "Aiuta a migliorare Roo Code",
+		"helpImproveMessage": "Roo Code raccoglie dati di errori e utilizzo per aiutarci a correggere bug e migliorare l'estensione. Questa telemetria non raccoglie codice, prompt o informazioni personali. Puoi disabilitare questo nelle <settingsLink>impostazioni</settingsLink>."
 	},
 	"importSettings": "Importa impostazioni"
 }

+ 1 - 1
webview-ui/src/i18n/locales/ja/settings.json

@@ -793,7 +793,7 @@
 		"feedback": "質問やフィードバックがある場合は、<githubLink>github.com/RooCodeInc/Roo-Code</githubLink>で問題を開くか、<redditLink>reddit.com/r/RooCode</redditLink>や<discordLink>discord.gg/roocode</discordLink>に参加してください",
 		"telemetry": {
 			"label": "匿名のエラーと使用状況レポートを許可",
-			"description": "匿名の使用データとエラーレポートを送信してRoo Codeの改善にご協力ください。コード、プロンプト、個人情報が送信されることはありません。詳細については、プライバシーポリシーをご覧ください。"
+			"description": "匿名の使用データとエラーレポートを送信してRoo Codeの改善にご協力ください。このテレメトリはコード、プロンプト、個人情報を収集しません。詳細については<privacyLink>プライバシーポリシー</privacyLink>をご覧ください。"
 		},
 		"settings": {
 			"import": "インポート",

+ 2 - 6
webview-ui/src/i18n/locales/ja/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "LLMルーターの使用をお勧めします:",
 	"startCustom": "または、あなた自身のAPIキーを使用できます:",
 	"telemetry": {
-		"title": "Roo Codeの改善にご協力ください",
-		"anonymousTelemetry": "バグの修正と拡張機能の改善のため、匿名のエラーと使用データを送信してください。コード、プロンプト、個人情報は一切送信されません。",
-		"changeSettings": "<settingsLink>設定</settingsLink>の下部でいつでも変更できます",
-		"settings": "設定",
-		"allow": "許可",
-		"deny": "拒否"
+		"helpImprove": "Roo Codeの改善にご協力ください",
+		"helpImproveMessage": "Roo Codeは、バグの修正と拡張機能の改善のためにエラーと使用データを収集します。このテレメトリはコード、プロンプト、または個人情報を収集しません。これは<settingsLink>設定</settingsLink>で無効にできます。"
 	},
 	"importSettings": "設定をインポート"
 }

+ 1 - 1
webview-ui/src/i18n/locales/ko/settings.json

@@ -793,7 +793,7 @@
 		"feedback": "질문이나 피드백이 있으시면 <githubLink>github.com/RooCodeInc/Roo-Code</githubLink>에서 이슈를 열거나 <redditLink>reddit.com/r/RooCode</redditLink> 또는 <discordLink>discord.gg/roocode</discordLink>에 가입하세요",
 		"telemetry": {
 			"label": "익명 오류 및 사용 보고 허용",
-			"description": "익명 사용 데이터 및 오류 보고서를 보내 Roo Code 개선에 도움을 주세요. 코드, 프롬프트 또는 개인 정보는 절대 전송되지 않습니다. 자세한 내용은 개인정보 보호정책을 참조하세요."
+			"description": "익명 사용 데이터 및 오류 보고서를 전송하여 Roo Code 개선에 도움을 주세요. 이 텔레메트리는 코드, 프롬프트 또는 개인 정보를 수집하지 않습니다. 자세한 내용은 <privacyLink>개인정보 보호정책</privacyLink>을 참조하세요."
 		},
 		"settings": {
 			"import": "가져오기",

+ 2 - 6
webview-ui/src/i18n/locales/ko/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "LLM 라우터 사용을 권장합니다:",
 	"startCustom": "또는 직접 API 키를 가져올 수 있습니다:",
 	"telemetry": {
-		"title": "Roo Code 개선에 도움 주세요",
-		"anonymousTelemetry": "버그 수정 및 확장 기능 개선을 위해 익명의 오류 및 사용 데이터를 보내주세요. 코드, 프롬프트 또는 개인 정보는 절대 전송되지 않습니다.",
-		"changeSettings": "<settingsLink>설정</settingsLink> 하단에서 언제든지 변경할 수 있습니다",
-		"settings": "설정",
-		"allow": "허용",
-		"deny": "거부"
+		"helpImprove": "Roo Code 개선에 도움 주세요",
+		"helpImproveMessage": "Roo Code는 버그 수정과 확장 프로그램 개선을 위해 오류 및 사용 데이터를 수집합니다. 이 텔레메트리는 코드, 프롬프트 또는 개인 정보를 수집하지 않습니다. <settingsLink>설정</settingsLink>에서 이를 비활성화할 수 있습니다."
 	},
 	"importSettings": "설정 가져오기"
 }

+ 1 - 1
webview-ui/src/i18n/locales/nl/settings.json

@@ -793,7 +793,7 @@
 		"feedback": "Heb je vragen of feedback? Open gerust een issue op <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> of sluit je aan bij <redditLink>reddit.com/r/RooCode</redditLink> of <discordLink>discord.gg/roocode</discordLink>",
 		"telemetry": {
 			"label": "Anonieme fout- en gebruiksrapportage toestaan",
-			"description": "Help Roo Code te verbeteren door anonieme gebruiksgegevens en foutmeldingen te verzenden. Er worden nooit code, prompts of persoonlijke gegevens verzonden. Zie ons privacybeleid voor meer informatie."
+			"description": "Help Roo Code te verbeteren door anonieme gebruiksgegevens en foutmeldingen te versturen. Deze telemetrie verzamelt geen code, prompts of persoonlijke informatie. Zie ons <privacyLink>privacybeleid</privacyLink> voor meer details."
 		},
 		"settings": {
 			"import": "Importeren",

+ 2 - 6
webview-ui/src/i18n/locales/nl/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "We raden aan om een LLM-router te gebruiken:",
 	"startCustom": "Of je kunt je eigen API-sleutel gebruiken:",
 	"telemetry": {
-		"title": "Help Roo Code verbeteren",
-		"anonymousTelemetry": "Stuur anonieme fout- en gebruiksgegevens om ons te helpen bugs op te lossen en de extensie te verbeteren. Er worden nooit code, prompts of persoonlijke gegevens verzonden.",
-		"changeSettings": "Je kunt dit altijd wijzigen onderaan de <settingsLink>instellingen</settingsLink>",
-		"settings": "instellingen",
-		"allow": "Toestaan",
-		"deny": "Weigeren"
+		"helpImprove": "Help Roo Code verbeteren",
+		"helpImproveMessage": "Roo Code verzamelt fout- en gebruiksgegevens om ons te helpen bugs op te lossen en de extensie te verbeteren. Deze telemetrie verzamelt geen code, prompts of persoonlijke informatie. Je kunt dit uitschakelen in de <settingsLink>instellingen</settingsLink>."
 	},
 	"importSettings": "Instellingen importeren"
 }

+ 1 - 1
webview-ui/src/i18n/locales/pl/settings.json

@@ -793,7 +793,7 @@
 		"feedback": "Jeśli masz jakiekolwiek pytania lub opinie, śmiało otwórz zgłoszenie na <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> lub dołącz do <redditLink>reddit.com/r/RooCode</redditLink> lub <discordLink>discord.gg/roocode</discordLink>",
 		"telemetry": {
 			"label": "Zezwól na anonimowe raportowanie błędów i użycia",
-			"description": "Pomóż ulepszyć Roo Code, wysyłając anonimowe dane o użytkowaniu i raporty o błędach. Nigdy nie są wysyłane kod, podpowiedzi ani informacje osobiste. Zobacz naszą politykę prywatności, aby uzyskać więcej szczegółów."
+			"description": "Pomóż ulepszyć Roo Code, wysyłając anonimowe dane użytkowania i raporty błędów. Ta telemetria nie zbiera kodu, promptów ani danych osobowych. Zobacz naszą <privacyLink>politykę prywatności</privacyLink>, aby uzyskać więcej szczegółów. Możesz to wyłączyć w dowolnym momencie."
 		},
 		"settings": {
 			"import": "Importuj",

+ 2 - 6
webview-ui/src/i18n/locales/pl/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "Zalecamy korzystanie z routera LLM:",
 	"startCustom": "Lub możesz użyć własnego klucza API:",
 	"telemetry": {
-		"title": "Pomóż ulepszyć Roo Code",
-		"anonymousTelemetry": "Wyślij anonimowe dane o błędach i użyciu, aby pomóc nam w naprawianiu błędów i ulepszaniu rozszerzenia. Nigdy nie są wysyłane żadne kody, teksty ani informacje osobiste.",
-		"changeSettings": "Zawsze możesz to zmienić na dole <settingsLink>ustawień</settingsLink>",
-		"settings": "ustawienia",
-		"allow": "Zezwól",
-		"deny": "Odmów"
+		"helpImprove": "Pomóż ulepszyć Roo Code",
+		"helpImproveMessage": "Roo Code zbiera dane o błędach i użytkowaniu, aby pomóc nam naprawiać błędy i ulepszać rozszerzenie. Ta telemetria nie zbiera kodu, promptów ani danych osobowych. Możesz wyłączyć to w <settingsLink>ustawieniach</settingsLink>."
 	},
 	"importSettings": "Importuj ustawienia"
 }

+ 1 - 1
webview-ui/src/i18n/locales/pt-BR/settings.json

@@ -793,7 +793,7 @@
 		"feedback": "Se tiver alguma dúvida ou feedback, sinta-se à vontade para abrir um problema em <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> ou juntar-se a <redditLink>reddit.com/r/RooCode</redditLink> ou <discordLink>discord.gg/roocode</discordLink>",
 		"telemetry": {
 			"label": "Permitir relatórios anônimos de erros e uso",
-			"description": "Ajude a melhorar o Roo Code enviando dados de uso anônimos e relatórios de erros. Nunca são enviados código, prompts ou informações pessoais. Consulte nossa política de privacidade para mais detalhes."
+			"description": "Ajude a melhorar o Roo Code enviando dados de uso anônimos e relatórios de erros. Esta telemetria não coleta código, prompts ou informações pessoais. Consulte nossa <privacyLink>política de privacidade</privacyLink> para mais detalhes."
 		},
 		"settings": {
 			"import": "Importar",

+ 2 - 6
webview-ui/src/i18n/locales/pt-BR/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "Recomendamos usar um roteador LLM:",
 	"startCustom": "Ou você pode trazer sua própria chave API:",
 	"telemetry": {
-		"title": "Ajude a melhorar o Roo Code",
-		"anonymousTelemetry": "Envie dados de uso e erros anônimos para nos ajudar a corrigir bugs e melhorar a extensão. Nenhum código, texto ou informação pessoal é enviado.",
-		"changeSettings": "Você sempre pode mudar isso na parte inferior das <settingsLink>configurações</settingsLink>",
-		"settings": "configurações",
-		"allow": "Permitir",
-		"deny": "Negar"
+		"helpImprove": "Ajude a melhorar o Roo Code",
+		"helpImproveMessage": "O Roo Code coleta dados de erro e uso para nos ajudar a corrigir bugs e melhorar a extensão. Esta telemetria não coleta código, prompts ou informações pessoais. Você pode desativar isso nas <settingsLink>configurações</settingsLink>."
 	},
 	"importSettings": "Importar configurações"
 }

+ 1 - 1
webview-ui/src/i18n/locales/ru/settings.json

@@ -793,7 +793,7 @@
 		"feedback": "Если у вас есть вопросы или предложения, откройте issue на <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> или присоединяйтесь к <redditLink>reddit.com/r/RooCode</redditLink> или <discordLink>discord.gg/roocode</discordLink>",
 		"telemetry": {
 			"label": "Разрешить анонимную отправку ошибок и статистики использования",
-			"description": "Помогите улучшить Roo Code, отправляя анонимные данные об ошибках и использовании. Код, подсказки и личная информация не отправляются. Подробнее — в политике конфиденциальности."
+			"description": "Помогите улучшить Roo Code, отправляя анонимные данные об использовании и отчеты об ошибках. Эта телеметрия не собирает код, промпты или личную информацию. Смотрите нашу <privacyLink>политику конфиденциальности</privacyLink> для получения подробной информации."
 		},
 		"settings": {
 			"import": "Импорт",

+ 2 - 6
webview-ui/src/i18n/locales/ru/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "Мы рекомендуем использовать маршрутизатор LLM:",
 	"startCustom": "Или вы можете использовать свой собственный API-ключ:",
 	"telemetry": {
-		"title": "Помогите улучшить Roo Code",
-		"anonymousTelemetry": "Отправлять анонимные данные об ошибках и использовании, чтобы помочь нам исправлять баги и совершенствовать расширение. Код, промпты и личная информация никогда не отправляются.",
-		"changeSettings": "Вы всегда можете изменить это внизу страницы <settingsLink>настроек</settingsLink>",
-		"settings": "настройки",
-		"allow": "Разрешить",
-		"deny": "Запретить"
+		"helpImprove": "Помогите улучшить Roo Code",
+		"helpImproveMessage": "Roo Code собирает данные об ошибках и использовании, чтобы помочь нам исправлять баги и улучшать расширение. Эта телеметрия не собирает код, промпты или личную информацию. Вы можете отключить это в <settingsLink>настройках</settingsLink>."
 	},
 	"importSettings": "Импорт настроек"
 }

+ 1 - 1
webview-ui/src/i18n/locales/tr/settings.json

@@ -793,7 +793,7 @@
 		"feedback": "Herhangi bir sorunuz veya geri bildiriminiz varsa, <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> adresinde bir konu açmaktan veya <redditLink>reddit.com/r/RooCode</redditLink> ya da <discordLink>discord.gg/roocode</discordLink>'a katılmaktan çekinmeyin",
 		"telemetry": {
 			"label": "Anonim hata ve kullanım raporlamaya izin ver",
-			"description": "Anonim kullanım verileri ve hata raporları göndererek Roo Code'u geliştirmeye yardımcı olun. Hiçbir kod, istem veya kişisel bilgi asla gönderilmez. Daha fazla ayrıntı için gizlilik politikamıza bakın."
+			"description": "Anonim kullanım verileri ve hata raporları göndererek Roo Code'u geliştirmeye yardım edin. Bu telemetri kod, prompt veya kişisel bilgi toplamaz. Daha fazla ayrıntı için <privacyLink>gizlilik politikamıza</privacyLink> bakın. Bunu istediğiniz zaman kapatabilirsiniz."
 		},
 		"settings": {
 			"import": "İçe Aktar",

+ 2 - 6
webview-ui/src/i18n/locales/tr/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "Bir LLM yönlendiricisi kullanmanı öneririz:",
 	"startCustom": "Veya kendi API anahtarını kullanabilirsin:",
 	"telemetry": {
-		"title": "Roo Code'u Geliştirmeye Yardım Et",
-		"anonymousTelemetry": "Hataları düzeltmemize ve eklentiyi geliştirmemize yardımcı olmak için anonim hata ve kullanım verileri gönder. Hiçbir zaman kod, metin veya kişisel bilgi gönderilmez.",
-		"changeSettings": "Bunu her zaman <settingsLink>ayarlar</settingsLink>ın altından değiştirebilirsin",
-		"settings": "ayarlar",
-		"allow": "İzin Ver",
-		"deny": "Reddet"
+		"helpImprove": "Roo Code'u Geliştirmeye Yardım Et",
+		"helpImproveMessage": "Roo Code, hataları düzeltmemize ve uzantıyı geliştirmemize yardımcı olmak için hata ve kullanım verilerini toplar. Bu telemetri kod, prompt veya kişisel bilgi toplamaz. Bunu <settingsLink>ayarlar</settingsLink>dan kapatabilirsin."
 	},
 	"importSettings": "Ayarları İçe Aktar"
 }

+ 1 - 1
webview-ui/src/i18n/locales/vi/settings.json

@@ -793,7 +793,7 @@
 		"feedback": "Nếu bạn có bất kỳ câu hỏi hoặc phản hồi nào, vui lòng mở một vấn đề tại <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> hoặc tham gia <redditLink>reddit.com/r/RooCode</redditLink> hoặc <discordLink>discord.gg/roocode</discordLink>",
 		"telemetry": {
 			"label": "Cho phép báo cáo lỗi và sử dụng ẩn danh",
-			"description": "Giúp cải thiện Roo Code bằng cách gửi dữ liệu sử dụng ẩn danh và báo cáo lỗi. Không bao giờ gửi mã, lời nhắc hoặc thông tin cá nhân. Xem chính sách bảo mật của chúng tôi để biết thêm chi tiết."
+			"description": "Giúp cải thiện Roo Code bằng cách gửi dữ liệu sử dụng ẩn danh và báo cáo lỗi. Telemetry này không thu thập mã, prompt hoặc thông tin cá nhân. Xem <privacyLink>chính sách bảo mật</privacyLink> của chúng tôi để biết thêm chi tiết. Bạn có thể tắt tính năng này bất cứ lúc nào."
 		},
 		"settings": {
 			"import": "Nhập",

+ 2 - 6
webview-ui/src/i18n/locales/vi/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "Chúng tôi khuyên bạn nên sử dụng bộ định tuyến LLM:",
 	"startCustom": "Hoặc bạn có thể sử dụng khóa API của riêng mình:",
 	"telemetry": {
-		"title": "Giúp cải thiện Roo Code",
-		"anonymousTelemetry": "Gửi dữ liệu lỗi và sử dụng ẩn danh để giúp chúng tôi sửa lỗi và cải thiện tiện ích mở rộng. Không bao giờ gửi mã, lời nhắc hoặc thông tin cá nhân.",
-		"changeSettings": "Bạn luôn có thể thay đổi điều này ở cuối phần <settingsLink>cài đặt</settingsLink>",
-		"settings": "cài đặt",
-		"allow": "Cho phép",
-		"deny": "Từ chối"
+		"helpImprove": "Giúp cải thiện Roo Code",
+		"helpImproveMessage": "Roo Code thu thập dữ liệu lỗi và sử dụng để giúp chúng tôi sửa lỗi và cải thiện tiện ích mở rộng. Telemetry này không thu thập mã, prompt hoặc thông tin cá nhân. Bạn có thể tắt điều này trong <settingsLink>cài đặt</settingsLink>."
 	},
 	"importSettings": "Nhập cài đặt"
 }

+ 1 - 1
webview-ui/src/i18n/locales/zh-CN/settings.json

@@ -793,7 +793,7 @@
 		"feedback": "如果您有任何问题或反馈,请随时在 <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> 上提出问题或加入 <redditLink>reddit.com/r/RooCode</redditLink> 或 <discordLink>discord.gg/roocode</discordLink>",
 		"telemetry": {
 			"label": "允许匿名数据收集",
-			"description": "匿名收集错误报告和使用数据(不含代码/提示/个人信息),详情见隐私政策"
+			"description": "通过发送匿名使用数据和错误报告来帮助改进 Roo Code。此遥测不会收集代码、提示 或个人信息。详细信息请参阅我们的<privacyLink>隐私政策</privacyLink>。您可以随时关闭此功能。"
 		},
 		"settings": {
 			"import": "导入",

+ 2 - 6
webview-ui/src/i18n/locales/zh-CN/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "我们推荐使用 LLM 路由器:",
 	"startCustom": "或者你可以使用自己的 API 密钥:",
 	"telemetry": {
-		"title": "帮助改进 Roo Code",
-		"anonymousTelemetry": "发送匿名的错误和使用数据,以帮助我们修复错误并改进扩展程序。不会涉及代码、提示词或个人隐私信息。",
-		"changeSettings": "可以随时在<settingsLink>设置</settingsLink>页面底部更改此设置",
-		"settings": "设置",
-		"allow": "允许",
-		"deny": "拒绝"
+		"helpImprove": "Help Improve Roo Code",
+		"helpImproveMessage": "Roo Code 收集错误和使用数据来帮助我们修复 bug 并改进扩展。此遥测不会收集代码、提示词或个人信息。您可以在<settingsLink>设置</settingsLink>中关闭此设置。"
 	},
 	"importSettings": "导入设置"
 }

+ 1 - 1
webview-ui/src/i18n/locales/zh-TW/settings.json

@@ -793,7 +793,7 @@
 		"feedback": "若您有任何問題或建議,歡迎至 <githubLink>github.com/RooCodeInc/Roo-Code</githubLink> 提出 issue,或加入 <redditLink>reddit.com/r/RooCode</redditLink> 或 <discordLink>discord.gg/roocode</discordLink> 討論。",
 		"telemetry": {
 			"label": "允許匿名錯誤與使用情況回報",
-			"description": "透過傳送匿名的使用資料與錯誤回報,協助改善 Roo Code。我們絕不會傳送您的程式碼、提示或個人資訊。詳細資訊請參閱我們的隱私權政策。"
+			"description": "透過發送匿名使用資料和錯誤回報來協助改善 Roo Code。此遙測不會收集程式碼、Prompt 或個人資訊。查看我們的<privacyLink>隱私政策</privacyLink>以了解更多詳情。您可以隨時關閉此功能。"
 		},
 		"settings": {
 			"import": "匯入",

+ 2 - 6
webview-ui/src/i18n/locales/zh-TW/welcome.json

@@ -16,12 +16,8 @@
 	"startRouter": "我們建議使用 LLM 路由器:",
 	"startCustom": "或者您可以使用自己的 API 金鑰:",
 	"telemetry": {
-		"title": "協助改進 Roo Code",
-		"anonymousTelemetry": "傳送匿名錯誤和使用資料,以協助我們修復錯誤並改善擴充功能。我們絕不會傳送任何程式碼、命令提示詞、或個人資訊 (除非您使用了 Roo Code Cloud)。詳細資訊請參閱我們的<privacyLink>隱私權政策</privacyLink>。",
-		"changeSettings": "您隨時可以到<settingsLink>設定</settingsLink>頁面底部變更此選項",
-		"settings": "設定",
-		"allow": "允許",
-		"deny": "拒絕"
+		"helpImprove": "協助改進 Roo Code",
+		"helpImproveMessage": "Roo Code 會收集錯誤和使用資料,協助我們修復錯誤並改善擴充功能。此遙測不會收集程式碼、提示或個人資訊。您可以在<settingsLink>設定</settingsLink>中關閉此設定。"
 	},
 	"importSettings": "匯入設定"
 }

+ 3 - 0
webview-ui/src/index.css

@@ -140,6 +140,9 @@
 	--color-vscode-editorHoverWidget-foreground: var(--vscode-editorHoverWidget-foreground);
 	--color-vscode-editorHoverWidget-background: var(--vscode-editorHoverWidget-background);
 	--color-vscode-editorHoverWidget-border: var(--vscode-editorHoverWidget-border);
+
+	--color-vscode-banner-background: var(--vscode-banner-background);
+	--color-vscode-banner-foreground: var(--vscode-banner-foreground);
 }
 
 @layer base {

+ 1 - 1
webview-ui/src/utils/TelemetryClient.ts

@@ -9,7 +9,7 @@ class TelemetryClient {
 	public updateTelemetryState(telemetrySetting: TelemetrySetting, apiKey?: string, distinctId?: string) {
 		posthog.reset()
 
-		if (telemetrySetting === "enabled" && apiKey && distinctId) {
+		if (telemetrySetting !== "disabled" && apiKey && distinctId) {
 			TelemetryClient.telemetryEnabled = true
 
 			posthog.init(apiKey, {