finds.dev← search

// the find

birdayz/kaf

★ 2,437 · Go · Apache-2.0 · updated May 2026

Modern CLI for Apache Kafka, written in Go.

kaf is a kubectl-inspired CLI for Apache Kafka that wraps the common day-to-day operations — producing, consuming, inspecting topics and consumer groups, resetting offsets — into something sane to type. It's aimed at developers and operators who find the bundled Kafka shell scripts painful and want tab completion and JSON output piping instead.

The topic-to-topic pipe via json-each-row is genuinely useful for replay and migration workflows without writing any code. Auth coverage is solid: SASL/PLAIN, SCRAM, SSL client certs, OAuth, and AWS MSK IAM all have example configs. Shell completion works across bash, zsh, fish, and PowerShell. The produce/consume round-trip preserving headers and keys in json-each-row format makes it scriptable in a way the official tools aren't.

2,437 stars and only 162 forks suggests more users than contributors, and the commit history shows it's largely a one-person project — bus factor is real. No schema management commands: you can't create or evolve schemas through kaf, so Schema Registry is purely a decode-time concern. The consumer side lacks a 'seek and dump N messages starting at offset X' shortcut that's constantly needed for debugging — you have to combine --offset flags manually. No support for transactions or exactly-once semantics on the produce side, which matters if you're testing transactional producers.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →