# Copyright (c) 2024, MindRobot Project
# SPDX-License-Identifier: BSD-3-Clause
#
# Demo: Franka Stack-Cube IK-Rel
# 直接复用 IsaacLab 官方的 Franka Stack 任务，注册为 Mindbot-Demo 前缀。
# 参考原始注册: Isaac-Stack-Cube-Franka-IK-Rel-v0
#
# 运行指令:
#   python scripts/environments/teleoperation/teleop_se3_agent.py \
#       --task Mindbot-Demo-Stack-Cube-Franka-IK-Rel-v0 \
#       --num_envs 1 --teleop_device keyboard

import gymnasium as gym

##
# Register Gym environments.
##

gym.register(
    id="Mindbot-Demo-Stack-Cube-Franka-IK-Rel-v0",
    entry_point="isaaclab.envs:ManagerBasedRLEnv",
    kwargs={
        # 直接引用 isaaclab_tasks 中的原始 cfg，无需 copy 依赖链
        "env_cfg_entry_point": (
            "isaaclab_tasks.manager_based.manipulation.stack.config.franka"
            ".stack_ik_rel_env_cfg:FrankaCubeStackEnvCfg"
        ),
        "robomimic_bc_cfg_entry_point": (
            "isaaclab_tasks.manager_based.manipulation.stack.config.franka"
            ".agents:robomimic/bc_rnn_low_dim.json"
        ),
    },
    disable_env_checker=True,
)
