Data platform for embodied AI

From raw recordings to deployed policies

EmbodiFlow turns robot teleoperation, human egocentric and UMI recordings into trusted dataset versions through programmable workflows, then takes them through training, evaluation and deployment.

On AWS cloud, on your GPU workstation, or on your private cloud: the same product.

Sample workflow run · grasp-cups / rec-0142


1

Ingest MCAP

mcap-ingest@1.4
Pass

2

Quality gate

robot-qc@2.1
Warning

3

Standardize to LeRobot v3

team/brainco-std@0.9
Pass

4

Face anonymization

pii-anonymize@1.2
Not applicable

5

Stereo depth

team/depth-v3@3.0
Pass

6

AI episode suggestions

propose-episodes@1.0
Running

12 episodes · 1 warning with evidence · frozen inputs
Bring data from any recorder
ROS bag
MCAP
HDF5
LeRobot
UMI / GoPro
Egocentric headsets
RLDS
Zarr

Recording hours are not usable hours

The bottleneck in embodied data is not how much you record, but how much you can use, trust and reproduce.

Scattered scripts

Conversion, QA and post-processing scripts live on laptops with no versions. A new person or a new batch breaks them.

Formats that do not agree

ROS bags, MCAP, vendor HDF5, GoPro video and headset captures differ in units, frames and action meaning.

Quality nobody can state

Dropped frames, broken timestamps and unsynchronized streams surface only when training fails to converge.

Results you cannot reproduce

Which data, which script version and which parameters trained this model? Most teams cannot answer.

One platform, the whole loop

Every step between a recording and a deployed policy is bound to an immutable version, and every processing step can be your own algorithm.

RECORDINGSWORKFLOWEvery step can be your own algorithmTeleoperationRobot armsEgocentricHead cameraUMIHandheld gripperIngestMCAP · ROSQualityGateStandardizeLeRobot v3PerceptionDepth · handsAnnotateAI + humanRejectedDataset versionv3 · frozenTrainDeploy
RECORDINGSWORKFLOWTeleoperationEgocentricUMIIngestMCAP · ROSQualityGateStandardizeLeRobot v3PerceptionDepth · handsAnnotateAI + humanRejectedEvery step can be your own algorithmDataset versionv3 · frozenTrainDeploy

Your AI assistant drives every step through MCP and the CLI

Why EmbodiFlow

Built for embodied data, end to end

Programmable workflows

Your workflow, your algorithms

Every step from raw recording to training data is a replaceable algorithm. Use the built-in ones, or swap in your own standardizer, quality check or perception model.

  • Write a few lines of Python, try it on a few recordings, save it as a version — or push a container image.

  • Register a private recorder format as a team format; uploads are standardized automatically.

  • Built-in and custom algorithms share one contract and one visual editor.

  • The platform schedules GPUs, parallelism, retries and caching. You write the logic.

StandardizeAnnotateBuilt-in depthteam/depth-v3your algorithmdepth_v3.py1def run(ctx):2 pair = ctx.input("stereo")3 depth = my_model(pair)4 ctx.output("depth", depth)Tried on 3 recordings · saved as v3
StandardizeAnnotateBuilt-in depthteam/depth-v3your algorithmdepth_v3.py1def run(ctx):2 pair = ctx.input("stereo")3 depth = my_model(pair)4 ctx.output("depth", depth)Tried on 3 recordings · saved as v3
AI-native

Built-in AI, and open to yours

Built-in AI does the repetitive data work. Through MCP, the CLI and SDKs, assistants such as Claude and Cursor can do anything you can do on the platform.

  • AI suggests episode boundaries, subtasks and skills. A person confirms before anything takes effect.

  • Find episodes in natural language, or by what they look like and how they move.

  • A data map shows clusters and gaps across every episode in a project.

  • Assistants use your access token: never more permission than you, with the same audit trail.

DATA MAP38 candidate episodesopen the drawerAI
DATA MAP38 candidate episodesopen the drawerAI
Full loop

Data, training, evaluation and deployment in one place

Start training from a dataset version, compare models offline, and deploy as a cloud inference service or an edge package on the robot.

  • Mainstream policy and VLA model families, from ACT to SmolVLA and OpenPI.

  • Offline evaluation compares predicted and recorded actions against a baseline.

  • Works with both the OpenPI and LeRobot official clients — no changes on the robot.

LineageDataset versionfrozenTrainACT · SmolVLAEvaluatevs. baselineDeploycloud · edge
LineageDataset versionfrozenTrainACT · SmolVLAEvaluatevs. baselineDeploycloud · edge
Three data sources

Teleoperation, human egocentric and UMI, treated alike

Every input is standardized to LeRobot v3 on a 30 Hz time grid, so different recorders can be trained together.

  • Human egocentric data is first-class: camera and IMU only, with derived actions.

  • A complete UMI chain: GoPro telemetry, fisheye calibration, SLAM mapping and gripper state.

  • Stereo depth, hand pose, camera pose and face anonymization built in.

Teleoperationjoints · 3 camerasEgocentriccamera · IMUUMIGoPro · gripperLeRobot v3one 30 Hz time grid33.3 ms
Teleoperationjoints · 3 camerasEgocentriccamera · IMUUMIGoPro · gripperLeRobot v3one 30 Hz time grid33.3 ms
Honest quality

If it was not checked, it never shows as passed

