<img width="150" alt=" Pixel art portrait of a serious-faced person in grayscale above the text 'Yozefu'" src="https://github.com/MAIF/yozefu/raw/main/docs/public/logo.svg">
Yōzefu is an interactive terminal user interface (TUI) application for exploring data of a kafka cluster. It is an alternative tool to AKHQ, redpanda console or the kafka plugin for JetBrains IDEs.
The tool offers the following features:
- A real-time access to data published to topics.
- A search query language inspired from SQL providing a fine-grained way filtering capabilities.
- Ability to search kafka records across multiple topics.
- Support for extending the search engine with user-defined filters written in WebAssembly (Extism).
- The tool can be used as a terminal user interface or a CLI with the --headless flag.
- One keystroke to export kafka records for further analysis.
- Support for registering multiple kafka clusters, each with specific kafka consumer properties.
By default, the kafka consumer is configured with the property enable.auto.commit set to false, meaning no kafka consumer offset will be published to kafka.

json, xml or plain text are supported. Avro support is experimental for now. Protobuf is not supported.clone() and deserialization).# packages such as `libclang-dev` are required to build Yōzefu
# for more details https://maif.github.io/yozefu/getting-started/#prerequisites
RUSTFLAGS="--cfg tokio_unstable" cargo install --locked yozefu
# By default, it starts the TUI.
# The default registered cluster is localhost
yozf --cluster localhost
# You can also start the tool in headless mode.
# It prints the key of each kafka record matching the query in real time
yozf --cluster localhost \
--headless \
--topics "public-french-addresses" \
--format "json" \
'from begin value.properties.type contains "street" and offset < 356_234 limit 10' \
| jq '.key'
# Use the `configure` command to define new clusters
yozf configure
# You can create search filters
yozf create-filter --language rust key-ends-with
# And import them
yozf import-filter path/to/key-ends-with.wasm
You can also download pre-build binaries from the releases section. Attestations are available:
gh attestation verify --repo MAIF/yozefu $(which yozf)
brew install yozefu
yay -S yozefu
nix run github:MAIF/yozefu
[!NOTE] Docker is required to start a single node Kafka cluster on your machine. JBang is not required but recommended if you want to produce records with the schema registry.
# It clones this repository, starts a docker kafka node and produces json records
curl -L "https://raw.githubusercontent.com/MAIF/yozefu/refs/heads/main/docs/try-it.sh" | bash
yozf -c localhost
To check out docs, visit https://maif.github.io/yozefu/.
|
|
|
|
$ claude mcp add yozefu \
-- python -m otcore.mcp_server <graph>