360 Secure SkillHub
360 安全技能中心

Clangd LSP

该 Skill 说明如何安装与配置 clangd(LLVM 的 C/C++ 语言服务器),在 LSP 兼容编辑器中提供自动补全、跳转定义、查找引用、实时诊断、clang-format 格式化以及重命名、提取函数等重构能力,并给出编译、静态分析与常用编译参数示例。

bowen31337
bowen31337
热度 76.66
最近更新 2026-02-26 07:15:35
分类:开发依赖:代码执行 / 读写文件应用场景:代码生成 / 调试排错 / 代码审查

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add clangd-lsp
Metadata
name
clangd-lsp
description
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.

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:

  1. clangd uses compile_commands.json for project understanding
  2. Run clang-format to format code
  3. Use clang-tidy for static analysis
  4. Compile with warnings enabled (-Wall -Wextra)

Common Flags

Compile flags:

  • -std=c++17 - C++17 standard
  • -Wall -Wextra - Enable warnings
  • -O2 - Optimization level
  • -g - Debug symbols
  • -I<path> - Include path
  • -L<path> - Library path

clang-tidy checks:

clang-tidy file.cpp --checks='*' --
clang-tidy file.cpp --fix --  # Auto-fix

More Information