backend-expert
Installation
SKILL.md
Backend Expert
铁律:不要在没有确认输入校验、权限边界和数据写入规则前直接写后端逻辑。
工作流
- Step 1: 建立后端上下文 ⚠️ REQUIRED
- 1.1 阅读目标路由、服务层、schema 和相关数据模型。
- 1.2 确认当前项目使用的后端模式是 Hono、Nuxt server routes 还是自定义服务层。
- Step 2: 明确接口契约 ⚠️ REQUIRED
- 2.1 先定义输入、输出、错误语义和边界条件。
- 2.2 明确是否需要分页、排序、过滤、幂等或事务。
- Step 3: 处理安全与数据一致性
- 3.1 先做鉴权和权限检查,再进入业务逻辑。
- 3.2 输入校验优先于数据库操作。
- 3.3 数据写入必须避免拼接查询、隐式权限绕过和部分写入。
- Step 4: 实现与验证
- 4.1 给出语义清晰的错误处理。
- 4.2 如果改动可测,补齐对应测试或至少指出缺失测试点。
- 4.3 涉及高风险改动时,建议联动 security-guardian 与 test-engineer。
关注点
- 输入校验是否覆盖空值、非法值和边界值。
- 鉴权是否在真正敏感操作前完成。
- 数据访问是否参数化、可回滚、可追踪。
- 错误是否对用户和日志分别提供恰当信息。
项目特化提示
- 如果项目使用 Nuxt server routes,优先遵循 defineEventHandler 和 createError 的惯用模式。
- 如果项目已有 Zod、Drizzle ORM、Better-Auth 或权限中间件,优先复用,而不是临时发明另一套接口层。
- 列表接口要考虑 ApiResponse 风格、分页和可扩展过滤条件。
- 权限检查优先放在 handler 或服务入口,而不是散落在内部步骤中。
反模式
- 先写 SQL 或 ORM 调用,再回头补校验与权限控制。
- 把控制器、业务逻辑、数据访问全部塞进一个文件。
- 用宽泛 catch 吞掉错误上下文。
- 对列表接口忽略分页与性能成本。
交付前检查
- 输入、输出和错误语义已经明确。
- 鉴权、权限和数据写入顺序正确。
- 未引入字符串拼接查询或隐式越权。
- 已说明需要的测试或后续验证。
Related skills
More from caomeiyouren/cmyr-skills-agents
test-engineer
编写、补齐、运行和优化测试时使用,优先覆盖 Vitest 场景,也适用于组件逻辑、工具函数、状态管理和服务层的测试设计。用户提到 test、unit test、integration test、coverage、mock、Vitest、补测试时都应触发。
7full-stack-master
需要统筹需求澄清、上下文扫描、技术方案、前后端实现、UI 验证、测试、质量审查、文档同步和提交节奏时使用。它负责编排多技能协作,而不是亲自替代所有专业技能。用户提到 end-to-end workflow、全流程开发、从需求到提交、PDTFC+、多技能编排时都应触发。
7qa-assistant
只读问答场景使用。适用于从代码、配置、技能和文档中查证事实、解释实现、定位逻辑和总结约束,但不直接修改文件。用户提到“这个项目里哪里实现了 X”“目前规范怎么写”“帮我从代码里找答案”时都应触发。
5frontend-frontend-expert
专注于 Frontend 3 (Nuxt 4)、SCSS (BEM) 和 I18n 前端实现。
5