Contributing#
Bug fixes and documentation improvements are welcome. For new tasks, MDP
changes, or paper reproductions, open an issue
first — we keep a shared MDP in env/ and express paper differences as
registered tasks.
Planned themes: Roadmap. Layers: Architecture overview, Shared MDP, Extensions.
Setup#
Follow Installation (uv or pip from source), then:
uv run wbc-mjlab-list-envs
Optional: uvx pre-commit install after make sync (uv workflow).
Build the documentation site: make docs (requires uv sync --group docs).
Pull requests#
Fork, branch from
main, keep PRs focused.Run
make check(lint + smoke) or at minimummake formatandmake smoke.Smoke-test what you touched (short train/play on
--dataset sampleswhen relevant).Link the issue:
Closes #N.
Adding a paper task#
Preset:
presets/<method>.pywith anapply_*cfg mutator (or stack existing presets)Task builder in
robots/<id>/tasks.py; registerWbcTaskConfigNeutral names in code; cite the paper in the task description / docstring
Document under Tasks and presets
Example:
uv run wbc-mjlab-train --task Wbc-... --dataset ...
New robot: use an extension package — Extension packages.
Help#
Issues: wbc-mjlab/wbc-mjlab#issues
mjlab: mujocolab/mjlab#issues
License#
Contributions are Apache 2.0 (see LICENSE).