Skip to main content

Petdex

Install and select animated petdex mascots for Fabric.

Skill metadata

SourceBundled (installed by default)
Pathskills/productivity/petdex
Version1.0.0
AuthorFabric
LicenseMIT
Platformslinux, macos, windows
Tagspetdex, mascot, display, cli, tui, desktop

Reference: full SKILL.md

info

The following is the complete skill definition that Fabric 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 Fabric CLI, TUI, and desktop app. This skill drives the fabric 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.dev for the gallery/manifest (read-only, no auth).
  • Pillow (a core Fabric 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 fabric pets <subcommand>.

Quick Reference

GoalCommand
Browse the galleryfabric pets list (add a substring to filter: fabric pets list cat)
List installed petsfabric pets list --installed
Install a petfabric pets install <slug> (add --select to make it active)
Set the active petfabric pets select <slug> (omit slug for a picker)
Resize the pet everywherefabric pets scale <factor> (e.g. 0.5, clamped 0.1–3.0)
Preview/animate in terminalfabric pets show [slug] [--cycle] [--state run]
Disable the petfabric pets off
Remove a petfabric pets remove <slug>
Diagnose setupfabric pets doctor

Procedure

  1. Find a pet: fabric pets list <query> and note its slug.
  2. Install + activate: fabric pets install <slug> --select.
  3. Preview it: fabric pets show (Ctrl+C to stop).
  4. Confirm setup: fabric pets doctor — shows the resolved pet, configured render mode, detected terminal graphics protocol, and effective mode.

Pets install into <FABRIC_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_modeauto (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 with fabric pets scale <factor>, the /pet scale slash 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; Fabric uses its own profile-scoped <FABRIC_HOME>/pets/ instead — install through fabric pets.

Verification

  • fabric pets doctor reports ✓ ready when a pet is installed, selected, enabled, and Pillow is importable.