Build
SkillDatabases & dataThis skill lets your AI build and compile FalkorDB, a Rust project with native GraphBLAS and RediSearch dependencies. Once added, your AI can handle the build process, set up the native dependencies for the first time, and run formatting and lint checks. It is useful when you need to fix a build, compile, or lint error in the project.
Available today. Use it from your connected AI after setup.
No other account needed.
After adding the skill, ask your AI to build FalkorDB or run its formatting and lint checks. If it is the first build on your machine, ask it to set up the native dependencies first.
Then ask your AI: use the Build skill
What your AI can do with it
- Build and compile the FalkorDB Rust project
- Set up the native GraphBLAS and RediSearch dependencies for the first time
- Run formatting checks with cargo fmt
- Run lint checks with cargo clippy
- Diagnose and fix build, compile, or lint errors
What this skill tells your AI
The instructions your AI receives, as published by falkordb/falkordb in .claude/skills/build/SKILL.md and read by ahel’s review.
FalkorDB-rs is a Redis module: the Rust crates link against two native C
libraries (GraphBLAS and RediSearch) that must be compiled and installed
before cargo build will succeed.
1. First-time native dependency setup
Only needed once per machine/container (skip if cargo build already works).
./graphblas.sh # clones, builds (static, PIC) and installs GraphBLAS v10.5.0 + LAGraph
git submodule update --init --recursive # populates deps/RediSearch (git owns it)
./redisearch.sh # builds that checkout (static) into deps/RediSearch/bin
If a script fails, read it before retrying by hand — graphblas.sh documents
the exact cmake flags it uses (-DGRAPHBLAS_COMPACT=OFF,
-DCMAKE_POSITION_INDEPENDENT_CODE=ON, static build, shared install prefix)
and has a --skip-graphblas flag to reuse an already-installed
libgraphblas.a while iterating on the LAGraph step.
2. Build
cargo build # debug build -> target/debug/libfalkordb.{so,dylib}
cargo build --release # release build -> target/release/libfalkordb.{so,dylib}
3. Format & lint
cargo fmt --all -- --check
CXX=clang++ cargo clippy --all-targets
CXX=clang++is required for clippy (and any build invoking the GraphBLAS FFI bindings undergraph/src/graph/graphblas/, whose bindgen output isgraphblas/mod.rs) — without it, clippy fails trying to compile the C shims.- Format check uses the project's
rustfmt.toml(vertical function-parameter layout). Runcargo fmt --all(no--check) to auto-fix. - Run format + build + clippy together, in that order, for a full check — fail fast on formatting before spending time on a full compile.
- For a stricter, opt-in clippy pass (pedantic/nursery/cargo lints, plus an
auto-fix mode) see the
lintskill.
Notes
- CI (
.github/workflows/rust-pr.yml) runs the samecargo fmt --all --checkandCXX=clang++ cargo clippy --all-targets(pinned to a specificclang++version in CI containers; any reasonably recent localclang++works). - Cross-platform release artifacts (Linux
.so, macOS.dylib) and multi-arch Docker image publishing are handled entirely in CI — these need GH-hosted secrets/registries and are not meant to be reproduced locally.
If any step fails, report the errors clearly and help fix them.
Signals
- GitHub stars
- 6k
- Forks
- 462
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
build-falkordb- Source
- github.com/falkordb/falkordb