safer creates scripts to run dev tools using container runtimes.
The scripts mount project files (and other resources if needed) in the same paths as the host, allowing coherent feedback when tools report file paths. This isolates the rest of the developer system.
Host dev tools (Neovim, diagnostics, AI agents…) auto-detect these scripts as the actual tools and interpret output as if it were running natively — particularly useful for LSPs.
Using this technique, you get:
- Host files isolation — only explicitly shared project files are visible inside the container.
- Reproducible tool chains — exact tool versions per project, independent of host OS or platform.
- Cleaner developer systems — clear separation between host software and project-specific tooling.
Installation
Linux
Download and unpack safer:
cd /tmp
curl -LO https://github.com/fjfnaranjo/safer/releases/download/release-0.1-rc7/safer-0.1-rc7.tar.gz
tar -xzf safer-0.1-rc7.tar.gz
cd safer-0.1-rc7
Install the files for your user (if you have ~/.local/bin in your PATH):
install -Dm755 bin/safer ~/.local/bin/safer
install -Dm644 share/man/man1/safer.1 ~/.local/share/man/man1/safer.1
install -dm755 ~/.local/share/safer/tools ~/.local/share/safer/images
install -Dm644 share/safer/tools/* ~/.local/share/safer/tools/
install -Dm644 share/safer/images/* ~/.local/share/safer/images/
Or install them system-wide:
sudo install -Dm755 bin/safer /usr/local/bin/safer
sudo install -Dm644 share/man/man1/safer.1 /usr/local/share/man/man1/safer.1
sudo install -dm755 /usr/local/share/safer/tools /usr/local/share/safer/images
sudo install -Dm644 share/safer/tools/* /usr/local/share/safer/tools/
sudo install -Dm644 share/safer/images/* /usr/local/share/safer/images/
MacOS
Use Homebrew:
brew tap fjfnaranjo/safer
brew install safer