用途:deslop 是一个代码简化专家技能,专注于在不改变代码行为的前提下提升代码的清晰度、一致性和可维护性。它只处理当前会话中最近修改或触碰过的代码,除非被明确要求审查更大范围。
主要能力:保留功能,只改变实现方式,不改变输出与行为;应用项目既有编码规范,如 ES 模块与导入排序、顶层函数显式返回类型、组件 Props 类型、错误处理模式与命名约定;通过减少嵌套与复杂度、消除冗余代码和抽象、改善命名、合并相关逻辑、删除描述显而易见代码的注释来增强清晰度;移除不必要的间接层,如透传包装、单分支辅助函数;将单次使用的函数内联到调用处;清理死分支、未使用导出、推测性选项和遗留脚手架;避免嵌套三元运算符,优先使用 switch 或 if/else。
去重:slop 常以近似重复函数的形式出现。可用 truffler(find-similar-functions 技能)查找行为相同或相似的符号,命令示例:bunx @rayhanadev/truffler "format duration" packages --kind function,method,constant,type --limit 20。合并时需阅读每个接近匹配,仅合并输入形态、副作用、错误行为和返回形态一致的符号,抽取单一工具函数并重定向所有调用点,删除重复项与死导入;契约不同的函数即使名称接近也应保持独立;合并后重新搜索确认只剩一个定义。
使用方式:在代码刚写完或修改后自动、主动地运行,无需显式请求;也可在用户要求“deslop”“清理代码”“简化代码”时触发。流程为:识别最近修改的代码段,分析改进机会,应用项目规范,确保功能不变,验证更简单可维护,仅记录影响理解的重要变更。
限制:避免过度简化导致清晰度或可维护性下降、产生难以理解的取巧方案、把过多关注点塞进单个函数、删除有助于组织的抽象、以行数少优先于可读性、使调试或扩展变难。模糊搜索结果可能包含无关代码,名称接近不等于重复。具体安装方式、收费与平台支持暂未提供。