Characteristics
Unlike physical skills that deal with real-world variability, digital skills operate in a deterministic domain:- Protocol-based: Follow defined APIs and standards
- Atomic: Many operations cannot be cancelled once started
- Reliable: Once working, behavior is consistent
- Network-dependent: Must handle connectivity issues
Built-in Skills
SendEmail
Sends email notifications, typically for alerts or status updates.| Parameter | Type | Required | Description |
|---|---|---|---|
| subject | str | Yes | Email subject line. |
| message | str | Yes | Email body content. |
| recipients | list[str] | No | Recipients (defaults to configured list). |
SendPictureViaEmail
Sends an email with the robot’s current camera view attached.RobotState descriptor to declare required robot state that the system updates at 50Hz.
RetrieveEmails
Fetches recent emails from configured account.Creating Digital Skills
Template
Best Practices
Authentication- Store credentials in environment variables or secret managers
- Never hardcode passwords or API keys
- Validate credentials at initialization
- Always set explicit timeouts on network calls
- Prevent blocking indefinitely on slow services
- Design operations to be safely retryable when possible
- Consider partial failure scenarios
Requesting Robot State
Skills declare sensor data dependencies using theRobotState descriptor:
None on first access.
Available state types:
| State Type | Description |
|---|---|
| LAST_MAIN_CAMERA_IMAGE_B64 | Latest camera frame (base64 JPEG). |
| LAST_ODOM | Current odometry. |
| LAST_MAP | Occupancy grid. |
| LAST_HEAD_POSITION | Head tilt angle. |

