diff --git a/apps/web-roo-code/public/heroes/agent-pr-fixer.png b/apps/web-roo-code/public/heroes/agent-pr-fixer.png
new file mode 100644
index 000000000000..f33c926e6c6e
Binary files /dev/null and b/apps/web-roo-code/public/heroes/agent-pr-fixer.png differ
diff --git a/apps/web-roo-code/src/app/pr-fixer/PrFixerContent.tsx b/apps/web-roo-code/src/app/pr-fixer/PrFixerContent.tsx
new file mode 100644
index 000000000000..285a28e6f6eb
--- /dev/null
+++ b/apps/web-roo-code/src/app/pr-fixer/PrFixerContent.tsx
@@ -0,0 +1,240 @@
+"use client"
+
+import { ArrowRight, GitPullRequest, History, Key, MessageSquareCode, Wrench, type LucideIcon } from "lucide-react"
+import Image from "next/image"
+import Link from "next/link"
+
+import { Button } from "@/components/ui"
+import { AnimatedBackground } from "@/components/homepage"
+import { EXTERNAL_LINKS } from "@/lib/constants"
+import { trackGoogleAdsConversion } from "@/lib/analytics/google-ads"
+
+// Workaround for next/image choking on these for some reason
+import hero from "/public/heroes/agent-pr-fixer.png"
+
+interface Feature {
+ icon: LucideIcon
+ title: string
+ description: string | React.ReactNode
+ logos?: string[]
+}
+
+const workflowSteps: Feature[] = [
+ {
+ icon: GitPullRequest,
+ title: "1. Connect your GitHub repositories",
+ description: "Pick which repos the PR Fixer can work on by pushing to ongoing branches.",
+ },
+ {
+ icon: MessageSquareCode,
+ title: "2. Invoke from a comment",
+ description:
+ 'Ask the agent to fix issues directly from GitHub PR comments (e.g. "@roomote: fix these review comments"). It’s fully aware of the entire comment history and latest diffs and focuses on fixing them – not random changes to your code.',
+ },
+ {
+ icon: Wrench,
+ title: "3. Get clean scoped commits",
+ description: (
+ <>
+ The agent proposes targeted changes and pushes concise commits or patch suggestions you (or{" "}
+ PR Reviewer) can review and merge quickly.
+ >
+ ),
+ },
+]
+
+const howItWorks: Feature[] = [
+ {
+ icon: History,
+ title: "Comment-history aware",
+ description:
+ "Understands the entire conversation on the PR – previous reviews, your replies, follow-ups – and uses that context to produce accurate fixes.",
+ },
+ {
+ icon: Key,
+ title: "Bring your own key",
+ description:
+ "Use your preferred models at full strength. We optimize prompts and execution without capping your model to protect our margins.",
+ },
+ {
+ icon: GitPullRequest,
+ title: "Repository- and diff-aware",
+ description:
+ "Analyzes the full repo context and the latest diff to ensure fixes align with project conventions and pass checks.",
+ },
+]
+
+export function PrFixerContent() {
+ return (
+ <>
+
+ Roo Code{"'"}s PR Fixer applies high-quality changes to your PRs, right from
+ GitHub. Invoke via a PR comment and it will read the entire comment history to
+ understand context, agreements, and tradeoffs — then implement the right fix.
+
+ As always, you bring the model key; we orchestrate smart, efficient workflows.
+
+ Let Roo Code{"'"}s PR Fixer turn your review feedback into clean, ready-to-merge commits.
+
+
+
+ How It Works
+
+ {workflowSteps.map((step, index) => {
+ const Icon = step.icon
+ return (
+
+
+ {step.title}
+
+
+ Why Roo Code{"'"}s PR Fixer is different
+
+
+ {howItWorks.map((feature, index) => {
+ const Icon = feature.icon
+ return (
+
+
+ {feature.title}
+
+
+ Ship fixes, not follow-ups.
+
+
Regular AI code review tools cap model usage to protect their margins from fixed @@ -100,6 +104,19 @@ export function ReviewerContent() { your pull request queue moving.