Automic VaultAutomic Vault

brew

Install lspmux with Homebrew, apk, Nix

Share one language instance between multiple LSP clients to save resources. Version 0.3.0 via Homebrew; verified 2026-07-15. Also installable with nix: nix profile install nixpkgs#lspmux.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install lspmux

local Homebrew formula metadata

Linux

Alpine Linux apkverified · 92%
sudo apk add lspmux

Alpine Linux edge package indexes · lspmux · source: dl-cdn.alpinelinux.org

Nixverified · 92%
nix profile install nixpkgs#lspmux

nixpkgs package indexes · pkgs/by-name/ls/lspmux/package.nix · source: api.github.com

overview

Package summary

Share one language instance between multiple LSP clients to save resources

Commands and aliases

  • lspmux

history

Project history and usage

lspmux is a Language Server Protocol multiplexer that lets multiple editor clients share one language-server instance per workspace. Its README describes it as a proxy and client shim that multiplexes editor connections onto the appropriate language server to save resources.

Project history

The project started as ra-multiplex, focused on rust-analyzer. Its changelog shows early releases in January and February 2022 adding configuration, removing a nightly Rust requirement, improving client/server behavior, and adding initial support for language servers other than rust-analyzer.

In 2024, the project added status and reload commands, native LSP initialize-message handshakes, Unix socket support, and environment filtering. In October 2025, it migrated to Codeberg, changed license to EUPL-1.2, and was renamed from ra-multiplex to lspmux to reflect its broader language-server scope.

Adoption history

lspmux is a niche developer tool aimed at users who run multiple editor windows or clients against the same workspace. The README points users to Cargo installation and package-manager availability through Repology, while the supplied package facts list Homebrew, Alpine, and Nix.

How it is used

The usual setup is to run `lspmux server` as a user service and configure an editor to use `lspmux` as the language-server executable or connect directly to the lspmux socket. The README gives examples for rust-analyzer, CoC in Neovim, clangd, systemd user services on Linux, and launchd services on macOS.

Configuration is optional and stored in a TOML file in the system default configuration directory, with `~/.config/lspmux/config.toml` given as the Unix example. The README documents defaults for instance timeout, garbage-collection interval, TCP or Unix-socket listen/connect addresses, logging filters, and environment-variable filtering.

Why package nerds care

lspmux matters to package nerds because it is a resource-control tool for the LSP era. Rather than replacing an editor or a language server, it sits in the middle and makes repeated editor sessions cheaper, especially for heavy servers such as rust-analyzer.

Timeline

  • 2022: ra-multiplex 0.1.x releases add configuration and early support for non-rust-analyzer servers.
  • 2024: 0.2.x releases add status/reload commands, Unix sockets, native LSP handshake changes, and environment filtering.
  • 2025: Repository migrates to Codeberg and license changes to EUPL-1.2.
  • 2025: Project is renamed from ra-multiplex to lspmux in v0.3.0.

Related projects

  • Related projects include rust-analyzer, clangd, Neovim LSP clients, CoC, and the Language Server Protocol itself.

security posture

Risk level: orange

broad file, network, media, or database tool signal. formula declares a Homebrew service.

Risk classifier

orange risk · medium confidence · infrastructure

Why

  • broad file, network, media, or database tool signal
  • formula declares a Homebrew service

Signals

  • metadata:service
  • text:client

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Formula metadata declares a service or daemon block.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 1 runtime dependencies.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

local files

Configuration and credential file locations

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.

Configuration files

Config paths the tool may read or write during local use.

Unix
~/.config/lspmux/config.toml

executables

Installed executables

CommandKindExposureNote
lspmuxcliglobal executable

freshness

Version and 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.

page generated2026-07-25
manager version0.3.0
manager updated2026-07-15
local dataok
upstreamnot checked
latest detectednot detected

https://codeberg.org/p2502/lspmux

install metadata

Package metadata

Package keybrew:lspmux
Version0.3.0
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/lspmux
Homepagehttps://codeberg.org/p2502/lspmux
Repositoryhttps://codeberg.org/p2502/lspmux
Upstream docshttps://codeberg.org/p2502/lspmux
LicenseEUPL-1.2
Source archivehttps://codeberg.org/p2502/lspmux/archive/v0.3.0.tar.gz
Last updated2026-07-15T08:34:20Z
Pulseupdated
Dependenciesrust-analyzer
Build dependenciesrust
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicedeclared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namelspmux
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

lspmux

nix profile install nixpkgs#lspmux
  • normalized package name match
  • Matched by: Lspmux
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/ls/lspmux/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
apk95%

lspmux 0.3.0-r0

Share one instance of an LSP between multiple clients

https://codeberg.org/p2502/lspmux

sudo apk add lspmux
  • License: EUPL-1.2
  • Architecture: x86_64
  • Source Package: lspmux
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Lspmux
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: lspmux from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

lspmux-doc 0.3.0-r0

Share one instance of an LSP between multiple clients (documentation)

https://codeberg.org/p2502/lspmux

sudo apk add lspmux-doc
  • License: EUPL-1.2
  • Architecture: x86_64
  • Source Package: lspmux
  • normalized package name match
  • Matched by: Lspmux
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: lspmux-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated configuration and credential file locations
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment