From vfm-agent-company
Applies Next.js best practices for file conventions, RSC boundaries, data patterns, async APIs, metadata, error handling, route handlers, image/font optimization, and bundling.
npx claudepluginhub duylinhdang1998/claude-template-agent --plugin vfm-agent-companyThis skill uses the workspace's default tool permissions.
Apply these rules when writing or reviewing Next.js code.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Checks Next.js compilation errors using a running Turbopack dev server after code edits. Fixes actionable issues before reporting complete. Replaces `next build`.
Apply these rules when writing or reviewing Next.js code.
See file-conventions.md for:
Detect invalid React Server Component patterns.
See rsc-boundaries.md for:
Next.js 15+ async API changes.
See async-patterns.md for:
params and searchParamscookies() and headers()See runtime-selection.md for:
See directives.md for:
'use client', 'use server' (React)'use cache' (Next.js)See functions.md for:
useRouter, usePathname, useSearchParams, useParamscookies, headers, draftMode, aftergenerateStaticParams, generateMetadataSee error-handling.md for:
error.tsx, global-error.tsx, not-found.tsxredirect, permanentRedirect, notFoundforbidden, unauthorized (auth errors)unstable_rethrow for catch blocksSee data-patterns.md for:
Promise.all, Suspense, preload)See route-handlers.md for:
route.ts basicspage.tsxSee metadata.md for:
generateMetadata functionnext/ogSee image.md for:
next/image over <img>sizes attributeSee font.md for:
next/font setupSee bundling.md for:
See scripts.md for:
next/script vs native script tagsid@next/third-partiesSee hydration-error.md for:
See suspense-boundaries.md for:
useSearchParams and usePathnameSee parallel-routes.md for:
@slot and (.) interceptorsdefault.tsx for fallbacksrouter.back()See self-hosting.md for:
output: 'standalone' for DockerSee debug-tricks.md for:
--debug-build-paths