cursor-rules-pack-v2-cursorrules-prompt-file — правило для Cursor
Набор из 7 правил для Cursor: зависимости, ошибки, состояние, вебхуки и запросы к базе данных. Подходит для проверки решений агента при работе с кодом.
.cursor/rules/cursor-rules-pack-v2-cursorrules-prompt-file.mdcЧто делает cursor-rules-pack-v2-cursorrules-prompt-file
Правило добавляет в Cursor 7 отдельных требований. Перед подключением npm-пакета агент должен описать его назначение, проверить дату последней публикации и оценить вариант без зависимости. Для асинхронных операций нужны обработка ошибок и пользовательские состояния, а комментарии допустимы только для неочевидной логики, обходных решений и сложных алгоритмов.
Остальные правила задают иерархию состояния для URL, React, Zustand и React Query, требуют использовать Promise.all для независимых запросов, проверять подпись вебхука в первых строках обработчика и сохранять исходное событие. Запросы к базе должны выбирать конкретные поля и использовать пагинацию при результате больше 50 строк. Метаданные файла содержат globs: **/* и alwaysApply: false. Для проекта это жёсткое ограничение: Redux использовать нельзя.
Какие задачи решает
- проверить необходимость новой npm-зависимости
- задать обработку ошибок в асинхронном коде
- развести состояние URL, React, Zustand и React Query
- защитить обработчик входящих вебхуков
- ограничить поля и размер ответа базы данных
Примеры запросов агенту
- Проверь этот код по правилам обработки ошибок и добавь пользовательское состояние ошибки.
- Оцени новую npm-зависимость: опиши её назначение, проверь дату публикации и предложи вариант без неё.
- Проверь обработчик вебхука: подпись должна проверяться сразу, событие сохраняться до обработки, а повторная доставка учитываться по ID.
Как установить cursor-rules-pack-v2-cursorrules-prompt-file
Вручную: положить файлы
.cursor/rules/cursor-rules-pack-v2-cursorrules-prompt-file.mdcВо frontmatter: description, globs, alwaysApply
Вручную: положить файлы
.claude/rules/cursor-rules-pack-v2-cursorrules-prompt-file.mdПоле paths во frontmatter ограничивает файлы: globs из источника → paths
AGENTS.md
Codex читает AGENTS.md: вставьте текст правила туда
Вручную: положить файлы
.github/instructions/cursor-rules-pack-v2-cursorrules-prompt-file.instructions.mdПоле applyTo задаёт, к каким файлам применять: globs из источника → applyTo
Вручную: положить файлы
.devin/rules/cursor-rules-pack-v2-cursorrules-prompt-file.mdВручную: положить файлы
.clinerules/cursor-rules-pack-v2-cursorrules-prompt-file.mdПо шагам, с командами для каждой платформы: Cursor rules: файлы .mdc, четыре режима и замена .cursorrules
Вопросы о cursor-rules-pack-v2-cursorrules-prompt-file
Как установить cursor-rules-pack-v2-cursorrules-prompt-file в Cursor?
Поместите файл в .cursor/rules/cursor-rules-pack-v2-cursorrules-prompt-file.mdc.
Что делает cursor-rules-pack-v2-cursorrules-prompt-file?
Он задаёт 7 правил для работы с зависимостями, ошибками, состоянием, параллельными запросами, вебхуками и базой данных.
Какие ограничения есть для запросов к базе данных?
Правило требует выбирать только нужные поля вместо полной записи. Для результата больше 50 строк нужна пагинация через take/skip или курсор.
Исходный текст
cursor-rules-pack-v2-cursorrules-prompt-file.mdc · CC0-1.0
---
description: "7 sample production-tested rules (dependency discipline, error handling, state management, webhook security, and more). See the pack README for full-pack details."
globs: **/*
alwaysApply: false
---
# Cursor Rules Pack v2 — Sample Rules
# 7 production-tested rules from the full 50-rule pack
# Full pack: https://oliviacraftlat.gumroad.com/l/wyaeil
## Rule 1 — Dependency Discipline
Before suggesting a new npm package: (1) state what it does in one sentence, (2) check if it's actively maintained (last publish < 6 months), (3) confirm whether we could implement it in < 30 lines without the dependency. Prefer fewer, well-maintained packages. Never add a dependency for a task under 20 lines of code.
## Rule 2 — Explicit Error Handling
Always wrap async operations in try/catch. Never swallow errors silently. Return typed error objects using a Result pattern or throw typed errors. Log errors with context: logger.error('[FunctionName] description', { error, context }). Always provide user-facing error states in UI components.
## Rule 3 — Comments Policy
Write self-documenting code first. Add comments only for: (1) non-obvious business logic — explain WHY, not WHAT, (2) workarounds — explain why the workaround exists and link to the issue, (3) complex algorithms — reference the algorithm name. Never comment what the code clearly does.
## Rule 4 — State Management Hierarchy
Follow this state hierarchy strictly:
- URL state → filters, pagination, search (useSearchParams)
- React state → UI-only, ephemeral (useState)
- Zustand → cross-component app state
- React Query → all server state
Never use Zustand to cache server data — that's React Query's job. Never reach for Redux.
## Rule 5 — Parallel Data Fetching
Identify and parallelize independent data fetches. Never await sequentially when operations are independent — use Promise.all. When making a sequential await, add a comment explaining the dependency that forces the sequence.
## Rule 6 — Webhook Security
For incoming webhooks: verify the signature in the first 3 lines of the handler — reject immediately if invalid. Respond with HTTP 200 within 5 seconds — offload processing to a background job. Store the raw webhook event before processing. Implement idempotency using the event ID.
## Rule 7 — Database Query Safety
Never return full database records to the client — always use select to specify exactly which fields are needed. This prevents accidentally exposing password hashes, reset tokens, internal flags, and other sensitive fields. For queries that could return more than 50 rows, always add pagination (take/skip or cursor-based).
© PatrickJS · CC0-1.0 · PatrickJS/awesome-cursorrules