Skip to content
Back to skills

Sourcekit Lsp Workflow

ASecurity

Configure or diagnose SourceKit-LSP across SwiftPM, compilation databases, and build servers. Use for completion, navigation, refactoring, diagnostics, semantic tokens, indexing, generated files, or editor-client failures.

  • 7 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 5, 2026
ai-agentsgoswiftrailsrefactoringdatabase

Works with

  • cli

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned September 5, 2026

npx -y skills add gaelic-ghost/socket --skill sourcekit-lsp-workflow --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Sourcekit Lsp Workflow?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Sourcekit Lsp Workflow
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/gaelic-ghost-sourcekit-lsp-workflow/badge)](https://www.skillsdirectory.com/skills/gaelic-ghost-sourcekit-lsp-workflow)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: sourcekit-lsp-workflow
description: Configure or diagnose SourceKit-LSP across SwiftPM, compilation databases, and build servers. Use for completion, navigation, refactoring, diagnostics, semantic tokens, indexing, generated files, or editor-client failures.
license: Apache-2.0
metadata:
  owner: gaelic-ghost
  repo: socket
  category: swift-language
  hermes:
    category: swift-language
    tags: [swift, sourcekit-lsp, lsp, editor, indexing]
---

# SourceKit-LSP Workflow

Treat SourceKit-LSP as an editor protocol server whose semantic quality depends on matching toolchain, build settings, modules, generated files, and index state.

## Workflow

1. Identify the client, workspace root, requested LSP feature, project model, and whether the failure is startup, build-settings, semantic, index, protocol, or client presentation.
2. Resolve the intended server and compiler together:
   - inspect Swiftly's selected location, `sourcekit-lsp`, and Swift version
   - inspect `xcode-select`, `xcrun --find sourcekit-lsp`, and `xcrun swiftc --version`
   - use Swiftly for Swift.org toolchains and cross-platform SwiftPM work
   - use Xcode's server for Apple SDK and Xcode-selected toolchain behavior
3. Confirm workspace integration:
   - native SwiftPM workspace
   - `compile_commands.json` or `compile_flags.txt`
   - Build Server Protocol provider
   - fallback settings only for intentionally unmanaged files
4. Confirm the client completed `initialize`, opened the document before document requests, preserved the process environment, and framed JSON-RPC messages correctly.
5. Check build settings, generated files, module preparation, last successful build, index-store production, index freshness, and background-indexing policy.
6. Reproduce with logging or the built-in `diagnose` bundle before clearing caches or changing configuration. Read [references/sourcekit-lsp-diagnostics.md](references/sourcekit-lsp-diagnostics.md) for the ordered diagnosis path.
7. Treat `.sourcekit-lsp/config.json` as version-sensitive. Verify options against the selected server before adding or changing them.
8. Report server, compiler, project model, failing request, logs, build/index state, correction, and remaining client-specific behavior.

## Toolchain Contract

- Keep SourceKit-LSP, `sourcekitd`, compiler, SDK, plugins, and built modules from one coherent toolchain selection.
- Record both Swiftly and Xcode resolution on macOS even when they currently report the same Swift version.
- When Swiftly selects `xcode`, confirm which Xcode is selected rather than treating the proxy as an independent toolchain.
- Do not hard-code an Xcode application or toolchain path; resolve it through the configured selection.
- Do not change the global toolchain merely to test a hypothesis without explicit user intent.

## Boundaries

- Use `swift-semantic-indexing-workflow` for direct SourceKit or IndexStoreDB application integrations that do not need LSP.
- Use `swift-compiler-inspection-workflow` for compiler phases and emitted artifacts.
- Hand Xcode-hosted coding-agent setup to `xcode-coding-intelligence-workflow` and Xcode build execution to `xcode-build-run-workflow`.

## Guardrails

- Do not blame the editor before checking server logs, build settings, generated files, and index freshness.
- Do not expect cross-module results from modules that have not been prepared or indexed.
- Do not run SourceKit-LSP inside a restricted application sandbox unless the host deliberately provides the required developer-tool access.
- Do not assume one stdout read equals one LSP packet; buffer and parse by protocol framing.
- Do not expose mirrored LSP traffic or diagnostic bundles without checking them for source and environment data.

Files in this skill

  • SKILL.md3.7 KB
  • agents/openai.yaml275 B
  • references/sourcekit-lsp-diagnostics.md2.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.