lucidity-mcp
hyperb1iss/lucidity-mcp加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象你刚用 AI 助手写完一段代码,兴冲冲地想要提交——但这段代码里藏着一个 SQL 注入漏洞、一个引用了不存在 API 的「幻觉」调用,以及一段绕了三层才读懂的冗余逻辑。这就是 AI 编码助手的甜蜜烦恼:写得快,但未必写得对。
Lucidity MCP 就是来解决这个问题的。它不是一个静态代码分析器,而是一个 AI 驱动的代码质量分析工具,通过 Model Context Protocol(MCP)与你的 AI 助手深度集成——在代码提交之前,给 AI 助手一面镜子,让它先「自我审视」一遍自己写的东西。
传统的 AI 代码审查依赖人工经验或复杂的规则引擎,效果参差不齐。 Lucidity 的思路很聪明:既然 AI 能写代码,为什么不让 AI 来分析代码质量?
它将代码质量拆解为 10 个分析维度,覆盖了 AI 生成代码最常见的「翻车」场景:
| 维度 | 含义 |
|---|---|
| 不必要的复杂性 | 算法是否过度设计?逻辑是否绕圈子? |
| 糟糕的抽象 | 抽象层是否泄露?职责边界是否清晰? |
| 非预期的代码删除 | 关键逻辑是否被 AI 无意中抹掉了? |
| 幻觉组件 | 是否引用了不存在的函数、类或 API? |
| 风格不一致 | 是否偏离了项目已有的编码规范? |
| 安全漏洞 | 是否有注入、XSS 等常见安全风险? |
| 性能问题 | 是否存在 O(n²) 的嵌套循环等性能杀手? |
| 代码重复 | 是否有三处完全相同的代码块可以合并? |
| 错误处理缺失 | 是否所有异常路径都被妥善处理了? |
| 测试覆盖空白 | 新功能是否有对应的单元测试? |
这 10 个维度不是随机拍脑袋的——它们来自对 AI 生成代码常见问题的系统性归纳,每一个都是实战中踩过的坑。
Lucidity 的架构非常清晰,整个系统只有两个核心模块:
analyze_changes,接收工作区根目录和可选的文件路径参数,内部调用 git diff 解析,然后触发 Prompt Engine。有意思的是,Lucidity 本身不运行任何复杂的代码分析算法——它把分析工作外包给了 AI 助手自己。它只是一个「翻译官」,把代码变更转译成 AI 能理解的结构化提示词。
这带来一个意外的好处:语言无关性。只要 AI 助手能理解某种编程语言,Lucidity 就能分析它——Python、JavaScript、Go、Rust 都可以,没有额外的语言解析器依赖。
Lucidity 支持两种运行模式:
lucidity-mcp。连接方式也很简单。以 Claude Desktop 为例,只需要在 MCP 配置中加入 Lucidity Server 的地址,然后就可以在对话中直接调用 analyze_changes 工具了。
# 启动 SSE 模式
lucidity-mcp --transport sse --port 6969
之后在 AI 助手中输入类似「帮我分析最近的代码变更」,Lucidity 就会返回一份结构化的质量报告——包括每个发现问题的严重程度、具体位置和改进建议。
当然,Lucidity 也有它的局限性。
它不是一个静态分析器,它的能力完全取决于 AI 助手本身的代码理解水平。如果 AI 助手本身对某门语言不够熟悉,分析结果的准确性就会打折扣。
10-15 分钟的部署时间听起来不长,但实际过程中可能遇到 Python 3.13 的安装问题——这个版本相对较新,很多系统的包管理器默认还没跟上,需要手动从源码编译或使用 pyenv 管理版本。
对 git 环境有强依赖,如果项目不在 git 仓库中,或者 git diff 为空,部分功能将无法正常工作。
此外,作为 Beta 阶段项目(Development Status :: 4 - Beta),API 和功能尚未稳定,生产环境使用存在一定的升级风险。
Lucidity 出现在一个微妙的时间节点:AI 编码助手正在从「辅助工具」进化为「主力开发者」,但随之而来的代码质量问题也日益突出。没有质量把控的 AI 编码,就像一辆没有刹车的跑车——跑得快,但危险。
它的出现代表了 AI 编码工具链正在走向成熟:Copilot 负责写,Cursor 负责改,Lucidity 负责审——一个更完整的 AI 编码工作流正在成型。
虽然目前只是 Beta 阶段、星星数也不高(89★),但这种「让 AI 学会自我复盘」的产品思路,在未来有着相当的想象空间。