Coding with Beat — скилл
Пиксельный диджей для Claude Code и Codex: играет музыку из Apple Music, показывает тексты и реагирует на коммиты и тесты
- 112 ★ репозитория
- Последний коммит
- MIT
Расширенный доступ
Почему такой уровень
- Установка запускает скрипт из сети, правит настройки агента (хуки, строку статуса) и на macOS добавляет пользовательский LaunchAgent
- Локальный MCP-сервер слушает порт 8765 на 127.0.0.1, а при пробросе по SSH управление музыкой доступно через туннель
- Хуки следят за событиями сессии: вызовами инструментов, коммитами и результатами тестов
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add skills/coding-with-beatОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Установка запускает скрипт из сети, правит настройки агента (хуки, строку статуса) и на macOS добавляет пользовательский LaunchAgent
- Локальный MCP-сервер слушает порт 8765 на 127.0.0.1, а при пробросе по SSH управление музыкой доступно через туннель
- Хуки следят за событиями сессии: вызовами инструментов, коммитами и результатами тестов
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Coding with Beat состоит из MCP-сервера на 38 инструментов, скилла `/cwb` и консольной утилиты `cwb`: вместе они превращают сессию с Claude Code или Codex CLI в сессию с музыкой. Агенту говорят «включи лофи», «следующий» или «что играет», а скилл выбирает действие: поиск по настроению, песня по названию, номер из списка. Источники музыки: Apple Music через AppleScript, локальные файлы через `afplay` и поиск с превью в QQ Music. В терминале рисуются обложка полублочной графикой, эквалайзер и текст песни, а в строке статуса Claude Code живет персонаж-диджей. Его лицо меняется вместе с событиями сессии: успешный `git commit` вызывает победную позу, упавшие тесты вызывают панику. Есть таймер Pomodoro 25 на 5, история прослушивания и отчеты о предпочтениях командой `cwb profile`. Скилл `cwb-companion` велит агенту самому вызывать `companion_check` в нужные моменты сессии.
Для кого. Тем, кто программирует с агентом на Mac и хочет управлять Apple Music прямо из сессии Claude Code или Codex, не переключаясь в плеер.
Подходит, если
- За кодом нужна музыка под настроение, и попросить ее у агента проще, чем искать в плеере
- Сессия длится часами, и в строке статуса хочется видеть таймер Pomodoro и текущий трек
- Агент работает на удаленном сервере, а Apple Music играет на вашем Mac: порт пробрасывается по SSH
- Надо получить недельный или годовой отчет о том, что вы слушали
Не подходит, если
- Работа идет на Windows или Linux: плеер опирается на Apple Music и AppleScript, а установщик настроен на macOS
- Вы слушаете Spotify или другой сервис: поддерживаются только Apple Music, локальные файлы и QQ Music
- Запускать скрипт из сети командой с `curl` и `sh` вы не готовы
Пример запроса к агенту
Включи что-нибудь спокойное для глубокой работы, покажи нумерованный список из пяти песен и запусти третьюОграничения
Основная поддержка у macOS, нужен Python 3.10 или новее. Полное воспроизведение каталога требует подписки Apple Music, у QQ Music доступно только превью в 30 секунд, перемотка у него и у локальных файлов ограничена. При первом воспроизведении песни из каталога Apple Music появляется окно: нажмите Add to Library и повторите команду. Часть возможностей автор называет предварительными, например `/cwb-profile`. Описание репозитория ведется на китайском, английском и японском языках.
Как отключить. Удалите записи `cwb` из настроек Claude Code (MCP-сервер, хуки и строку статуса) и запись из `~/.codex/config.toml`. На macOS остановите и удалите пользовательский LaunchAgent локального MCP-сервера. Папка данных называется `~/.coding-with-beat`.
Частые вопросы
Как поставить Coding with Beat в Claude Code?
Командой `curl -LsSf https://raw.githubusercontent.com/jaychempan/coding-with-beat/main/bootstrap.sh | sh` либо клонированием репозитория и запуском `./install.sh`. Затем откройте новый терминал и новую сессию: когда в строке статуса появится `(•_•)`, все работает.
Как поставить его в Codex CLI?
Командой `curl -LsSf https://raw.githubusercontent.com/jaychempan/coding-with-beat/main/bootstrap_codex.sh | sh` или `./install_codex.sh` из клонированного репозитория. Скрипт при необходимости ставит Codex CLI, настраивает `~/.codex/config.toml` и хуки и устанавливает скилл `cwb`.
Какие источники музыки поддерживаются?
Apple Music, локальные файлы и QQ Music. Возможности у них разные: плейлисты и нативная история есть у Apple Music, у локальных файлов история ведется по журналу.
Как управлять музыкой, если агент на сервере?
Запустите HTTP-сервер MCP на своем Mac и пробросьте порт командой `ssh -N -R 127.0.0.1:8765:127.0.0.1:8765 user@server`. На сервере установите хуки с флагом `--mcp-url http://127.0.0.1:8765/mcp`.
Что делает команда `cwb profile`?
Разбирает историю прослушивания и поисков и выдает отчет за день, неделю, месяц или год: топ исполнителей и жанров, смену вкусов, время суток и несколько готовых запросов для `smart_search`. Для него MCP-сервер не нужен.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
СкиллыСкилл для пиксель-арта в Claude Code: спрайты, анимации и эффекты строятся по референсу и проверяются кадр за кадром
MCP Music Studio — музыка в чате с агентом
mcp-music-studio
MCP-сервер, где агент пишет ноты в ABC или живой бит на Strudel, а плеер с редактором открывается прямо в чате
Скилл монтажа видео для Claude Code и Codex: агент вырезает паузы и оговорки, делает цветокоррекцию, субтитры и анимационные вставки
Скилл Claude Code делает из одного вопроса научно-популярный ролик: факты, сценарий, озвучка, кадры кодом и файл 1080p60
CLI и скилл для Claude Code, Codex и Cursor: индекс видео, поиск по словам и тексту кадра, кадры крупно и замер монтажа
Двадцать восемь скиллов для Claude Code: видео с озвучкой, обложки, верстка WeChat, Excel, PPT, Dify, GitHub Trending
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Авторизация | Звезды репозитория | Главное отличие |
|---|---|---|---|---|
| Coding with Beat (эта карточка) | нет | 112 | ||
| Spotify MCP Server | нет | OAuth | 506 | управляет Spotify через API, пиксельного диджея и реакций на коммиты в нем нет |
| ccstatusline | нет | 13 590 | строка статуса с моделью, Git и заполнением контекста, без музыки |
Коротко о README
Вводная часть подает проект как ретро-диджея для сессий с ИИ и сообщает о новом отчете `cwb profile`. Ниже идут установка для Claude Code и Codex CLI, таблица фраз по настроениям, команды `cwb`, таблица возможностей по источникам музыки и настройка строки статуса для tmux и Neovim.
Бейдж для README
Исходный SKILL.md
# cwb-companion — DJ Buddy Companion Mode
DJ Buddy is your coding companion. When this skill is active, proactively
call `companion_check()` at the moments below — do not wait for the user
to ask. The tool handles cooldown and conditions internally.
## Trigger rules
| Moment | Call |
|--------|------|
| Your first reply in a new session | `companion_check("session_start")` |
| You observe ≥ 3 consecutive test/command failures | `companion_check("debug_struggle")` |
| A `git commit` succeeds, or all tests pass green | `companion_check("victory")` |
| You've made ≥ 20 tool calls and haven't suggested music in 25+ minutes | `companion_check("idle_checkin")` |
| User says "收工", "下班", "bye", "晚安", "done for today", or similar | `companion_check("session_end")` |
## If the tool is unavailable
If `companion_check` is not in your tool list, **stay completely silent.**
Do NOT attempt a Bash fallback (`python -m coding_with_beat ...`).
Do NOT mention that the tool is missing. Just skip and continue normally.
## Presenting the result
**If the tool returns `(not needed right now)`:** stay silent. Do not
mention the call, do not say "no music needed", just continue normally.
**If the tool returns a companion card:** output it in full. You may add
one short transition phrase *before* the card — always prefix it with
`🎶 DJ Buddy:` (e.g. "🎶 DJ Buddy: 对了——" or "🎶 DJ Buddy: 顺便——").
Do NOT add explanation or commentary after the card.
After showing the card, wait for the user to pick a number from the list.
When they do, call `play_number(N)` to play it.
## Tone
DJ Buddy speaks in short, warm, no-nonsense sentences.
"调了挺久了" beats "I noticed you've been debugging for quite some time."
Match DJ Buddy's energy, not a customer service bot's.