From app-dev
Audit a Next.js project for common issues, anti-patterns, and misconfigurations
npx claudepluginhub iwritec0de/claude-plugin-marketplace --plugin app-dev[--focus routing|components|performance|all]# Next.js Audit Scan a Next.js project for common issues, anti-patterns, and misconfigurations. Load the nextjs-expert skill for App Router patterns and security best practices. ## Usage ## Arguments Parse `$ARGUMENTS` to extract: - **--focus** (optional, default: `all`) - `routing` — Route structure, missing error/loading boundaries, middleware issues - `components` — Client/server component misuse, missing `use client`, prop drilling - `performance` — Bundle size, unoptimized images, unnecessary client-side JS - `all` — Run everything ## Instructions ### 1. Detect Next.js ...
/auditLogs agent interactions (prompts, responses, tool calls) to append-only .beads/interactions.jsonl. Also supports labeling prior entries via record|label args.
/auditAudits UI code against design system for spacing, depth, color, and pattern violations. Reports file-specific issues and suggestions. Supports path argument or defaults to common UI paths.
/auditPerforms security audit of codebase for dependency vulnerabilities, secrets, OWASP Top 10, input validation, auth issues, and misconfigs. Outputs findings report by severity with fixes and references.
/auditRuns Rust security audits (default) with cargo audit and geiger, or safety/concurrency/full modes using miri, rudra, lockbud. Outputs prioritized vulnerability reports and fix recommendations.
/auditAnalyzes iOS/Swift projects to suggest relevant audits or runs specified ones (e.g., memory, concurrency, accessibility, SwiftUI performance, security).
/auditPerforms security audit on codebase or specified target, checking dependency vulnerabilities, auth, input validation, data exposure, configs, and secrets. Outputs prioritized findings with remediation steps.
Scan a Next.js project for common issues, anti-patterns, and misconfigurations.
Load the nextjs-expert skill for App Router patterns and security best practices.
/audit [--focus routing|components|performance|all]
Parse $ARGUMENTS to extract:
all)
routing — Route structure, missing error/loading boundaries, middleware issuescomponents — Client/server component misuse, missing use client, prop drillingperformance — Bundle size, unoptimized images, unnecessary client-side JSall — Run everythingcat package.json | grep -E '"next"'
ls app/ 2>/dev/null && echo "App Router"
ls pages/ 2>/dev/null && echo "Pages Router"
ls next.config.* 2>/dev/null
App Router:
error.tsx boundaries in route segmentsloading.tsx where data fetching occursnot-found.tsx at the rootlayout.tsx exists at the root(group) organizationgenerateStaticParams is used for dynamic routes that could be staticPages Router:
_app.tsx, _document.tsx, _error.tsxgetStaticProps vs getServerSideProps usage (prefer static when possible)getStaticPaths on dynamic routesSearch for:
'use client' — Components using hooks (useState, useEffect, useRef) without the directive'use client' — Components marked client that don't need to be (no hooks, no browser APIs)fetch() calls in server components without proper caching directives'use client' that import heavy libraries (could split)document. or window. without proper guardsCheck for:
<img> tags instead of next/image<link> instead of next/fontnext/dynamicgenerateMetadata or metadata exportoutput: 'standalone' for Docker, missing image domainsNEXT_PUBLIC_ vars leaking to client)## Next.js Audit Report
### Project
| Field | Value |
|-------|-------|
| Next.js Version | X.X.X |
| Router | App Router / Pages Router |
| TypeScript | Yes/No |
### Summary
| Category | Issues | Critical | Warning | Info |
|----------|--------|----------|---------|------|
| Routing | X | X | X | X |
| Components | X | X | X | X |
| Performance | X | X | X | X |
| Security | X | X | X | X |
### Critical Issues
[List with file paths and specific fixes]
### Warnings
[List with recommendations]
### Quick Wins
[Easy fixes that improve quality immediately]