name: format-standardize description: 标准化格式并对交付物应用一致的样式。在生成后使用,以确保输出符合用户的格式标准和惯例。
格式标准化技能
目的
确保生成的交付物遵循一致的格式、样式和结构标准。这是使工作看起来专业且易于维护的“润色”步骤。
操作步骤
- 审查生成的交付物
- 加载用户标准以了解格式偏好
- 应用标准化:
- 代码格式化(缩进、命名、结构)
- 文档格式化(标题、列表、间距)
- 所有元素的一致性
- 专业外观
- 使用用户指定的工具/惯例(如果指定):
- 例如:“使用 Prettier 格式化代码”
- 例如:“使用 Markdown 标准标题”
- 在交付前验证完全一致性
按类型检查格式
代码特性
- [ ] 一致的缩进(空格/制表符)
- [ ] 命名约定(camelCase、snake_case 等)
- [ ] 运算符和括号周围间距一致
- [ ] 注释格式一致
- [ ] 导入/导出组织有序
- [ ] 行长度一致
- [ ] 分号使用或不使用保持一致
- [ ] 引号风格(单引号/双引号)一致
文档
- [ ] 一致的标题级别(# ## ###)
- [ ] 一致的列表格式(项目符号 vs 数字)
- [ ] 代码块格式正确
- [ ] 链接格式正确
- [ ] 各部分之间间距一致
- [ ] 表格格式(如适用)
- [ ] 一致的标点符号
重构
- [ ] 重构前代码格式一致
- [ ] 重构后代码格式一致
- [ ] 解释说明格式清晰
- [ ] 清晰突出差异
测试套件
- [ ] 测试文件组织有序
- [ ] 测试函数命名一致
- [ ] 断言格式一致
- [ ] 设置/清理缩进一致
- [ ] 注释格式一致
内容创作
- [ ] 章节标题一致
- [ ] 示例格式一致
- [ ] 列表格式一致
- [ ] 语气/口吻全文一致
- [ ] 为可读性添加换行
流程
- 获取生成的交付物
- 使用 StandardsRepository 加载用户保存的标准(查找格式偏好)
- 应用标准化规则
- 使用适当的工具格式化代码/文本:
- 代码:ESLint、Prettier 或手动格式化
- 文档:Markdown 标准
- 内容:风格指南一致性
- 进行最终一致性检查
- 返回格式化后的输出
加载标准
使用 StandardsRepository 访问格式偏好:
const standards = standardsRepository.getStandards(context.projectType)
if (standards && standards.commonPatterns) {
// 从 commonPatterns 应用用户的格式偏好
standards.commonPatterns.forEach(pattern => {
// 例如:“使用 2 空格缩进”,“按字母顺序排序导入”
applyFormattingPattern(pattern)
})
}
有关接口详情,请参阅 .claude/lib/standards-repository.md。
输出格式
# 已应用的格式化
## 使用的标准
- [第一个格式化标准]
- [第二个格式化标准]
- [应用的工具/惯例]
## 所做的更改
- [应用的格式化更改列表]
- [示例:“按字母顺序排序了导入”]
- [示例:“应用了 2 空格缩进”]
## 格式化后的交付物
[完整的格式化输出,准备就绪]
## 验证
- 格式一致:✓
- 专业外观:✓
- 准备就绪,可供审查/交付:✓
成功标准
✓ 所有格式一致 ✓ 遵循用户标准 ✓ 专业外观 ✓ 准备好进行代码审查或发布 ✓ 没有遗留格式不一致
常见格式化规则
对于代码:
- 使用用户的代码检查器(ESLint、Pylint 等)
- 应用用户的代码格式化工具(Prettier、Black 等)
- 遵循用户的命名约定
- 全文一致的缩进
对于文档:
- 一致的 Markdown 格式
- 正确的标题层级
- 一致的代码块格式
- 正确的链接格式
对于内容:
- 一致的章节结构
- 一致的列表格式
- 全文保持专业语气
- 正确的标点符号和大小写
示例
输入(格式化前):
const MyComponent = ( props ) => {
return (
<div>
{ props.title }
</div>
);
};
export default MyComponent
格式化后(假设遵循标准 React 惯例):
const MyComponent = (props) => {
return (
<div>
{props.title}
</div>
);
};
export default MyComponent;
所做的更改:
- 移除了函数参数中的空格
- 移除了 JSX 表达式大括号周围的空格
- 添加了分号
- 一致的缩进
注意事项
- 如果用户在标准中定义了格式偏好,请使用它们
- 专业的格式能显著提升感知质量
- 一致性比具体选择更重要(空格 vs 制表符 - 选择一种并坚持使用)
- 此步骤使交付物看起来“可用于生产”