Robot Skill Hub by Superfast Robotics

Genesis Panda joint-servo

Genesis Panda joint-servo. Bounded, source-pinned simulation with an explicit task contract and retained fixed-case outcomes.

genesis-panda-joint-servo | Record version: 1.0.0

Record JSON | Markdown recipe | Complete search index

Fetch and prepare

curl -fsSL https://hub.superfastrobotics.com/skills/genesis-panda-joint-servo/skill.json
curl -fsSL https://hub.superfastrobotics.com/skills/genesis-panda-joint-servo/README.md
python /PATH_TO_SKILL/scripts/rsh.py inspect genesis-panda-joint-servo --json
python /PATH_TO_SKILL/scripts/rsh.py prepare genesis-panda-joint-servo --project ./experiment --expected-source-commit a5c4e9a73aca221fa26e611281f2696c5f8b0ca8 --expected-record-version 1.0.0 --plan --json

Inspect the requirements, then remove --plan to prepare a project. Preparation verifies the archive SHA256 and preserves exact source pins. --install-deps explicitly installs dependencies. Run the returned simulation command separately.

Environment

Runtime
genesis 1.4.4
Robot
panda
Controller
joint-servo
Observation
privileged_simulator_state
OS / architecture
linux / x86_64
Python
>=3.11,<3.12

Compatibility status: hub_verified

Privileged simulator observations and goal/state feedback. No physical sensor validation.

Requirements

Headless. EGL libraries are required for MuJoCo imports; PushT uses SDL dummy video. No interactive display.

Packages: DracoPy==2.2.0, OpenEXR==3.5.2, Pillow==11.3.0, PyGEL3D==0.8.2, PyOpenGL==3.1.10, av==18.1.0, coacd==1.0.14, fast_simplification==0.2.0, freetype-py==2.5.1, frozendict==2.4.7, genesis-world==1.4.4, gs-madrona==0.0.10, libigl==2.6.3, moviepy==2.2.1, mujoco==3.16.0, numba==0.68.0, numpy==1.26.4, opencv-python==4.11.0.86, psutil==7.2.2, py-cpuinfo==9.0.0, pycollada==0.9.3, pydantic==2.14.1, pyglet==2.1.19, pygltflib==1.16.0, pymeshlab==2025.7.post1, pysplashsurf==0.14.1.0, quadrants==1.3.3, rtree==1.4.1, scikit-image==0.26.0, tetgen==0.8.2, torch==2.8.0, trimesh==5.1.1, vtk==9.7.1, xacro==2.1.1, z3-solver==4.15.4.0, zstandard==0.25.0

Direct runtime versions are pinned and measured. The receipt retains the complete environment freeze; prepare records the installed environment. System drivers are separate host requirements. Some pinned dependencies ship source distributions; explicit dependency installation and build tools may be required.

External API keys: none.

Invocation

Executable interface

{
  "version": "1",
  "kind": "controller",
  "abstraction_level": 1,
  "execution_domain": "simulation",
  "language": "python",
  "input_transport": "json_file_or_inline",
  "output_transport": "json_stdout",
  "output_selector": "outputs",
  "conventions": {
    "linear_unit": "m",
    "angular_unit": "rad",
    "time_unit": "s",
    "coordinate_frame": "right_handed_world_xyz; +z_up",
    "joint_order": "joint1, joint2, joint3, joint4, joint5, joint6, joint7; finger errors are separate metric distances",
    "quaternion_order": "not_used"
  },
  "input_schema": {
    "type": "object",
    "required": [
      "seed",
      "joint_offset_rad"
    ],
    "properties": {
      "seed": {
        "type": "integer",
        "minimum": 0,
        "maximum": 10000
      },
      "joint_offset_rad": {
        "type": "number",
        "minimum": -0.15,
        "maximum": 0.15,
        "x-unit": "rad"
      }
    },
    "additionalProperties": false
  },
  "output_schema": {
    "type": "object",
    "required": [
      "arm_joint_positions_rad",
      "target_arm_joint_positions_rad",
      "finger_error_m",
      "movement_m",
      "max_joint_error_rad",
      "cuda_simulation",
      "steps"
    ],
    "properties": {
      "arm_joint_positions_rad": {
        "type": "array",
        "minItems": 7,
        "maxItems": 7,
        "items": {
          "type": "number",
          "minimum": -10,
          "maximum": 10
        },
        "x-unit": "rad",
        "x-order": [
          "joint1",
          "joint2",
          "joint3",
          "joint4",
          "joint5",
          "joint6",
          "joint7"
        ]
      },
      "target_arm_joint_positions_rad": {
        "type": "array",
        "minItems": 7,
        "maxItems": 7,
        "items": {
          "type": "number",
          "minimum": -10,
          "maximum": 10
        },
        "x-unit": "rad",
        "x-order": [
          "joint1",
          "joint2",
          "joint3",
          "joint4",
          "joint5",
          "joint6",
          "joint7"
        ]
      },
      "finger_error_m": {
        "type": "number",
        "minimum": 0,
        "maximum": 1,
        "x-unit": "m"
      },
      "movement_m": {
        "type": "number",
        "minimum": 0,
        "maximum": 50,
        "x-unit": "m"
      },
      "max_joint_error_rad": {
        "type": "number",
        "minimum": 0,
        "maximum": 50,
        "x-unit": "rad"
      },
      "cuda_simulation": {
        "type": "boolean"
      },
      "steps": {
        "type": "integer",
        "minimum": 1,
        "maximum": 1000
      }
    },
    "additionalProperties": false
  },
  "preconditions": [
    "Use the exact recorded source, Linux Python 3.11 environment and pinned direct packages.",
    "No physical robot, network actuation or external robot credentials."
  ],
  "postconditions": [
    "All reported checks must be true and all output numbers finite.",
    "Success covers the declared goal and frozen cases, not arbitrary tasks or physical hardware."
  ],
  "failure_codes": [
    "invalid_input_or_environment",
    "execution_failed",
    "task_failed"
  ],
  "composition": {
    "depends_on": [],
    "automatic_frame_conversion": false,
    "automatic_hardware_execution": false
  },
  "origin_reference_ids": [
    "genesis-examples-examples-rigid-control-franka-py"
  ],
  "origin_relationship": "prepared_from_the_same_pinned_model; inspect the declared controller and goal; no physical compatibility is inferred"
}

