> For the complete documentation index, see [llms.txt](https://cybertostada.gitbook.io/cyber-nachos/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cybertostada.gitbook.io/cyber-nachos/tutorial-isaac-lab/getting-started.md).

# Getting Started

We have provided a template to demonstrate how to use Isaac Lab. This template leverages a robotic arm and hand for reinforcement learning (RL) training. The template is open-sourced and available at: <https://github.com/CyberNachos/isaacLab.manipulation/tree/main>.

### Installation and Deployment of IsaacLab.manipulation

* Clone repository and install:

```shell
git clone https://github.com/CyberNachos/isaacLab.manipulation.git
cd isaacLab.manipulation
conda activate isaaclab
pip install -e .
```

* Install [RSL\_RL](https://github.com/leggedrobotics/rsl_rl) in the isaacLab repository:

```shell
cd isaacLab/manipulation/algorithms
git clone https://github.com/leggedrobotics/rsl_rl.git
cd rsl_rl
python -m pip install -e .

## refresh index
cd isaacLab.manipulation
python -m pip install -e .
```

You can design your own RL Algorithm by editing "modules" and "algorithms" in RSL-RL

After completing the installation, you should be able to run the following examples:

```shell
python3 scripts/rsl_rl/train.py --task Template-Isaac-Reach-Kinova-v0--num_envs 4096 --headless
python3 scripts/rsl_rl/train.py --task Template-Isaac-Reach-Franka-v0 --num_envs 4096 --headless
python3 scripts/rsl_rl/train.py --task Template-Isaac-Reach-UR10-v0 --num_envs 4096 --headless
python3 scripts/rsl_rl/train.py --task Template-Isaac-Repose-Cube-Allegro-v0 --num_envs 4096 --headless
```

* The `--task` parameter specifies which task to execute. These tasks are registered in the environment using `gym.register`. You can use Ctrl+F to locate where they are registered or modify the task name during registration if needed.
* The `--headless` mode disables the graphical interface. This is particularly useful when running a large number of parallel environments (envs). If you accidentally enable it, you can turn off the graphical interface by pressing the **V** key. If you are running only a few environments, you may choose to keep the graphical interface enabled. It is generally recommended to keep the graphical interface on (by omitting `--headless`) during testing.
