macOS
brew install zlslocal Homebrew formula metadata
brew
Language Server for Zig. Version 0.16.0 via Homebrew; verified 2026-06-14.
install
brew install zlslocal Homebrew formula metadata
sudo apk add zlsAlpine Linux edge package indexes · zls · source: dl-cdn.alpinelinux.org
nix profile install nixpkgs#zlsnixpkgs package indexes · zls · source: raw.githubusercontent.com
sudo pacman -S zlsArch Linux sync databases · zls · source: geo.mirror.pkgbuild.com
sudo zypper install zlsopenSUSE Tumbleweed package metadata · zls · source: download.opensuse.org
scoop install main/zlsScoop official bucket manifest trees · bucket/zls.json · source: api.github.com
winget install --id zigtools.zls -eWindows Package Manager source index · zigtools.zls · source: cdn.winget.microsoft.com
overview
Language Server for Zig
history
ZLS is the Zig Language Server, a Zig implementation of the Language Server Protocol that provides editor features such as completion, hover, diagnostics, go-to-definition, formatting integration, semantic tokens, inlay hints, and code actions.
The zigtools/zls repository was created in 2020, during Zig's pre-1.0 growth period when editor tooling had to track a moving compiler and standard library. The README describes ZLS as a non-official Language Server Protocol implementation for Zig written in Zig.
ZLS evolved together with the zigtools ecosystem. The zigtools site now groups ZLS with related projects such as the Zig Playground and Zig LSP Kit, the latter explicitly described as building blocks for LSP implementations like ZLS.
ZLS became the de facto language-server choice for Zig developers because the Zig language tools page points users to zigtools/zls, and editor documentation focuses on wiring ZLS into everyday development. The official Zig VS Code workflow can install Zig and ZLS automatically, while other editors commonly ask users to install a matching zls binary themselves.
Because Zig changes quickly before 1.0, ZLS adoption is tied to version compatibility. The ZLS installation guide warns that tagged Zig releases should be paired with matching tagged ZLS releases, and nightly Zig builds should be paired with nightly ZLS builds. That makes the package especially relevant for package managers and dev shells.
ZLS runs as an editor-launched language server. Users normally configure their editor or LSP client to start zls, then get completion, hover, diagnostics, symbol navigation, formatting via zig fmt, semantic tokens, inlay hints, and code actions inside Zig projects.
The most common operational problem is keeping the Zig compiler and ZLS in sync. Package users often care less about invoking zls directly and more about whether their editor, PATH, and project toolchain resolve compatible Zig and ZLS builds.
ZLS is one of the clearest examples of modern language tooling as a package-manager problem. A single executable unlocks editor support across many clients, but it must track a fast-moving compiler closely enough that mismatched packages produce confusing development failures.
For Zig users, installing zls is often the difference between syntax highlighting and a real IDE-like workflow, so it has become part of the standard systems-programming workstation kit.
security posture
broad file, network, media, or database tool signal.
blue risk · medium confidence · tool
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
local files
These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.
Config paths the tool may read or write during local use.
$local_config_dir/zls.json$global_config_dir/zls.jsonexecutables
| Command | Kind | Exposure | Note |
|---|---|---|---|
zls | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://github.com/zigtools/zls
install metadata
| Package key | brew:zls |
|---|---|
| Version | 0.16.0 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/zls |
| Homepage | https://zigtools.org/zls/ |
| Repository | https://github.com/zigtools/zls |
| Upstream docs | https://github.com/zigtools/zls#readme |
| License | MIT |
| Source archive | https://github.com/zigtools/zls/archive/refs/tags/0.16.0.tar.gz |
| Last updated | 2026-06-14T14:04:18-04:00 |
| Pulse | updated |
| Dependencies | zig |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | zls |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
zls
nix profile install nixpkgs#zlszls 0.15.0-r0
Zig Language Server
https://github.com/zigtools/zls
sudo apk add zlszls 0.15.1-1
A language server for Zig
https://github.com/zigtools/zls
sudo pacman -S zlszls 0.15.0-2.4
Language server implementation for Zig in Zig
https://github.com/zigtools/zls
sudo zypper install zlsmain/zls
scoop install main/zlszigtools.zls
winget install --id zigtools.zls -esource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.