Entrypoint: python run.py

{
  "argv": [
    "{python}",
    "{recipe_dir}/run.py",
    "--source-dir",
    "{source_dir}",
    "--example"
  ],
  "inputs": {
    "seed": 0,
    "joint_offset_rad": 0.08
  },
  "outputs": {
    "format": "single JSON object",
    "payload_selector": "outputs",
    "schema": {
      "type": "object",
      "required": [
        "arm_joint_positions_rad",
        "target_arm_joint_positions_rad",
        "finger_error_m",
        "movement_m",
        "max_joint_error_rad",
        "cuda_simulation",
        "steps"
      ],
      "properties": {
        "arm_joint_positions_rad": {
          "type": "array",
          "minItems": 7,
          "maxItems": 7,
          "items": {
            "type": "number",
            "minimum": -10,
            "maximum": 10
          },
          "x-unit": "rad",
          "x-order": [
            "joint1",
            "joint2",
            "joint3",
            "joint4",
            "joint5",
            "joint6",
            "joint7"
          ]
        },
        "target_arm_joint_positions_rad": {
          "type": "array",
          "minItems": 7,
          "maxItems": 7,
          "items": {
            "type": "number",
            "minimum": -10,
            "maximum": 10
          },
          "x-unit": "rad",
          "x-order": [
            "joint1",
            "joint2",
            "joint3",
            "joint4",
            "joint5",
            "joint6",
            "joint7"
          ]
        },
        "finger_error_m": {
          "type": "number",
          "minimum": 0,
          "maximum": 1,
          "x-unit": "m"
        },
        "movement_m": {
          "type": "number",
          "minimum": 0,
          "maximum": 50,
          "x-unit": "m"
        },
        "max_joint_error_rad": {
          "type": "number",
          "minimum": 0,
          "maximum": 50,
          "x-unit": "rad"
        },
        "cuda_simulation": {
          "type": "boolean"
        },
        "steps": {
          "type": "integer",
          "minimum": 1,
          "maximum": 1000
        }
      },
      "additionalProperties": false
    }
  }
}

Success: All declared goal and finite-state checks pass; exit 0 with task_complete. CUDA dynamic simulation after reset. PD tracking below 0.04 rad and nontrivial hand motion; IK variant also requires final hand position error below 15 mm. Source example kinematic visualization is adapted to real simulation stepping.

Timeout: 600 seconds. Terminate the adapter at the recorded timeout. No physical hardware is opened.

Failure modes

Source and license

Repository
https://github.com/Genesis-Embodied-AI/genesis-world
Authors
Original genesis-world contributors; preserve all pinned source and asset notices
Commit
a5c4e9a73aca221fa26e611281f2696c5f8b0ca8
Archive SHA256
851d0970b921ee1b5182f62c544f432600153efccc127db059d5f5e46d9ac719
License
Apache-2.0
Hub commit
d800c48cfd84f618a5c6ab84f8f7feec74ab0b56

Evidence

Runtime: task_complete / task_complete

All 3 frozen cases completed against this exact adapter and source.

Reviewer: Hub finite-case Lambda execution harness | 2026-10-20

Submitter reports and hub verification remain separate. Source review does not establish task success.