Free download · v1.1.0 · MIT
Cursor rules pack
for Next.js apps.
9 scoped .cursor/rules files and an AGENTS.md template for Next.js apps on Supabase, Stripe, Tailwind v4 + shadcn/ui and the Vercel AI SDK. They target the mistakes agents make most in those stacks.
No email, no signup. One zip, MIT license. Read the files first ↓
$ unzip vibeboot-cursor-rules-pack.zip
- .cursor/rules/
- 00-workflow.mdcalways
- security.mdcalways
- access-control.mdc**/app/**
- nextjs-app-router.mdc**/app/**
- supabase.mdc**/supabase/**
- stripe.mdc**/stripe/**
- stripe-webhooks.mdc**/*webhook*/**
- tailwind-shadcn.mdc**/*.tsx
- ai-sdk-chat.mdc**/api/chat/**
- AGENTS.mdall agents
- CLAUDE.mdclaude code
- README.md · CHANGELOG.md · LICENSE
14 files · 20 KB · ready
- 9 .mdc rules
- 2 always on
- 7 load by file glob
- released Oct 27, 2026
01What's inside
One rule per stack. Each loads only when it's needed.
- 01always
Agent workflow
00-workflow.mdc
Read first, plan multi-file changes, keep diffs small, ask before new dependencies, no surprise version bumps, verify before saying done.
Any project
- 02always
Security guardrails
security.mdc
Secrets stay server-side, every action re-checks auth, ownership-scoped queries, no open redirects or SSRF.
Any project
- 03auto-attach
Access control
access-control.mdc
Session checked in every action and route, ownership-scoped reads and writes, 404 for other users' ids, roles and plans from the database.
Any Next.js app
- 04auto-attach
Next.js App Router
nextjs-app-router.mdc
Server Components by default, async params, Server Actions that validate, updateTag/revalidateTag, proxy.ts.
Next.js 15 / 16
- 05auto-attach
Supabase
supabase.mdc
Per-request server clients, getClaims()/getUser() instead of getSession(), RLS on every table, migrations + types.
@supabase/ssr
- 06auto-attach
Stripe billing
stripe.mdc
Prices decided server-side, Checkout tied to the user, webhook-only plan sync, server-side gating, Customer Portal.
Stripe Node SDK
- 07auto-attach
Stripe webhooks
stripe-webhooks.mdc
Raw body with req.text(), the right whsec_ per environment, test vs live never mixed, duplicate and out-of-order events, CLI replay.
Stripe Node SDK
- 08auto-attach
Tailwind v4 + shadcn/ui
tailwind-shadcn.mdc
CSS-first @theme, v4 class renames, no interpolated class names, semantic tokens and cn().
Tailwind CSS v4
- 09auto-attach
AI SDK chat
ai-sdk-chat.mdc
convertToModelMessages + toUIMessageStreamResponse, useChat parts, server-owned prompts, stopWhen, quotas.
AI SDK 5+
- 10template
AGENTS.md template
AGENTS.md
Project, stack, commands, file map, conventions and a definition of done, with placeholders to fill in.
Cursor, Claude Code, Codex
02What it catches
The mistakes agents keep making.
Each line below is written into a rule as a direct instruction, so the agent gets it right on the first pass instead of after your third correction.
nextjs-app-router.mdc
Without the rule: "use client" on the page to fix one onClick
With the rule: Server Component page, a small client leaf for the button
supabase.mdc
Without the rule: getSession() to authorize on the server
With the rule: getClaims() or getUser(), which verify the token
stripe-webhooks.mdc
Without the rule: await req.json() before constructEvent, and one whsec_ copied into every environment
With the rule: await req.text() first, one secret per endpoint and mode, repeated event ids skipped
access-control.mdc
Without the rule: findUnique({ where: { id } }) with the id from the URL
With the rule: { id, userId: session.user.id } in the query, 404 if it isn't yours
security.mdc
Without the rule: NEXT_PUBLIC_STRIPE_SECRET_KEY
With the rule: Secrets stay server-only, in .env.example with a comment
tailwind-shadcn.mdc
Without the rule: bg-${color}-500 and a new tailwind.config.js
With the rule: Full class names, tokens in @theme, v4 renames
ai-sdk-chat.mdc
Without the rule: toDataStreamResponse() and a client-sent system prompt
With the rule: toUIMessageStreamResponse(), prompt and model stay on the server
03Read every file
Preview, copy, or take one file.
These are the exact files in the zip. Copy a single rule into your project or download it on its own.
vibeboot-cursor-rules-pack/
---
description: How the agent plans, edits and verifies changes in this repo
alwaysApply: true
---
# Working agreement
- Read before you write. Open the files you're about to change and the closest existing example of the same pattern (another route, component or action), then follow that pattern instead of inventing a new one.
- For changes that touch more than two files or change structure, write a short plan first (files, approach, risks), then implement it.
- Keep diffs scoped to the task. Don't reformat, rename or "clean up" unrelated code, and don't delete comments or tests you didn't add.
- Ask before adding a dependency: say what it's for and why an installed package or a few lines of code won't do. Use the package manager that matches the lockfile (`package-lock.json` npm, `pnpm-lock.yaml` pnpm, `bun.lock` bun, `yarn.lock` yarn).
- Don't change the version of `next`, `react`, the auth library, the ORM or the payment SDK, and don't run upgrade codemods, unless the task asks for it. Version bumps go in their own change with the lockfile committed.
- Check the installed version in `package.json` before using a library API. If your memory of an API disagrees with the installed types, the installed version wins.
- Never invent env vars, routes, table names or API fields. Search the codebase first. If something really doesn't exist yet, say so and propose it.
- Stop and ask one specific question before anything destructive or hard to undo: deleting data, migrations, auth or billing changes, renaming public URLs.
- Before you say "done", run the typecheck, lint, test and build scripts that exist in `package.json`, fix what fails, and report what you ran. If you couldn't run something, say so.
- End with a short summary: what changed and where, plus anything a human must do (new env var, migration, dashboard setting).
next: skip the next one
Skip the setup. The VibeBoot SaaS Starter ships with its own project, Stripe and database .cursor/rules, AGENTS.md and CLAUDE.md already written for its code, plus auth, Stripe and a database on Next.js 16.4.3. $49, one-time.
14-day money-back guarantee · lifetime updates
Building an AI chat app? The AI Chatbot Starter ships streaming chat, saved conversations, Free/Pro usage limits enforced on the server and Stripe, with AGENTS.md and .cursor/rules. Get the AI Chatbot Starter, $59
04Install
In your repo in about a minute.
- 1
Unzip and copy
Copy the rules and AGENTS.md into your project root.
cp -nnever overwrites a file you already have. - 2
Delete what you don't use
No Supabase? Delete supabase.mdc. No AI? Delete ai-sdk-chat.mdc. Unused rules only cost context.
- 3
Fill in AGENTS.md
Replace the <placeholders>: commands, folder map, landmines. Then check Customize > Rules in Cursor.
$ unzip vibeboot-cursor-rules-pack.zip$ mkdir -p .cursor/rules$ cp -n vibeboot-cursor-rules-pack/.cursor/rules/*.mdc .cursor/rules/$ cp -n vibeboot-cursor-rules-pack/AGENTS.md vibeboot-cursor-rules-pack/CLAUDE.md .| Frontmatter | When it loads | In this pack |
|---|---|---|
| alwaysApply: true | Every Agent request00-workflow, security | |
| alwaysApply: false + globs | A matching file is in contextnextjs, supabase, stripe, tailwind, ai-sdk | |
| alwaysApply: false + description | Agent decides it's relevantEvery rule has a description too | |
| no globs, no description | Only when you @-mention itNone |
05Skip the setup
Want the rules already wired into a working app?
The VibeBoot starters ship with their own .cursor/rules, AGENTS.md and CLAUDE.md, written for their exact files and following the same conventions as this pack. Auth, Stripe and the database are already built and tested.
tpl/01
SaaS Starter
$49one-time
Next.js 16, Auth.js v5 (GitHub + magic link), Stripe subscriptions with a verified webhook, Customer Portal and Prisma.
Agent files included
- project.mdc
- stripe.mdc
- database.mdc
- AGENTS.md
- CLAUDE.md
14-day money-back guarantee · lifetime updates
Full details, file tree and FAQ →tpl/02
AI Chatbot Starter
$59one-time
Streaming chat, saved conversations, Free vs Pro limits enforced on the server, Stripe and any OpenAI-compatible model via the AI SDK.
Agent files included
- project.mdc
- ai.mdc
- stripe.mdc
- database.mdc
- AGENTS.md
- CLAUDE.md
14-day money-back guarantee · lifetime updates
Full details, file tree and FAQ →
One-time price, no subscription. Full refund terms in the terms.
$ not buying today?
Get the next template and the build guides by email.
New VibeBoot starters, Cursor + Claude Code workflows, Stripe and Next.js how-tos. Free, occasional, unsubscribe in one click.
Need a full AGENTS.md for your exact stack? Use the free AGENTS.md generator. Need one rule tailored to your exact stack instead? Try the free Cursor rules generator, or read the best Cursor rules for a Next.js SaaS.
FAQ
Is the Cursor rules pack really free?
Yes. It's a direct zip download under the MIT license. No email, no account. You can use, change and share the rules in personal and commercial projects. The newsletter is optional and only sends rule updates and new templates.
Where do the files go?
The .mdc files go in .cursor/rules/ in your project root, and AGENTS.md and CLAUDE.md go in the root itself. Cursor picks up .cursor/rules automatically. Plain .md files inside .cursor/rules are ignored, which is why the rules use the .mdc extension with frontmatter.
Will these rules flood my context window?
No. Only the two short rules (workflow and security) use alwaysApply: true. The stack rules use globs, so Cursor attaches them only when you work on matching files, like the Stripe rule for billing code.
Does it work with Claude Code, Codex or other agents?
Yes. AGENTS.md is read by Cursor, Codex and other agents that follow the AGENTS.md convention. The included CLAUDE.md imports AGENTS.md for Claude Code and tells it which .mdc file to read before each area of the code.
Which versions do the rules target?
Next.js 15 and 16 (App Router), React 19, Tailwind CSS v4, shadcn/ui, @supabase/ssr, the Stripe Node SDK and AI SDK 5 or later. Each rule tells the agent to check the installed version in package.json first and to trust installed types over memory.
How is this different from the Cursor rules generator?
The generator builds one project.mdc from the options you pick. The pack is a set of separate, scoped rules plus an AGENTS.md template that you drop in and trim. Many people use both: the pack for the stack rules, the generator for a project-specific always-on rule.
Do the VibeBoot starters include these rules?
They ship with their own .cursor/rules, AGENTS.md and CLAUDE.md, written for their exact file layout, and follow the same conventions: Server Components by default, server-side auth checks, raw-body Stripe webhook verification and re-fetching subscriptions before writing. The SaaS Starter has project, Stripe and database rules; the AI Chatbot Starter adds an AI rule. They aren't identical copies of this pack.
vibeboot saas starter
Skip the setup. The VibeBoot SaaS Starter ships with its own project, Stripe and database .cursor/rules, AGENTS.md and CLAUDE.md already written for its code, plus auth, Stripe and a database on Next.js 16.4.3. $49, one-time.
14-day money-back guarantee · lifetime updates
Building an AI chat app? The AI Chatbot Starter ships streaming chat, saved conversations, Free/Pro usage limits enforced on the server and Stripe, with AGENTS.md and .cursor/rules. Get the AI Chatbot Starter, $59
> More free tools
All tools →- VibeBoot DoctorNewPaste any error or your package.json: diagnosis, fix and the rule that prevents it.
- middleware.ts → proxy.tsNewConvert Next.js middleware to Next.js 16 proxy.ts, Auth.js v5 included.
- AGENTS.md checkerNewCheck AGENTS.md for the Next.js 16 managed block, commands and guardrails.
- Access control checkerPaste a route or server action, see what anyone can call.
- Prisma error fixerP2002, P1001, P2021, did not initialize yet: cause and fix.
- Next.js error fixerServer Component, Suspense and hydration errors: cause and fix.
- Env leak checkerPaste your .env, see which secrets would ship to the browser.
- Stripe webhook fixerPaste a Stripe webhook error, get the cause and the fix.
- Auth.js error fixerMissingSecret, UntrustedHost, redirect_uri: cause and fix.
- AGENTS.md generatorA ready AGENTS.md and CLAUDE.md for your Next.js stack.
- Cursor rules generatorBuild one project.mdc rule for your exact stack.
- AI chatbot cost calculatorCost per message, Pro margin and a safe free-tier cap.