Skip to content
MouseMouse

The standing policy Laika runs today. A policy for lucen/laika.

robotlaika50 Hz

Use with your AI

The MCP client entry (.mcp.json for Claude Code; see MCP setup). A read key is enough to browse; nothing here starts a robot.

{
  "mcpServers": {
    "lucen": {
      "command": "lucen-mcp",
      "env": {
        "LUCEN_API_KEY": "lucen_sk_...",
        "LUCEN_API_URL": "https://api.mousemouse.ai"
      }
    }
  }
}

Or give your AI the task in words. The prompt names the tools and the exact commands.

You have the MouseMouse MCP server (lucen-mcp) configured against https://api.mousemouse.ai.
Work with the model repo lucen/laika-stand-v1b on that hub.
1. Read the repo with get_repo and its io_contract.json; the embodiment fingerprint says which robot it fits.
2. Test it in sim with rollout_in_sim before you ask to run it on a robot.
3. A handoff to hardware is request_deploy; a person approves it. Nothing here starts a robot.

In simulation

Laika v2, before the simulator starts

Runs in your browser. It downloads about 11 MB the first time.

No published sim test yet. When the policy's owner publishes one, it shows here. Test in sim

How it was trained

Its training run is private to the person who ran it. Published .

Observation
45 values in 6 blocks: base angular velocity, projected gravity, commands, joint position relative, joint velocity, last action

README

README.md

laika-stand-v1b

The standing policy Laika runs today.

LineStanding
What changedThe knee left the joint-limit penalty, so the penalty stopped fighting the pose.
CheckpointThe final checkpoint.
In simulationPassed its tests
On the real robotDeployed
Exported2026-08-05 at commit 7f13793
SHA-2569edb720d7b2fd77c6609c15ac4308add72f9f450935b12c3181e8d87e84f823f

Lineage

Retrained from scratch, with the settings of laika-stand-v1 as the starting point. laika-stand-v1 is not published on this hub.

Inputs and outputs

Shown in the Contract card

This section is read from the contract stamped inside the ONNX file. The robot refuses a policy whose contract does not match its own. The same contract is in io_contract.json.

Observation45 values: base angular velocity (3), gravity direction (3), velocity command (3), joint positions (12), joint velocities (12), previous action (12)
Action12 values, one per joint, clipped to ±1
Action scale0.25 on every joint
Control rate50 Hz
Joint orderl_hip_pitch_joint, l_hip_roll_joint, l_hip_yaw_joint, l_knee_joint, l_ankle_pitch_joint, l_ankle_roll_joint, r_hip_pitch_joint, r_hip_roll_joint, r_hip_yaw_joint, r_knee_joint, r_ankle_pitch_joint, r_ankle_roll_joint

Plant it was trained against

Full values in the Files tab
Torque limitRS00 11 N·m, RS02 17 N·m, RS06 12 N·m
Velocity limitRS00 33 rad/s, RS02 20 rad/s, RS06 10 rad/s
ArmatureRS00 0.0015, RS02 0.0032, RS06 0.007
Joint frictionRS00 0.13, RS02 0.12, RS06 0.15
Joint damping0.02
Default stiffness and dampingRS00 12 and 0.6, RS02 20 and 1, RS06 30 and 1.5
URDF and USD fingerprintsd6fab96bfc280a4d and 92b141c8dd200483

If the robot's motors differ from these, the simulator warns and the real robot refuses the policy.

Real robot

In service on the real robot.

Where it comes from

Lucen Robotics trained this policy for Laika in Isaac Lab. The inputs, outputs and plant come from the ONNX file's own stamp. The sim tests, where there are any, come from the training log's results.