Quality gates sit at the entrance and keep untrainable data out, at the level of individual files and episodes.

  • Six statuses: pass, warning, fail, error, not evaluated and not applicable. The last three are never green.

  • Drop only the bad episodes, not the whole dataset.

  • Every finding carries its threshold and evidence interval, and jumps to that moment in replay.

QUALITY GATEEp 1Ep 2Ep 3Ep 4Ep 5Ep 6PassPassWarningFailPassNot applicableEpisode 4 · dropped frames 12.4–13.1 sOpen in replay
QUALITY GATEEp 1Ep 2Ep 3Ep 4Ep 5Ep 6PassPassWarningFailPassNot applicableEpisode 4dropped frames 12.4–13.1 sOpen in replay
Immutable versions

Every model can say what made it

Dataset versions are frozen. Lineage runs from raw recording through processing, quality, version, export and training to the model.

  • Each run freezes the algorithm version, image, parameters and inputs.

  • Exports record a checksum for every file; regenerating must produce identical bytes.

  • New data never changes a historical version.

Recordingraw bytesRunalgo@1.4Version v3frozenExportsha256ModelACTWhere did this model come from?
Recordingraw bytesRunalgo@1.4Version v3frozenExportsha256ModelACTWhere did this model come from?
Cloud or self-hosted

Sign up and go, or run it on your own GPUs

The same product runs on AWS cloud, fully offline on a single GPU workstation, or on your private cloud cluster. Self-hosted data never leaves the building.

  • Workstation ships as a Dell GPU workstation with everything preinstalled; Enterprise runs multi-node with high availability.

  • Offline license verification, built-in object storage, continuous backup and point-in-time restore.

  • When a license expires the platform becomes read-only. Your data stays readable and exportable.

HOSTEDYOUR BUILDINGOfflineSaaS TeamAWS cloudWorkstationDell, preinstalledEnterprisePrivate clusterOne platform, wherever it runs
HOSTEDYOUR BUILDINGOfflineSaaS TeamAWS cloudWorkstationDell, preinstalledEnterprisePrivate clusterOne platform, wherever it runs
Open ecosystem

No lock-in on hardware or formats

Export standard LeRobot v3, RLDS, Zarr or HDF5. Point huggingface_hub and LeRobot at the platform with one environment variable.

  • Full REST API with OpenAPI, TypeScript and Python SDKs, CLI and MCP server.

  • Webhooks notify you when work finishes — no polling.

LeRobot v3read & trainHugging FaceHub-compatibleOpen formatsRLDS · Zarr · HDF5MCP · CLIAI assistantsREST · SDKTS · PythonWebhooksno polling
LeRobot v3read & trainHugging FaceHub-compatibleOpen formatsRLDS · Zarr · HDF5MCP · CLIAI assistantsREST · SDKTS · PythonWebhooksno polling
For developers and agents

Everything you can click, your assistant can call

MCP tools are generated from the public API, so new features reach your assistant immediately. Write operations take idempotency keys and failures return named reasons.

"Upload this folder to the grasping project and tell me the quality once it is processed."

"Write a quality check that the gripper stays visible the whole time."

"Make a version from the passing episodes, train ACT, and compare it with the last model."

Read the docs
$ embodiflow auth login
$ embodiflow projects list --output json
$ embodiflow uploads create --project-id <project> --source-path ./recordings
$ embodiflow versions download <team>/<project>@<n>

Compared with how it is done today

Home-grown scripts

No versions, hard to reuse

EmbodiFlow

Algorithms registered as versions, visual workflows, scheduling and lineage

Closed all-in-one platforms

Fixed steps, no room for your algorithms

EmbodiFlow

Every step can be your own algorithm

Web-only platforms

AI assistants cannot use them

EmbodiFlow

MCP, CLI and SDKs open everything to your assistant

File names and manual review

Breaks down at scale

EmbodiFlow

Semantic search, similarity and a data map

Separate tools for data, training and deployment

Manual hand-offs between each stage

EmbodiFlow

One platform, unbroken lineage

Robot data visualization tools

You can look, but not build datasets

EmbodiFlow

Replay to find problems, then process, version and export

General labeling and curation tools

No grasp of robot time series or actions

EmbodiFlow

Robot-specific quality rules and action semantics built in

Current practiceLimitationEmbodiFlow
Home-grown scriptsNo versions, hard to reuseAlgorithms registered as versions, visual workflows, scheduling and lineage
Closed all-in-one platformsFixed steps, no room for your algorithmsEvery step can be your own algorithm
Web-only platformsAI assistants cannot use themMCP, CLI and SDKs open everything to your assistant
File names and manual reviewBreaks down at scaleSemantic search, similarity and a data map
Separate tools for data, training and deploymentManual hand-offs between each stageOne platform, unbroken lineage
Robot data visualization toolsYou can look, but not build datasetsReplay to find problems, then process, version and export
General labeling and curation toolsNo grasp of robot time series or actionsRobot-specific quality rules and action semantics built in

Three ways to run it

SaaS Team

One team, hosted on AWS cloud. Nothing to operate, always up to date.

Workstation

A Dell workstation with GPUs and EmbodiFlow preinstalled. Unbox it in your building and start, fully offline.

Enterprise

Multiple teams on your private cloud cluster, with high availability and custom features.

Make every dataset checkable, acceptable and reproducible