This guide takes you from zero to a live public URL where any Gmail user can sign in and explore the Agent Mesh SRE demo.
- A GitHub account (the repo already exists:
https://github.com/aswinayyolath/agent-mesh-sre) - A Google account for Google Cloud Console
- A Vercel account (free Hobby plan is sufficient)
On your machine, in the project folder:
cd ~/Desktop/agent-mesh-sre
npm installThis picks up the newly added next-auth dependency from package.json.
- Open https://console.cloud.google.com
- Create a new project (or select an existing one) — name it e.g. "Agent Mesh SRE"
- In the left menu go to APIs & Services → OAuth consent screen
- User Type: External
- Fill in App name, support email, developer email → Save
- Scopes: just the defaults (email, profile, openid) are enough
- Test users: add your Gmail(s) during development
- Go to APIs & Services → Credentials → + Create Credentials → OAuth client ID
- Application type: Web application
- Name:
Agent Mesh SRE - Authorized redirect URIs — add both:
(Replace
http://localhost:3000/api/auth/callback/google https://<your-app>.vercel.app/api/auth/callback/google<your-app>with your actual Vercel URL — you'll come back and add it after Step 4)
- Click Create — copy the Client ID and Client Secret
Open ~/Desktop/agent-mesh-sre/.env.local and fill in:
GOOGLE_CLIENT_ID=<paste Client ID here>
GOOGLE_CLIENT_SECRET=<paste Client Secret here>
NEXTAUTH_SECRET=<run: openssl rand -base64 32>
NEXTAUTH_URL=http://localhost:3000Test locally:
npm run dev
# Visit http://localhost:3000 — you should be redirected to /login
# Click "Sign in with Google" — it should authenticate and return you to the dashboardcd ~/Desktop/agent-mesh-sre
git add .
git commit -m "feat: add Google OAuth + Vercel deployment config"
git push
⚠️ .env.localis already in.gitignore— your credentials are safe.
-
Go to https://vercel.com and sign in with GitHub
-
Click Add New → Project
-
Import the
agent-mesh-srerepo -
Vercel auto-detects Next.js — no build settings needed
-
Under Environment Variables, add each of these (copy from your
.env.local):Key Value KAFKA_MODEMOCKSMTP_HOSTsmtp.gmail.comSMTP_PORT587SMTP_SECUREfalseSMTP_USERsurajcs@gmail.comSMTP_PASS(your Gmail App Password) NOTIFICATION_EMAILsurajcs@gmail.comGOOGLE_CLIENT_ID(from Google Console) GOOGLE_CLIENT_SECRET(from Google Console) NEXTAUTH_SECRET(run openssl rand -base64 32)NEXTAUTH_URL(leave blank — Vercel sets this automatically) -
Click Deploy → wait ~2 minutes
- Copy your Vercel deployment URL, e.g.
https://agent-mesh-sre.vercel.app - Return to Google Cloud Console → APIs & Services → Credentials → your OAuth client
- Under Authorized redirect URIs, add:
https://agent-mesh-sre.vercel.app/api/auth/callback/google - Save
- Open your Vercel URL in an incognito window
- You should see the Agent Mesh SRE login page
- Click Sign in with Google — authenticate with any Gmail account
- You're in! The full MRAL dashboard should load
Share the Vercel URL with anyone who has a Gmail account — they can sign in immediately.
The agent mesh simulation runs in-memory using a globalThis singleton. On Vercel's serverless platform, function containers are reused for active connections, so the MRAL loop events will flow correctly to the SSE stream during a normal demo session. If events stop flowing after a scenario trigger, simply refresh the page and re-trigger the scenario — the container will re-warm.
For a persistent multi-user production deployment, the event bus would need to be backed by Vercel KV (Redis pub/sub), but that's beyond the scope of this demo.
By default, any Google account can sign in. To limit access to specific emails, edit src/lib/auth.ts and uncomment the signIn callback:
callbacks: {
async signIn({ user }) {
const allowed = ["surajcs@gmail.com", "colleague@gmail.com"];
return allowed.includes(user.email ?? "");
},
},Redeploy and only listed addresses will be granted access.