| name | ttrl-isaaclab-editor |
| description | Use when modifying, extending, debugging, or reviewing the TTRL IsaacLab table-tennis repository at /shared_disk/users/fanyahao/TTRL, especially for task registration, TTEnv or G1Planner env behavior, rewards, observations, actions, resets, serving logic, physics, assets, play or eval variants, latent-skill integration, RSL-RL runners, predictor integration, or checkpoint-sensitive task variants. |
TTRL IsaacLab Editor
Route edits in TTRL to the smallest correct ownership layer before changing code.
Required Load Order
- Treat
/shared_disk/users/fanyahao/TTRL as the source of truth.
- Read repo instructions and local task notes before editing.
- Start with selection-guide.md.
- Then load edit-layer-decision-tree.md.
- Then load exactly one recipe that matches the request.
- Then load exactly one source note for the first-owner layer.
- Only load external-isaaclab.md if the local repo and this skill are insufficient.
Load Recipes By Intent
- Existing reward, observation, action, reset, serve, or eval behavior edit -> task-customization.md
- New task variant, eval variant, or config variant -> task-authoring.md
- Runner, policy, predictor, latent-skill module, checkpoint, resume, export, or training bridge change -> training-extension.md
- Validation, compatibility, or completion checks -> validation-checklists.md
Load Source Notes By Ownership
- Task ids, task registry, train/eval config resolution -> task-registration.md
- Shared table-tennis env base, reset loop, observation assembly, serve lifecycle, prediction bridge -> env-base.md
- Planner task family, planner-specific cfg, right-arm latent-skill contract, eval variant -> g1-planner-task.md
- Reward, event, curriculum, and serve-randomization helpers -> mdp.md
- Ball aerodynamics and physics-side force integration -> physics.md
- Robot, ball, and table asset contracts -> assets.md
- RSL-RL runners, latent-skill policy modules, and training-side action contract -> rsl-rl.md
- CLI flags, wrappers, play/eval/train entrypoints, and predictor routing -> scripts.md
Working Rules
- Anchor to
g1_planner and g1_planner_eval, not the older t1_tt examples still present in TTRL/README.md.
- Prefer the narrowest owner: task cfg or task env before shared base; local wrapper before runner; local runner before generic module.
- If an observation or action contract changes, inspect
TTEnv or G1PlannerEnv, LeggedLabGymEnvAdapter, LeggedLabRslRlVecEnvWrapper, agent cfg, and runner compatibility in the same work item.
- If checkpoint compatibility may break, prefer a new task id or explicit variant rather than silently mutating the existing training path.
- Use symbol search when paths drift:
task_registry.register, G1PlannerEnvCfg, ball_reset_ids, update_prediction, skill_resume_path, OnPolicyPredictorRegressionRunner.