comments · git:20260814.44e61cf · 2026-08-14 · sha256 bee81326d6d72e95
comments git:20260814.44e61cfA
Immutable. This exact content is served forever at /api/v1/blob/bee81326d6d72e95.
--- name: comments description: Комментарии под НАШИМ опубликованным контентом одним заходом — показать неотвеченные (⛔ цель «ни одного неотвеченного» ОТМЕНЕНА 15.07: дефолт = молчать, отвечаем только где ждут, ≤3 за заход), топ-комментаторов (кандидаты в тёплую личку), и по «+» Антона подготовить пачку черновиков ответов (draft-first, тон по каналу). Trigger on "/comments", "комменты", "неотвеченные комменты", "кто комментит", "ответь на комменты", "покажи комментаторов", "our comments", "unanswered comments". Тонкая обёртка над pub_metrics.py / pub_comments_report.py / tg_comments_collect.py (pubmetrics.db). READ по умолчанию; отправка ответов — ТОЛЬКО по явному «+» Антона (масс-флуд = hard-stop). НЕ путать с /sostav-comments (реплаи в клуб СОСТАВ по YouTube-корпусу) — этот про комменты к нашим постам в наших каналах. Канон: волт 00-System\Pub-Metrics-Registry.md § Комменты; память content-pub-registry, short-text-when-unreviewed. license: MIT --- # /comments — комменты под нашим контентом (показать · ответить · вырастить в личку) > 🧒 Отчёт Антону заканчивай простым «Простыми словами». (память `eli5-always`) Один заход: показать комменты и **точечно** ответить там, где ответ ждут. Собирает и показывает; **отправляет ответы только по «+» Антона**. Тонкая надстройка (AK-47) над движками в `$IMPORTS_ROOT/content-factory\registry\`. > 🔴 **УРОК БОЯ 15.07.2026** (память `bulk-replies-cringe-one-offer-converts`). Цель «ни одного неотвеченного» **ОТМЕНЕНА**: пачка из 16 ответов на старые комменты была удалена Антоном целиком («мой код разошелся… самому неловко»), автопостинг комментов выключен, аккаунт @work_acct_b потерял доступ к чужой группе. В ту же ночь ОДИН публичный пост-зов дал партнёра за 30 часов. > → **Дефолт = молчать.** Отвечаем, только если: адресовано нам ИЛИ тред живой (моложе ~недели) ИЛИ человек ждёт ответа лично. Старше — skip, и это НЕ долг. > → **Потолок ≤3 ответа за заход**, никогда серией подряд в чужой группе: темп и объём читаются как бот независимо от качества текста. > → Ценность меряем людьми, которые сдвинулись, а не счётчиком unanswered. **Границы:** это про комменты к НАШИМ опубликованным постам (pubmetrics.db). Клуб «СОСТАВ» = `/sostav-comments` (другой корпус). FB-комменты подтянутся после Graph-токена — сейчас источник = TG. ## 1. Свежий сбор (0 токенов) Сначала обнови базу, чтобы не отвечать на устаревшее: - `python tg_comments_collect.py` (идемпотентно; exit 3 = рельса @work_acct_a занята → скажи «повтори позже», не падай). ## 2. Показать состояние - `python pub_metrics.py status` — сколько неотвеченных всего. - `python pub_comments_report.py` — дайджест неотвеченных (спам-боты из `spam_authors.txt` уже помечены 🤖 и отсеяны). - `python pub_metrics.py top-commenters --n 15` — кто комментит чаще всех. Покажи Антону компактно: N неотвеченных по площадкам · топ-5 комментаторов · ссылка на дашборд `_Dashboards\Pub-Registry-Metrics.html`. ## 3. Если Антон просит ответить («ответь на комменты» / «+») Draft-first, отправка руками/по «+»: 1. **RECALL по автору** перед каждым ответом человеку: `/find <имя>` (namesearch) + grep волта + tg-профиль (`get_full_user` по author_id из comments). Знать, кому пишешь. 2. **Тон по каналу** ([[short-text-when-unreviewed]]): TG = осмысленный ответ по теме, с контекстом (НЕ FB-шутка на 5 слов). Голос Антона = Opus+. 3. **Что пропустить:** спам-боты 🤖 (не отвечаем); старые треды, где ответ уже неуместен (решить явно). 4. Покажи пачку таблицей «коммент → черновик → от какого аккаунта» и жди «+». После отправки — `pub_metrics.py mark-replied --cid <id>` (или следующий `tg_comments_collect.py` сам проставит `replied`). ## 4. Топ-комментаторы → публичный зов в группе, личка вдобавок Активный без CRM-карточки = кандидат. Заведи карточку (Platinum-CRM), сделай RECALL. ⭐ Оффер (тестеры/звонок/ранний доступ) по правилу anton 14.07 идёт **публично в группе**, не личкой — личка только как персональный пинг после публичного зова (канон: Библия `reglament-offer-aktivnym-publichno-v-gruppe-ne-v-lichke`, память `public-offer-in-group`). Личку без «+» не слать ([[telegram-account-identities]]). Клан (напр. Artem Arsyonov) — не лид. ## Границы / безопасность - READ по умолчанию. Массовый ответ задним числом = **hard-stop**: только пачкой, с «+». - Спам-фильтр: новую волну ботов добавляй в `spam_authors.txt` (`author_id # причина`). - Ничего приватного из комментов не утекает в другие каналы. ## Связано Утренний автопинг неотвеченных в чат 03 (05:35, задача «Pub-Comments-Morning-03») и ночной сбор (03:40, `collect_pub_metrics.cmd`) — это ручной, on-demand двойник тех рутин. Канон: `00-System\Pub-Metrics-Registry.md`, память `content-pub-registry`.