home / skills / andrejones92 / canifi-life-os / roomba

roomba skill

/skills/roomba

npx playbooks add skill andrejones92/canifi-life-os --skill roomba

Review the files below or copy the command above to add this skill to your agents.

Files (2)
SKILL.md
2.8 KB
---
name: roomba
description: Control iRobot Roomba robot vacuums and Braava mops
category: smarthome
---

# Roomba Skill

## Overview
Enables Claude to interact with iRobot for controlling Roomba robot vacuums and Braava mops, scheduling cleaning jobs, viewing clean maps, and managing device settings.

## Quick Install

```bash
curl -sSL https://canifi.com/skills/roomba/install.sh | bash
```

Or manually:
```bash
cp -r skills/roomba ~/.canifi/skills/
```

## Setup

Configure via [canifi-env](https://canifi.com/setup/scripts):

```bash
# First, ensure canifi-env is installed:
# curl -sSL https://canifi.com/install.sh | bash

canifi-env set IROBOT_EMAIL "[email protected]"
```

## Privacy & Authentication

**Your credentials, your choice.** Canifi LifeOS respects your privacy.

### Option 1: Manual Browser Login (Recommended)
If you prefer not to share credentials with Claude Code:
1. Complete the [Browser Automation Setup](/setup/automation) using CDP mode
2. Login to the service manually in the Playwright-controlled Chrome window
3. Claude will use your authenticated session without ever seeing your password

### Option 2: Environment Variables
If you're comfortable sharing credentials, you can store them locally:
```bash
canifi-env set SERVICE_EMAIL "your-email"
canifi-env set SERVICE_PASSWORD "your-password"
```

**Note**: Credentials stored in canifi-env are only accessible locally on your machine and are never transmitted.

## Capabilities
- Start, pause, and dock robot
- Schedule cleaning jobs
- View clean map history
- Configure room-specific cleaning
- Check bin status and maintenance

## Usage Examples
### Example 1: Start Cleaning
```
User: "Start the Roomba"
Claude: I'll start a cleaning cycle on your Roomba.
```

### Example 2: Room Cleaning
```
User: "Clean just the kitchen with the Roomba"
Claude: I'll start a targeted clean of the kitchen area.
```

### Example 3: Schedule Setup
```
User: "Schedule Roomba to clean every Monday and Thursday"
Claude: I'll set up a recurring cleaning schedule for those days.
```

## Authentication Flow
1. Navigate to irobot.com via Playwright MCP
2. Click "Log In" button
3. Enter iRobot credentials
4. Handle verification if required
5. Maintain session for subsequent requests

## Error Handling
- Login Failed: Retry authentication up to 3 times, then notify via iMessage
- Session Expired: Re-authenticate automatically
- Verification Required: Complete email verification
- Rate Limited: Implement exponential backoff
- Robot Stuck: Report error and location

## Self-Improvement Instructions
When encountering new UI patterns:
1. Document iRobot app/web changes
2. Update selectors for new layouts
3. Track new robot features
4. Monitor Imprint Smart Maps updates

## Notes
- Smart Maps for room recognition
- Keep Out Zones available
- Auto-empty base compatible
- Alexa and Google integration