Genesis Panda cartesian ik
Genesis Panda cartesian ik. Bounded, source-pinned simulation with an explicit task contract and retained fixed-case outcomes.
genesis-panda-cartesian-ik | Record version: 1.0.0
Record JSON | Markdown recipe | Complete search index
Fetch and prepare
curl -fsSL https://hub.superfastrobotics.com/skills/genesis-panda-cartesian-ik/skill.json
curl -fsSL https://hub.superfastrobotics.com/skills/genesis-panda-cartesian-ik/README.md
python /PATH_TO_SKILL/scripts/rsh.py inspect genesis-panda-cartesian-ik --json
python /PATH_TO_SKILL/scripts/rsh.py prepare genesis-panda-cartesian-ik --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
- cartesian_ik
- 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
- Linux x86_64; CUDA GPU; see retained receipt for the exact host environment
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",
"target_offset_m"
],
"properties": {
"seed": {
"type": "integer",
"minimum": 0,
"maximum": 10000
},
"target_offset_m": {
"type": "array",
"minItems": 3,
"maxItems": 3,
"items": {
"type": "number",
"minimum": -0.06,
"maximum": 0.06
},
"x-unit": "m",
"x-frame": "right_handed_world_xyz; +z_up"
}
},
"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",
"final_xyz_m",
"target_xyz_m",
"error_m"
],
"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
},
"final_xyz_m": {
"type": "array",
"minItems": 3,
"maxItems": 3,
"items": {
"type": "number",
"minimum": -20,
"maximum": 20
},
"x-unit": "m",
"x-frame": "right_handed_world_xyz; +z_up"
},
"target_xyz_m": {
"type": "array",
"minItems": 3,
"maxItems": 3,
"items": {
"type": "number",
"minimum": -20,
"maximum": 20
},
"x-unit": "m",
"x-frame": "right_handed_world_xyz; +z_up"
},
"error_m": {
"type": "number",
"minimum": 0,
"maximum": 50,
"x-unit": "m"
}
},
"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-ik-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,
"target_offset_m": [
0.03,
0,
0
]
},
"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",
"final_xyz_m",
"target_xyz_m",
"error_m"
],
"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
},
"final_xyz_m": {
"type": "array",
"minItems": 3,
"maxItems": 3,
"items": {
"type": "number",
"minimum": -20,
"maximum": 20
},
"x-unit": "m",
"x-frame": "right_handed_world_xyz; +z_up"
},
"target_xyz_m": {
"type": "array",
"minItems": 3,
"maxItems": 3,
"items": {
"type": "number",
"minimum": -20,
"maximum": 20
},
"x-unit": "m",
"x-frame": "right_handed_world_xyz; +z_up"
},
"error_m": {
"type": "number",
"minimum": 0,
"maximum": 50,
"x-unit": "m"
}
},
"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
- Invalid input or source checksum
- Different pinned package version
- Unavailable runtime/driver
- Goal not reached within bounded steps
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
- LICENSE
- pyproject.toml
- examples/rigid/ik_franka.py
- genesis/__init__.py
- genesis/engine/entities/rigid_entity/rigid_entity.py
- genesis/assets/xml/franka_emika_panda/panda.xml
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
- python tools/verify_runtime_expansion.py --backend genesis --source-cache SOURCE_CACHE --output OUTPUT
Submitter reports and hub verification remain separate. Source review does not establish task success.