用途:在已有 FastAPI 项目中新增 API 接口,适用于 CRUD 操作、带鉴权的接口、SQLAlchemy 2.0 异步查询以及接口测试覆盖。
主要能力与流程:技能分四个阶段。第一阶段进入计划模式,先探索项目结构(应用入口、路由组织方式、models/schemas/crud/services 目录、依赖清单)、既有接口与 ORM 模式、数据库会话与鉴权方式、响应格式,以及测试目录、测试客户端与夹具。第二阶段用 AskUserQuestion 分批提问,确认资源类型、HTTP 方法、字段复杂度、鉴权方式(JWT Bearer、API Key、公开或复用现有)、RBAC(角色或归属校验)、分页方式(游标、offset/limit 或不分页)与缓存策略。第三阶段通过 ExitPlanMode 输出实施计划,含待创建或修改的文件路径、Pydantic 模型、SQLAlchemy 模型、CRUD/service 层、路由、依赖与测试用例。第四阶段按顺序实现:Pydantic schema、SQLAlchemy 模型、异步 CRUD、带依赖的路由、测试。
用法要点:schema 使用 ConfigDict(from_attributes=True) 支持 ORM 模式;列表接口使用分页并限制 limit;非公开接口统一加鉴权依赖;返回状态码规范(POST 201、DELETE 204),错误使用 HTTPException 与一致 detail;测试用 httpx AsyncClient 与 ASGITransport 覆盖正常路径、未找到、未授权和校验错误;路由需在主应用注册,过滤与排序列建索引。
限制:资料未提供该技能的安装命令、支持的 FastAPI 或 Python 版本、收费方式与价格,也暂未提供效果数据;实际实现依赖目标项目已有结构,需先完成探索与需求确认。