Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Installation

Multiple installation methods are available depending on your needs.

The easiest way to install Neumann is using the install script:

curl -sSfL https://raw.githubusercontent.com/Shadylukin/Neumann/main/install.sh | bash

This script will:

  • Detect your platform (Linux x86_64, macOS x86_64, macOS ARM64)
  • Download a pre-built binary if available
  • Fall back to building from source if needed
  • Install to /usr/local/bin or ~/.local/bin
  • Install shell completions and man pages

Environment Variables

VariableDescription
NEUMANN_INSTALL_DIRCustom installation directory
NEUMANN_VERSIONInstall a specific version (e.g., v0.1.0)
NEUMANN_NO_MODIFY_PATHSet to 1 to skip PATH modification
NEUMANN_SKIP_EXTRASSet to 1 to skip completions and man page installation

Homebrew (macOS/Linux)

brew tap Shadylukin/tap
brew install neumann

Cargo (crates.io)

If you have Rust installed:

cargo install neumann_shell

To install the gRPC server:

cargo install neumann_server

Docker

Interactive CLI

docker run -it shadylukinack/neumann:latest

Server Mode

docker run -d -p 9200:9200 -v neumann-data:/var/lib/neumann shadylukinack/neumann:server

Docker Compose

# Clone the repository
git clone https://github.com/Shadylukin/Neumann.git
cd Neumann

# Start the server
docker compose up -d neumann-server

# Run the CLI
docker compose run --rm neumann-cli

From Source

Requirements

  • Rust 1.75 or later
  • Cargo (included with Rust)
  • Git
  • protobuf compiler (for gRPC)

Build Steps

# Clone the repository
git clone https://github.com/Shadylukin/Neumann.git
cd Neumann

# Build in release mode
cargo build --release --package neumann_shell

# Install locally
cargo install --path neumann_shell

Run Tests

cargo test

SDK Installation

Python

pip install neumann-db

For embedded mode (in-process database):

pip install neumann-db[native]

TypeScript / JavaScript

npm install neumann-db

Or with yarn:

yarn add neumann-db

Verify Installation

neumann --version

Platform Support

PlatformBinaryHomebrewDockerSource
Linux x86_64YesYesYesYes
macOS x86_64YesYesYesYes
macOS ARM64 (Apple Silicon)YesYesYesYes
Windows x86_64NoNoYesExperimental

Troubleshooting

“command not found: neumann”

The binary may not be in your PATH. Try:

# Check where it was installed
which neumann || ls ~/.local/bin/neumann

# Add to PATH if needed
export PATH="$HOME/.local/bin:$PATH"

Build fails with protobuf errors

Install the protobuf compiler:

# macOS
brew install protobuf

# Ubuntu/Debian
sudo apt-get install protobuf-compiler

# Fedora
sudo dnf install protobuf-compiler

Permission denied during install

The installer tries /usr/local/bin first (requires sudo) then falls back to ~/.local/bin. You can specify a custom directory:

NEUMANN_INSTALL_DIR=~/bin \
  curl -sSfL https://raw.githubusercontent.com/Shadylukin/Neumann/main/install.sh | bash

Python SDK native module errors

If you get errors about the native module, ensure you have a Rust toolchain:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
pip install neumann-db[native]

Updating

Quick Install

Re-run the install script to get the latest version:

curl -sSfL https://raw.githubusercontent.com/Shadylukin/Neumann/main/install.sh | bash

Homebrew

brew upgrade neumann

Cargo

cargo install neumann_shell --force

Python SDK

pip install --upgrade neumann-db

TypeScript SDK

npm update neumann-db

Uninstalling

Quick Install / Cargo

rm $(which neumann)

Homebrew

brew uninstall neumann

Docker

docker rmi shadylukinack/neumann:latest shadylukinack/neumann:server
docker volume rm neumann-data

Python SDK

pip uninstall neumann-db

TypeScript SDK

npm uninstall neumann-db

Next Steps