You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This issue tracks the proposed product and engineering roadmap for MindAct after the repository pivot from MindNLP/MindTorch to a PyTorch-native toolkit for embodied policies.
The near-term goal is not to build another general-purpose training framework. MindAct should first become a reproducibility harness for embodied-policy experiments:
Train or load a policy, evaluate it on a simulator, and explain exactly what produced the result.
LeRobot and LIBERO will be the first reference integrations, while the core contracts remain framework- and simulator-neutral.
PR #2772 established the foundation and is now merged:
deterministic, dependency-free evaluation runner;
frozen configuration and result records;
write-once manifest and evaluation artifacts;
fake policy/environment smoke path;
CLI and Python API contracts.
Product direction
Primary positioning
Reproducible evaluation and diagnostics for embodied policies.
MindAct should own experiment orchestration, provenance, deterministic evaluation, result comparison, and failure diagnostics. It should reuse native training/inference implementations from LeRobot and other ecosystems rather than reimplementing every optimizer, scheduler, and distributed-training feature.
Reference workflow
pinned dataset/checkpoint
-> policy adapter
-> observation/action bridge
-> simulator environment adapter
-> deterministic rollouts
-> manifest + episode records + metrics + optional video
-> comparison and diagnostics
evaluation/results.json and evaluation/episodes.jsonl
Dependency-free fake evaluation CLI
Unit/integration smoke coverage without torch, LeRobot, or LIBERO
M1 — Integration readiness and developer experience
Goal: make environment and dependency failures diagnosable before a real rollout starts.
Candidate work:
Add mindact doctor for Python, PyTorch, device, MuJoCo, LeRobot, LIBERO, renderer, and checkpoint-access diagnostics.
Add mindact manifest show for human-readable provenance inspection.
Define a stable checkpoint reference model for local paths and Hub revisions.
Define observation/action schema and normalization contracts.
Add integration-test fixtures and headless/offscreen configuration guidance.
Exit criteria: a contributor can determine whether their machine is ready for a real evaluation without reading adapter internals, and all checks remain clean when optional dependencies are absent.
M2 — Minimal LIBERO environment adapter
Goal: create and close one real LIBERO environment through the MindAct protocol.
Initial scope should stay intentionally narrow:
One supported task suite and one task as the reference path.
Serial, single-environment execution.
Seeded reset, normalized step, and guaranteed close.
Explicit LIBERO and simulator version reporting.
Headless/offscreen operation in CI or a documented local smoke path.
No vectorized environments or broad task-suite abstraction in the first cut.
Exit criteria: a real LIBERO adapter passes lifecycle and contract tests, including missing-dependency skips and cleanup on failure.
M3 — Minimal LeRobot policy adapter
Goal: load one pinned policy checkpoint and produce actions through the MindAct policy contract.
The first reference implementation should target ACT or another well-supported LeRobot policy, not every policy family.
Lazy-load LeRobot and PyTorch only when the adapter is requested.
Support a local checkpoint and a pinned Hugging Face revision.
Capture checkpoint identity, repository revision, policy revision, and runtime device.
Normalize inference mode, device placement, and no-gradient execution.
Keep checkpoint-format assumptions inside the adapter.
Exit criteria: a pinned checkpoint can be loaded and invoked on a documented synthetic observation fixture without importing optional dependencies from import mindact.
M4 — First real end-to-end evaluation
Goal: run one real policy on one real LIBERO task and produce auditable artifacts.
Exit criteria: two runs can be compared from the command line with explicit warnings for incompatible provenance.
M6 — Training orchestration (after real evaluation)
Goal: provide a thin, provenance-first training entry point without replacing native framework trainers.
Add a pinned LeRobot dataset adapter with dataset revision and normalization metadata.
Invoke native LeRobot training for the first supported policy.
Persist checkpoint lineage and training metrics.
Optionally chain training completion into the real evaluation runner.
Defer distributed training, sweeps, remote execution, and broad trainer abstractions until a concrete use case requires them.
Proposed PR sequence
PR2 — mindact doctor + integration readiness contracts
PR3 — minimal LIBERO environment adapter
PR4 — minimal LeRobot/ACT policy adapter
PR5 — observation/action bridge + first real evaluation
PR6 — manifest inspection and run comparison
PR7 — trajectory diagnostics and failure artifacts
PR8 — LeRobot dataset and thin training orchestration
The exact split can change if the first real integration reveals a better boundary, but every PR should leave the dependency-free core usable and tested.
MindAct 0.2 target
A realistic 0.2 preview should let a user:
install the required optional extras;
run mindact doctor;
load a pinned ACT checkpoint;
evaluate one supported LIBERO task for a small number of episodes;
obtain immutable provenance, episode records, metrics, and optional video;
rerun with a fixed seed and understand any differences;
compare two runs while seeing warnings for incompatible inputs;
continue using configuration checks and the fake runner without any optional ML dependencies.
Explicit non-goals for this roadmap
Rebuilding PyTorch, LeRobot, or a general-purpose trainer.
Supporting every simulator or policy family in the first release.
Distributed execution, cloud orchestration, experiment sweeps, or a hosted dashboard.
Treating a fake runner as a benchmark result.
Adding eager imports of torch, LeRobot, LIBERO, or other optional dependencies.
Sacrificing write-once provenance or deterministic behavior for convenience.
Design constraints
Core dependencies remain limited to NumPy and PyYAML.
Integration boundaries use runtime-checkable protocols and duck typing.
Configuration and result records remain frozen dataclasses.
Every real run writes a manifest before rollout and never mutates it afterward.
New behavior must include dependency-free tests and clean optional-dependency skips.
This is a proposed roadmap for discussion. The first implementation after this issue is expected to start with M1/M2, not with a broad training-loop rewrite.
Summary
This issue tracks the proposed product and engineering roadmap for MindAct after the repository pivot from MindNLP/MindTorch to a PyTorch-native toolkit for embodied policies.
The near-term goal is not to build another general-purpose training framework. MindAct should first become a reproducibility harness for embodied-policy experiments:
LeRobot and LIBERO will be the first reference integrations, while the core contracts remain framework- and simulator-neutral.
PR #2772 established the foundation and is now merged:
Product direction
Primary positioning
Reproducible evaluation and diagnostics for embodied policies.
MindAct should own experiment orchestration, provenance, deterministic evaluation, result comparison, and failure diagnostics. It should reuse native training/inference implementations from LeRobot and other ecosystems rather than reimplementing every optimizer, scheduler, and distributed-training feature.
Reference workflow
Milestones
M0 — Foundation (complete)
Delivered by PR #2772.
EvaluationRunnermanifest.jsonevaluation/results.jsonandevaluation/episodes.jsonlM1 — Integration readiness and developer experience
Goal: make environment and dependency failures diagnosable before a real rollout starts.
Candidate work:
mindact doctorfor Python, PyTorch, device, MuJoCo, LeRobot, LIBERO, renderer, and checkpoint-access diagnostics.mindact manifest showfor human-readable provenance inspection.Exit criteria: a contributor can determine whether their machine is ready for a real evaluation without reading adapter internals, and all checks remain clean when optional dependencies are absent.
M2 — Minimal LIBERO environment adapter
Goal: create and close one real LIBERO environment through the MindAct protocol.
Initial scope should stay intentionally narrow:
reset, normalizedstep, and guaranteedclose.Exit criteria: a real LIBERO adapter passes lifecycle and contract tests, including missing-dependency skips and cleanup on failure.
M3 — Minimal LeRobot policy adapter
Goal: load one pinned policy checkpoint and produce actions through the MindAct policy contract.
The first reference implementation should target ACT or another well-supported LeRobot policy, not every policy family.
Exit criteria: a pinned checkpoint can be loaded and invoked on a documented synthetic observation fixture without importing optional dependencies from
import mindact.M4 — First real end-to-end evaluation
Goal: run one real policy on one real LIBERO task and produce auditable artifacts.
Target interface:
Exit criteria: a new user can follow the installation guide and run a small, fixed-episode real evaluation on a supported machine.
M5 — Comparability and diagnostics
Goal: turn provenance into a user-visible advantage rather than only an internal artifact format.
mindact compare <run-a> <run-b>.mindact manifest difffor identity/config differences.Exit criteria: two runs can be compared from the command line with explicit warnings for incompatible provenance.
M6 — Training orchestration (after real evaluation)
Goal: provide a thin, provenance-first training entry point without replacing native framework trainers.
Proposed PR sequence
mindact doctor+ integration readiness contractsThe exact split can change if the first real integration reveals a better boundary, but every PR should leave the dependency-free core usable and tested.
MindAct 0.2 target
A realistic 0.2 preview should let a user:
mindact doctor;Explicit non-goals for this roadmap
Design constraints
This is a proposed roadmap for discussion. The first implementation after this issue is expected to start with M1/M2, not with a broad training-loop rewrite.