用途:作为编辑、评审或提出结构变更时的简短检查清单,指导结构性重构而非改变功能行为。
主要能力: 结构:以小而内聚的单元组织代码,每个文件只有一个变更理由;按职责命名,避免宽泛的 utils、helpers;让路由、页面、命令与容器保持轻薄,把类型、转换、副作用与领域规则移入有明确归属的模块。文件长度只是弱信号,内聚更重要;新关注点应新增文件或子目录,SECTION 注释不能替代模块;代码优先与所属功能同置,只有在出现第二个真实使用者或契约稳定后才提升到 shared/ 或 lib/。 去重:一个概念只有一个归属,把重复逻辑、类型形状、校验或转换合并到一个明确归属的模块;小幅差异用参数化而非并行近似副本;调用方迁移后删除冗余路径。 UI 原语:优先使用仓库已有的 registry 原语处理对话框、弹出层、选择器、菜单等;不改动原语文件来实现功能行为或一次性样式,而是在功能模块中包装或组合;若仓库没有 UI 库,应通过正常生成器或 registry 引入小型原语层。 组件、状态与副作用边界:按渲染职责拆分组件,按渲染内容而非读取的状态命名文件;状态按领域归属与生命周期拆分,简单屏幕保留一个面向工作流的 hook 或 store 门面;本地交互状态留守组件附近;副作用按外部系统或生命周期拆分;内部重构时保持应用侧状态 API 不变。 输入提交模型:明确滑块、数值输入、范围控件、过滤器等高频输入的提交语义,区分立即提交与延迟提交,避免意外立即提交触发昂贵渲染、重转换、网络请求或持久化;重构时保留既有提交语义。 接线:每类入口点只用一种注册模式,保持声明、发现与命名一致,新增处理器时镜像既有注册步骤。 包产物:在 monorepo 中确认 packages/* 消费者导入的是源码还是构建产物,检查 exports、main、module、types、别名与缓存;修复源码可能不影响仍导入过期 dist/ 的应用,必要时运行包构建或监听任务。 Python:init.py 保持为空或仅做薄的公开再导出,不放业务规则、算法、辅助、I/O 或副作用。 Rust:优先 foo.rs 加 foo/ 作为子模块,避免新增 foo/mod.rs;子模块写成 foo/bar.rs 并在 foo.rs 中声明;生成的或仓库标准的 mod.rs 树不做改动。
使用方式:在编辑、评审或提出结构变更时按上述规则做短检查;文件更详细说明见 reference.md。
限制:资料未提供具体安装命令、平台支持、收费与价格信息,也暂未提供实际效果数据。