输出风格
让 Claude Code 说你的话
输出风格配置是让 Claude Code 更好服务你的秘密武器。就像调试一个得力助手的沟通方式,通过精心配置输出风格,你可以让 AI 的回答更符合你的工作习惯、团队文化和项目需求。
为什么需要定制输出风格?
默认风格的局限性
# Claude Code 的默认输出风格
🤖 标准化 - 适合大多数用户,但不够个性化
📚 详细解释 - 有时太冗长,影响效率
🎯 通用建议 - 缺少项目特定的优化
💬 正式语调 - 可能不符合团队文化
定制风格的好处
# 定制输出风格的价值
⚡ 提高效率 - 获得直接可用的答案
🎨 风格一致 - 与团队代码风格匹配
🧠 认知适配 - 符合个人思维模式
📋 格式标准 - 满足项目文档要求
输出风格的维度
1. 详细程度 📊
控制输出信息的丰富程度:
# 简洁风格
> 修复登录bug
AI回答:
检查 AuthService.validateToken() 方法, token 过期判断逻辑有问题。
修改第47行:
- if (token.exp > Date.now())
- if (token.exp * 1000 > Date.now())
# 详细风格
> 修复登录bug
AI回答:
问题分析
登录状态丢失通常由以下原因造成:
- JWT token 过期判断错误
- 前端存储清理不当
- 服务端验证逻辑问题
根因定位
检查 src/services/AuthService.ts:47 发现 token.exp 是秒级时间戳,但 Date.now() 返回毫秒
解决方案
修改时间戳比较逻辑:
- if (token.exp > Date.now())
- if (token.exp * 1000 > Date.now())
验证步骤
- 清除localStorage
- 重新登录测试
- 等待token过期自动测试
2. 代码 风格 💻
匹配项目的编码规范:
// 函数式风格偏好
const getUserProfile = async (userId) => {
const response = await api.get(`/users/${userId}`);
return response.data;
};
// 面向对象风格偏好
class UserService {
async getUserProfile(userId) {
const response = await this.api.get(`/users/${userId}`);
return response.data;
}
}
// TypeScript 严格类型风格
interface UserProfile {
id: string;
name: string;
email: string;
}
const getUserProfile = async (userId: string): Promise<UserProfile> => {
const response = await api.get<UserProfile>(`/users/${userId}`);
return response.data;
};
3. 语言风格 🗣️
调整沟通的语调和措辞:
# 正式技术风格
> "基于现有架构,建议采用工厂模式实现用户认证模块的扩展性..."
# 轻松对话风格
> "这里用个工厂模式比较合适,这样以后加新的登录方式会很方便..."
# 直接实用风格
> "用工厂模式。参考 src/auth/AuthFactory.ts 的实现。"
# 教学解释风格
> "我们来用工厂模式解决这个问题。工厂模式的核心思想是..."
4. 输出格式 📋
定制信息的组织结构:
# 问题解决型格式
## 问题
用户登录后状态不一致
## 原因
Redux store 初始化时机问题
## 解决方案
[具体代码和步骤]
## 测试方法
[验证步骤]
---
# 代码审查格式
### ✅ 优点
- 错误处理完善
- 类型定义清晰
### ⚠️ 建议改进
- 可以提取重复逻辑
- 考虑添加单元测试
### 📝 具体修改
[代码修改建议]
---
# 快速参考格式
**命令**: `npm run build`
**作用**: 构建生产版本
**注意**: 需要先设置环境变量
**相关**: build.sh, webpack.config.js