Ответы Антона в топики клуба СОСТАВ полным циклом: показать черновик ВМЕСТЕ с исходным диалогом (на что отвечаем) → Антон выбирает основной/запасной/свой текст → отправить в клуб ДОСЛОВНО через дверь sostav_reply_send.py на хабе (@[рабочий аккаунт],… Триггеры: '/sostav-reply', 'ответь в составе', 'отправь в состав', 'шли в состав', 'запость в топик состава', разбор утренней партии SostavDailyVoice из Saved
Installs into .claude/skills of the current project.
Are you the author of Sostav Reply?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/tonydzi-sostav-reply)
---
name: sostav-reply
description: "Ответы Антона в топики клуба СОСТАВ полным циклом: показать черновик ВМЕСТЕ с исходным диалогом (на что отвечаем) → Антон выбирает основной/запасной/свой текст → отправить в клуб ДОСЛОВНО через дверь sostav_reply_send.py на хабе (@[рабочий аккаунт],… Триггеры: '/sostav-reply', 'ответь в составе', 'отправь в состав', 'шли в состав', 'запость в топик состава', разбор утренней партии SostavDailyVoice из Saved"
version: 1.0.0
---
# /sostav-reply — показать с диалогом, дождаться выбора, отправить дословно
## Контракт (anton 03.09.2026, голосом)
1. Черновик НИКОГДА не показывается голым: рядом всегда исходный диалог (2-5 сообщений
треда с авторами и датами), чтобы Антон видел, НА ЧТО отвечаем.
2. Всегда два варианта: основной + запасной (Антон часто берёт запасной - там юмор).
3. Антон выбирает: «основной» / «запасной» / свой текст / «скип». Его текст = закон,
дословно, без подшлифовки (§9.7).
4. Отправка только через дверь на хабе (сессии клуба живут там):
`python ~/.claude/scripts/hubrun.py -c "python [путь владельца] --topic '<Топик>' --reply-to <msg_id> --text '<текст>'"`
(текст с кавычками/апострофами -> payload-файлом через /hubrun, не инлайн).
Дверь пишет журнал `_imports\sostav\_reply_log.jsonl` и честно падает (2 = топик
неизвестен, 5 = телега не подтвердила).
## Форма реплики (правка Антона голосом 03.09.2026)
- **Максимум ТРИ слова** (было пять). Предлоги и частицы тоже слова.
- **Знаков препинания нет вообще.** Исключения ровно два: `)` в конце, если реплика правда
шутка; многоточие из **двух** `..` или **четырёх** `....` точек. Три точки `...` запрещены.
- Строчными, без ё, без тире, без эмодзи. Утверждения, не вопросы.
- Скобка не должна стоять в большинстве реплик — иначе она сама станет роботным паттерном.
- **Контекст = последние ~12 сообщений треда**, а не одно сообщение: «чтобы быть в теме».
- Угол Антона: криптан, трейдер, венчур, всё сводит к LLM и агентам. Локация в клубе —
**Пало-Альто**, про Лиссабон в клубе не пишем.
- Проверка формы — прибором, не глазами:
`python [путь владельца] <файл черновиков>`
(0 LLM; печатает, что именно посчитал; exit 1 = есть нарушения). Тест `_test_voice_lint.py`
доказанно краснеет на сломанном линтере.
## Шаги
0. Источник черновиков: утренняя партия SostavDailyVoice в Saved @[рабочий аккаунт] (формат уже несёт
строку «отвечаю на»), либо свежая таблица из сессии. Свежесть корпуса = дверью:
`corpus_fresh.py --max-age-h 30` (сборщик бежит 03:30).
1. Для каждого черновика найти msg_id сообщения-цели в sostav.db
(`SELECT msg_id, from_name, text FROM messages WHERE topic=? ORDER BY unixtime DESC`)
и показать диалог + оба варианта.
2. Дождаться выбора Антона по каждой строке. Молчание = не шлём.
3. Отправить одобренное дверью (шаг 4 контракта), reply_to = msg_id цели, если ответ
адресный; общая реплика в тред - без reply_to. **Пачка (больше 2-3 топиков) — только через**
`sostav_reply_batch.py <plan.json> [--live]`: паузы 30-50 сек между группами, дедуп по дню,
сначала сухой прогон без `--live` и сверка текста в поле (§3.6). Залп 13 групп за минуту = бот.
⛔ Топик **Участники** закрыт на запись (замер 04.09) — план туда не строим.
4. Отчитаться: топик, msg_id отправленного, счётчик за день.
## Стоп-краны
- ⛔ Ничего не шлём без явного выбора Антона по КОНКРЕТНОЙ строке (плюс на таблицу = шлём
основные варианты; правка строки = шлём правку).
- ⛔ Серые треды (обнал/суммы/схемы): робото-черновиков туда нет (SKIP из _voice_rules.md);
свой текст Антона туда - его право, шлём молча.
- ⛔ Темп: не больше 1-2 сообщений на топик в день; DM-знакомства (говоруны) - 3-4 в день,
не пачкой.
- ⛔ Анти-леак: содержимое клуба не покидает приватный слой; наружу ничего.
- Деньги/обязательства/секреты в тексте от робота = вырезано ещё правилами; у Антона - его решение.
## Связанное
- Рутина-производитель: SostavDailyVoice (хаб 05:45) - `sostav_voice_daily.py` + `_voice_rules.md` (душа, правь смело).
- Соседи: `/sostav-comments` (черновики по альфа-шортлисту), `/hubrun` (транспорт), память sostav-community-import.
- Голос: [[concept-anton-voice-profile]], золотой эталон «сардины», не выскочка, **≤3 слова, загадочно и с юмором, тоном очень занятого человека** (правка Антона голосом 03.09; было ≤5).
<!--kit-footer-->
---
**Like this skill?** It is one of 100 in [second-brain-starter-kit](https://github.com/tonydzi/second-brain-starter-kit): the second brain we built for ourselves and run every day at Palo Alto AI Research Lab. Install the whole set with `npx skills add tonydzi/second-brain-starter-kit`. Everything is open source and free, so take what you need.
Flagships worth a look on their own: [secondop-panel](https://github.com/tonydzi/secondop-panel) (a second opinion from a panel of external models), [claude-memory-tidy](https://github.com/tonydzi/claude-memory-tidy) (stop your agent's memory from rotting), [telegram-mcp-kit](https://github.com/tonydzi/telegram-mcp-kit) (your own Telegram over MCP in about 15 minutes).
Author: **Anton Dziatkovskii**, Palo Alto AI Research Lab. Telegram [@tonydzi](https://t.me/tonydzi) - WhatsApp [+1 341 222 9178](https://wa.me/13412229178) - X [@Tony_Stef_](https://x.com/Tony_Stef_)
**Engineers: want to test-drive this setup?** Message me. I hand out free starter seeds to engineers who test and report back, and custom skill requests are welcome.