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能力更强。

相关推荐
武子康24 分钟前
调查研究-186 LangChain 和 LangGraph 的区别:从快速构建 Agent 到生产级工作流编排
人工智能·langchain·llm
武子康1 小时前
调查研究-185 CodeGraph 调研:给 AI 编程 Agent 一张代码库地图,少一点反复 grep(2026)
人工智能·openai·claude
aqi002 小时前
15天学会AI应用开发(八)使用向量数据库实现RAG功能
人工智能·python·大模型·ai编程·ai应用
混沌福王3 小时前
Electron三端统一架构:运行时Adapter、IPC能力边界与分层设计
人工智能·agent·ai编程
说了很好3 小时前
马尔可夫扩散链+损失函数推导,手把手实现原生Diffusion
人工智能
聂二AI落地内参3 小时前
合同抽取别停在 JSON:标准规则和交易日历才是硬仗
人工智能
冬哥聊AI3 小时前
滴滴Agent岗二面:RAG 系统的 LLM 幻觉怎么治?从两类根源讲到四道防线
人工智能
lyshlc3 小时前
# AI Agent的推迟判定协议:不确定性下的最优策略
人工智能
用户329901675053 小时前
用zod在运行时兜住AI返回的JSON
人工智能