The AI-ready robotics dev kit, with built-in remote control and VLA support.
Project description
phosphobot – CLI Toolkit for Robot Teleoperation and Action Models
A simple, community-driven middleware for controlling robots, recording datasets, training action models.
All from your terminal or browser dashboard.
Features
- Easy Installation via
pipor theuvpackage manager - Web Dashboard: Instant access to an interactive control panel for teleoperation
- Dataset Recording: Record expert demonstrations with a keyboard, in VR, or with a leader arm
- Model Training & Inference: Kick off training jobs or serve models through HTTP/WebSocket APIs
Installation
1. Using pip
pip install phosphobot
2. Using uv
If you already use uv to manage Python versions and deps:
# Install uv (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Add phosphobot to your project
uv add phosphobot
Quick Start
Once installed, you can start the phosphobot server instantly.
# Verify installation and view info
phosphobot info
# Start the teleoperation server (default: localhost:80)
phosphobot run
# For custom port, e.g. 8080
phosphobot run --port 8080
If you’re managing via uv:
uv run phosphobot info
uv run phosphobot run
Dashboard & Control
After launching the server, open your browser and navigate to:
http://<YOUR_SERVER_ADDRESS>:<PORT>/
By default, the address is localhost:80
Here you can:
- Teleoperate your robot via keyboard, leader arm, or Meta Quest
- Record demonstration datasets (40 episodes recommended)
- Train and deploy action models directly from the UI
Start building
- Docs: Full user guide at https://docs.phospho.ai
- Discord: Join us on Discord for support and community chat: https://discord.gg/cbkggY6NSK
- GitHub Repo: https://github.com/phospho-app/phosphobot
- Examples: Browse the examples
- Contribute: Open a PR to expand the examples, support more robots, improve the tool
Adding a New Robot
You can extend phosphobot by plugging in support for any custom robot. Just follow these steps:
-
Clone the phosphobot repo and fetch submodules. Make sure you have git lfs installed beforehand
git clone https://github.com/phospho-app/phosphobot.git cd phosphobot git submodule update --init --recursive
-
Install uv to manage python dependencies. The recommended python version for dev is
3.10curl -LsSf https://astral.sh/uv/install.sh | sh
-
Install nvm and Node.js. We recommend to manage Node versions via nvm.
# Install nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
Then restart your terminal and verify:
command -v nvm # should output: nvm
Finally, install the latest Node.js:
nvm install node # “node” is an alias for the latest version
-
Build the app. From the repo root, run:
make
-
Create your robot driver
-
In the directory
phosphobot/phosphobot/hardwareadd a new file, e.g.my_robot.py. Inside, define a class inheriting fromBaseRobot:from phosphobot.hardware.base import BaseRobot class MyRobot(BaseRobot): def __init__(self, config): super().__init__(config) # Your initialization here ... # Implement the BaseRobot's abstract methods here
We use pybullet as a robotics simulation backend. Make sure to add your robot's
urdfinphosphobot/resources/urdf.
-
-
Make your robot detectable Open
phosphobot/phosphobot/robot.pyand locate theRobotConnectionManagerclass. Make sure your robot can be detected.
Build and run the app again and ensure your robot gets detected and can be moved. Happy with your changes? Open a pull request! We also recommend you look for testers on our Discord.
License
MIT License
Made with 💚 by the Phospho community.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file phosphobot-0.3.30.tar.gz.
File metadata
- Download URL: phosphobot-0.3.30.tar.gz
- Upload date:
- Size: 14.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
423c98ec3a2602e615445968539ff6345e95fc374a893bc00ca711ec7536b676
|
|
| MD5 |
b80d45a8b91bdd75c1398b200b83e16e
|
|
| BLAKE2b-256 |
0131be98e501567f4b1ead5fc04e39c0f6cd39dd8a55c34f34e921899fab411e
|
File details
Details for the file phosphobot-0.3.30-py3-none-any.whl.
File metadata
- Download URL: phosphobot-0.3.30-py3-none-any.whl
- Upload date:
- Size: 14.3 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
218477a48d70c9af4e105882ff0387a3ea5cd0c7e4aa07836683b07f9455400a
|
|
| MD5 |
e17d18b3f715158a5a3d9cc7aaf6c74e
|
|
| BLAKE2b-256 |
c314e5e3174f62d8f4295ea97179cb797ed49952b09bb944dd03343578b24b7b
|