{
  "id": "agents-md-nextjs-saas",
  "type": "rules",
  "category": "rules",
  "locale": "es",
  "url": "/es/rules/agents-md-nextjs-saas",
  "title": "Reglas de AGENTS.md para una aplicación SaaS de Next.js",
  "description": "Un AGENTS.md listo para usar que mantiene a los agentes de codificación de IA dentro de la pila y las convenciones en un código base SaaS de Next.js.",
  "tools": [
    "Cursor",
    "Claude Code",
    "Codex"
  ],
  "stack": [
    "Next.js",
    "TypeScript",
    "Tailwind"
  ],
  "tags": [
    "agents-md",
    "nextjs",
    "conventions"
  ],
  "difficulty": null,
  "updated": "2026-06-08",
  "markdown": "Coloca esto en la raíz de tu repositorio como `AGENTS.md`. La mayoría de los agentes (Codex, Cursor, Claude Code) lo leen automáticamente y lo tratan como reglas del proyecto.\n\n## AGENTS.md\n\n```md title=\"AGENTS.md\"\n# Project Rules\n\n## Stack\n- Next.js (App Router) + TypeScript (strict).\n- Tailwind CSS v4. No CSS-in-JS.\n- PostgreSQL via the existing db client in `src/lib/db.ts`.\n\n## Hard rules\n- Never add a dependency without listing it and why first.\n- Server Components by default. Only add `\"use client\"` when you need state,\n  effects, or browser APIs — and keep those components small.\n- All env vars go through `src/lib/env.ts` (zod-validated). Never read\n  `process.env` directly in app code.\n- Never put secrets or server-only code in a Client Component.\n\n## Conventions\n- Co-locate route code under `app/`. Shared logic lives in `src/lib/`.\n- Use the existing UI primitives in `src/components/ui/` before adding new ones.\n- Write the diff and wait for approval before editing more than 3 files.\n\n## Definition of done\n- `bun run typecheck` and `bun run lint` pass.\n- No new `any`. No unused exports.\n```\n\n## Por qué estas reglas\n\n- **\"Componentes del servidor por defecto\"** es la mayor palanca de calidad en proyectos de App Router — consulta el patrón de error relacionado en el código de servidor dentro del cliente.\n- **Validación centralizada de env** detiene la clase más común de errores de IA: leer silenciosamente un valor `process.env` indefinido.\n\n## Buen ajuste\n\n- Aplicaciones SaaS de Next.js de tamaño mediano con un conjunto de convenciones establecido.\n\n## No es adecuado\n\n- Prototipos desde cero donde quieres que el agente actúe rápido y sin restricciones."
}