Skip to content

Commit aa815f0

Browse files
committed
Merge remote-tracking branch 'upstream/main' into feat/token-stats-tooltip
2 parents 3fee61f + 513fce3 commit aa815f0

File tree

95 files changed

+5188
-3635
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

95 files changed

+5188
-3635
lines changed

CHANGELOG.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,23 @@
11
# Roo Code Changelog
22

3+
## [3.28.3] - 2025-09-16
4+
5+
![3.28.3 Release - UI/UX Improvements and Bug Fixes](/releases/3.28.3-release.png)
6+
7+
- Fix: Filter out Claude Code built-in tools (ExitPlanMode, BashOutput, KillBash) (#7817 by @juliettefournier-econ, PR by @roomote)
8+
- Replace + icon with edit icon for New Task button (#7941 by @hannesrudolph, PR by @roomote)
9+
- Fix: Corrected C# tree-sitter query (#5238 by @vadash, PR by @mubeen-zulfiqar)
10+
- Add keyboard shortcut for "Add to Context" action (#7907 by @hannesrudolph, PR by @roomote)
11+
- Fix: Context menu is obscured when edit message (#7759 by @mini2s, PR by @NaccOll)
12+
- Fix: Handle ByteString conversion errors in OpenAI embedders (#7959 by @PavelA85, PR by @daniel-lxs)
13+
- Add Z.ai coding plan support (thanks @daniel-lxs!)
14+
- Move slash commands to Settings tab with gear icon for discoverability (thanks @roomote!)
15+
- Reposition Add Image button inside ChatTextArea (thanks @roomote!)
16+
- Bring back a way to temporarily and globally pause auto-approve without losing your toggle state (thanks @brunobergher!)
17+
- Makes text area buttons appear only when there's text (thanks @brunobergher!)
18+
- CONTRIBUTING.md tweaks and issue template rewrite (thanks @hannesrudolph!)
19+
- Bump axios from 1.9.0 to 1.12.0 (thanks @dependabot!)
20+
321
## [3.28.2] - 2025-09-14
422

523
![3.28.2 Release - Auto-approve improvements](/releases/3.28.2-release.png)

README.md

Lines changed: 72 additions & 137 deletions
Large diffs are not rendered by default.

apps/web-docs/.gitkeep

Whitespace-only changes.

apps/web-docs/README.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

apps/web-roo-code/package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,13 @@
2828
"next-themes": "^0.4.6",
2929
"posthog-js": "^1.248.1",
3030
"react": "^18.3.1",
31+
"react-cookie-consent": "^9.0.0",
3132
"react-dom": "^18.3.1",
3233
"react-icons": "^5.5.0",
3334
"recharts": "^2.15.3",
3435
"tailwind-merge": "^3.3.0",
3536
"tailwindcss-animate": "^1.0.7",
37+
"tldts": "^6.1.86",
3638
"zod": "^3.25.61"
3739
},
3840
"devDependencies": {

apps/web-roo-code/src/app/layout.tsx

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import React from "react"
22
import type { Metadata } from "next"
33
import { Inter } from "next/font/google"
4-
import Script from "next/script"
54
import { SEO } from "@/lib/seo"
5+
import { CookieConsentWrapper } from "@/components/CookieConsentWrapper"
66

77
import { Providers } from "@/components/providers"
88

@@ -93,22 +93,13 @@ export default function RootLayout({ children }: { children: React.ReactNode })
9393
/>
9494
</head>
9595
<body className={inter.className}>
96-
{/* Google tag (gtag.js) */}
97-
<Script src="https://www.googletagmanager.com/gtag/js?id=AW-17391954825" strategy="afterInteractive" />
98-
<Script id="google-analytics" strategy="afterInteractive">
99-
{`
100-
window.dataLayer = window.dataLayer || [];
101-
function gtag(){dataLayer.push(arguments);}
102-
gtag('js', new Date());
103-
gtag('config', 'AW-17391954825');
104-
`}
105-
</Script>
10696
<div itemScope itemType="https://schema.org/WebSite">
10797
<link itemProp="url" href={SEO.url} />
10898
<meta itemProp="name" content={SEO.name} />
10999
</div>
110100
<Providers>
111101
<Shell>{children}</Shell>
102+
<CookieConsentWrapper />
112103
</Providers>
113104
</body>
114105
</html>
Lines changed: 198 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,198 @@
1+
import type { Metadata } from "next"
2+
import { SEO } from "@/lib/seo"
3+
4+
const TITLE = "Cookie Policy"
5+
const DESCRIPTION = "Learn about how Roo Code uses cookies to enhance your experience and provide our services."
6+
const PATH = "/legal/cookies"
7+
const OG_IMAGE = SEO.ogImage
8+
9+
export const metadata: Metadata = {
10+
title: TITLE,
11+
description: DESCRIPTION,
12+
alternates: {
13+
canonical: `${SEO.url}${PATH}`,
14+
},
15+
openGraph: {
16+
title: TITLE,
17+
description: DESCRIPTION,
18+
url: `${SEO.url}${PATH}`,
19+
siteName: SEO.name,
20+
images: [
21+
{
22+
url: OG_IMAGE.url,
23+
width: OG_IMAGE.width,
24+
height: OG_IMAGE.height,
25+
alt: OG_IMAGE.alt,
26+
},
27+
],
28+
locale: SEO.locale,
29+
type: "article",
30+
},
31+
twitter: {
32+
card: SEO.twitterCard,
33+
title: TITLE,
34+
description: DESCRIPTION,
35+
images: [OG_IMAGE.url],
36+
},
37+
keywords: [...SEO.keywords, "cookies", "privacy", "tracking", "analytics"],
38+
}
39+
40+
export default function CookiePolicy() {
41+
return (
42+
<>
43+
<div className="container mx-auto px-4 py-12 sm:px-6 lg:px-8">
44+
<div className="prose prose-lg mx-auto max-w-4xl dark:prose-invert">
45+
<p className="text-muted-foreground">Updated: September 18, 2025</p>
46+
47+
<h1 className="text-3xl font-bold tracking-tight sm:text-4xl md:text-5xl">Cookie Policy</h1>
48+
49+
<p className="lead">
50+
This Cookie Policy explains how Roo Code uses cookies and similar technologies to recognize you
51+
when you visit our website.
52+
</p>
53+
54+
<h2 className="mt-12 text-2xl font-bold">What are cookies?</h2>
55+
<p>
56+
Cookies are small data files that are placed on your computer or mobile device when you visit a
57+
website. Cookies help make websites work more efficiently and provide reporting information.
58+
</p>
59+
60+
<h2 className="mt-12 text-2xl font-bold">Cookies we use</h2>
61+
<p>
62+
We use a minimal number of cookies to provide essential functionality and improve your
63+
experience.
64+
</p>
65+
66+
<div className="overflow-x-auto">
67+
<table className="min-w-full border-collapse border border-border">
68+
<thead>
69+
<tr className="bg-muted/50">
70+
<th className="border border-border px-4 py-3 text-left font-semibold">Provider</th>
71+
<th className="border border-border px-4 py-3 text-left font-semibold">Purpose</th>
72+
<th className="border border-border px-4 py-3 text-left font-semibold">Type</th>
73+
<th className="border border-border px-4 py-3 text-left font-semibold">Duration</th>
74+
<th className="border border-border px-4 py-3 text-left font-semibold">
75+
Example Cookies
76+
</th>
77+
</tr>
78+
</thead>
79+
<tbody>
80+
<tr>
81+
<td className="border border-border px-4 py-3 font-medium">Clerk</td>
82+
<td className="border border-border px-4 py-3">
83+
Authentication and session management
84+
</td>
85+
<td className="border border-border px-4 py-3">Essential</td>
86+
<td className="border border-border px-4 py-3">1 year and 1 month</td>
87+
<td className="border border-border px-4 py-3 font-mono text-sm">
88+
__client_uat*, __clerk_*
89+
</td>
90+
</tr>
91+
<tr className="bg-muted/25">
92+
<td className="border border-border px-4 py-3 font-medium">PostHog</td>
93+
<td className="border border-border px-4 py-3">
94+
Product analytics and feature usage tracking
95+
</td>
96+
<td className="border border-border px-4 py-3">
97+
Analytics (only with your consent)
98+
</td>
99+
<td className="border border-border px-4 py-3">1 year</td>
100+
<td className="border border-border px-4 py-3 font-mono text-sm">ph_*</td>
101+
</tr>
102+
</tbody>
103+
</table>
104+
</div>
105+
106+
<p className="mt-4">
107+
<a
108+
href="https://clerk.com/legal/privacy"
109+
target="_blank"
110+
rel="noopener noreferrer"
111+
className="text-primary hover:underline">
112+
Clerk Privacy Policy
113+
</a>
114+
</p>
115+
<p>
116+
<a
117+
href="https://posthog.com/privacy"
118+
target="_blank"
119+
rel="noopener noreferrer"
120+
className="text-primary hover:underline">
121+
PostHog Privacy Policy
122+
</a>
123+
</p>
124+
125+
<h2 className="mt-12 text-2xl font-bold">Essential cookies</h2>
126+
<p>
127+
Essential cookies are required for our website to operate. These include authentication cookies
128+
from Clerk that allow you to stay logged in to your account. These cookies cannot be disabled
129+
without losing core website functionality. The lawful basis for processing these cookies is our
130+
legitimate interest in providing secure access to our services.
131+
</p>
132+
133+
<h2 className="mt-12 text-2xl font-bold">Analytics cookies</h2>
134+
<p>
135+
We use PostHog analytics cookies to understand how visitors interact with our website. This
136+
helps us improve our services and user experience. Analytics cookies are placed only if you give
137+
consent through our cookie banner. The lawful basis for processing these cookies is your
138+
consent, which you can withdraw at any time.
139+
</p>
140+
141+
<h2 className="mt-12 text-2xl font-bold">Third-party services</h2>
142+
<p>
143+
Our blog at{" "}
144+
<a
145+
href="https://blog.roocode.com"
146+
target="_blank"
147+
rel="noopener noreferrer"
148+
className="text-primary hover:underline">
149+
blog.roocode.com
150+
</a>{" "}
151+
is hosted on Substack. When you visit it, Substack may set cookies for analytics,
152+
personalization, and advertising/marketing. These cookies are managed directly by Substack and
153+
are outside our control. You can read more in{" "}
154+
<a
155+
href="https://substack.com/privacy"
156+
target="_blank"
157+
rel="noopener noreferrer"
158+
className="text-primary hover:underline">
159+
Substack&apos;s Cookie Policy
160+
</a>
161+
.
162+
</p>
163+
164+
<h2 className="mt-12 text-2xl font-bold">How to control cookies</h2>
165+
<p>You can control and manage cookies through your browser settings. Most browsers allow you to:</p>
166+
<ul>
167+
<li>View what cookies are stored on your device</li>
168+
<li>Delete cookies individually or all at once</li>
169+
<li>Block third-party cookies</li>
170+
<li>Block cookies from specific websites</li>
171+
<li>Block all cookies from being set</li>
172+
<li>Delete all cookies when you close your browser</li>
173+
</ul>
174+
<p>
175+
Please note that blocking essential cookies may prevent you from using certain features of our
176+
website, such as staying logged in to your account.
177+
</p>
178+
179+
<h2 className="mt-12 text-2xl font-bold">Changes to this policy</h2>
180+
<p>
181+
We may update this Cookie Policy from time to time. When we make changes, we will update the
182+
date at the top of this policy. We encourage you to periodically review this policy to stay
183+
informed about our use of cookies.
184+
</p>
185+
186+
<h2 className="mt-12 text-2xl font-bold">Contact us</h2>
187+
<p>
188+
If you have questions about our use of cookies, please contact us at{" "}
189+
<a href="mailto:[email protected]" className="text-primary hover:underline">
190+
191+
</a>
192+
.
193+
</p>
194+
</div>
195+
</div>
196+
</>
197+
)
198+
}

0 commit comments

Comments
 (0)