A read-only command-line browser for exploring Kafka topics, partitions, and messages with search and custom decoding.
Kcli is a read-only command-line browser for Apache Kafka that allows developers to interactively explore topics, partitions, and messages directly in the terminal. It solves the problem of needing to write code or use heavy GUI tools to inspect Kafka data streams, providing a fast, keyboard-driven interface for debugging and data exploration.
Developers, data engineers, and DevOps professionals working with Kafka who need to quickly inspect messages, debug data pipelines, or explore cluster topics without leaving the command line.
Developers choose Kcli for its simplicity, speed, and scriptability—it offers an intuitive terminal UI with search, custom decoding, and output piping capabilities, making Kafka inspection more efficient than writing custom scripts or using bulkier tools.
A kafka command line browser
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a terminal UI with keyboard shortcuts for browsing topics, partitions, and messages, accessible via 'h' key toggles, as shown in the GIF and screenshots.
Allows searching for strings across topics or partitions with offset adjustments to speed up searches in large datasets, detailed in the search section.
Supports plugins for decoding messages in formats like Protocol Buffers, with an example provided in the README under custom decoders.
Exports messages to stdout for processing with tools like jq or awk, enabling scripting and data analysis, as demonstrated in the printing example.
Kcli is read-only, so it cannot produce messages or perform administrative tasks like topic creation, requiring separate tools for full Kafka management.
Requires setting multiple environment variables (KCLI_CERT_FILE, etc.) for TLS, which is more cumbersome than integrated authentication methods in other tools.
Windows is not tested, and installation depends on Go or binaries, potentially excluding some users or environments without proper compatibility.