ClawDB ROS2 Robotics SDK (clawdb-ros2)
Official ROS2 package and Python SDK for connecting autonomous mobile robots (AMRs), inspection drones, and robotic manipulators to ClawDB persistent spatial memory.
⚡ Key Capabilities
- Sub-0.1ms Local Spatial Recall: In-memory spatial index ensures trajectory planners and obstacle avoidance controllers run at full frequency without cloud latency bottlenecks.
- Multi-Robot Collective Memory: Synchronize obstacles, blocked warehouse aisles, and spatial landmarks across an entire fleet in real-time.
- Nav2 Costmap Integration: Easily feed dynamic spatial memories directly into ROS2 Nav2 costmap layers.
- Cloud & Edge Resilience: Local offline caching with automatic background delta sync when network connectivity is restored.
🚀 Installation
Option 1: Standard Python Package (PyPI)
pip install clawdb-ros2
Option 2: Build inside your ROS2 Colcon Workspace
cd ~/ros2_ws/src
git clone https://github.com/Claw-DB/clawdb-ros2.git
cd ~/ros2_ws
colcon build --packages-select clawdb_ros2
source install/setup.bash
🤖 Quickstart
1. Launch the Spatial Memory Bridge Node
ros2 launch clawdb_ros2 memory_bridge.launch.py \
api_key:="your_clawdb_api_key" \
workspace_id:="your_workspace_id" \
robot_id:="amr_01"
2. Record an Obstacle Memory in Python
from clawdb_ros2 import ClawClient, SpatialMemoryRecord
# Initialize client
client = ClawClient(
api_key="your_clawdb_api_key",
workspace_id="your_workspace_id"
)
# Record spatial blockage
client.record_spatial_event(
SpatialMemoryRecord(
frame_id="map",
x=14.5,
y=8.2,
z=0.0,
obstacle_type="pallet_spill",
confidence=0.98,
tags=["aisle_4", "amr_01"]
)
)
3. Query Spatial Horizon in Real-Time (<0.1ms)
from clawdb_ros2 import SpatialMemoryIndex
index = SpatialMemoryIndex(memory_ttl_seconds=3600.0)
# Query obstacles within 5.0m radius of current robot coordinates
nearby = index.query_radius(x=14.0, y=7.5, radius=5.0)
for record, dist in nearby:
print(f"Warning: {record.obstacle_type} at distance {dist:.2f}m")
🧭 ROS2 Node Topics & Parameters
Subscribed Topics
| Topic | Type | Description |
|---|---|---|
~/detected_obstacle |
geometry_msgs/Point |
Local point detection to ingest into memory |
Published Topics
| Topic | Type | Description |
|---|---|---|
~/fleet_updates |
std_msgs/String |
JSON stream of spatial deltas received from fleet |
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
api_key |
string | "" |
ClawDB API Key |
workspace_id |
string | "" |
Workspace namespace ID |
robot_id |
string | "amr-01" |
Machine node identifier |
store_name |
string | "robot-fleet-memory" |
ClawDB memory store name |
frame_id |
string | "map" |
Coordinate frame ID |
sync_rate_hz |
double | 1.0 |
Background fleet sync frequency |
local_ttl_seconds |
double | 7200.0 |
Cache retention TTL (seconds) |
🧪 Testing
Run unit tests locally:
pytest tests/
📜 License
MIT Licensed. Maintained by the ClawDB Robotics Team and open-source contributors.
Metadata
Release files for clawdb-ros2 0.4.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| clawdb_ros2-0.4.2.tar.gz | 14.3 kB | With provenance | Details for clawdb_ros2-0.4.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| clawdb_ros2-0.4.2-py3-none-any.whl | Python 3 | none | any | Details for clawdb_ros2-0.4.2-py3-none-any.whl |
Total release size: 28.3 kB
Release files / clawdb_ros2-0.4.2.tar.gz
| Download URL | clawdb_ros2-0.4.2.tar.gz |
|---|---|
| Size | 14.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a5f0dc4b284ad957468dcc71aa67ccb3dfa28cdbc3f4bd41453195e3f8eba4c1
|
|
BLAKE2b-256 checksum How to use checksums |
4faca579176582c0788dd90afac87e256d7be13e169d15e730add279e0b4541d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.
Transparency logRelease files / clawdb_ros2-0.4.2-py3-none-any.whl
| Download URL | clawdb_ros2-0.4.2-py3-none-any.whl |
|---|---|
| Size | 14.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5e72aef3913f4d2bb50ef0d8e03618cc12f8018e06cfc5b74ce1784fbe53d4b7
|
|
BLAKE2b-256 checksum How to use checksums |
07186778b75b292aaa2950f820d28da2f41ee0b92947345d37d0b210afbc6419
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.
Transparency logSecurity for clawdb-ros2 0.4.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
Both files in this release have been uploaded with provenance metadata.
Attestation for clawdb_ros2-0.4.2.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.