mirror of
https://github.com/deepmodeling/Uni-Lab-OS
synced 2026-03-24 02:18:44 +00:00
main
fast registry load minor fix on skill & registry stripe ros2 schema desc add create-device-skill new registry system backwards to yaml remove not exist resource new registry sys exp. support with add device add ai conventions correct raise create resource error ret info fix revert ret info fix fix prcxi check add create_resource schema re signal host ready event add websocket connection timeout and improve reconnection logic add open_timeout parameter to websocket connection add TimeoutError and InvalidStatus exception handling implement exponential backoff for reconnection attempts simplify reconnection logic flow add gzip change pose extra to any add isFlapY
Uni-Lab-OS
English | 中文
Uni-Lab-OS is a platform for laboratory automation, designed to connect and control various experimental equipment, enabling automation and standardization of experimental workflows.
Key Features
- Multi-device integration management
- Automated experimental workflows
- Cloud connectivity capabilities
- Flexible configuration system
- Support for multiple experimental protocols
Documentation
Detailed documentation can be found at:
Quick Start
1. Setup Conda Environment
Uni-Lab-OS recommends using mamba for environment management. Choose the package that fits your needs:
| Package | Use Case | Contents |
|---|---|---|
unilabos |
Recommended for most users | Complete package, ready to use |
unilabos-env |
Developers (editable install) | Environment only, install unilabos via pip |
unilabos-full |
Simulation/Visualization | unilabos + ROS2 Desktop + Gazebo + MoveIt |
# Create new environment
mamba create -n unilab python=3.11.14
mamba activate unilab
# Option A: Standard installation (recommended for most users)
mamba install uni-lab::unilabos -c robostack-staging -c conda-forge
# Option B: For developers (editable mode development)
mamba install uni-lab::unilabos-env -c robostack-staging -c conda-forge
# Then install unilabos and dependencies:
git clone https://github.com/deepmodeling/Uni-Lab-OS.git && cd Uni-Lab-OS
pip install -e .
uv pip install -r unilabos/utils/requirements.txt
# Option C: Full installation (simulation/visualization)
mamba install uni-lab::unilabos-full -c robostack-staging -c conda-forge
When to use which?
- unilabos: Standard installation for production deployment and general usage (recommended)
- unilabos-env: For developers who need
pip install -e .editable mode, modify source code - unilabos-full: For simulation (Gazebo), visualization (rviz2), and Jupyter notebooks
2. Clone Repository (Optional, for developers)
# Clone the repository (only needed for development or examples)
git clone https://github.com/deepmodeling/Uni-Lab-OS.git
cd Uni-Lab-OS
- Start Uni-Lab System
Please refer to Documentation - Boot Examples
- Best Practice
Message Format
Uni-Lab-OS uses pre-built unilabos_msgs for system communication. You can find the built versions on the GitHub Releases page.
Citation
If you use Uni-Lab-OS in academic research, please cite:
@article{gao2025unilabos,
title = {UniLabOS: An AI-Native Operating System for Autonomous Laboratories},
doi = {10.48550/arXiv.2512.21766},
publisher = {arXiv},
author = {Gao, Jing and Chang, Junhan and Que, Haohui and Xiong, Yanfei and
Zhang, Shixiang and Qi, Xianwei and Liu, Zhen and Wang, Jun-Jie and
Ding, Qianjun and Li, Xinyu and Pan, Ziwei and Xie, Qiming and
Yan, Zhuang and Yan, Junchi and Zhang, Linfeng},
year = {2025}
}
License
This project uses a dual licensing structure:
- Main Framework: GPL-3.0 - see LICENSE
- Device Drivers (
unilabos/devices/): DP Technology Proprietary License
See NOTICE for complete licensing details.
Project Statistics
Stars Trend
Contact Us
- GitHub Issues: https://github.com/deepmodeling/Uni-Lab-OS/issues
Languages
Python
86.6%
Jupyter Notebook
10.3%
HTML
2.4%
Shell
0.2%
CSS
0.2%
Other
0.2%
