Serena
基于语言服务器协议(LSP)的代码智能分析工具,通过 MCP 与 AI 代理集成,支持跳转定义、查找引用、类型解析等功能,提升代码理解和编辑的准确性。
时间轴 (近 90 天)
作者的核心策略是让 AI 代理引用静态分析工具(ripgrep、ast-grep、Serena、CodeQL)的输出作为证据,并将 LLM 自身的分析明确区分开来
Serena 通过 MCP 提供 IDE 背后运行的语言服务器(LSP)功能,如跳转定义和查找引用,优势是跟随准确引用并解析类型,但构建索引需要时间
在实验中,Serena 主要扮演辅助角色,用于交叉检查 ast-grep 和补充结果验证,遇到了字符编码转换和外部库缺少类型信息等问题
全部知识事实 (9)
Serena不面向人类用户,而是面向AI Agent,提供的是程序化的API接口而非图形界面,这与GitHub Copilot、Cursor、Windsurf等工具的设计哲学不同
90%待验证Serena使用Python开发
90%待验证Serena的语义检索能力建立在Language Server Protocol(LSP)之上,LSP最初由微软为VS Code设计
90%待验证Serena的语义编辑使用的底层技术包括tree-sitter(一个增量解析框架,支持数十种编程语言的快速AST构建)和LSP提供的语义分析能力
85%待验证Serena可以被嵌入到LangChain/LangGraph构建的多步骤Agent、AutoGPT类自主代理或企业内部CI/CD自动化流水线中
80%待验证Serena是一个基于MCP(Model Context Protocol)协议的编程工具包,专门为AI编程代理提供语义检索和代码编辑能力
55%待验证作者的核心策略是让 AI 代理引用静态分析工具(ripgrep、ast-grep、Serena、CodeQL)的输出作为证据,并将 LLM 自身的分析明确区分开来
50%待验证Serena 通过 MCP 提供 IDE 背后运行的语言服务器(LSP)功能,如跳转定义和查找引用,优势是跟随准确引用并解析类型,但构建索引需要时间
50%待验证在实验中,Serena 主要扮演辅助角色,用于交叉检查 ast-grep 和补充结果验证,遇到了字符编码转换和外部库缺少类型信息等问题
50%