用途:在启用 typescript-lsp 插件时,为 TypeScript 与 JavaScript 代码提供语义级代码智能,帮助查找引用、查看类型、跳转定义、检查类型错误和理解接口实现。
主要能力:LSP 是 Claude Code 内置工具而非 bash 命令,插件启用后自动提供 goToDefinition(跳转定义)、findReferences(查找全部引用)、hover(获取类型签名与文档)、getDiagnostics(获取文件类型错误)、documentSymbol(列出文件符号)。相比 grep,它能理解类型系统、继承、接口与符号关系,避免漏掉别名导入、重导出,并识别结构化/鸭子类型匹配。
使用方式:需要语义准确性时优先尝试 LSP 操作,例如重构前用 findReferences 找全部调用者,用 hover 获取推断类型,用 getDiagnostics 替代 npx tsc --noEmit,用 goToDefinition 定位符号。文本模式、注释字符串、跨语言搜索、JSON/YAML/Markdown 等配置内容仍用 Grep。
前置条件:在 ~/.claude/settings.json 中启用 typescript-lsp@claude-plugins-official;安装 npm install -g typescript-language-server typescript;项目建议存在 tsconfig.json 或 jsconfig.json。支持 .ts、.tsx、.js、.jsx、.mts、.cts、.mjs、.cjs。
限制:未安装语言服务器、纯 JavaScript 无 jsconfig.json、跨语言引用、注释或字符串搜索、配置文件、未执行 npm install 时 LSP 无法提供帮助。若 LSP 不可用,应明确说明“LSP 不可用,改用文本搜索”,谨慎使用 Grep 并人工核对,不可静默回退。