swiftlang/sourcekit-lsp

Language Server Protocol implementation for Swift and C-based languages

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 21 minutes ago
Added to GitGenius on September 17th, 2026
Created on October 26th, 2018
Open Issues & Pull Requests: 152 (+0)
GitHub issues: Enabled
Number of forks: 389
Total Stargazers: 3,910 (+0)
Total Subscribers: 152 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 3.7 hours
Mean response time: 27.7 days
90th percentile: 33.5 days
Tracked items: 305

Most active contributors

Sign in to see contributor activity.

How this project is maintained

About 10% of issues opened in the past year have never received a reply. 61% of open issues come from outside the core team, a mix of external reports and the maintainers' own roadmap. 75% of tracked open issues have had no activity in three months, so the open count overstates what is actively being worked. Only 58% of issues opened in the past year have been closed. Three people close 83% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 103
New in 7 days: 5
Closed in 7 days: 3
Avg open age: 530 days
Stale 30+ days: 95
Stale 90+ days: 90

Recent activity

Opened in 7 days: 5
Closed in 7 days: 2
Comments in 7 days: 5
Events in 7 days: 12

Top labels

  • code action (35)
  • good first issue (34)
  • background indexing (13)
  • Windows (9)
  • build server integration (4)
  • refactoring (4)

Detailed Description

SourceKit-LSP is a Language Server Protocol implementation for Swift and C-based languages that brings intelligent editor functionality to any editor supporting LSP.

The tool solves the problem of providing consistent, high-fidelity language support across different editors for Swift and C-based development. It builds on top of sourcekitd and clangd to deliver code-completion, jump-to-definition, and other editor features. The implementation includes a powerful source code index and supports cross-language projects. It works with Swift Package Manager projects and projects that generate compile_commands.json files, such as CMake-based builds.

Developers should choose this tool if they work with Swift or C-based languages and want LSP-based editor support beyond Xcode. It suits any project using Swift Package Manager or CMake. The tool comes bundled with Xcode and is included in Swift toolchains from swift.org, making it readily available. One important limitation is that the tool does not update its global index or build Swift modules in the background, so cross-module and global functionality becomes limited if the project has not been built recently. An experimental background indexing feature is available to address this. Projects requiring additional arguments passed to swift build, particularly embedded projects, need explicit configuration as documented in the repository.

The project maintains active issue tracking with a structured bug reporting process. The repository includes comprehensive documentation covering setup, configuration for embedded projects, and experimental features. Contribution guidelines are documented for developers interested in extending the tool.