@seellm/vercel-middleware
v0.1.0
Published
SeeLLM AI crawler and referral telemetry for Vercel and Next.js middleware.
Maintainers
Readme
SeeLLM Vercel Middleware
AI crawler and referral telemetry for Vercel and Next.js sites.
Use this when your homepage, pricing, docs, comparison pages, integrations, or programmatic SEO pages run through Next.js middleware and you want page-level evidence of AI crawler/referral activity in SeeLLM.
Install
pnpm add @seellm/vercel-middlewareAdd Middleware
// middleware.ts
import { withSeeLLM } from '@seellm/vercel-middleware';
export default withSeeLLM();
export const config = {
matcher: ['/((?!_next/static|_next/image|favicon.ico|robots.txt|sitemap.xml).*)'],
};Environment Variables
SEELLM_ADAPTER_ID=adapter_...
SEELLM_ADAPTER_SECRET=...
SEELLM_ORG_ID=org_...
SEELLM_SITE_DOMAIN=example.com
SEELLM_API_URL=https://api.seellm.linkSeeLLM currently issues these credentials during assisted setup. Do not expose SEELLM_ADAPTER_SECRET to client-side code.
Wrap Existing Middleware
// middleware.ts
import { NextResponse } from 'next/server';
import { withSeeLLM } from '@seellm/vercel-middleware';
export default withSeeLLM({
middleware(request) {
// Your existing routing, auth, localization, or experiments.
return NextResponse.next();
},
});What It Captures
- page path and query string
- request method
- user-agent
- accept header
- referrer
- Vercel geo headers when available
- forwarded IP when available
- Vercel request ID
- adapter runtime:
vercel_edge
SeeLLM classifies AI crawlers and AI referral evidence server-side after ingestion.
What Vercel Middleware Does Not Capture
Vercel middleware does not provide all Cloudflare edge metadata, including Cloudflare ASN and cache details. Cloudflare Worker installs provide the richest edge evidence. Vercel middleware is the fastest path for Next.js teams to validate page-level AI crawler/referral monitoring.
Troubleshooting
- Confirm
middleware.tsis deployed. - Confirm all
SEELLM_*env vars are set in Vercel. - Visit a public page such as
/pricing. - Check SeeLLM setup for first adapter heartbeat/event activity.
- If no events arrive, confirm your
matcherincludes the page you visited.
