agentsclimarketplace

Handle complaint

Skill ilyautov/small-business-ru/small-business-ru/skills/handle-complaint

Обрабатывает входящую жалобу клиента от начала до конца — подтягивает контекст, готовит ответ и предлагает операционное исправление. Триггеры: «ответь на жалобу», «разбери жалобу клиента», «клиент недоволен». Принимает необязательный аргумент — ID письма или обращения.From its SKILL.md

Install
npx -y skills add ilyautov/small-business-ru --skill handle-complaint

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 15 stars15 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

6.3 KB, ~1.5k tokens by cl100k_base, as published. Nobody here has run it

<!-- Производное от Anthropic knowledge-work-plugins / small-business (Apache-2.0, (c) Anthropic). Локализовано под РФ, файл изменён. См. /NOTICE и /LICENSE. -->

Злой клиент — это ещё спасаемый клиент, если ответить быстро и по делу. Скилл поднимает историю и заказ, готовит ответ под остроту ситуации и заодно подсказывает, что починить, чтобы та же жалоба не пришла снова.

Запустите разбор жалобы, связав два скилла. Прочитайте жалобу, соберите контекст, подготовьте ответ и предложите исправление, чтобы это не повторилось.

Разбор аргументов:

  • EMAIL_OR_TICKET_ID (необязательно) — ID письма (~~почта), ID обращения (~~crm) или «последняя», чтобы взять самую свежую нерешённую жалобу. Если не указан — попросите владельца вставить текст жалобы.

Шаг 1 — Загрузить жалобу (ticket-deflector)

По рабочему процессу скилла ticket-deflector:

  1. Если дан ID: подтяните полную переписку из ~~почты или ~~crm.
  2. Если «последняя»: подтяните самое свежее нерешённое обращение из ~~crm или письмо из ~~почты с пометкой жалоба/поддержка.
  3. Если ничего нет: попросите владельца вставить текст жалобы напрямую.
  4. Определите: имя клиента, данные заказа/счёта, чем недоволен, что просит.

Шаг 2 — Собрать контекст

  1. Найдите историю клиента в ~~crm: прошлые покупки, прежние жалобы, стадия сделки, сумма покупок за всё время.
  2. Найдите связанную операцию в ~~платежах: статус заказа, история возвратов, статус спора.
  3. Сведите итог: «Это {новый/постоянный} клиент, покупок на {сумма} ₽, {0/N} прежних жалоб. Текущая проблема — {одно предложение}.»

Шаг 3 — Подготовить ответ (ticket-deflector)

По рабочему процессу скилла ticket-deflector (ответ в подобранном тоне):

  1. Подготовьте ответ под остроту ситуации и историю клиента:
    • Впервые жалуется, много покупок → с пониманием, щедро
    • Жалуется повторно → корректно, твёрдо, по делу
    • Хамит → корректно, кратко, с обозначением границ
  2. Включите: признание, объяснение (если известно), предложение решения, следующий шаг.
  3. ⚠️ Если жалоба про возврат/качество товара — действуйте в общей рамке закона «О защите прав потребителей», не выдумывайте конкретные статьи и сроки. При сомнении — «уточните условия возврата».
  4. Покажите черновик владельцу. НЕ отправляйте.

Шаг 4 — Предложить операционное исправление (customer-pulse)

  1. Проверьте, попадает ли жалоба в известную тему (из прошлых запусков customer-pulse-check или похожих жалоб в ~~crm).
  2. Если это паттерн: «Это {N}-я жалоба про {проблема} за месяц. Стоит рассмотреть: {конкретное изменение}.»
  3. Если единичный случай: «Похоже на разовый случай. Паттерн не обнаружен.»

Сбои коннекторов

Если ~~почта и ~~crm обе недоступны — попросите владельца вставить текст жалобы; скилл работает с ручным вводом. Если нет ~~платежей — пропустите поиск операции и отметьте «Платежи не подключены — статус заказа недоступен, работаю по тексту жалобы».

Точки подтверждения (approval gates)

  • Никогда не отправляйте ответ без явного одобрения владельца. Только черновики.
  • Никогда не оформляйте возвраты или компенсации автоматически. Покажите вариант — решает владелец.
  • Никогда не закрывайте обращения и не разрешайте споры без подтверждения владельца.

Вывод

Покажите сводку контекста по клиенту, черновик ответа и операционное предложение (если есть паттерн). Спросите: «Отправить этот ответ, отредактировать или поступить иначе?»

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Gives 0 of the 12 instructions most customer support skills give in ~1.5k tokens

Counted across 123 of the 124 authors here whose files we hold, read 2026-08-07

  • Call RUBE_SEARCH_TOOLS first to get current schemasin 12 of 123, across 4 files
  • Confirm connection status is ACTIVE before running workflowsin 12 of 123, across 4 files
  • Stop and ask for clarification if required inputs are missingin 9 of 123, across 2 files
  • Call RUBE_MANAGE_CONNECTIONS with the helpdesk toolkitin 9 of 123, across 2 files
  • Use both timestamp and ID for cursor navigationin 8 of 123, across 1 file
  • Implement backoff on 429 responsesin 8 of 123, across 1 file
  • Parse response data defensively with fallback patternsin 8 of 123, across 1 file
  • Use this skill only when the task clearly matches the scopein 8 of 123, across 1 file
  • Pass a JSON file as the positional argumentin 7 of 123, across 1 file
  • Specify output format with the --format flagin 7 of 123, across 1 file
  • Run health, churn, and expansion scripts togetherin 7 of 123, across 1 file
  • Verify output files contain expected records before continuingin 7 of 123, across 1 file

Said here and by no other author read

  • Retrieve complaint text from mail or CRM
  • Ask owner for text if ID is missing
  • Extract client name and order details
  • Gather client purchase and complaint history
  • Check payment and refund status
  • Summarise client profile and issue

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.