Lain Vibe 项目
专为 AI 编程助手设计的高性能代码理解与多智能体协调引擎,以 Rust 语言编写
Lain 是一款专为 AI 编程助手设计的高性能代码理解与多智能体协调引擎,以 Rust 语言编写,基于 MCP(Model Context Protocol)协议工作。它为 AI 编程助手提供了一个内存中的结构化知识图谱大脑,使其告别盲目猜测和逐行扫描,能够真正「理解」代码架构后再动手修改。
传统的 AI 编程助手面对陌生代码库时,只能靠读取大量上下文来推断代码结构,这种方式既浪费 Token,又容易产生幻觉修改。而 Lain 的做法是:在本地使用 Tree-sitter、编程语言服务器(如 rust-analyzer、pylsp 等)以及 Git 提交历史,对代码库进行全面索引,将函数、类、导入关系、符号引用等信息提取为带类型的属性图,存入内存中的图引擎(基于 petgraph),并为每个符号生成确定性的 UUID v5 标识符,支持快速序列化和重载。
Lain 提供 21 个 MCP 工具,涵盖架构分析、符号搜索、影响范围评估、Git 共变检测、健康监控等多个维度。其中影响范围分析(get_blast_radius)可以在修改某个符号前,精确列出所有受影响的函数、类型和文件;调用链追踪(get_call_chain)能找出两个函数之间的最短路径;依赖追溯(trace_dependency)则展示某个符号的所有上游依赖。这些工具完全在本地运行,不依赖任何云端服务,也不必提供 API Key,代码和数据从不离开用户的机器。
在语义搜索方面,Lain 支持本地 ONNX 模型嵌入,配合 BM25/词干混合排序,无需调用外部 API即可实现概念级代码搜索。所有图查询在 Rust 中实现,延迟在亚毫秒级。Git 共变分析功能可以发现那些历史上经常一起修改、但彼此之间没有显式导入关系的文件,帮助识别潜在的耦合风险。
Lain 支持 stdio(单仓库场景)和 HTTP :9999(JSON-RPC 与 SSE,支持浏览器命令控制台)两种传输方式,兼容 Claude Code、Cursor、Copilot、Codex、Agy、Cline、Windsurf 等所有支持 MCP 协议的 AI 编程助手和编辑器。
快速上手:
- 运行安装脚本:curl -fsSL https://raw.githubusercontent.com/spuentesp/lain/main/install.sh | bash
- 重新加载 Shell 配置:source ~/.zshrc 或 source ~/.bashrc
- 验证安装:lain --version
- 在项目目录运行:lain --workspace /path/to/your/project
- 在 AI 编辑器中配置 MCP 客户端连接 Lain 服务器即可开始使用
Lain 适合以下用户:使用大型代码库的 AI 编程助手用户、需要在修改前评估影响范围的开发者、关注代码架构健康状况的平台工程师,以及参与多智能体协作项目的开源贡献者。GitHub 仓库地址为 https://github.com/spuentesp/lain。
评论与建议
登录 后参与评论或提建议