Skills clangd-lsp
C/C++ language server (clangd) providing code intelligence, diagnostics, and formatting for .c, .h, .cpp, .cc, .cxx, .hpp, .hxx files. Use when working with C or C++ code that needs autocomplete, go-to-definition, find references, error detection, or refactoring support.
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/bowen31337/clangd-lsp" ~/.claude/skills/openclaw-skills-clangd-lsp && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/bowen31337/clangd-lsp" ~/.openclaw/skills/openclaw-skills-clangd-lsp && rm -rf "$T"
manifest:
skills/bowen31337/clangd-lsp/SKILL.mdsource content
clangd LSP
C/C++ language server integration providing comprehensive code intelligence through clangd (part of LLVM).
Capabilities
- Code intelligence: Autocomplete, go-to-definition, find references
- Error detection: Real-time diagnostics for compilation errors
- Formatting: Code formatting with clang-format
- Refactoring: Rename symbols, extract function
- Supported extensions:
,.c
,.h
,.cpp
,.cc
,.cxx
,.hpp
,.hxx
,.C.H
Installation
Via Homebrew (macOS)
brew install llvm # Add to PATH export PATH="/opt/homebrew/opt/llvm/bin:$PATH"
Via package manager (Linux)
# Ubuntu/Debian sudo apt install clangd # Fedora sudo dnf install clang-tools-extra # Arch Linux sudo pacman -S clang
Windows
winget install LLVM.LLVM
Or download from LLVM releases.
Verify installation:
clangd --version
Usage
The language server runs automatically in LSP-compatible editors. For manual operations:
Compile
gcc file.c -o output # C g++ file.cpp -o output # C++ clang file.c -o output # with clang
Format code
clang-format -i file.cpp
Static analysis
clang-tidy file.cpp -- -std=c++17
Configuration
Create
.clangd in project root:
CompileFlags: Add: [-std=c++17, -Wall, -Wextra] Remove: [-W*] Diagnostics: UnusedIncludes: Strict MissingIncludes: Strict
Or
compile_commands.json for complex projects:
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON . # or bear -- make
Integration Pattern
When editing C/C++ code:
- clangd uses
for project understandingcompile_commands.json - Run
to format codeclang-format - Use
for static analysisclang-tidy - Compile with warnings enabled (
)-Wall -Wextra
Common Flags
Compile flags:
- C++17 standard-std=c++17
- Enable warnings-Wall -Wextra
- Optimization level-O2
- Debug symbols-g
- Include path-I<path>
- Library path-L<path>
clang-tidy checks:
clang-tidy file.cpp --checks='*' -- clang-tidy file.cpp --fix -- # Auto-fix