import { auth } from "@/lib/auth"; import { NextResponse } from "next/server"; export default auth((req) => { const isLoggedIn = !!req.auth; const isAgentRoute = req.nextUrl.pathname.startsWith("/agent"); const isLoginPage = req.nextUrl.pathname === "/agent/login"; // Protect all /agent/* routes except the login page itself if (isAgentRoute && !isLoginPage && !isLoggedIn) { return NextResponse.redirect(new URL("/agent/login", req.nextUrl.origin)); } // Redirect already-authenticated users away from the login page if (isLoginPage && isLoggedIn) { return NextResponse.redirect(new URL("/agent/dashboard", req.nextUrl.origin)); } }); export const config = { matcher: [ // Run on /agent/* routes, excluding Next.js internals and static files "/((?!_next/static|_next/image|favicon.ico).*)", ], };