# DSH 大肥魚

Источник: https://docs.aicentos.com/ru/clients/dsh

Language: ru

> Подключите модели aicentos к DeepSeek Harness (DSH), заведите рыбку для Bilibili и Douyin и добавьте её в группу QQ

DSH (DeepSeek Harness) — открытый Agent-фреймворк от DeepSeek. Настольная версия DSH Desktop объединяет рантайм, плагины и сессии в одном установщике. «大肥魚» (большая жирная рыбка) — это плагин сообщества `dsh-bili-whale`: ИИ-рыбка, которая просыпается по собственному распорядку, листает Bilibili, действительно понимает видео, ведёт два дневника и упоминает вас в тех, что стоит посмотреть.

Страница состоит из четырёх частей: подключение DSH к aicentos, рыбка для Bilibili, версия для Douyin и, наконец, подключение к личным сообщениям и группам QQ через официальный плагин. Плагины поддерживают сообщество и Tencent; они не связаны с Bilibili, Douyin или DeepSeek.

## Подготовка

| Элемент          | Требование    | Пояснение                                                                                                |
| ---------------- | ------------- | -------------------------------------------------------------------------------------------------------- |
| DSH Desktop      | Обязательно   | Установщик macOS / Windows с официального сайта; рантайм включён                                         |
| Node.js          | 18+           | Нужен только при запуске DSH из командной строки; инструменты плагина — `.mjs`, требуется настоящий node |
| ffmpeg           | Необязательно | Нужен только для извлечения кадров; без него работают субтитры, данмаку и популярные комментарии         |
| Аккаунт Bilibili | Один          | Аккаунт самой рыбки, из него берутся cookie; рекомендуется дополнительный аккаунт                        |
| API Key aicentos | Один          | Создайте отдельный ключ (например `dsh`), чтобы отслеживать расход по проекту                            |

