用途:该技能用于在开发 Payload CMS 项目时提供指导,涉及 payload.config.ts、集合(collections)、字段(fields)、钩子(hooks)、访问控制(access control)以及 Payload API,也用于调试校验错误等场景。Payload 是 Next.js 原生的 CMS,采用 TypeScript 优先架构,提供管理面板、数据库管理、REST/GraphQL API、身份认证与文件存储。
主要能力:技能以快速参考表形式覆盖常见任务,如自动生成 slug(slugField())、按用户限制内容(带查询的访问控制)、本地 API 用户操作(user + overrideAccess: false)、草稿/发布工作流(versions: { drafts: true })、计算字段(virtual: true 配合 afterRead)、条件字段(admin.condition)、自定义字段校验(validate 函数)、关系列表过滤(filterOptions)、字段选择(select 参数)、自动设置作者/日期(beforeChange 钩子)、防止钩子循环(req.context 检查)、级联删除(beforeDelete 钩子)、地理空间查询(point 字段配合 near/within)、反向关系(join 字段类型)、Next.js 重新验证、按关系查询、复杂查询(AND/OR 逻辑)、事务、后台任务(Jobs queue)、自定义 API 路由、云存储、多语言、插件开发等。
使用方式:独立版安装命令为 npx skills add noklip-io/agent-skills --skill payload。Claude Code 用户可优先安装官方 Payload Marketplace 插件(含本技能、MCP 工具及额外功能),仅在不想使用完整插件时才安装此独立技能。快速开始:npx create-payload-app@latest my-app,然后 cd my-app,pnpm dev。配置通过 buildConfig 完成,需设置 admin.user、collections、editor、secret、typescript.outputFile 与 db 适配器。
适用场景:适用于使用 Payload CMS 的 Next.js 项目开发、集合与字段设计、访问控制实现、查询编写、插件开发及安全审查。
限制与安全要点:本地 API 默认绕过所有访问控制,即使传入 user;需显式设置 overrideAccess: false 才会执行权限检查。钩子中的嵌套操作若未传递 req 会破坏事务原子性。钩子触发同一钩子会造成无限循环,需用 context 标志避免。更多细节见 FIELDS.md、COLLECTIONS.md、HOOKS.md、ACCESS-CONTROL.md、QUERIES.md、ADAPTERS.md、ADVANCED.md、PLUGIN-DEVELOPMENT.md 等参考文档。官方资源包括 https://payloadcms.com/docs 与 https://github.com/payloadcms/payload。