vercel-optimize
Audit deployed Vercel apps for cost and performance issues using metrics, project config, code scans, and version-aware recommendations.
Vercel Optimize
Run an observability-first Vercel optimization audit. Do not inspect source files until signals.json exists and a deterministic gate points to a route, file, or project setting.
Core doctrine: read [references/doctrine.md](references/doctrine.md) if any rule is unclear.
- Metrics first. Recommendations start from Vercel production signals, not repo-wide grep.
- Deterministic gates.
scripts/gate-investigations.mjsdecides what deserves investigation. - Candidate-bound scope. Read only files named by a candidate or a route-local import chain.
- Version-aware citations. Use only
references/docs-library.json; invalid or version-mismatched citations are stripped. - Customer copy. Read [references/voice.md](references/voice.md) before writing report text or chat output.
When to Use
- Use this skill when the task matches this description: Audit deployed Vercel apps for cost and performance issues using metrics, project config, code scans, and version-aware recommendations.
Prerequisites
- Vercel CLI v53+ with
vercel metrics,vercel usage,vercel contract, andvercel api. - Authenticated CLI session:
vercel login. - Linked app directory:
vercel link.VERCEL_PROJECT_IDcan help resolve project config, butvercel metricsstill requires directory linkage. The link or environment must include the intended project org/team/user scope so t
Subscribers only
The full skill, its 153 bundled files and every download is included with every paid Complete AI plan.
Details
| Source | vercel-labs/agent-skills |
|---|---|
| License | — |
| Risk label | safe ("critical" means the skill may run commands or touch files — read before use) |
| Files | CONTRIBUTING.md, SKILL.md, lib/auth-route.mjs, lib/budget-summary.mjs, lib/citations.mjs, lib/cost-coverage.mjs, lib/dedup-recs.mjs, lib/deep-dive.mjs, lib/display-labels.mjs, lib/extract-claims.mjs, lib/framework-support.mjs, lib/gates/build-minutes-fanout.mjs, lib/gates/cold-start.mjs, lib/gates/contract.mjs, lib/gates/cwv-poor.mjs, lib/gates/external-api-slow.mjs, lib/gates/hard-gates.mjs, lib/gates/index.mjs, lib/gates/isr-overrevalidation.mjs, lib/gates/middleware-heavy.mjs, lib/gates/observability-events-attribution.mjs, lib/gates/platform-bot-protection.mjs, lib/gates/platform-fluid-compute.mjs, lib/gates/region-misconfig.mjs, lib/gates/route-errors.mjs, lib/gates/scanner-driven.mjs, lib/gates/select-candidates.mjs, lib/gates/slow-route.mjs, lib/gates/types.d.ts, lib/gates/uncached-route.mjs, lib/gates/usage-spike-triage.mjs, lib/grade-recommendation.mjs, lib/impact-label.mjs, lib/impact-magnitude.mjs, lib/investigation-brief.mjs, lib/observation-safety.mjs, lib/project-facts.mjs, lib/queries.mjs, lib/reconcile-candidates.mjs, lib/render-report.mjs, lib/repo-root.mjs, lib/route-normalize.mjs, lib/sanitizers/bot-protection-certainty.mjs, lib/sanitizers/cache-tag-invalidation-certainty.mjs, lib/sanitizers/count-correct.mjs, lib/sanitizers/function-duration-invocations.mjs, lib/sanitizers/index.mjs, lib/sanitizers/middleware-conflict.mjs, lib/sanitizers/missing-citation.mjs, lib/sanitizers/pre-release.mjs, lib/sanitizers/rate-limit.mjs, lib/sanitizers/rendering-mode-mislabel.mjs, lib/sanitizers/undeclared-dep.mjs, lib/sanitizers/vercel-directive-strip.mjs, lib/sanitizers/window-units.mjs, lib/scanners/cache-components-suspense-dedupe.mjs, lib/scanners/edge-heavy-import.mjs, lib/scanners/force-dynamic.mjs, lib/scanners/headers-in-page.mjs, lib/scanners/index.mjs, lib/scanners/large-static-asset.mjs, lib/scanners/max-age-without-s-maxage.mjs, lib/scanners/middleware-broad-matcher.mjs, lib/scanners/missing-cache-headers.mjs, lib/scanners/prisma-include-tree.mjs, lib/scanners/region-pin-in-config.mjs, lib/scanners/source-maps-production.mjs, lib/scanners/sveltekit-prerender-missing.mjs, lib/scanners/turbo-force-bypass.mjs, lib/scanners/unoptimized-image.mjs, lib/scanners/use-cache-date-stamp.mjs, lib/support-topics.mjs, lib/throttle.mjs, lib/util.mjs, lib/vercel.mjs, lib/verify-claim.mjs, lib/workspace-resolver.mjs, references/candidates.md, references/data-collection.md, references/docs-library.json, references/doctrine.md, references/observability-plus.md, references/playbooks/README.md, references/playbooks/ai-application.md, references/playbooks/api-service.md, references/playbooks/content-site.md, references/playbooks/ecommerce.md, references/playbooks/marketing.md, references/playbooks/saas.md, references/playbooks/sveltekit.md, references/recommendations.md, references/scanner-patterns.md, references/scoring.md, references/support-topics/README.md, references/support-topics/astro-edge-middleware-scope.md, references/support-topics/astro-output-mode-and-isr.md, references/support-topics/auth-preserving-parallelization.md, references/support-topics/bot-protection-product-guardrails.md, references/support-topics/build-minutes-monorepo-fanout.md, references/support-topics/cache-components-static-shell-boundaries.md, references/support-topics/cache-components-suspense-dedupe-pitfall.md, references/support-topics/cdn-cache-auth-safety.md, references/support-topics/cold-start-initialization-bundle.md, references/support-topics/core-web-vitals-client-bottlenecks.md, references/support-topics/database-egress-pooling-region.md, references/support-topics/dynamic-rendering-traps.md, references/support-topics/external-api-critical-path-platform.md, references/support-topics/external-api-critical-path.md, references/support-topics/fast-data-transfer-payloads.md, references/support-topics/fluid-compute-caveats.md, references/support-topics/function-duration-io-and-after.md, references/support-topics/function-invocation-reduction.md, references/support-topics/function-region-misconfiguration-ttfb.md, references/support-topics/image-optimization-cost-control.md, references/support-topics/isr-revalidation-static-generation.md, references/support-topics/middleware-proxy-edge-cost.md, references/support-topics/next-fetch-revalidate-floor.md, references/support-topics/next-font-cls-self-hosting.md, references/support-topics/next-heavy-ui-lazy-load-boundaries.md, references/support-topics/next-image-lcp-preload-sizes.md, references/support-topics/next-route-handler-get-cache-defaults.md, references/support-topics/next-script-third-party-strategy.md, references/support-topics/nextjs-version-cache-semantics.md, references/support-topics/not-found-catchall-request-waste.md, references/support-topics/nuxt-route-rules-cache-isr.md, references/support-topics/observability-events-cost-attribution.md, references/support-topics/post-response-work-waituntil.md, references/support-topics/route-error-durable-offload.md, references/support-topics/route-error-runtime-limits.md, references/support-topics/runtime-cache-reusable-data.md, references/support-topics/sveltekit-isr-prerender-safety.md, references/support-topics/sveltekit-split-cold-start-tradeoff.md, references/support-topics/usage-spike-triage.md, references/support-topics/use-cache-date-stamp-isr-write-amplifier.md, references/support-topics/use-cache-remote-shared-origin-data.md, references/support-topics/workflow-resumable-stream-routes.md, references/verification.md, references/voice.md, scripts/budget-summary.mjs, scripts/build-docs.mjs, scripts/check-citations.mjs, scripts/check-docs-fresh.mjs, scripts/collect-signals.mjs, scripts/collect-sub-agent-outputs.mjs, scripts/deep-dive.mjs, scripts/gate-investigations.mjs, scripts/merge-signals.mjs, scripts/prepare-investigation-brief.mjs, scripts/reconcile-candidates.mjs, scripts/render-report.mjs, scripts/scan-codebase.mjs, scripts/verify-and-regen.mjs, scripts/verify-finding.mjs |
| Added | 2026-06-02 |
Related skills
accesslint-diff
Diff a live page's accessibility violations against a baseline — by default compares uncommitted changes (stash-based), or pass --branch [<name>] to diff against a branch. Reports only new violations introduced, violations fixed, and pre-existing count. Use `scan` for a full audit with no diffing.
accesslint-scan
Audit a live page for accessibility issues, locate each WCAG violation precisely, and return a selector-grounded fix worklist without editing.
accint-commitments
Triage acc's open promises and close them with honest real-world verdicts via acc_act(runtime="outcome").
accint-frames
Drain acc's deliberation queue — open/waiting brain_frames checkpointed by headless runs — via acc_act(runtime="continue").
accint-solve
Route a goal through acc's scored-memory loop via acc_act(runtime="solve"); deliberate any returned brain_frame and submit via continue.
ad-creative
Create, iterate, and scale paid ad creative for Google Ads, Meta, LinkedIn, TikTok, and similar platforms. Use when generating headlines, descriptions, primary text, or large sets of ad variations for testing and performance optimization.
