skills/vscode-languageserver-protocol/SKILL.md
TypeScript SDK for building Language Server Protocol clients and servers Use when working with lsp, language-server-protocol, sdk, language-server, lsp-client, lsp-server.
npx skillsauth add pradeepmouli/lspeasy vscode-languageserver-protocolInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
TypeScript SDK for building Language Server Protocol clients and servers
protocol.d: is, is, is, is, hasId, is, isIncremental, isFull, is, is, hasWorkDoneProgress, HandlerSignature, HandlerSignature, method, messageDirection, type, method, messageDirection, type, Create, Rename, Delete, Abort, Transactional, TextOnlyTransactional, Undo, UTF8, UTF16, UTF32, method, messageDirection, type, unknownProtocolVersion, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, Error, Warning, Info, Log, Debug, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, None, Full, Incremental, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, Manual, AfterDelay, FocusOut, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, Invoked, TriggerCharacter, TriggerForIncompleteCompletions, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, Invoked, TriggerCharacter, ContentChange, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, Identifier, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, Created, Changed, Deleted, Create, Change, Delete
protocol.progress.d: is, HandlerSignature, HandlerSignature, type, method, messageDirection, type, method, messageDirection, type
protocol.diagnostic.d: is, HandlerSignature, HandlerSignature, HandlerSignature, Full, Unchanged, method, messageDirection, type, partialResult, method, messageDirection, type, partialResult, method, messageDirection, type
protocol.notebook.d: is, create, is, equals, create, is, diff, create, is, is, create, Markup, Code, method, messageDirection, type, method, messageDirection, type, registrationMethod, method, messageDirection, type, registrationMethod, method, messageDirection, type, registrationMethod, method, messageDirection, type, registrationMethod
protocol.implementation.d: HandlerSignature, method, messageDirection, type
protocol.typeDefinition.d: HandlerSignature, method, messageDirection, type
protocol.workspaceFolder.d: HandlerSignature, MiddlewareSignature, HandlerSignature, MiddlewareSignature, method, messageDirection, type, method, messageDirection, type
protocol.configuration.d: HandlerSignature, MiddlewareSignature, method, messageDirection, type
protocol.colorProvider.d: HandlerSignature, HandlerSignature, method, messageDirection, type, method, messageDirection, type
protocol.foldingRange.d: HandlerSignature, HandlerSignature, method, messageDirection, type, method, messageDirection, type
protocol.declaration.d: HandlerSignature, method, messageDirection, type
protocol.selectionRange.d: HandlerSignature, method, messageDirection, type
protocol.callHierarchy.d: HandlerSignature, HandlerSignature, HandlerSignature, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type
protocol.semanticTokens.d: HandlerSignature, HandlerSignature, HandlerSignature, HandlerSignature, Relative, method, messageDirection, type, registrationMethod, method, messageDirection, type, registrationMethod, method, messageDirection, type, registrationMethod, method, messageDirection, type, method, type
protocol.showDocument.d: HandlerSignature, MiddlewareSignature, method, messageDirection, type
protocol.linkedEditingRange.d: HandlerSignature, method, messageDirection, type
protocol.fileOperations.d: HandlerSignature, HandlerSignature, HandlerSignature, HandlerSignature, HandlerSignature, HandlerSignature, file, folder, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type
protocol.typeHierarchy.d: HandlerSignature, HandlerSignature, HandlerSignature, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type
protocol.inlineValue.d: HandlerSignature, HandlerSignature, method, messageDirection, type, method, messageDirection, type
protocol.inlayHint.d: HandlerSignature, HandlerSignature, HandlerSignature, method, messageDirection, type, method, messageDirection, type, method, messageDirection, type
protocol.inlineCompletion.d: HandlerSignature, method, messageDirection, type
api.d: lspReservedErrorRangeStart, RequestFailed, ServerCancelled, ContentModified, RequestCancelled, lspReservedErrorRangeEnd
protocol.moniker.d: document, project, group, scheme, global, $import, $export, local, method, messageDirection, type
tools
Use for ANY rename, file-move, or move-symbol refactor — especially rename-heavy work across multiple files. Claude Code's built-in LSP tool is READ-ONLY (find references, but no rename / file-move / move-symbol). Hand-editing those refactors silently misses re-exports, aliased imports, type-only imports, and {@link} doc references. This skill drives a real language server via the `lspeasy` CLI to apply a correct WorkspaceEdit that catches every reference. Trigger when the user asks to rename a function/class/variable/type project-wide, move a file and fix its importers, or pull a symbol out into another module.
tools
Documentation site for lspeasy Use when: You are building a browser-based LSP client, a WebSocket-backed language....
tools
Documentation site for lspeasy Use when: You are implementing a custom client layer and need the same validation....
tools
Use when working with lspeasy (client, core, server). Covers: lsp, language-server-protocol, lsp-client, language-client, jsonrpc, transport, lsp-server, language-server.