We've been dealing with exactly the mess they describe - a robotics data corpus where nobody could say for sure which version of a labeling script produced which episode. Ran the quickstart locally with no Docker or Airflow setup required, which was a relief since half the tools in this space assume you already have an orchestration stack running. Writing canonical MCAP episodes with a DuckDB-queryable manifest is the right call - being able to just query your dataset lineage with SQL instead of grepping through log files is a genuinely useful change in workflow.
HFlow
Hi Product Hunt,
We built HFlow because robotics teams are collecting more hours of video data than they can handle. Each episode can contain camera streams, robot state, actions, timestamps, and metadata. As a corpus grows, one-off scripts make it hard to answer basic questions: Did a camera freeze? Did streams drift out of sync? Which version of a check ran? Can we reproduce the dataset we used?
HFlow turns that work into a pipeline. Transforms, checks, labels, and enrichments stay yours. HFlow handles orchestration, storage, versioning, and curation around them. It writes canonical MCAP episodes with provenance, records quality evidence in a Parquet catalog, and builds version-pinned manifests with DuckDB.
The core lifecycle works end to end today. You can run the included quickstart locally
without Docker, Airflow, robot hardware, or an external service.
HFlow is Apache-2.0 licensed and built in public by Hebbian Robotics (YC S26). If you work with robotics or physical AI data, try the quickstart and tell us where your current data workflow loses the most context. Is it ingestion, quality control, provenance, or curation?
Kingston and Brandon
HFlow
@kstonekuan better data smarter robots!