# Cat Skill

> Создаёт цифрового кота по фотографии и/или описанию — один HTML-файл, в котором нарисованный питомец живёт на псевдо-рабочем столе — гуляет, трогает лапой иконки и запрыгивает на них, прячется за окном и выглядывает, следит за курсором, цепляется за него и срывается при тряске, лежит буханкой, спит на спине, умывается, ест из миски, мурчит, когда его гладят курсором, пугается резких движений, а иногда срывается в берсерк и носится по экрану. Внешность и характер целиком берутся из описания — окрас, узор, длина шерсти, цвет глаз, приметы, пол, энергия, любопытство, смелость. Используй этот скилл ВСЕГДА, когда пользователь просит виртуального или цифрового кота, кошку, котёнка, экранного питомца, присылает фото своего кота и хочет его «оживить», упоминает desktop pet, screen mate, neko, shimeji, тамагочи, «котик на экране» — и когда просит изменить уже созданного питомца — цвет, характер, размер, скорость.

- Skill: `polinavas95/cat-skill` (Agent Skill, multi-file: 6 files)
- Install (CLI): `npx skillmds@latest add polinavas95/cat-skill`
- Raw SKILL.md: https://api.skillmd.com/api/skills/polinavas95/cat-skill/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Web & Frontend
- Author: Polinavas95 (https://skillmd.com/u/polinavas95)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/polinavas95/cat-skill

---


# Cat Skill — цифровой кот по фото и описанию

Скилл собирает **один самодостаточный HTML-файл**: открывается двойным кликом в любом
браузере, ничего не устанавливает, в сеть не выходит. Внутри — нарисованный кодом кот
(никаких картинок) на нарисованном рабочем столе с иконками, окном и полосой задач.

Вся внешность и повадки задаются файлом `cat.json`. Работа скилла = аккуратно заполнить
этот файл под конкретного кота и собрать HTML.

## Рабочий процесс

### 1. Собери входные данные

- **Фото** — посмотри на него сам и выпиши параметры: основной цвет, узор, цвет глаз,
  длина шерсти, телосложение, приметы (белые лапы, пятно на груди, рваное ухо, ошейник).
  Как читать фото — в `references/pet-spec.md`, раздел «Как читать фото».
- **Текст** — вытащи цвета, окрас, пол, характер. Если текст противоречит фото, верь тексту:
  хозяин знает своего кота лучше, чем видно на снимке.
- **Ничего конкретного** — не устраивай анкету. Задай максимум один короткий вопрос
  (окрас и характер) либо собери разумного кота и предложи поправить: итерация дешевле допроса.

### 2. Заполни `cat.json`

Схема, допустимые значения, готовые палитры окрасов и перевод характера в числа —
в `references/pet-spec.md`. Обязательны только `name` и `appearance.base_color`.

Главное правило: **характер берётся из повадок, а не из окраса.** «Целый день спит» →
низкая `energy`, высокий `loaf_bias`. «Лезет во всё» → высокие `energy` и `curiosity`.
«Боится гостей» → низкая `boldness`. «Орёт с утра» → высокая `talkativeness`.

За образец удобно брать `assets/cat.example.json`.

### 3. Собери файл

```bash
python3 scripts/build_pet.py cat.json -o murzik.html
```

Скрипт проверяет описание, подставляет значения по умолчанию и печатает замечания
понятным текстом. Только проверка, без сборки: `--check`.

Нужен Python 3.9+ и ничего больше — ни библиотек, ни интернета.

### 4. Отдай результат

Покажи собранный HTML через `present_files` **первым файлом** — он рендерится прямо в
интерфейсе, и пользователь сразу видит кота. Без этого шага файл ему недоступен.

Скажи коротко: кот живёт в своём окне, курсор он отслеживает по-настоящему; клик по коту —
погладить; кнопки под сценой вызывают любое поведение принудительно; браузер запоминает,
где кот остался, и при следующем открытии он проснётся там же. Не пересказывай
`cat.json` построчно — достаточно двух фраз о том, какой кот получился, и приглашения поправить.

### 5. Правки

Почти любая правка — это правка `cat.json` и повторная сборка, а не правка кода:

| Просьба | Что менять |
|---|---|
| «слишком быстрый» / «медленный» | `speed_scale`, `personality.energy` |
| «слишком мелкий» | `scale` |
| «пусть чаще мяукает» | `personality.talkativeness` |
| «пусть не боится» | `personality.boldness` выше |
| «пусть больше лежит» | `energy` ниже, `loaf_bias` выше |
| «пусть лезет к иконкам» | `curiosity` выше |
| «ходит за мной» | `clinginess` выше |
| другой окрас, глаза, приметы | `appearance` |
| «рваное ухо», «шрам», «разные глаза», «подпалины» | `appearance.extras`: `notched_ear`, `scar`, `heterochromia` + `eye_color2`, `tan_points` + `tan_color` |
| «вискас», «как в рекламе» | `appearance.pattern: "whiskas"` |
| «в пиратской шляпе», «капитан», «пират» | `appearance.extras`: `pirate_hat` |
| кот вместо кошки | `sex` |

## Что умеет питомец

Полный список состояний и того, какие поля на них влияют — в `references/behaviors.md`.
Коротко: прогулка четырёхтактным шагом со случайной скоростью; приседание, прыжок на
иконку и спрыгивание; удары лапой по иконке плавным замахом; прятки за окном с торчащим
хвостом и выглядыванием; слежение за курсором, догонялки, висение на передних лапах и срыв
при тряске; буханка с подвёрнутыми лапами; сон на спине; умывание; еда и питьё из мисок,
которые появляются сами; мурчание, когда курсором ведут по коту; игра с мышкой (крадётся, прыгает, шлёпает лапой,
догоняет); испуг с шерстью дыбом —
и случайное демонстративное безразличие вместо испуга; берсерк с галопом и выбеганием за
край окна. Голос — только текстовые пузыри, звука нет намеренно.

## Ограничения, о которых нужно сказать честно

- Кот живёт **внутри своего HTML-окна**, а не поверх настоящего рабочего стола: браузерная
  страница не может рисовать по чужим окнам. Иконки, окно и полоса задач на сцене —
  нарисованные. За настоящим курсором кот следит по-настоящему, когда тот над сценой.
- По иконкам он не кликает и ничего не запускает: они часть картинки.
- В сеть файл не выходит и ничего никуда не отправляет. Единственное, что он запоминает —
  место, пол и число поглаживаний в `localStorage` браузера: откроешь завтра в том же
  браузере — кот проснётся там же и поздоровается. Другой браузер — начнёт заново.

## Файлы скилла

- `references/pet-spec.md` — схема `cat.json`, палитры окрасов, чтение фото, характер в числах.
- `references/behaviors.md` — состояния и поля, которые ими управляют.
- `scripts/build_pet.py` — проверка описания и сборка HTML.
- `assets/pet.template.html` — движок с маркером `__CAT_SPEC__` для подстановки.
- `assets/cat.example.json` — заполненный пример.

