用途:在 Elixir 项目中运行 Credo 静态分析检查并修复问题。前提是项目 mix.exs 中已将 Credo 作为依赖。
主要能力与子命令:check 运行 mix credo --strict 并报告问题;fix 运行 Credo 后修复所有报告的问题;help 显示全部可用子命令。不带子命令调用 /credo 时默认执行 check。未知子命令会列出可用子命令并停止。
使用方式:check 在项目根目录运行 mix credo --strict,若无问题则报告成功;有问题时按类别(Consistency、Design、Readability、Refactor、Warning)汇总数量,并列出每个问题的文件、行号和消息,只报告不修复。fix 先运行 mix credo --strict --format json,解析 JSON 获取文件路径、行号、检查名和消息,按文件分组后逐个读取并修复:Consistency 类应用一致风格;Readability 类如 AliasOrder 按字母排序别名,ModuleDoc 视模块是否内部/私有添加 @moduledoc false 或有意义的 @moduledoc,MaxLineLength 拆分长行;Refactor 类如 Nesting、CyclomaticComplexity 降低复杂度,WithClauses 简化 with 块,Nesting 提取辅助函数;Warning 类如 IoInspect、IExPry 移除调试语句,UnusedEnumOperation 等确保返回值被使用或删除死代码;Design 类如 AliasUsage 补充缺失别名,TagTODO/TagFIXME 询问用户是解决还是抑制;ExSlop(AI 垃圾检测)按检查消息修复对应反模式。修复后保存文件,再运行 mix credo --strict 验证,若仍有问题则报告并尝试第二轮,最后报告修复数与剩余数。
限制与注意:始终使用 --strict 以捕获低优先级问题;若项目 Credo 版本不支持 --format json,回退解析标准文本输出;修复时保留既有代码风格与意图,只改 Credo 标记之处;若修复会改变行为而非仅风格,需先询问用户;ExSlop 检查来自 ex_slop 依赖,按标准 Credo 检查处理。资料未提供安装命令、收费与平台信息。