Conduit moves data between systems in real time — from sources to destinations, with processors in between. It ships as a single Go binary with no external dependencies, and it does not require Kafka. Here is what Conduit is today.
A Kafka Connect replacement
Conduit covers the same job as Kafka Connect — connectors, transforms, and a pipeline runtime — without the JVM and without a Kafka cluster to stand up first. Pipelines move data between any source and destination; Kafka is one option among many, not a prerequisite. If you are coming from Kafka Connect, there is a migration path: the migration command produces a compatibility report rather than silently dropping config it cannot translate.
Any-language connectors
Connectors talk to Conduit over a stable gRPC protocol, so a connector can be written in any language that speaks it. Go has a mature SDK and connector template today; writing a connector in Python is in progress and pre-alpha. Processors — the transforms that run between source and destination — are ordinary code compiled to WASM, not a bespoke DSL you have to learn.
Embeddable
Conduit is a library as well as a server. Embed the engine in a Go service with
conduit.New(...) and run pipelines in-process — no separate deployment to
operate — see the embedding guide. Client
libraries for Python and Node are coming (v0.20).
Agent-legible
Conduit exposes an MCP server, stable machine-actionable error
codes, and an llms.txt. Each error carries the failing
config path and a suggested fix, so an agent can act on it without scraping prose.
Agents scaffold, validate, deploy, and inspect pipelines through the same code
paths the CLI uses — and every command supports --json.
A signed connector registry
conduit connectors install <name> pulls a connector from the registry and
verifies both its signature and its
SLSA provenance before installing.
Verification is fail-closed: an unsigned artifact — or a signed one with no
provenance attestation — is refused, not installed.
A data path you can trust
Conduit is at-least-once by default. A record is acknowledged upstream only after it is durably handled downstream, positions are monotonic and crash-safe, and a restart resumes without skipping records. These pipeline semantics are chaos-tested, not just asserted. For how the pieces fit together, see the architecture overview.
Get started
Install Conduit, then build your first pipeline — or scaffold one from a template.
