SuperAPI AI 工具集

codebase-design

设计与创作

查看项目

更新于 10-15 20:32

技能介绍

该技能用于代码库层面的设计或简化,目标是让每项能力聚合在一起、易于使用,只在拆分能提升理解时才拆分。核心是“深模块”(用精简接口隐藏大量行为)与“强局部性”(改动所需知识集中一处)。

主要规则包括:按领域再按角色组织,如 billing/models/Invoice.ts、billing/services/InvoiceStore.ts;保持相关实现在一起;暴露完整操作,例如调用方直接用 saveInvoice(invoice);抽取仅用于隐藏复杂度或实现有效复用;数据契约只定义一次;在边界处转换执行模型;把工作负责到完成;保留行数限制但允许有依据的例外;注释说明原因与不变式;测试可观察行为。

抽取前先问:拆分后读者不再需要理解什么?若答案是“没有”,就保持局部。短小或一次性辅助函数同样可能隐藏重要决策。仅编译期的契约无需仅为形式而添加运行时 schema。公共包入口保持显式、精简,移除只增加跳转而不改变契约的内部转发链;模块契约还包含顺序、失败与清理。

引入文件行数限制时,可用 300 个非空非注释行;优先做聚合拆分,否则在 lint 配置中记录小幅上调或例外,并保持其他检查有效。保留有用的类型化查询工具,参数化 SQL 可与所属适配器放在一起,但需验证返回行并确认查询行为;行泛型不等于验证,可读性改动无需引入 ORM。

条件允许时,路径与文件名选择可参考 domain-organization,React 包边界可参考 ui-component-architecture。原仓库中 ASR-0015 记录了相关决策。限制:具体安装命令、收费与平台支持等信息暂未提供。