* Консоль: [https://aicentos.com](https://aicentos.com)
* Создать ключ: [https://aicentos.com/keys](https://aicentos.com/keys)
* Пополнить кошелёк: [https://aicentos.com/wallet](https://aicentos.com/wallet)

## Конфигурация для заполнения

| Поле         | Значение                                       |
| ------------ | ---------------------------------------------- |
| Provider ID  | `aicentos`                                     |
| Display name | `aicentos`                                     |
| Base URL     | `https://aicentos.com/v1`                      |
| API protocol | `openai-completions`                           |
| API Key      | Ключ, созданный в консоли                      |
| Model        | Название модели из «Галереи моделей» в консоли |

## Шаги настройки

### Установите DSH Desktop

Откройте [https://www.dshdesktop.com/](https://www.dshdesktop.com/) и выберите установщик для вашей системы (Windows, macOS на Apple silicon, macOS на Intel), затем запустите его. При первом запуске следуйте подсказкам: настройте модель, создайте сессию и убедитесь, что она отвечает.

### Подключите aicentos в DSH

Рекомендуется настройка через интерфейс:

1. Откройте **Settings → Models** и нажмите **Add a custom provider**.
2. Заполните Provider ID, Display name, Base URL, API protocol и API Key по таблице выше.
3. В **Model catalog** нажмите **Fetch available models** и отметьте нужные модели; если список не загрузился, введите ID модели вручную.
4. Нажмите **Save**, вернитесь в чат и выберите модель в селекторе сверху.

Можно также отредактировать `~/.dsh/settings.yaml` напрямую:

```yaml
agent-default-model:
  provider: aicentos
  model: имя-модели

llm-pi-ai:
  providers:
    aicentos:
      api: openai-completions
      baseURL: https://aicentos.com/v1
      apiKeyEnv: AICENTOS_API_KEY
      models:
        - id: имя-модели
```

Затем задайте переменную окружения и запустите:

```bash
export AICENTOS_API_KEY="sk-ваш-API-ключ"
```

Ключ хранится локально в `$DSH_HOME/.credentials.yaml`; интерфейс никогда не показывает его в открытом виде.

### Установите плагин рыбки

Клонировать вручную не нужно — отправьте одну строку в чат DSH:

```bash
帮我安装这个插件，插件地址：https://github.com/Alterssss/dsh-bili-whale
```

После завершения обновите страницу DSH и откройте **Settings → Завести рыбку** (养鱼) в левой панели. Если этого пункта нет, полностью закройте DSH и откройте снова: плагины собираются при запуске, без перезапуска установка не действует.

### Выдайте сессии полные права

Этот шаг пропускают чаще всего. Её сессия находится в **Рабочая область → Без группы** слева (без раскрытия папки её не видно). Откройте сессию и переключите права на **Полный доступ** (`danger-full-access`), иначе после пробуждения она не сможет выполнять команды, писать комментарии и вести дневники.

### Войдите в аккаунт Bilibili

В **Settings → Завести рыбку → Вход в Bilibili** нажмите **Вход по QR-коду** и подтвердите в приложении Bilibili на телефоне. QR-код действует около 3 минут; отмена или истечение срока не заменяют текущее состояние входа.

Можно вставить cookie вручную: войдите в браузере в аккаунт рыбки, нажмите F12, откройте **Application → Cookies → `https://www.bilibili.com`**, скопируйте `SESSDATA`, `bili_jct` и `buvid3`, вставьте по одному и нажмите **Записать учётные данные**.

Не читайте cookie через `document.cookie`. `SESSDATA` помечен HttpOnly и недоступен скриптам: получится неполный cookie, и проверка будет постоянно падать.

### Проверьте зависимости

Нажмите **Проверка зависимостей** на странице настроек. Она делает реальный запрос к Bilibili для проверки входа, затем по пунктам проверяет cookie, ffmpeg, Node, каталог данных и распорядок. Всё должно быть зелёным («всё доступно ✓»).

Если сообщается об отсутствии ffmpeg, не ищите инструкцию — отправьте в чат DSH «установи ffmpeg на этом компьютере», дайте ему всё сделать и запустите проверку снова.

После правок обязательно нажимайте **Сохранить**. Поля меняются локально и записываются на диск только при сохранении; страница сама предупреждает, что несохранённые изменения не действуют. Сохранение применяется сразу; перезапуск DSH нужен только при замене кода или версии плагина.

### Настройте характер и распорядок

* **Кто она**: имя персонажа, как она обращается к вам, как называет себя.
* **Её характер**: текст записывается в `~/.bili-ai/persona.md`, затем нажмите **Внедрить характер** (лимит 20000 символов, внедряются первые 3000, прикладываются при каждом пробуждении и прослушивании).
* **Вы (владелец)**: укажите свой `mid` — по нему работают упоминания и личные сообщения.
* **Способ публикации**: упоминание в комментариях или личное сообщение Bilibili.
* **Окно активности**: по умолчанию 20:00–24:00; она просыпается в случайный момент внутри окна, а не по часам.

Плагин не содержит встроенного характера: по умолчанию это нейтральный ассистент, который не называет вас «хозяином» и не сюсюкает. Чтобы получилась «大肥魚», опишите её происхождение, манеру речи, что для неё важно и чего она делать не должна.

## Проверка

Сначала запустите самотест в командной строке: он за один проход проверяет конфигурацию, учётные данные, состояние входа, каталог данных и зависимости.

```bash
node ~/.dsh/plugins/dsh-bili-whale/tools/bili.mjs selftest
```

В Windows замените путь на `%USERPROFILE%\.dsh\plugins\dsh-bili-whale\tools\bili.mjs`:

```powershell
node "$env:USERPROFILE\.dsh\plugins\dsh-bili-whale\tools\bili.mjs" selftest
```

Все пункты отмечены галочками и в конце «全部通过 ✓ 可以用了» — значит всё готово. Частые команды:

```bash
node ~/.dsh/plugins/dsh-bili-whale/tools/bili.mjs deps           # проверка зависимостей
node ~/.dsh/plugins/dsh-bili-whale/tools/bili.mjs dm --status    # лимит ЛС + взаимная подписка
node ~/.dsh/plugins/dsh-bili-whale/tools/bili.mjs traffic status # значения защиты запросов
```

Чтобы она сразу отработала один круг, задайте в настройках окно активности длиной две минуты начиная с текущего момента, сохраните и дождитесь пробуждения (проверка → выбор тем → понимание → два дневника → уведомление вам). Можно также попросить её в чате проснуться и пролистать Bilibili один раз.

В конце откройте страницу использования в консоли aicentos и убедитесь, что запросы записаны на ключ, созданный для DSH.

## Подключение Douyin

Версия для Douyin — отдельный проект с той же идеей: `dsh-douyin-scroll`. Он вообще не смотрит картинку: читает описания, теги, автора, длительность, метрики вовлечённости и топ-комментарии, отбирает несколько видео в день и пишет Markdown-отчёт.

### Установка

```bash
git clone https://github.com/NEWJO123/dsh-douyin-scroll.git
cd dsh-douyin-scroll
node selfcheck.mjs
```

Когда предварительная проверка пройдена, установите его в профиль `web` и один раз перезапустите DSH:

```bash
dsh plugin --profile web add "link:$PWD"
```

После перезапуска откройте **Settings → Листать Douyin** (刷抖音).

### Первичная настройка

1. Нажмите **Установить основные зависимости**: создаётся отдельный venv с `curl_cffi` и `httpx` (около 30 секунд, прогресс в `install.log`).
2. Вход: выполните `node tools/qr-login.mjs start` и отсканируйте код, либо вставьте cookie из уже авторизованной сессии Douyin в браузере на странице настроек.
3. Задайте, что листать: ключевые слова, категории, конкретные авторы, сколько видео в день, сколько кандидатов за круг, затем нажмите **Запустить один круг сейчас**.

Cookie остаются на этой машине в `$DSH_HOME/douyin-duty/douyin_cookie.txt`, не попадают в логи и никуда не отправляются.

### Возможности и ограничения

| Пункт               | Детали                                                                                                                             |
| ------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| Критерии оценки     | Описание, теги, автор, длительность, соотношения вовлечённости, топ-комментарии; без картинки и без распознавания речи             |
| Источник кандидатов | Лента рекомендаций только для чтения и список трендов; в веб-версии Douyin нет рабочего поиска, ключевые слова лишь помечают отчёт |
| Отчёт               | Пишется в `out/<дата>.md`; опционально уведомление Windows или webhook                                                             |
| Отправка            | Личные сообщения, карточки и комментарии по умолчанию выключены, каждое требует `confirm`                                          |
| Группы              | Наблюдение автора: «в группах сообщение может не отправиться»; на другом аккаунте может быть иначе                                 |

Обычные текстовые ссылки в Douyin не открываются, работают только карточки. Для личных сообщений, карточек и комментариев нужен Chrome (ищется только `chrome.exe`, не Edge); для сбора кандидатов и отчёта он не требуется. Частые комментарии вызывают ограничения, а точность ниже, чем в версии для Bilibili: без субтитров остаётся только реакция аудитории.

## Подключение группы QQ

У QQ Bot есть официальный плагин `@tencent-connect/dsh-qqbot`: он ставится в отдельный профиль `qqbot`, после привязки по QR-коду бот общается в личных сообщениях и группах QQ.

```bash
npx @deepseek-ai/dsh plugin --profile qqbot add @tencent-connect/dsh-qqbot
npx @deepseek-ai/dsh --profile qqbot
```

При первом запуске отсканируйте QR-код по подсказке — вручную вводить ключи не нужно. После привязки:

* **Изолированные сессии**: у каждого диалога и каждой группы свой контекст, без смешивания, сессии восстанавливаются после перезапуска.
* **Смена модели в чате**: переключение прямо в разговоре сохраняет прежний контекст, начинать заново не нужно.
* **Тихий режим**: можно отвечать только при упоминании, чтобы не заваливать группу сообщениями.

Модель настраивается внутри профиля `qqbot`: откройте там **Settings → Models → Add a custom provider** и заполните aicentos по таблице выше. Если нужно управлять несколькими каналами сразу, посмотрите bundle сообщества `dsh-im` — один bundle на десять каналов, с несколькими ботами и потоковыми ответами.

Сообщения в группе попадают в контекст и передаются модели, поэтому не поручайте ей работу с аккаунтами и ключами в группе; учётные данные привязки хранятся в локальном профиле — не синхронизируйте каталог профиля в публичный репозиторий.

## Компаньон на рабочем столе и очистка комментариев

Два необязательных плагина, это отдельные проекты:

| Назначение                                       | Проект                                                                                 | Установка                                                                                                                                                   |
| ------------------------------------------------ | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Анимированная рыбка на рабочем столе             | [https://github.com/QCYTSN/dsh-dafeiyu](https://github.com/QCYTSN/dsh-dafeiyu)         | Также отправьте URL в DSH; появится прозрачное нативное окно, его можно перетаскивать, анимация меняется по состоянию задачи                                |
| Скрыть подозрительные ИИ-аккаунты в комментариях | [https://github.com/liyupi/dafeiyu-cleaner](https://github.com/liyupi/dafeiyu-cleaner) | Расширение браузера: скачайте zip из Releases, распакуйте, откройте `chrome://extensions`, включите режим разработчика и загрузите распакованное расширение |

Расширение скрывает комментарии только в вашем браузере: оно ничего не удаляет, не отправляет жалобы автоматически, а ошибочно отмеченные аккаунты можно вернуть. Офлайн-правила дают около 85% обнаружения — цифра получена в одном разделе комментариев и в другом сообществе может не подтвердиться.

## Примечания

* **Автокомментарии сначала не включайте.** Они отключены по умолчанию; после включения — один комментарий за круг, максимум 20, и только один раз на видео. Даже так публичный поток превращается в «нашествие рыбок» для остальных. Начните с личных сообщений Bilibili самому себе.
* **Для ЛС нужны два аккаунта.** Выбор личных сообщений требует двух разных аккаунтов с взаимной подпиской (`relation.attribute === 6`). С одним аккаунтом просмотр видео, дневники и отчёты работают, а ЛС — нет.
* **Авторизуйте дополнительный аккаунт.** Плагин говорит от вашего имени, поэтому не передавайте cookie основного аккаунта стороннему плагину и не покупайте аккаунты неизвестного происхождения.
* **При ограничениях сразу остановитесь.** На 412 / 429, капчу или троттлинг плагин делает паузу на 5–30 минут и сообщает об этом; не повторяйте запросы подряд — подписанные эндпоинты не гарантируют обход ограничений платформы.
* **Выбирайте недорогую модель.** Каждый день она отбирает 5 видео, глубоко читает 2–3 и пишет два дневника — за круг получается много запросов. Возьмите в aicentos модель с низкой ценой и достаточным контекстом (см. [поддерживаемые модели](https://docs.aicentos.com/ru/billing/models-list)) и создайте отдельный ключ для DSH, чтобы контролировать расходы.
* **Без интерфейса не работает.** Плагин должен работать на DSH с веб-интерфейсом, иначе он останется в состоянии `pending (waiting for services: sessionController, webServer, connection)`.
* Плагин — публичная версия личного инструмента, не связанная с Bilibili или DeepSeek; вы действуете своим аккаунтом и на свой риск, соблюдая правила платформы.

## Полезные ссылки

* [Репозиторий плагина dsh-bili-whale](https://github.com/Alterssss/dsh-bili-whale)
* [Репозиторий плагина dsh-douyin-scroll](https://github.com/NEWJO123/dsh-douyin-scroll)
* [Официальная документация QQ Bot](https://bot.qq.com/wiki/agent-qqbot/)
* [Официальный сайт DSH Desktop](https://www.dshdesktop.com/)
* [Исходный код DSH Desktop](https://github.com/dataelement/dsh-desktop)
* [История изменений плагина](https://github.com/Alterssss/dsh-bili-whale/blob/main/CHANGELOG.md)
* [Поддерживаемые модели aicentos](https://docs.aicentos.com/ru/billing/models-list)