openrouter-compliance-review
Review OpenRouter integration for regulatory compliance (SOC2, GDPR,
vercel-cost-tuning
Optimize Vercel costs through plan selection, function efficiency, and
Full skill instructions
Optimize Vercel costs by understanding the Fluid Compute pricing model, reducing function execution time, leveraging edge caching to avoid function invocations, and configuring spend management. Covers plan comparison, cost drivers, and monitoring.
Vercel uses Fluid Compute pricing (for new projects):
| Resource | Hobby (Free) | Pro ($20/member/mo) | Enterprise |
|---|---|---|---|
| Bandwidth | 100 GB | 1 TB included | Custom |
| Serverless Execution | 100 GB-hrs | 1000 GB-hrs included | Custom |
| Edge Function invocations | 500K | 1M included | Custom |
| Edge Middleware invocations | 1M | 1M included | Custom |
| Image Optimizations | 1000 | 5000 included | Custom |
| Builds per day | 6000 | 6000 | Custom |
| Concurrent builds | 1 | 1 (more available) | Custom |
Fluid Compute billing breakdown:
# Check usage via API
curl -s -H "Authorization: Bearer $VERCEL_TOKEN" \
"https://api.vercel.com/v2/usage" | jq .
# Top cost drivers on Vercel:
# 1. Serverless function execution time (CPU + memory)
# 2. Bandwidth (large responses, unoptimized images)
# 3. Edge Middleware invocations (runs on EVERY request)
# 4. Image optimizations (each unique transform costs)
# 5. Build minutes (frequent deploys or slow builds)
// 1. Right-size function memory — don't over-allocate
// vercel.json
{
"functions": {
"api/lightweight.ts": { "memory": 128 }, // Simple JSON responses
"api/standard.ts": { "memory": 512 }, // Database queries
"api/heavy.ts": { "memory": 1024 } // Image processing
}
}
// 2. Move read-only endpoints to Edge Functions (cheaper, no cold starts)
// api/config.ts
export const config = { runtime: 'edge' };
export default function handler() {
return Response.json({ features: ['a', 'b'] });
}
// 3. Cache function responses at the edge
// Eliminates function invocations entirely for cached routes
export default function handler(req, res) {
res.setHeader('Cache-Control', 's-maxage=3600, stale-while-revalidate=86400');
res.json(data);
}
// vercel.json — compress and cache aggressively
{
"headers": [
{
"source": "/static/(.*)",
"headers": [
{ "key": "Cache-Control", "value": "public, max-age=31536000, immutable" }
]
}
],
"images": {
"sizes": [640, 750, 1080],
"formats": ["image/avif", "image/webp"],
"minimumCacheTTL": 86400
}
}
Key bandwidth reducers:
Middleware runs on every matched request. Minimize its scope:
// middleware.ts — scope to specific paths only
export const config = {
matcher: [
// Only run middleware on API routes and protected pages
'/api/:path*',
'/dashboard/:path*',
// Skip static files, images, and public assets
'/((?!_next/static|_next/image|favicon.ico|public).*)',
],
};
export function middleware(request) {
// Keep logic minimal — this runs on every matched request
// Avoid: database queries, external API calls, heavy computation
// Good: cookie checks, header modifications, redirects
}
In the Vercel dashboard under Settings > Billing > Spend Management:
Default budget: $200/month on-demand usage
Options:
- Set custom budget limit
- Enable hard limit (pauses all projects when reached)
- Configure email alerts at 50%, 75%, 90%, 100%
# Check current usage against budget via API
curl -s -H "Authorization: Bearer $VERCEL_TOKEN" \
"https://api.vercel.com/v2/usage?teamId=team_xxx" \
| jq '{period: .period, bandwidth: .bandwidth, execution: .serverlessFunctionExecution}'
| Action | Impact | Effort |
|---|---|---|
Add s-maxage cache headers | High — eliminates function invocations | Low |
| Use Edge Functions for simple endpoints | Medium — cheaper than serverless | Low |
| Right-size function memory | Medium — reduces GB-hr cost | Low |
| Scope middleware matcher | Medium — reduces edge invocations | Low |
| Enable image optimization | Medium — reduces bandwidth | Low |
| Use ISR instead of SSR | High — serves cached HTML | Medium |
| Optimize build speed | Low — reduces build minutes | Medium |
| Set spend management alerts | Safety — prevents surprise bills | Low |
| Error | Cause | Solution |
|---|---|---|
| Unexpected bill spike | Uncached high-traffic endpoint | Add s-maxage to the response |
| Projects paused | Hard spending limit reached | Increase limit or optimize usage |
| Image optimization quota exceeded | Too many unique image transforms | Reduce sizes array, increase cache TTL |
| Build minutes exceeded | Slow builds or too many deploys | Use ignoreCommand to skip non-code changes |
For reference architecture, see vercel-reference-architecture.
Review OpenRouter integration for regulatory compliance (SOC2, GDPR,
Data synchronization, ETL patterns, and data management for MaintainX.
Execute Groq primary workflow: chat completions with tool use and JSON
Validate CSRF protection implementations for security gaps. Use when
Configure this skill should be used when the user asks about "API contract",
Execute Ideogram incident response with triage, mitigation, and postmortem.
Execute create, select, and transform features to improve machine learning
Reusable patterns for the Gamma REST API (no SDK exists).
Apply production-ready Deepgram SDK patterns for TypeScript and Python.
Migrate to OpenRouter from direct provider APIs or upgrade between SDK/model
Diagnose and fix common OpenRouter API errors. Use when encountering
Optimize Linear API usage, reduce unnecessary calls, and maximize
Generate, edit, and beat-sync AI video with leading models in one workspace.
The world's fastest calendar for remote work
Transform Your Design with AI Designer by ImgCreator.ai
Revolutionizing Video Production with AI-Powered Creativity
Extend an image past the frame and let AI fill the new aspect ratio.
Discover your celebrity doppelgänger with StarByFace!
ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.
Opus.ai: Revolutionize Your Web Experience