ackwardroots

Data connectors break at 3am. Ours file their own patches.

AckwardRoots assigns every connector to an AI agent that owns it outright. The agent writes the connector code, tests it, ships it, watches it run, and rewrites it when the upstream API drifts. You find out in the changelog, not the pager. Rust and RedPanda underneath; still in development.

Source on GitHub
// an agent takes ownership of a connector
let agent = Agent::new("binance-ingest")
  .source(BinanceWebSocket::trades("BTCUSDT"))
  .transform(SchemaInfer::auto())
  .sink(RedPanda::topic("crypto.trades.btc"))
  .self_heal(true)
  .deploy();
// the agent monitors, patches, and redeploys from here on

What "self-healing" actually covers

Most pipeline failures are boring and recurring. Those are exactly the ones agents are good at, so we let them handle the loop end to end: detect, rewrite, test against recorded traffic, redeploy.

Sources we connect

familyexamplesnotes
ExchangesBinance, Coinbase, KrakenTrade streams, order-book snapshots, historical backfill.
BlockchainsEthereum, Polygon, BSC, Cosmos, SUIBlocks, transactions, contract events, mempool.
DatabasesPostgreSQL, MongoDB, Redis, ElasticsearchCDC, change streams, pub/sub, replication.
APIsREST, WebSocket, GraphQL, webhooksPolling and subscriptions with retry and backoff handled for you.

Transforms run on Bento (YAML-declared, 200+ processors) for both batch and streaming. Everything lands in RedPanda first: Kafka-compatible, replayable, millisecond reads.

Who reads the topics

AckwardRoots is the ingestion root for the rest of Colossal Capital:

Connector access is bundled with the platform. Sign up for a Colossal Capital account or check tier details.

Early access

We're still wiring things up. Leave an email and we'll write when there's something worth connecting.