lsp-code-analysis
通过语言服务器 (LSP) 进行精确的语义代码分析。支持 Python, Rust, Go, TypeScript/JS 和 Java,提供定义跳转、引用查询、实现查找、文件大纲与全项目重构功能。
简介
此技能通过业界标准的语言服务器协议 (LSP) 为 AI 代理程序提供编译器等级的代码分析能力,并通过 Mason 管理服务器运行。与 grep 或单纯读取文件等文本基础工具不同,此技能能够理解符号、类型与依赖关系之间的真实结构,对于复杂项目的深入理解与结构性重构至关重要。
本工具专为软件工程师与 AI 编码代理设计,特别适用于探索陌生代码库、追踪跨文件的复杂调用链,或进行安全的大规模代码修改。它将项目视为相互连接的符号图,而非仅是文本文件集合,能显著降低代理程序在导航或修改代码时产生幻觉的风险。
-
精确导航:使用基于范围的目标设定,立即跳转至定义、类型定义或符号声明。
-
脉络分析:在深入逻辑前产生文件大纲以绘制架构地图,并能提取特定函数或类的完整源代码。
-
全局操作:执行项目范围内的符号重命名,并内置预览步骤以确保结构安全,支持排除特定目录。
-
通用搜索:根据类型(函数、类、接口、变量、模块等)在整个工作空间搜索符号,即便不清楚具体文件位置亦可找到。
-
实现追踪:查找特定对象的所有引用与实现,对于理解多型系统中的变更影响至关重要。
-
使用策略:建议使用 lsp-outline 获取高阶结构,使用 lsp-symbol 获取特定区块内容,使用 lsp-reference 进行影响分析,并使用 lsp-definition 进行调用链追踪。
-
目标语法:利用 --scope 参数指定类或方法(如 --scope MyClass.method),并使用 --find 旗标搭配 <|> 游标标记来锁定行内的目标位置。
-
前置需求:需于本地安装 Mason 管理的语言服务器(pyright, rust-analyzer, typescript-language-server, gopls)。
-
性能注意事项:初始启动约需 3 秒进行管理器初始化;后续请求经预热后通常在 2 秒内响应。
-
安全性:在执行 lsp-rename 之前务必先运行预览模式 (preview),并检查预览产出的 ID,以确保变更范围正确且安全。
仓库统计
- Star 数
- 1
- Fork 数
- 0
- Open Issue 数
- 0
- 主要语言
- Python
- 默认分支
- main
- 同步状态
- 空闲
- 最近同步时间
- 2026年5月3日 21:15