Petdex
Install and select animated petdex mascots for VibeOS.
Skill metadata
| Source | Bundled (installed by default) |
| Path | skills/productivity/petdex |
| Version | 1.0.0 |
| Author | VibeOS |
| License | MIT |
| Platforms | linux, macos, windows |
| Tags | petdex, mascot, display, cli, tui, desktop |
Reference: full SKILL.md
The following is the complete skill definition that VibeOS loads when this skill is triggered. This is what the agent sees as instructions when the skill is active.
Petdex Skill
Browse, install, and select animated "pet" mascots from the public
petdex gallery. An installed pet
reacts to agent activity (idle, running a tool, reviewing, error, done) across
the VibeOS CLI, TUI, and desktop app. This skill drives the vibeos pets CLI
and the display.pet config — it does not generate sprites.
When to Use
- The user wants a desktop/terminal mascot or asks about "pets" / petdex.
- The user wants to change, preview, or disable the active pet.
- Diagnosing why a pet isn't showing (terminal graphics support, config).
Prerequisites
- Network access to
petdex.devfor the gallery/manifest (read-only, no auth). - Pillow (a core VibeOS dependency) for sprite decoding — already installed.
- For full-fidelity terminal rendering: a graphics-capable terminal (kitty, Ghostty, WezTerm, iTerm2, or sixel). Otherwise a truecolor Unicode half-block fallback is used automatically.
How to Run
Use the terminal tool to run vibeos pets <subcommand>.
Quick Reference
| Goal | Command |
|---|---|
| Browse the gallery | vibeos pets list (add a substring to filter: vibeos pets list cat) |
| List installed pets | vibeos pets list --installed |
| Install a pet | vibeos pets install <slug> (add --select to make it active) |
| Set the active pet | vibeos pets select <slug> (omit slug for a picker) |
| Resize the pet everywhere | vibeos pets scale <factor> (e.g. 0.5, clamped 0.1–3.0) |
| Preview/animate in terminal | vibeos pets show [slug] [--cycle] [--state run] |
| Disable the pet | vibeos pets off |
| Remove a pet | vibeos pets remove <slug> |
| Diagnose setup | vibeos pets doctor |
Procedure
- Find a pet:
vibeos pets list <query>and note itsslug. - Install + activate:
vibeos pets install <slug> --select. - Preview it:
vibeos pets show(Ctrl+C to stop). - Confirm setup:
vibeos pets doctor— shows the resolved pet, configured render mode, detected terminal graphics protocol, and effective mode.
Pets install into <VIBEOS_HOME>/pets/<slug>/ (profile-aware). Selecting a pet
writes display.pet.slug + display.pet.enabled to config.yaml.
Configuration
Under display.pet in config.yaml:
enabled(bool) — master on/off.slug(str) — active pet; empty = first installed.render_mode—auto(detect) |kitty|iterm|sixel|unicode|off.scale(float) — on-screen size of the native 192×208 frames (default 0.33, clamped 0.1–3.0). One knob resizes every surface; set it withvibeos pets scale <factor>, the/pet scaleslash command, or the desktop Appearance slider.unicode_cols(int) — width in columns for the Unicode fallback.
Pitfalls
- A pet only shows once one is installed AND selected (
enabled: true). - Inside a pipe/redirect (no TTY) terminal rendering is disabled by design.
- The petdex npm CLI installs to
~/.codex/pets; VibeOS uses its own profile-scoped<VIBEOS_HOME>/pets/instead — install throughvibeos pets.
Verification
vibeos pets doctorreports✓ readywhen a pet is installed, selected, enabled, and Pillow is importable.