design-an-interface 是做什么的?
使用并行子智能体为模块生成多个截然不同的接口设计方案。当用户想要设计API、探索接口选项、比较模块形态或提到“设计两次”时使用。
工作原理
当用户表达接口设计需求时,该技能会启动多个并行子智能体。每个子智能体独立工作,基于相同的功能需求,但采用不同的设计哲学或约束条件。例如,一个子智能体可能采用函数式API风格,另一个采用面向对象风格,第三个则采用纯数据结构驱动风格。最终结果是一组差异化的接口设计草案。
使用场景
- API设计:为新的库或微服务设计公共接口
- 模块重构:寻找更优的模块组织方式或签名
- 探索选项:在决定最终方案前,评估多种设计方向
- 设计迭代:用户明确要求“设计两次”或“探索多种方案”
输入
用户需要描述模块的功能需求、目标用途以及任何特定的约束条件。例如:“设计一个用于处理JSON Schema验证的TypeScript模块”。
输出
每个子智能体返回一个独立的接口设计文档,包含:
- 模块的整体结构(函数/类/常量)
- 关键类型定义
- 主要函数的签名及简要说明
- 使用示例代码
所有输出将汇总呈现,便于比较和讨论。
示例
用户输入:
设计一个用于解析Markdown文件的模块,支持将Markdown转换为HTML,提取元数据,并检查语法错误。请设计两次。
技能将启动多个子智能体,返回例如:
- 方案A(函数式):暴露
parseMarkdownToHtml(),extractMetadata(),validateMarkdown()等独立函数。 - 方案B(类式):提供
MarkdownParser类,包含toHtml(),metadata,errors等方法与属性。
用户可基于这些方案进行讨论、修改或融合。
注意事项
- 该技能适用于支持子智能体并行调用的AI编码工具(如Claude Code)
- 生成的方案仅供设计参考,不保证可直接运行
- 用户可通过进一步交互选择或细化某个方案