Add lsp-setup skill for configuring LSP servers in Copilot CLI#1272
Add lsp-setup skill for configuring LSP servers in Copilot CLI#1272brunoborges merged 12 commits intostagedfrom
Conversation
Adds a new skill that helps users install and configure Language Server Protocol servers for GitHub Copilot CLI. Includes: - Interactive workflow: detect OS, install server, write config, verify - Bundled reference with 14 languages (Java/jdtls, TypeScript, Python, Go, Rust, C/C++, C#, Ruby, PHP, Kotlin, Swift, Lua, YAML, Bash) - Per-OS install commands and ready-to-use lsp-config.json snippets - Support for both user-level and repo-level configuration Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
🔍 Skill Validator Results2 resource(s) checked | ✅ All checks passed Full output |
There was a problem hiding this comment.
Pull request overview
Adds a new lsp-setup skill to help users install/configure Language Server Protocol (LSP) servers for GitHub Copilot CLI, including bundled per-language install guidance and example configuration snippets.
Changes:
- Add
skills/lsp-setupskill instructions describing an interactive LSP setup workflow and config locations/format. - Add bundled reference data (
references/lsp-servers.md) covering install commands + config snippets for 14 languages. - Update
docs/README.skills.mdto include the new skill entry.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| skills/lsp-setup/SKILL.md | Defines the LSP setup workflow, config locations, and expected JSON structure. |
| skills/lsp-setup/references/lsp-servers.md | Provides per-language install commands and config snippets used by the skill. |
| docs/README.skills.md | Registers the new skill in the skills index. |
Comments suppressed due to low confidence (1)
skills/lsp-setup/SKILL.md:28
- This section lists only
~/.copilot/lsp-config.jsonand.github/lsp.jsonas config locations, but the Learning Hub plugin docs also mentionlsp.jsonat the repo root as a valid location. If rootlsp.jsonis supported, include it here (and in the scope question) so the skill doesn’t omit a documented option.
Copilot CLI reads LSP configuration from two locations (repo-level takes precedence):
- **User-level**: `~/.copilot/lsp-config.json`
- **Repo-level**: `.github/lsp.json`
- Update SKILL.md description to mention both config paths (user-level and repo-level) instead of only lsp-config.json - Clarify workflow step 6 with explicit file paths - Add note in references/lsp-servers.md explaining snippets are objects to insert under the lspServers key - Regenerate docs/README.skills.md with updated description Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
This works really nicely. I tested it by installing LSP servers for Python and Rust. The only thing I find a little strange (probably nothing to do with this PR) is that after the installation is complete I expected to be able to do This makes adding an LSP server way easier. Is this going to be available from this page: https://awesome-copilot.github.com/skills/? I'll document that it's findable there by searching for "lsp" - if that's not correct please let me know. |
aaronpowell
left a comment
There was a problem hiding this comment.
Just want to get an update on the .NET/C# part to align with the guidance from the .NET team.
Replace csharp-ls/OmniSharp with roslyn-language-server in the .NET section, matching the official dotnet/skills reference configuration. Addresses review feedback from @aaronpowell in PR #1272. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Adds a new lsp-setup skill to guide GitHub Copilot CLI users through installing LSP servers and generating LSP configuration files, backed by bundled reference data and listed in the skills index.
Changes:
- Added
skills/lsp-setupskill instructions for an interactive LSP install/config workflow. - Added bundled reference data for known LSP servers and config snippets.
- Updated the generated skills catalog to include the new skill.
Show a summary per file
| File | Description |
|---|---|
| skills/lsp-setup/SKILL.md | Defines the interactive workflow and config format/merging behavior for LSP setup. |
| skills/lsp-setup/references/lsp-servers.md | Provides per-language install guidance and JSON snippets to merge into lspServers. |
| docs/README.skills.md | Adds the new lsp-setup entry to the generated skills index. |
Copilot's findings
- Files reviewed: 3/3 changed files
- Comments generated: 2
|
@brunoborges Unfortunately I hit an unexpected error while processing your comment. I've automatically reported this to GitHub. You can ask me to try again later by mentioning me in a new comment. If you want to contact GitHub about this error, please mention the following identifier so they can better serve you: Sorry for the inconvenience! |
2 similar comments
|
@brunoborges Unfortunately I hit an unexpected error while processing your comment. I've automatically reported this to GitHub. You can ask me to try again later by mentioning me in a new comment. If you want to contact GitHub about this error, please mention the following identifier so they can better serve you: Sorry for the inconvenience! |
|
@brunoborges Unfortunately I hit an unexpected error while processing your comment. I've automatically reported this to GitHub. You can ask me to try again later by mentioning me in a new comment. If you want to contact GitHub about this error, please mention the following identifier so they can better serve you: Sorry for the inconvenience! |
Replace pylsp primary + pyright alternative with a single pyright recommendation for Python. Go already correctly recommends gopls. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Adds a new lsp-setup skill to guide users through installing and configuring Language Server Protocol (LSP) servers for GitHub Copilot CLI, including bundled per-language install/config reference data and an updated skills index.
Changes:
- Added
skills/lsp-setup/SKILL.mddescribing an interactive workflow for selecting language/OS, installing an LSP server, and writing/merging LSP config. - Added
skills/lsp-setup/references/lsp-servers.mdwith install commands and ready-to-use config snippets for multiple languages. - Updated
docs/README.skills.mdto include the new skill entry.
Show a summary per file
| File | Description |
|---|---|
| skills/lsp-setup/SKILL.md | Introduces the new skill workflow and configuration guidance for Copilot CLI LSP setup. |
| skills/lsp-setup/references/lsp-servers.md | Provides bundled reference data (install steps + config snippets) the skill relies on. |
| docs/README.skills.md | Registers the new skill in the generated skills index. |
Copilot's findings
Comments suppressed due to low confidence (1)
skills/lsp-setup/SKILL.md:28
- This section lists repo-level config only as
.github/lsp.json, but other docs in this repo indicate repo-level LSP config can also belsp.jsonat the repo root. Aligning the guidance here will avoid users configuring a path Copilot CLI doesn’t pick up in some setups.
Copilot CLI reads LSP configuration from two locations (repo-level takes precedence):
- **User-level**: `~/.copilot/lsp-config.json`
- **Repo-level**: `.github/lsp.json`
- Files reviewed: 3/3 changed files
- Comments generated: 1
Rewrite description to emphasize code intelligence capabilities (go-to-definition, find-references, hover) so the coding agent triggers the skill when it needs deeper code understanding, while still matching explicit LSP setup/configuration requests. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Adds a new lsp-setup skill to help GitHub Copilot CLI users install and configure Language Server Protocol (LSP) servers, including bundled per-language/per-OS reference instructions.
Changes:
- Added
skills/lsp-setupskill definition with an interactive setup workflow for LSP configuration. - Added bundled reference data (
lsp-servers.md) with install commands and config snippets for 14 languages. - Registered the new skill in
docs/README.skills.md.
Show a summary per file
| File | Description |
|---|---|
| skills/lsp-setup/SKILL.md | Defines the LSP setup workflow and expected config format/merge behavior. |
| skills/lsp-setup/references/lsp-servers.md | Provides per-language install guidance and config snippets to insert under lspServers. |
| docs/README.skills.md | Adds lsp-setup to the generated skills index. |
Copilot's findings
- Files reviewed: 3/3 changed files
- Comments generated: 1
LSP servers are only loaded on Copilot CLI startup, so the user must exit and re-launch for the new configuration to take effect. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Summary
Adds a new lsp-setup skill that guides users through installing and configuring Language Server Protocol (LSP) servers for GitHub Copilot CLI.
What it does
The skill provides an interactive workflow:
lsp-config.jsonconfiguration (user-level or repo-level)Included languages
Bundled reference data covers 14 languages with per-OS install commands and ready-to-use config snippets. Each language has a single recommended LSP server:
Files changed
skills/lsp-setup/SKILL.md— skill definition and agent instructionsskills/lsp-setup/references/lsp-servers.md— bundled reference datadocs/README.skills.md— auto-generated (vianpm run build)Validation
npm run skill:validate— all 272 skills validnpm run build— README and marketplace regeneratedbash scripts/fix-line-endings.sh— line endings normalized