by alvinunreal
Desktop companion platform with animated pets, Plugin SDK v3, official plugins, and optional local coding-agent integrations.
# Add to your Claude Code skills
git clone https://github.com/alvinunreal/openpetsLast scanned: 5/15/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-05-15T06:57:06.591Z",
"semgrepRan": false,
"npmAuditRan": true,
"pipAuditRan": true
}openpets is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by alvinunreal. Desktop companion platform with animated pets, Plugin SDK v3, official plugins, and optional local coding-agent integrations. It has 817 GitHub stars.
Yes. openpets passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/alvinunreal/openpets" and add it to your Claude Code skills directory (see the Installation section above).
openpets is primarily written in TypeScript. It is open-source under alvinunreal on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh openpets against similar tools.
No comments yet. Be the first to share your thoughts!
Download the latest OpenPets desktop release and launch it. A pet appears immediately; no agent setup required.
If OpenPets makes your coding setup or desktop workspace a little more fun, please give the repo a star.
You do not need to be a developer or connect any AI agents to enjoy OpenPets. The desktop app is fully functional out of the box with the official plugin lineup.
Download the package for your operating system from OpenPets Releases:
OpenPets-*-mac-arm64.dmgOpenPets-*-mac-x64.dmgOpenPets-*-win-x64-setup.exeOpenPets-*-linux-x86_64.AppImageNote: Current builds may be unsigned. If macOS blocks execution with a security warning, remove the quarantine flag via terminal:
xattr -dr com.apple.quarantine /Applications/OpenPets.app
Browse installed pets, preview their animation frames, and configure which pet monitors each workspace or agent window from the built-in Pet Gallery.
OpenPets v3 ships with a modular Official Plugin Catalog. Enable or configure plugins via the desktop Control Center to add focus timers, reminders, and mini interactive games.
The OpenPets plugin system offers a secure, developer-friendly SDK (@open-pets/plugin-sdk) for creating custom companion behavior.
voice:listen, clipboard, and pet:speak:dynamic) require explicit consent toggles.ctx)Plugins hook into the desktop environment via the ctx object, exposing:
ctx.pets / ctx.pet: Manage default and spawned pet instances: spawn, move, animate, and react.ctx.ui: Alerts, transient/pinned bubbles, custom menus, panels, and status HUDs. Pinned mini HUD bubbles support compact 2x2 grid layouts with progress bars, such as Virtual Pet stats.ctx.audio: Trigger host-managed alert tones or user-imported custom audio.ctx.schedule: Set precise timer hooks (once, every, daily, cron, at).ctx.ai / ctx.secrets: Hook into the user's host-configured AI provider (Anthropic, OpenAI, Ollama) without exposing API keys to the plugin source.ctx.storage: Simple JSON key-value store with change subscriptions.events, assets, bus, net (with streaming support), notify, voice (TTS & push-to-talk STT), auth (PKCE browser flow), files (secure picked OS dialogs), system, commands, status, and log.Create, validate, and test plugins using the official CLI.
Create a template from any of the official layouts (blank, reminder, ambient, ai-chat, tamagotchi, calendar):
npx @open-pets/cli plugin new "My Plugin" --template tamagotchi
Verify manifest layout, permissions, and configuration schemas before packing:
npx @open-pets/cli plugin validate ./my-plugin
Write deterministic tests without launching the desktop app. Using @open-pets/plugin-sdk/testing's createTestHarness, you can mock the host, advance clocks, trigger actions, and verify reactions:
import { createTestHarness } from "@open-pets/plugin-sdk/testing";
import { register } from "./index.js";
const h = createTestHarness(register, { permissions: ["pet:speak", "schedule"] });
await h.start();
h.expectScheduled("decay");
await h.clock.advance("30m");
h.expectSpoke(/need attention/i);
Run plugin tests from your plugin project:
npm test
If you want your development agent to drive your desktop companion, OpenPets provides an optional local MCP (Model Context Protocol) integration layer.
When you configure an agent, OpenPets exposes standard MCP tools. The agent can trigger animations, change status, and display text bubbles locally:
~/.claude/CLAUDE.md, and hooks in ~/.claude/settings.json.@open-pets/opencode automatic hook plugin.Check whether the Claude hook and project Cursor MCP integrations are installed, need an update, or are broken, and whether the desktop app is reachable:
npx @open-pets/cli doctor
Pass --cwd <path> to inspect a different project's .cursor/mcp.json, or --json for machine-readable output. The command exits non-zero only when an integration is broken, so it is safe to run before reporting a bug.
To run OpenPets as an MCP tool, add the server to your agent's configuration:
{
"mcpServers": {
"openpets": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@open-pets/mcp@latest"]
}
}
}
Tip: To target a specific pet, pass the --pet <petId> argument.
openpets_status: Retrieve target pet ID and check runtime connectivity.openpets_react: Set pet reaction animations (e.g., thinking, editing, testing, success, error).openpets_say: Display a short speech bubble.