Checkpoints on RLBench-10 tasks are available on HuggingFace.
conda create -n skip python=3.9 -y
conda activate skip
bash scripts/init.sh
source ~/.bashrcThis installs CoppeliaSim, RLBench, and all dependencies. See init.sh for details.
Automatically downloads the pretrained checkpoint and evaluation data from HuggingFace, then runs evaluation:
bash scripts/eval.sh task=push_button# SkiP (default: W=16, q=0.75)
CUDA_VISIBLE_DEVICES=0 xvfb-run -a python scripts/train.py task=open_drawer kf_mode=skip
# SkiP with custom hyperparameters
python scripts/train.py task=open_drawer kf_mode=skip skip.window=16 skip.high_quantile=0.75
# CoA-rev baseline
python scripts/train.py task=open_drawer
# CoA-fwd baseline
python scripts/train.py task=open_drawer method.action_order=FORWARDpython scripts/eval.py task=open_drawer snapshot=path/to/checkpoint.ptEvaluation outputs per-episode success/failure to the terminal and saves metrics to eval_metrics.json in the experiment directory:
{
"summary": {
"success_rate": {"mean": 0.72, "std": 0.0},
"avg_steps_success": {"mean": 49.1, "std": 0.0},
"avg_steps_all": {"mean": 85.8, "std": 0.0}
}
}To save evaluation videos, add log_eval_video=true.
# Download all tasks
python scripts/download_dataset.py
# Download a specific task
python scripts/download_dataset.py --task reach_target --train-episodes 100 --eval-episodes 25All settings are in src/cfgs/launch.yaml. Key parameters:
| Parameter | Default | Description |
|---|---|---|
task |
— | RLBench task name (required) |
kf_mode |
full |
full (CoA), skip (SkiP), heuristic, cache |
skip.window |
16 | ST-DCT window size W |
skip.high_quantile |
0.75 | Quantile threshold q |
num_train_steps |
20000 | Total training steps |
batch_size |
128 | Training batch size |
demos |
100 | Number of demonstrations |
eval_every_steps |
100000 | Evaluation interval |
Override via command line: python scripts/train.py task=push_button batch_size=64 kf_mode=skip
scripts/ Training, evaluation, data downloading
src/
cfgs/ Hydra configuration files
dataset/ Dataset loading and SkiP relabeling
envs/ RLBench environment and MSK segmentation
methods/
coa/ CoA backbone (shared by SkiP and baselines)
act/ ACT baseline
dp/ Diffusion Policy baseline
workspace.py Training workflow
@misc{dai2026skipskiprefineefficient,
title={SkiP: When to Skip and When to Refine for Efficient Robot Manipulation},
author={Mingtong Dai and Guanqi Peng and Yongjie Bai and Feng Yan and Chunjie Chen and Lingbo Liu and Liang Lin and Xinyu Wu},
year={2026},
eprint={2605.15536},
archivePrefix={arXiv},
primaryClass={cs.RO},
url={https://arxiv.org/abs/2605.15536},
}This codebase is built upon Chain-of-Action. We thank the authors for their open-source implementation.
This project is licensed under the Apache License, Version 2.0. See the LICENSE file for details.