Install Kuzu
Kuzu is an embedded graph database that can be used from the command line and from a variety of programming languages. This page shows all the ways you can install Kuzu. After installation, you can learn how to run Kuzu by creating your first graph.
Command Line (Shell)
If you don’t need Kuzu embedded in your application, you can use the CLI shell. This is a standalone executable with no dependencies that can be used to interact with a Kuzu database using just Cypher.
Use a tool like curl
to download the latest version of the Kuzu CLI to your local machine.
# x86-64curl -L -O https://github.com/kuzudb/kuzu/releases/download/v0.11.0/kuzu_cli-linux-x86_64.tar.gz# aarch64curl -L -O https://github.com/kuzudb/kuzu/releases/download/v0.11.0/kuzu_cli-linux-aarch64.tar.gz
tar xzf kuzu_cli-*.tar.gz
Now you can run Kuzu from the command line.
./kuzu
You can install the Kuzu CLI using Homebrew.
brew install kuzu
You can now run Kuzu from the command line.
kuzu
Alternatively, you can download the Kuzu CLI directly.
curl -L -O https://github.com/kuzudb/kuzu/releases/download/v0.11.0/kuzu_cli-osx-universal.tar.gztar xzf kuzu_cli-*.tar.gz./kuzu
Use a tool like curl
to download the latest version of the Kuzu CLI to your local machine. Alternatively,
simply open
this URL in your browser.
curl -L -O https://github.com/kuzudb/kuzu/releases/download/v0.11.0/kuzu_cli-windows-x86_64.zip
Right-click on the kuzu_cli-xxx.zip
file and click on Extract All. This will create a directory
containing a file named kuzu.exe
. Then, right-click on the directory and click “Open in terminal”.
From within the terminal, you can then run ./kuzu.exe
.
On Linux, macOS, and WSL2, you can also use Nix
to run the Kuzu CLI.
Run Kuzu in a temporary shell:
nix-shell -p kuzukuzu
Alternatively, you can install Kuzu declaratively using NixOS or Home Manager configuration:
{ environment.systemPackages = [ pkgs.kuzu ]; // NixOS home.packages = [ pkgs.kuzu ]; // Home Manager}
Python
You can use uv
, pip
, or nix
to install the Kuzu Python client library.
The instructions are the same for Linux, macOS, and Windows.
uv inituv add kuzu
pip install kuzu
nix-shell -p "python3.withPackages (ps: [ ps.kuzu ])"
Node.js
Use npm
to install the Kuzu Node.js client library.
npm install kuzu
Java
The latest stable version is available on Maven Central.
<dependency> <groupId>com.kuzudb</groupId> <artifactId>kuzu</artifactId> <version>0.11.0</version></dependency>
Rust
Use Cargo to install the Kuzu Rust client library. This will by default build and statically link Kuzu’s C++ library from source. You can also link against the dynamic release libraries, as described in the crate docs.
cargo add kuzu
Go
Kuzu’s Go API is a wrapper around the C API of Kuzu. The installation step below assumes that you have
initialized a Go project that has a go.mod
file, as described in the official tutorial.
Swift
To add kuzu-swift
to your Swift project, you can use the Swift package manager.
-
Add the package to your Package.swift dependencies.
Terminal window dependencies: [.package(url: "https://github.com/kuzudb/kuzu-swift/", branch: "0.11.0"),],You can change the branch to a tag to use a specific version (e.g., 0.11.0 for the latest stable release or
main
for the latest development version). -
Add
Kuzu
to your target dependencies.targets: [.target(name: "YourTargetName",dependencies: [.product(name: "Kuzu", package: "kuzu-swift"),])]
Alternatively, you can add the package through Xcode:
- Open your Xcode project.
- Go to
File
>Add Packages Dependencies...
. - Enter the URL of the kuzu-swift repository:
https://github.com/kuzudb/kuzu-swift
. - Select the version you want to use (e.g., 0.11.0 for the latest stable release or
main
for the latest development version).
C/C++
Use a tool like curl
to download the latest version of the Kuzu C/C++ binaries to your local machine.
The Kuzu C++ client is distributed as a so/dylib/dll+lib library file along with a header file (kuzu.hpp
).
Once you’ve downloaded and extracted the C++ files into a directory, you can link it to your C++
program by adding the directory to your build system’s search paths.
# x86-64curl -L -O https://github.com/kuzudb/kuzu/releases/download/v0.11.0/libkuzu-linux-x86_64.tar.gz# aarch64curl -L -O https://github.com/kuzudb/kuzu/releases/download/v0.11.0/libkuzu-linux-aarch64.tar.gz
tar xzf libkuzu-*.tar.gz
curl -L -O https://github.com/kuzudb/kuzu/releases/download/v0.11.0/libkuzu-osx-universal.tar.gz
tar xzf libkuzu-*.tar.gz
curl -L -O https://github.com/kuzudb/kuzu/releases/download/v0.11.0/libkuzu-windows-x86_64.zip
Kuzu Explorer
Kuzu Explorer is a web-based GUI for Kuzu. It allows you to explore and query your Kuzu database using a web browser. Refer to the Kuzu Explorer GitHub repo for more details.
Kuzu MCP Server
Our Model Context Protocol server allows you to expose your Kuzu database as a tool that can be used by LLMs and agents. Refer to the Kuzu-MCP GitHub repo for more details.
Nightly Builds
If you want access to the latest features in development, you can use our nightly builds.
- Python:
uv pip install --pre kuzu
- Node.js:
npm i kuzu@next
- Java: The latest snapshot version is available on GitHub Packages
- For the CLI, C/C++ shared libraries, and Rust crate, the latest nightly versions for each can be downloaded from the latest run of this GitHub Actions workflow.