上下文角色:开发/调研/审查
通过为 Claude Code 设定不同的角色,你可以获得更专业、更有针对性的帮助。本指南介绍如何使用角色化的上下文来提高工作效率。
角色化的价值
为什么使用角色
不同的任务需要不同的思维方式:
- 开发角色:专注于实现和代码质量
- 调研角色:专注于探索和学习
- 审查角色:专注于质量和最佳实践
- 架构角色:专注于设计和决策
角色的优势
- 获得更专业的建议
- 保持任务的焦点
- 提高响应的相关性
- 优化上下文使用
开发角色
角色定义
设定开发角色:
作为开发工程师,帮我实现用户认证功能。
技术栈:
- Node.js + Express
- TypeScript
- PostgreSQL
- JWT
要求:
- 遵循 RESTful 设计
- 完整的错误处理
- 输入验证
- 单元测试开发角色的特点
专注于:
- 功能实现
- 代码质量
- 测试覆盖
- 性能优化
- 错误处理
开发任务示例
实现新功能:
作为开发工程师,实现订单管理功能:
需求:
- 创建订单
- 查询订单
- 更新订单状态
- 取消订单
技术要求:
- 使用事务保证数据一致性
- 添加乐观锁防止并发问题
- 实现订单状态机
- 完整的单元测试修复 Bug:
作为开发工程师,修复登录失败的问题:
问题描述:
- 用户无法登录
- 错误信息:Invalid credentials
- 只在生产环境出现
调试步骤:
1. 重现问题
2. 检查日志
3. 对比开发和生产环境
4. 定位根因
5. 实施修复
6. 验证修复重构代码:
作为开发工程师,重构用户服务:
目标:
- 提高代码可读性
- 减少代码重复
- 改善错误处理
- 增强类型安全
约束:
- 保持 API 接口不变
- 保持测试通过
- 不影响性能调研角色
角色定义
设定调研角色:
作为技术调研员,帮我评估状态管理方案。
背景:
- React 项目
- 中等复杂度
- 团队 5 人
需要对比:
- Redux
- Zustand
- Jotai
- Recoil
评估维度:
- 学习曲线
- 性能
- 开发体验
- 生态系统
- 维护成本调研角色的特点
专注于:
- 技术对比
- 优缺点分析
- 适用场景
- 最佳实践
- 学习资源
调研任务示例
技术选型:
作为技术调研员,帮我选择数据库方案:
项目需求:
- 用户数据存储
- 高并发读写
- 复杂查询
- 数据一致性要求高
候选方案:
- PostgreSQL
- MySQL
- MongoDB
请提供:
- 详细对比
- 推荐方案
- 理由说明学习新技术:
作为技术调研员,帮我学习 React Server Components:
目标:
- 理解工作原理
- 了解使用场景
- 掌握最佳实践
- 评估迁移成本
请提供:
- 概念解释
- 代码示例
- 实践建议
- 学习资源问题调研:
作为技术调研员,调研性能问题的解决方案:
问题:
- 列表渲染慢
- 1000+ 条数据
- 复杂的单元格
调研方向:
- 虚拟滚动
- 分页加载
- 懒加载
- Web Worker
请提供:
- 各方案的优缺点
- 实现难度
- 性能对比
- 推荐方案审查角色
角色定义
设定审查角色:
作为代码审查员,审查这个 PR:
审查重点:
- 代码质量
- 安全性
- 性能
- 可维护性
- 测试覆盖
项目规范:
- ESLint (Airbnb)
- TypeScript strict
- 测试覆盖率 > 80%审查角色的特点
专注于:
- 代码规范
- 最佳实践
- 潜在问题
- 改进建议
- 质量保证
审查任务示例
代码审查:
作为代码审查员,审查用户认证模块:
文件:
- src/auth/login.ts
- src/auth/register.ts
- src/middleware/auth.ts
审查清单:
- [ ] 输入验证
- [ ] 错误处理
- [ ] 安全性
- [ ] 性能
- [ ] 代码风格
- [ ] 测试覆盖
- [ ] 文档完整性安全审查:
作为安全审查员,审查 API 端点的安全性:
端点:POST /api/users
检查项:
- 认证和授权
- 输入验证和清理
- SQL 注入防护
- XSS 防护
- CSRF 防护
- 速率限制
- 敏感信息处理性能审查:
作为性能审查员,审查这个组件的性能:
组件:ProductList
关注点:
- 不必要的重渲染
- 大数据量处理
- 内存泄漏
- 网络请求优化
- 图片加载优化架构角色
角色定义
设定架构角色:
作为架构师,设计电商平台的系统架构:
需求:
- 支持 10 万日活用户
- 高可用性(99.9%)
- 可扩展性
- 安全性
技术栈:
- 微服务架构
- 容器化部署
- 云原生
请提供:
- 系统架构图
- 技术选型
- 扩展策略
- 风险评估架构角色的特点
专注于:
- 系统设计
- 技术选型
- 扩展性
- 可维护性
- 风险管理
架构任务示例
系统设计:
作为架构师,设计订单系统:
功能需求:
- 创建订单
- 支付处理
- 库存管理
- 订单状态跟踪
非功能需求:
- 高并发(1000 TPS)
- 数据一致性
- 高可用性
- 可扩展性
请提供:
- 架构设计
- 数据模型
- 接口设计
- 技术方案技术决策:
作为架构师,决策缓存策略:
场景:
- 商品信息查询
- 高频访问
- 数据更新不频繁
考虑因素:
- 缓存位置(客户端/CDN/服务端)
- 缓存策略(LRU/LFU/TTL)
- 缓存更新(主动/被动)
- 缓存一致性
请提供:
- 推荐方案
- 实施细节
- 风险和缓解角色切换
何时切换角色
在不同阶段使用不同角色:
阶段 1(架构角色):
设计系统架构
阶段 2(调研角色):
评估技术方案
阶段 3(开发角色):
实现功能
阶段 4(审查角色):
代码审查和优化平滑切换
在会话中切换角色:
之前作为开发工程师实现了功能,
现在切换到审查员角色,
审查刚才实现的代码多角色协作
模拟团队协作
使用多个会话模拟团队:
会话 1(架构师):
设计系统架构
会话 2(开发工程师):
实现功能
会话 3(审查员):
代码审查
会话 4(测试工程师):
编写测试角色对话
让不同角色讨论方案:
作为架构师,我建议使用微服务架构。
现在作为开发工程师,评估这个方案的实施难度。
再作为运维工程师,评估运维复杂度。专业化角色
前端开发角色
作为前端开发工程师:
专长:
- React/Vue 开发
- 响应式设计
- 性能优化
- 用户体验
关注点:
- 组件设计
- 状态管理
- 样式实现
- 交互体验后端开发角色
作为后端开发工程师:
专长:
- API 设计
- 数据库设计
- 性能优化
- 安全性
关注点:
- 接口设计
- 数据模型
- 业务逻辑
- 系统集成DevOps 角色
作为 DevOps 工程师:
专长:
- CI/CD
- 容器化
- 监控告警
- 自动化运维
关注点:
- 部署流程
- 环境配置
- 性能监控
- 故障处理测试工程师角色
作为测试工程师:
专长:
- 测试设计
- 自动化测试
- 性能测试
- 安全测试
关注点:
- 测试覆盖
- 边界情况
- 性能指标
- 安全漏洞角色模板
开发角色模板
作为[前端/后端]开发工程师,实现[功能名称]:
技术栈:
- [技术列表]
需求:
- [需求 1]
- [需求 2]
技术要求:
- [要求 1]
- [要求 2]
验收标准:
- [标准 1]
- [标准 2]调研角色模板
作为技术调研员,调研[主题]:
背景:
- [项目背景]
- [当前状况]
目标:
- [调研目标]
调研范围:
- [范围 1]
- [范围 2]
输出要求:
- [要求 1]
- [要求 2]审查角色模板
作为[代码/安全/性能]审查员,审查[目标]:
审查范围:
- [范围 1]
- [范围 2]
审查标准:
- [标准 1]
- [标准 2]
输出要求:
- 问题列表
- 严重程度
- 改进建议最佳实践
明确角色定位
清晰定义角色的职责和关注点:
作为安全审查员(不是开发工程师),
只关注安全问题,不提供实现建议保持角色一致性
在同一任务中保持角色一致:
在这个会话中,我将始终以开发工程师的角色工作适时切换角色
在合适的时机切换角色:
功能实现完成,现在切换到审查员角色,
审查代码质量记录角色决策
记录不同角色的决策:
架构师决策:使用微服务架构
开发工程师反馈:实施复杂度高
最终决策:先使用单体架构,预留微服务化空间常见场景
场景 1:新功能开发
1. 架构师:设计功能架构
2. 开发工程师:实现功能
3. 审查员:代码审查
4. 测试工程师:编写测试场景 2:技术选型
1. 调研员:调研技术方案
2. 架构师:评估和决策
3. 开发工程师:评估实施难度
4. 运维工程师:评估运维成本场景 3:性能优化
1. 性能审查员:识别瓶颈
2. 架构师:设计优化方案
3. 开发工程师:实施优化
4. 测试工程师:验证效果场景 4:安全加固
1. 安全审查员:识别安全问题
2. 架构师:设计安全方案
3. 开发工程师:实施加固
4. 安全审查员:验证效果总结
角色化的上下文管理可以:
- 获得更专业的建议
- 保持任务的焦点
- 提高工作效率
- 模拟团队协作
- 提升决策质量
通过掌握不同角色的使用,你可以充分发挥 Claude Code 的潜力,获得更高质量的帮助。