name: crud description: “快速自动生成CRUD。把样板留给AI。当用户提到CRUD、实体生成或想要创建API端点时使用。不要用于:UI组件创建、表单设计、数据库架构讨论。” description-en: “Auto-generate CRUD quickly. Boilerplate left to AI. Use when user mentions CRUD, entity generation, or wants to create API endpoints. Do NOT load for: UI component creation, form design, database schema discussions.” description-ja: “快速自动生成CRUD。把样板留给AI。当用户提到CRUD、实体生成或想要创建API端点时使用。不要用于:UI组件创建、表单设计、数据库架构讨论。” allowed-tools: [“Read”, “Write”, “Edit”, “Bash”, “Grep”, “Glob”] argument-hint: “<实体名称>” user-invocable: false
CRUD 技能
为指定实体(表)自动生成 生产就绪级别 的 CRUD 功能。
快速参考
- “为任务管理创建CRUD” →
/crud tasks - “还想要搜索和分页” → 包含所有功能
- “包括权限(谁可以查看/编辑)” → 设置授权/规则
交付物
- CRUD + 验证 + 授权 + 测试,完整的生产安全集
- 最小化差异以匹配现有数据库/代码
功能:
- 自动添加验证 (Zod)
- 自动配置认证/授权 (行级安全)
- 支持关系(一对多、多对多)
- 分页、搜索、过滤器
- 自动生成的测试用例
自动调用技能
此技能必须使用技能工具显式调用以下技能:
| 技能 | 目的 | 调用时机 |
|---|---|---|
impl |
实现(父技能) | CRUD 功能实现时 |
verify |
验证(父技能) | 实现后验证时 |
执行流程
详细步骤描述在以下阶段。
阶段 1: 实体分析
- 从 $ARGUMENTS 解析实体名称
- 检测现有模式 (Prisma, Drizzle, 原始 SQL)
- 推断字段类型和关系
阶段 2: CRUD 生成
- 如果需要,生成模型/模式
- 创建 API 端点 (REST 或 tRPC)
- 添加验证模式 (Zod)
- 配置授权规则
阶段 3: 测试生成
- 为每个端点创建单元测试
- 添加集成测试
- 生成测试夹具
阶段 4: 验证
- 运行类型检查
- 运行测试
- 验证构建
支持框架
| 框架 | 检测 | 生成的文件 |
|---|---|---|
| Next.js + Prisma | prisma/schema.prisma |
API 路由,Prisma 客户端 |
| Next.js + Drizzle | drizzle.config.ts |
API 路由,Drizzle 查询 |
| Express | express 在 package.json 中 |
控制器,路由 |
| Hono | hono 在 package.json 中 |
路由处理器 |
输出结构
src/
├── lib/
│ └── validations/
│ └── {entity}.ts # Zod 模式
├── app/api/{entity}/
│ ├── route.ts # GET(列表),POST(创建)
│ └── [id]/
│ └── route.ts # GET,PUT,DELETE
└── tests/
└── {entity}.test.ts # 测试用例
相关技能
impl- 功能实现verify- 构建验证auth- 认证/授权