This repository is one part of the LeRobot humanoid stack: Any change here should preserve compatibility with the other four repositories. Develop and validate mechanical/control design choices before hardware commits:
This repository is the identification block in the LeRobot humanoid stack: Identification outputs are used to tune simulator realism for runtime and training loops. Run joint-wise simulator identification with MJWarp + CMA-ES: Run at least one smoke identification command and verify: Preferred smoke shape: CPU, small popsize, maxiter=1, single joint.
Read this before changing the code. The README explains what the project is and how to use it; this file holds decisions that already hardened and what's not yet built. These are settled. If you want to revisit any, raise it with the user explicitly first. 1. Capture is dumb. The proxy persists raw OpenAI-compat bytes. No tokenisation, no chat-template render at capture time. The capture path must work without the model's tokenizer being loaded. 2. Export is a dumb…
Run make format or make lint and make test before wrapping up a change. - Rule modules live in mlinter/trf*.py. - Rule metadata lives in mlinter/rules.toml. - Rule-specific tests live in tests/testtrfXXX.py, one file per rule. - Shared rule-test helpers live in tests/ruletest_utils.py; rule test classes should inherit from RuleTestCase when they use the standard run(rule, source, filename=...) helper. - General CLI, registry, cache, discovery, and public-API tests live in tests/test_mlinter.py. - Skills live under .ai/skills/. - The docs site…
Keep imports directional: Enforce this with: This check belongs in CI and in the local pre-commit/pre-push validation flow. When inspecting this repository, never search outside the workspace root unless the…
This AGENTS.md file provides guidance for code agents working with this codebase. Many models in the codebase have similar code, but it is not shared by inheritance because we want each model file to be self-contained. We use two mechanisms to keep this code in sync: - "Copied from" syntax. Functions or entire classes can have a comment at the top like this: # Copied from transformers.models.llama.modelingllama.rotatehalf or # Copied from transformers.models.t5.modelingt5.T5LayerNorm with T5->MT5 These comments are actively checked by…