AI Coding LSP

rag系列文章目录


文章目录


前言

AI coding越来越火,相关的工具也也越来越成熟,程序员好像距离失业越来越近了。但是好的工具还是要学习的,这里介绍下LSP,主要之前有些AI coding工具,让人很困惑,比如仅仅支持某些语言,LSP这个工具就是让AI更好的理解代码的,能够更好地进行AI辅助编程。


一、LSP简介

LSP即(Language Server Protocol),是一种标准化协议,用于:在 编辑器(Client) 与 语言服务器(Server) 之间,通过 JSON-RPC 通信,提供语言相关的智能能力。

比如在IDEA编辑器里面,代码补全、跳转到定义、查找引用、类型提示、实时错误诊断、重构(重命名、提取方法等)这些功能,都是LSP提供的。LSP的核心思想是:将"语言理解能力"从编辑器中剥离,集中到语言服务器中。

编辑器:只负责 UI 与用户交互

Language Server:负责解析代码、构建 AST、类型推导、语义分析

当你在编辑器中:

  • 输入代码 → 自动补全
  • Cmd + 点击 → 跳转定义
  • 重命名方法 → 全局安全替换

背后流程是:

  • 编辑器发送请求(如 textDocument/definition)
  • LSP 基于 AST / 符号表计算结果
  • 返回精确位置或修改建议

二、AI coding为何需要LSP

大模型在代码上的天然局限

  • 不具备真实符号表
  • 不理解项目级依赖关系
  • 容易编造不存在的类 / 方法
  • 对大型工程改动风险极高

有LSP,大模型就能够补齐短板

大模型短板 LSP 补充
不知道真实 API 提供真实符号
改动影响不可控 提供引用关系
无法验证正确性 提供诊断结果

三、claude code + LSP

Claude Code 是一个 Code Agent,负责:

  • 任务理解
  • 修改规划
  • 多步执行
  • 校验与回滚

而不是一个语言分析器。claude code是如何使用LSP的呢?

bash 复制代码
Claude Code(Agent / Planner)
        │
        │ 需要代码语义
        ▼
 本地开发环境(VSCode / CLI)
        │
        ▼
 Language Server(jdtls / gopls / pyright)

Claude Code 实际利用的 LSP 信息,如文件结构(类 / 方法)、函数真实定义、调用与引用关系、编译 / 诊断结果。这些信息用于:安全重构、避免 hallucination、验证修改是否破坏工程,这也是 Claude Code 比"网页版 Claude 写代码"稳定得多的原因。

四、LSP vs MCP

MCP 是一种:大模型调用外部工具的标准协议,用于让模型安全、结构化地调用:shell、git、数据库、API、云服务。

MCP和LSP的区别如下:

维度 LSP MCP
关注对象 代码语义 外部工具
提供能力 事实、结构、类型 动作、执行
是否确定性 取决于工具
是否代码专用
典型用途 理解代码 操作系统 / 服务

LSP:感知层(代码世界)

MCP:执行层(外部世界)

LLM / Agent:决策层


总结

LSP 是代码世界的"真相来源",MCP 是行动的"工具接口",Claude Code 是把两者组织起来完成复杂任务的 Agent。有了LSP的加持,能够让AI coding能力更强。

相关推荐
IT WorryFree3 分钟前
OpenClaw-Medical-Skills 仓库介绍
人工智能·skill·openclaw
2501_945424804 分钟前
C++编译期矩阵运算
开发语言·c++·算法
多年小白5 分钟前
今日AI科技简报 | 2026年3月19日
人工智能·科技·ai编程
2301_8154829310 分钟前
C++中的类型标签分发
开发语言·c++·算法
逄逄不是胖胖12 分钟前
《动手学深度学习》-69预训练bert数据集实现
人工智能·深度学习·bert
xushichao198915 分钟前
代码生成优化技术
开发语言·c++·算法
IT_陈寒17 分钟前
Python开发者的效率革命:这5个技巧让你的代码提速50%!
前端·人工智能·后端
用户693717500138418 分钟前
不卷AI速度,我卷自己的从容——北京程序员手记
android·前端·人工智能
love530love22 分钟前
不用聊天软件 OpenClaw 手机浏览器远程访问控制:Tailscale 配置、设备配对与常见问题全解
人工智能·windows·python·智能手机·tailscale·openclaw·远程访问控制
炽烈小老头23 分钟前
【每天学习一点算法 2026/03/22】前 K 个高频元素
学习·算法