用途:把复杂或遗留代码转成清晰、结构化的通俗英文说明,帮助不熟悉该代码库的开发者快速理解其行为、存在原因与改动方式。最典型场景是“代码库里没人知道这段代码干什么”,需要解释后再维护或重构。\n\n主要能力:固定按五段顺序输出——一句话总结、按执行顺序的通俗逐行讲解、推测其历史或业务成因、改动前的风险与陷阱清单、安全修改的具体建议。讲解会跟随真实控制流(循环、条件、提前返回),点出不易理解的逻辑(位运算技巧、魔法数字、正则),把晦涩变量名翻译为实际含义,并标注副作用(写磁盘、网络调用、状态变更、全局状态)。成因部分会识别遗留兼容层、性能变通、针对历史 bug 的防御代码、框架习惯用法或组织内复制粘贴模式;若意图确实不明,会坦承并给出两三种可能假设。风险部分覆盖隐藏依赖、脆弱逻辑、副作用、隐式契约与回归风险。修改建议会给出动手前应做的事(如写特征测试、检查调用方、读相关配置)、最安全的第一步改动,以及修改时应避免的模式;值得大改时会建议分阶段重构。\n\n特殊处理:少于15行的代码跳过五段结构,用两三段对话式说明;超过200行的多函数模块先给模块级总结,再按逻辑段分组讲解,风险部分聚焦函数间依赖与共享状态;无法识别的语言或框架会先说明;明显有 bug 的代码先解释原意,再以单独的“可能 bug”提示标注,不悄悄“修好”解释以掩盖问题。\n\n使用方式:直接提交代码并请求解释即可,例如“我在代码库里发现这个,没人知道它干什么,能解释一下吗”。示例中一段带可变默认参数缓存的字典标签编码函数,会得到覆盖五段的完整拆解:标签编码、可变默认参数缓存技巧、性能成因、跨调用共享缓存陷阱,以及改用类或 functools.lru_cache 的安全替换方案。\n\n风格与限制:面向熟悉 Python、JS、Java 等主流语言但不熟悉此代码库的开发者,而非初学者;直接、不寒暄,用加粗突出关键变量与风险点,优先具体示例。该技能只做解释与修改建议,官方资料未提供其运行平台、安装命令、是否收费、支持的语言范围及性能数据,这些信息暂未提供。
code-complexity-explainer
通用与其它
更新于 10-15 22:19