desktop-pet

Animated pixel art desktop pet that roams the screen as an always-on-top Electron overlay. The pet avoids the cursor and active windows, walks along screen edges, climbs walls and ceilings, and responds to agent state changes via a local HTTP API. Use when a user wants a desktop companion, screen buddy, desktop mascot, virtual pet, or visual indicator of agent activity. Supports states like idle, walking, working, thinking, sleeping, and talking (faces user with speech bubble). macOS only.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "desktop-pet" with this command: npx skills add samskrta/mu-pet

Desktop Pet

A pixel art desktop pet (default: lobster 🦞) that roams the screen as a transparent Electron overlay.

Quick Start

cd <skill-dir>/assets/app
npm install
npx electron .

The pet starts at the bottom center of the screen and begins roaming.

HTTP API

Local API on port 18891 (127.0.0.1 only):

  • GET /state - returns {"state":"idle","statusText":""}
  • POST /state - set state: {"state":"talking","bubble":"hello!"}

States

StateBehavior
idleGentle bob, occasional claw snap
walkingMoves along current surface
climbingTransitions between floor/walls/ceiling
fleeingRunning from cursor or active window
workingSits at tiny laptop with sparkle particles
thinkingSlow sway, thought dots appear
sleepingEyes closed, zzz bubbles float up
talkingFaces user, shows speech bubble, auto-returns to idle
snappingClaw snap animation

Agent Integration

Hit the API at the start of responses to make the pet face the user:

curl -s -X POST http://127.0.0.1:18891/state \
  -H 'Content-Type: application/json' \
  -d '{"state":"talking","bubble":"working on it..."}'

Set to working during long operations, thinking while reasoning.

The talking state auto-returns to idle after the bubble duration expires.

Auto-Launch (macOS)

Create a LaunchAgent for auto-start on login. Use label ai.openclaw.desktop-pet.

# Install as LaunchAgent
cat > ~/Library/LaunchAgents/ai.openclaw.desktop-pet.plist << 'EOF'
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0"><dict>
  <key>Label</key><string>ai.openclaw.desktop-pet</string>
  <key>ProgramArguments</key><array>
    <string>APP_PATH/node_modules/.bin/electron</string>
    <string>APP_PATH</string>
  </array>
  <key>WorkingDirectory</key><string>APP_PATH</string>
  <key>RunAtLoad</key><true/>
  <key>KeepAlive</key><true/>
  <key>StandardOutPath</key><string>/tmp/desktop-pet.log</string>
  <key>StandardErrorPath</key><string>/tmp/desktop-pet.log</string>
  <key>EnvironmentVariables</key><dict>
    <key>PATH</key><string>/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin</string>
  </dict>
</dict></plist>
EOF

Replace APP_PATH with the absolute path to the app directory.

Customization

The pet is drawn programmatically via Canvas pixel art in index.html. To change the creature:

  • Edit lobsterBase() and lobsterFront() functions with new pixel layouts
  • Colors are defined as constants at the top of the script block
  • Each pixel is {x, y, w, h, color} at 3x scale

Features

  • Transparent overlay, always-on-top, click-through (except on the pet itself)
  • Roams full desktop: floor, walls, ceiling
  • Avoids cursor (250px radius) and frontmost window
  • Right-click context menu for manual state control
  • Speech bubbles with auto-sizing duration
  • Pixel art drawn via Canvas (no external images needed)

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Zip

Zip - command-line tool for everyday use

Registry SourceRecently Updated
General

Youtube Script

YouTube视频脚本、标题A/B测试、缩略图文案、SEO优化、开头Hook、章节标记。YouTube script writer with title testing, thumbnail copy, SEO optimization, hooks, chapter markers. Use when you...

Registry SourceRecently Updated
1760ckchzh
General

Topmediai AI Music Generator

Generate AI music, BGM, or lyrics via TopMediai API. Supports auto polling and two-stage output (preview first, then final full audio) for generation tasks.

Registry SourceRecently Updated
General

Yamlcheck

YAML validator and formatter. Validate YAML syntax, pretty-print with proper indentation, convert between YAML and JSON, and lint YAML files for common issues.

Registry SourceRecently Updated