name: generate-output description: 根据用户标准和最佳实践创建交付物(代码、文档、测试、内容)。在验证通过后使用,实际构建工作成果。
生成输出技能
目的
将已验证的需求转化为实际的交付物(代码、文档、测试、内容)。此技能遵循用户在其标准中定义的原则和常见模式。
操作步骤
- 读取已验证的需求(从上一步骤)
- 加载项目类型的标准(从 standards.json)以理解其原则和模式
- 生成交付物,基于:
- 用户的具体需求
- 他们为此项目类型保存的原则
- 他们的常见模式(他们总是做的事情)
- 此类工作的最佳实践
- 遵循他们的模式 - 如果他们定义了常见模式,请包含它们:
- 示例:“始终包含错误处理” → 包含它
- 示例:“始终编写 JSDoc 注释” → 包含它
- 创建完整、可立即使用的输出
项目类型特定指导
代码功能
- 编写完整、可用于生产环境的代码
- 包含属性类型、类型注释或模式验证
- 包含错误处理
- 为复杂逻辑添加注释
- 包含使用示例或测试用例
- 遵循他们的编码标准(命名、结构、模式)
文档
- 结构清晰,带有标题
- 顶部包含目的/概述
- 添加示例和用例
- 如果适用,包含故障排除
- 链接相关文档
- 如果定义了,使用他们的文档模板
重构
- 展示“重构前”的代码
- 展示“重构后”的代码
- 解释改进之处
- 突出显示更改内容及原因
- 包含可复制的重构后代码
- 注明任何行为变化
测试套件
- 编写全面的测试
- 测试正常路径和边界情况
- 使用描述性的测试名称
- 根据需要包含设置/清理步骤
- 遵循他们的测试惯例
- 确保测试可维护
内容创作
- 引人入胜的引言
- 结构清晰,分节明确
- 使用标题、列表和示例
- 包含实用示例
- 总结关键要点
- 适合目标受众的语气
流程
- 审查需求
- 使用 StandardsRepository 加载他们的标准
- 识别他们对此类型的常见模式
- 生成输出
- 根据他们的原则进行自我检查
- 呈现输出并附上简要摘要
加载标准
使用 StandardsRepository 访问标准:
const standards = standardsRepository.getStandards(context.projectType)
if (standards) {
// 使用他们的原则和模式
const principles = standards.principles
const patterns = standards.commonPatterns
// 遵循他们的标准生成输出
} else {
// 遵循最佳实践生成
}
有关接口详细信息,请参阅 .claude/lib/standards-repository.md。
输出格式
交付工作成果时采用以下格式:
# [交付物标题]
## 摘要
[对所创建内容的简要描述]
## 应用的原则
- [来自他们标准的第一个原则]
- [第二个原则]
- [第三个原则]
## 包含的常见模式
- [模式1:简要说明]
- [模式2:简要说明]
## 交付物
[完整的代码、文档、测试或内容]
## 后续步骤
[他们接下来应该做什么 - 格式化、测试、审查]
成功标准
✓ 交付物完整且可立即使用 ✓ 遵循用户的原则和模式 ✓ 适合项目类型 ✓ 专业质量 ✓ 包含必要的支持元素(注释、示例、结构)
生成示例
项目类型:React 组件 用户需求:“具有键盘导航功能的可搜索下拉组件” 他们的标准包括:
- 原则:“可重用、可测试、文档齐全”
- 模式:“使用 TypeScript,包含 PropTypes,导出 story”
生成的输出包括:
- 完整的 TypeScript React 组件
- PropTypes 验证
- 错误边界
- 键盘事件处理程序
- Storybook story 文件
- 使用示例
- 复杂逻辑的注释
注意事项
- 如果用户的标准定义了特定模式,请务必包含它们
- 超越最低要求 - 创建他们乐于使用的东西
- 如果不确定某个细节,请遵循他们的反模式指导(做与他们要求避免的事情相反的事)
- 质量优于数量 - 一个精心制作的交付物胜过多个平庸的交付物