用途:在 Next.js 应用内搭建、重构、调试或评审 Convex 后端,适用于新项目引导、端到端加功能(schema、索引、函数、UI hooks、鉴权、部署)、排查集成故障(缺少 provider、缺少生成代码、客户端/服务端边界错误、缺少环境变量),以及评估 Convex 是否适合实时或协作功能。纯 Next.js UI 工作、确定不用 Convex、或与 Next.js/Convex 实现无关的通用数据库理论不适用。
主要能力与默认做法:开发用 npx convex dev;响应式 hooks 放在 Client Components;优先索引查询而非 .filter(...);无界列表默认分页;外部 I/O 放 actions,仅在需要 Node API 或不支持包时加 "use node";公开函数要求输入校验,通常也加返回校验;用户数据加显式鉴权与归属检查;重复的鉴权/租户检查抽成 helper 或自定义 wrapper。
使用方式:新项目可用 npm create convex@latest;已有 Next.js 应用用 npm install convex 后 npx convex dev,预期生成 convex/ 目录、_generated/ 文件、连接开发部署并提供 NEXT_PUBLIC_CONVEX_URL。数据建模先定表、归属字段、主读索引、列表是否有界、文件是否放 Convex File Storage,关系用 v.id("table")。函数分 query(纯读)、mutation(写与事务读写)、action(外部 API、长任务、非事务编排)。Next.js 边界:useQuery、useMutation、useAction、usePaginatedQuery、usePreloadedQuery 放 Client Components;服务端预载用 preloadQuery + usePreloadedQuery,仅服务端读用 fetchQuery,Server Actions/Route Handlers 用 fetchMutation 或 fetchAction,不要在 Server Components 调用 React hooks。大列表用 .paginate(paginationOpts) 配 usePaginatedQuery。功能独立且可复用时考虑 Convex component。开发模式按环境选标准 dev、Agent Mode 或本地部署。
校验与部署:运行 python {baseDir}/scripts/validate_project.py --root .,可加 --strict 或 --json,检查安装/生成代码缺失、provider 或环境变量接线、非客户端组件使用 hook、隐式表访问、.collect()/.filter() 异味、缺少校验器、"use node" 混用、scheduler 指向公开函数、TypeScript 严格性与 ESLint 插件缺失。生产或 CI 用 npx convex deploy,Vercel 常见为 npx convex deploy --cmd "npm run build"。
限制:资料未提供具体收费、价格、平台支持范围与效果数据;具体实现细节需参考其 references 目录下的分主题文档。