duck-duck-duck — плагин для Claude Code: что делает и как установить
Плагин связывает Claude Code с десктопным приложением Duck Duck Duck. Он озвучивает реакции на действия разработчика и оценивает промпты локально на macOS.
/plugin marketplace add anthropics/claude-plugins-community
/plugin install duck-duck-duck@claude-communityЧто делает duck-duck-duck
Плагин регистрирует набор хуков для сессий Claude Code. При отправке промптов, завершении ответов или ошибках API плагин шлёт события на localhost:3333. Десктопная утка анимируется, комментирует происходящее голосом и воспроизводит мелодию при сжатии контекста.
Оценка промптов и ответов считается на устройстве через Apple Foundation Models. Никакие аудиозаписи или текстовые оценки не уходят в облако. Голос подбирается из 10 вариантов в зависимости от настроения кода, а одобрение прав на запуск инструментов подтверждается голосом.
Для работы обязательно нужно запущенное приложение Duck Duck Duck на macOS 26 или новее с чипом Apple Silicon. Без запущенного виджета хуки завершаются молча, поэтому Claude Code продолжит работу без сбоев.
Какие задачи решает
- получать голосовую реакцию и анимацию на действия Claude Code
- подтверждать запросы прав голосом вместо ручного ввода в терминале
- оценивать промпты локально через модели Apple Foundation без отправки в сеть
- слышать звуковые уведомления об ошибках API и сжатии контекста
Примеры запросов агенту
- Проверь код в
src/index.tsна утечки памяти - Запусти команду сборки проекта и исправь ошибки
- Удали временную директорию
build/
Как установить duck-duck-duck
Через маркетплейс плагинов
/plugin marketplace add anthropics/claude-plugins-community/plugin install duck-duck-duck@claude-communityПо шагам, с командами для каждой платформы: Плагины Claude Code: маркетплейсы, установка и как собрать свой
Вопросы о duck-duck-duck
Как установить duck-duck-duck в Claude Code?
Сначала добавьте каталог плагинов командой /plugin marketplace add anthropics/claude-plugins-community, а затем выполните /plugin install duck-duck-duck@claude-community.
Что делает плагин duck-duck-duck?
Он пересылает события сессии локальному приложению, которое оценивает промпты через Apple Foundation Models и голосом реагирует на происходящее в коде.
Какие системные требования нужны для работы duck-duck-duck?
Требуется Mac на базе Apple Silicon под управлением macOS 26 или новее, а также запущенное десктопное приложение Duck Duck Duck.
Исходный текст
plugin · MIT
# Duck Duck Duck — Claude Code Plugin A companion plugin that connects Claude Code to the [Duck Duck Duck](https://github.com/ideo/Rubber-Duck) desktop app. The duck watches your coding sessions, scores every prompt and response, speaks opinionated reactions, and handles permissions by voice. 🔒 **Default intelligence is fully on-device and private.** All eval scoring runs via Apple Foundation Models — nothing leaves your machine. No audio is sent to the cloud. [Learn more about privacy.](https://github.com/ideo/Rubber-Duck#data--privacy) ## Requirements - **macOS 26** (Tahoe) or later, Apple Silicon - **Claude Code** or **Claude Desktop** - **Duck Duck Duck app** running — [download here](https://github.com/ideo/Rubber-Duck/releases) ## Install The easiest way: **right-click the duck → Install Claude Plugin**. The app handles everything. Or install manually: ```bash claude plugin marketplace add ideo/Rubber-Duck claude plugin install duck-duck-duck ``` Works in Claude Code CLI and Claude Desktop. ## How It Works The plugin registers hooks that fire on Claude Code events and POST to the widget's server on `localhost:3333`. The widget scores the text, animates the duck, and speaks reactions. | Hook | What it does | |------|-------------| | **SessionStart** | Health check — tells Claude if the duck is active | | **UserPromptSubmit** | Sends your prompt for eval scoring | | **Stop** | Sends Claude's response for eval scoring | | **PermissionRequest** | Voice-confirmed permission gate — duck asks, you speak | | **PostToolUse** | Clears permission state after CLI approval | | **SessionEnd** | Duck acknowledges session close | | **StopFailure** | Duck reacts to API errors | | **PreCompact / PostCompact** | Thinking melody during context compaction | If the widget isn't running, hooks fail silently and Claude Code continues normally. ## Updating After updating the plugin (`claude plugin update duck-duck-duck`): - **New session**: hooks load automatically - **Current session**: run `/reload-plugins` to pick up changes ## Troubleshooting **Hooks not showing up** — Run `/hooks` to check. If missing: reinstall the plugin, then `/reload-plugins` or start a new session. Hooks are cached at session start. **Widget not responding** — Check the duck icon is in your menu bar. Verify: `curl http://localhost:3333/health` should return JSON. **Permission stuck** — If the duck stays in "asking permission" after you approved via CLI click, the PostToolUse hook auto-clears it. If stuck, the next eval also clears it. **Plugin not found** — Make sure the marketplace is added: `claude plugin marketplace add ideo/Rubber-Duck` ## Development ```bash claude --plugin-dir ./plugin ``` Loads hooks from local files — no push or reinstall needed. Run `/reload-plugins` after changes. ## License [MIT](https://github.com/ideo/Rubber-Duck/blob/main/LICENSE)
© ideo · MIT · ideo/Rubber-Duck