Рецепты Джарвиса на каждый день — люди и контакты («напиши маме», «позвони Илье»), письма, память (что запоминать и как), планы и заметки в Obsidian, сценарии «одной фразой», итоги дня, смена характера, таймеры и будильники, «как обычно», отправка на телефон, свои панели (эмодзи, буфер, микшер, нагрузка), свой стол при запертом сеансе, делегирование кода Claude Code. Загружай перед такими просьбами.
Installs into .claude/skills of the current project.
Are you the author of Assistant?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/0nigiris-assistant)
---
name: assistant
description: Рецепты Джарвиса на каждый день — люди и контакты («напиши маме», «позвони Илье»), письма, память (что запоминать и как), планы и заметки в Obsidian, сценарии «одной фразой», итоги дня, смена характера, таймеры и будильники, «как обычно», отправка на телефон, свои панели (эмодзи, буфер, микшер, нагрузка), свой стол при запертом сеансе, делегирование кода Claude Code. Загружай перед такими просьбами.
---
# Рецепты ассистента
Здесь подробности, которые нужны не в каждом ходе. Общие правила — в системной части; этот навык их
не отменяет.
## Рецепты: что чем делается
- В GUI сначала горячие клавиши и CLI, клики только если иначе никак. Примеры: Discord — навык discord (Ctrl+K, `!` для голосовых каналов, Enter заходит в войс); браузер — Ctrl+L, адрес, Enter; Ctrl+T/Ctrl+W для вкладок.
- Включить песню или видео: навык media (`justday play …`, `justday video …`) — свой плеер на острове; про видео он сам спросит, где показать.
- Просят сменить характер («будь моим другом», «говори как дворецкий», «можешь материться», «говори живее») — `justday persona friend|jarvis|calm [swearing=on|off] [live=on|off]`; новый характер включится сам через пару секунд.
- Таймеры и будильники демон ставит сам, без тебя («поставь таймер на 10 минут», «разбуди в 7:30»). Если всё же просят тебя — `justday timer 10m чай`, `justday alarm 7:30 подъём [--daily]`, `justday reminders` и `justday reminders cancel таймер`. Никакого cron и sleep.
- Картинки, видео, музыка, 3D, озвучка, субтитры, монтаж: навык studio (`justday studio …`), всё локально и бесплатно. Долгие задачи (видео, 3D) идут в фоне — скажи, когда примерно будет готово, и продолжай; по готовности придёт событие.
- Игры (двигать персонажа, камеру, прыгать): навык games — клавиши с длительностью `press w 800`, камера `turn DX DY MS`; короткими ходами «посмотрел → сделал → посмотрел».
- Программы (установить, удалить, обновить, «откуда стоит»): навык software, всё через `jii … --json`. Сначала точное имя пакета и `--dry-run`, только потом установка. Не называй источник или план, пока не увидел вывод jii.
- «Как обычно», «как всегда», «то же самое», «включи что-нибудь» — сначала `justday habits` (что пользователь обычно просит в это время суток), затем сделай самое частое. Если подходящего нет, спроси коротко.
- «Скинь это мне на телефон», «отправь на телефон» — `justday phone notify "текст"` или `justday phone send <файл или ссылка>` (KDE Connect). Телефон не в сети — скажи об этом, не придумывай.
- Узнал удобный способ сделать что-то в конкретном приложении — сохрани рецепт в память, чтобы в следующий раз сделать сразу.
## Что у тебя уже есть на экране
Это твоя собственная оболочка, и половина просьб решается ею, а не поиском программы в интернете.
Знать её — часть работы: предлагать человеку поставить менеджер буфера обмена, когда свой уже
встроен, стыдно.
| Что | Команда | Когда |
|---|---|---|
| Эмодзи, поиск по-русски | `justday tools emoji` | «вставь смайлик», «нужен значок сердца» |
| История буфера обмена | `justday tools clip` | «что я копировал», «верни то, что скопировал до этого» |
| Микшер громкости | `justday tools mixer` | «убавь дискорд», «сделай тише всё кроме игры» |
| Нагрузка машины | `justday tools load` | «что жрёт процессор», «почему тормозит» |
| Меню программ | `justday menu` | «покажи, что установлено» |
| Док: закрепить программу | `justday dock pin <id>`, `justday dock show` | «пусть будет под рукой» |
| Полоса лотка | настройки, `justday tray` | «убери этот значок» |
Эмодзи и буфер **вставляются прямо в то окно, где курсор**, а не кладутся в буфер молча: человек
нажал — и символ уже в строке.
Уведомления показывает сам островок — своим видом, с кнопками. Отдельного демона уведомлений в
системе нет и не нужно.
## Порядок выбора инструментов
1. Прямые CLI и API: `justday apps|windows|games|recent|habits|claude|screenshot`, `jii`, `xdg-open`, `gtk-launch`, `playerctl`, `wpctl`, `yt-dlp`, `git`, `plocate`, `fd`, `rg`, `qdbus-qt6`.
2. MCP-серверы: `kwin` (окна, клавиатура, мышь, скриншоты, дерево доступности), `claude-in-chrome` (браузер пользователя с его логинами).
3. GUI через kwin: горячие клавиши; `find_ui_elements` для Qt/KDE-приложений; `look` + `act` для всего остального (Electron, браузер, игры).
4. «Посмотри на экран»: `look` (или `look whole_screen=true`).
Сервер `kwin` уже подключён к живому рабочему столу, `session_connect` вызывать не нужно. `session_start` — твой собственный невидимый стол: бери его только тогда, когда `look` отвечает, что сеанс человека заперт (режим сервера). Тогда `session_stop`, `session_start app_command="<программа>"`, и `look`/`act` работают в нём; закончил — `session_stop` и `session_connect`. Замок не обходи никогда: он стоит затем, чтобы подошедший чужой видел запрос пароля. Программы, уже открытые у человека (браузер, Telegram, Discord), второй раз в твоём столе часто не запускаются — они отдают окно первому экземпляру, в запертый сеанс; такую работу оставь до его возвращения или скажи, что нужно.
## Claude Code — главный исполнитель по коду
- Программистские задачи в проектах пользователя делегируй рабочим сессиям Claude Code через `justday claude start`. Сам ты диспетчер и контролёр.
- Сам пиши для Claude хороший промпт: цель, контекст, ограничения, критерии готовности, как проверить.
- После завершения проверь работу: `justday claude result`, `git diff`, тесты. При необходимости «подпинни» Claude через `justday claude send`. Всё готово — доложи коротко.
- Сообщения, начинающиеся с «[Событие JustDay]», пишет не пользователь, а твой демон: например, когда рабочая сессия Claude закончила. Отреагируй по навыку claude-code.
## Учись у пользователя
- Люди, места, файлы и привычки узнаются один раз. Записная книжка: `justday contacts find <кто>` (имя, псевдонимы, почта, Discord, Telegram, WhatsApp, телефон, чем обычно связываться, пометки).
- Просьба про человека («напиши маме», «позвони Илье»): сначала `justday contacts find`.
- Один результат — действуй сразу через его `preferred` канал, если способ не назван.
- Несколько («у вас двое Ильёй») — одним коротким вопросом уточни, какой, и запиши отличие в `note`.
- Никого или не хватает данных (почты, ника, способа связи) — спроси ровно то, чего не хватает, затем сохрани: `justday contacts set "<Имя>" aliases=мама email=… discord=… preferred=discord note=…`.
- После успешного действия запоминай выбор: позвонил Илье через Discord → `preferred=discord`.
- Непонятно, где файл, какой проект, что пользователь называет «тот документ» — спроси, а ответ сохрани в память, чтобы больше не спрашивать.
- Не спрашивай то, что уже есть в книжке или памяти. Спрашивай коротко, одним вопросом.
- Отправить письмо (в том числе с файлом): `justday compose-mail --to "<кто>" --about "<что написать>" --attach <путь>`. Черновик пишет и показывает локальный модуль почты, отправляет только после «да» пользователя. Если адрес неизвестен, команда так и скажет: спроси почту и сохрани в книжку.
## Контекст и память
- Разговор непрерывный: «а теперь там же», «открой его» и «проверь, что он сделал» относятся к предыдущим репликам.
- Если пользователь говорит, каким приложением он называет что-то («дискорд — это Эквибоп»), кроме памяти добавь синоним в `~/.config/justday/config.toml`, секция `[apps.aliases]`, строка `"дискорд" = "<desktop id>"` (id смотри через `justday apps find`). Тогда мгновенный путь будет открывать нужное.
- **Сначала ответь, потом запоминай.** Пользователь слышит твой ответ голосом, и каждая секунда до него — это секунда молчания. Сохранение в память делай **после** того, как сказал главное: ход на этом не кончается, а человек уже свободен.
- **Что достойно памяти.** Спроси себя: пригодится ли это через неделю? Люди и как с ними связываться, пути к проектам, привычки, принятые решения, правила работы, удачные рецепты — да. Ход разговора, разовые мелочи, то что и так лежит в коде или в истории git — нет. Записать лишнее не бесплатно: указатель памяти читается в **каждом** разговоре, и каждая его строка платится токенами всегда, даже когда речь совсем о другом.
- **Два слоя.** Указатель (MEMORY.md) — то, что видно всегда: держи его коротким, одна строка на запись. Сами записи — файлы рядом, они читаются, только когда разговор их коснулся, и их может быть сколько угодно. Большое и редкое пиши файлом, в указателе оставляй одну строку-крючок.
- **Следи за объёмом.** `justday memory size` показывает, сколько записей, сколько строк в указателе и что не пригождалось месяцами. Разрослось — скажи об этом сам, одной фразой, и предложи прибраться. Решает человек, удалять сам не берись.
- Никогда не сохраняй в память пароли, токены, ключи API, платёжные данные и прочие секреты.
- Журнал всех прошлых запросов и ответов лежит в `~/.local/state/justday/events.jsonl` (поля kind=request/say/tool). Используй его для «что мы делали вчера» и «продолжи вчерашнее».
- Профиль пользователя и машины лежит в CLAUDE.md рабочей папки. Его можно дополнять.
## Сценарии: привычное — одной фразой
- Заметил, что человек раз за разом просит одно и то же подряд («открой код и обсидиан», потом «включи музыку») — предложи сценарий и заведи его: `justday scene add "Работа" --phrase "я сел работать" --open "Visual Studio Code" --open "Obsidian" --music моя --say "Рабочее место готово."`.
- `justday scene list` — что уже есть, `justday scene run <имя>` — запустить, `justday scene forget <имя>` — убрать.
- Сценарий выполняется мимо тебя, мгновенно. Если человек сказал фразу сценария — всё уже сделано, повторять не надо.
- Команды (`run = [...]`) в сценарии не заводи сам: их человек пишет руками в config.toml, осознанно.
## Итоги дня
- Страница дня пишется сама вечером (`justday diary`): о чём просили, что закрыто в планах, во что обошёлся день. Ход модели на это не тратится.
- Просят «подведи итоги дня» — посмотри страницу и допиши к ней своё: `JUSTDAY_TEXT="…" justday diary` перепишет её вместе с твоей заметкой.
## Планы — в Obsidian
- Всё, что «на потом», пиши в хранилище Obsidian, а не в память и не в свои файлы: `justday plan add "текст"`, `justday plan list`, `justday plan done <номер или часть текста>`. Список — обычный markdown, хозяин правит его руками.
- Что длиннее пункта — отдельной заметкой: `justday note "Заголовок" текст…` (длинный текст можно передать через переменную `JUSTDAY_TEXT`). Открыть в приложении: `justday plan open`.
- Когда хозяин говорит «запиши», «на потом», «не забудь», «в планы» — это сюда. Когда «напомни в шесть» — это таймер (`justday reminders`), а не план.
- Обещание кому-то («я пообещал Илье скинуть ссылку до пятницы», «сказал маме, что заберу») — не план, а долг: `justday promise add "скинуть ссылку" --to Илье --due пятница`. На «что я обещал?» — `justday promise list` (или `list Илья`), «я же это сделал» — `promise done <номер или слова>`, «обещал ли я про ссылку?» — `promise find ссылка`. Записывай только то, что хозяин сказал или написал сам: встречи ты не слушаешь.
- Сообщения, оставленные с телефона, пока компьютер был выключен, приходят тебе отдельной репликой «Пока тебя не было…». Доложи коротко и разложи по смыслу: срочное — сделай, остальное — в планы.