Skip to content

Why fork above ManiSkill v3?

ManiSkill v3 (SAPIEN 3 + Warp-MPM) is the only publicly available simulator that simultaneously supports: heterogeneous robot embodiments, contact-rich manipulation, GPU-parallel rendering, and a Gymnasium-compatible API.

The design decision (ADR-001) is to wrap — never fork — ManiSkill v3. The three wrapper layers (PerAgentActionRepeatWrapper, TextureFilterObsWrapper, CommShapingWrapper) add CHAMBER-specific behaviour without modifying the upstream package. This preserves the ability to track upstream security and bug fixes, and avoids the supply-chain risk of a private fork diverging silently.

The wrapper strategy is enforced mechanically: tests/unit/test_no_private_imports.py fails if any src/chamber/ module imports a _private symbol from mani_skill.