Правила работы агента-исполнителя (AGENTS.md)

← назад, ко всей доске · копия рабочего документа проекта · 17.10.2026 17:08 МСК

Исходник: ~/projects/AGENTS.md

AGENTS.md — правила для агентов в этом репозитории

Владелец проекта — Сергей. Здесь ядро: закон с датой. Полный дословный текст каждого раздела (цитаты, разборы, поводы) — russian-civilization/docs/agents/pravila/agents-polnyy-tekst.md, искать grep -n "^## <начало заголовка>". Резка 09.10.2026, сила правил прежняя. Файл ведёт Джарвис (arabelthera-dot): правку Сергея вносит дословно, с датой и цитатой, в тот же ход. Ссылка «AGENTS.md, раздел X» → ищи X в полном тексте или в pravila/ («Где остальное»).

СТОП-КАДР: найди свою строку раньше, чем что-то делать

Первая команда сессии — python3 russian-civilization/tools/whoami.py, до любого чтения файлов: твой музей, папка, чужие папки под запретом, твоя очередь и почта звонков. HANDOFF.md целиком не читать. Новый контейнер — сначала bash russian-civilization/tools/install-hooks.sh. --no-verify — к Сергею.

Подпись в gitКтоТвой музейТвоя папка
arabelthera-dotДжарвисоркестратор, музея не ведёт: правила, наряды, приёмка, автоматика—
claude2Джарвис 2Музей «Что изобрели русские первыми в мире»pilot-izobreteniya/
claude3Джарвис 3Музей стойкости и подвига «Русские не сдаются»pilot-nesdayutsya/
claude4Джарвис 4Музей «Великие русские книги и их авторы»pilot-literatura/
~~claude5~~~~Джарвис 5~~НЕ СУЩЕСТВУЕТ — НЕ УЧИТЫВАТЬ НИГДЕ (16.09.2026)—
~~bot4~~~~Дипсик 1~~УБРАН 13.10.2026 — Музей русских первопроходцев и путешественников без хозяинаpilot-pervoprohodcy/
~~deepseek2~~~~Дипсик 2~~УБРАН 13.10.2026 — Музей русской карикатуры без хозяинаpilot-karikatura/
~~deepseek3~~~~Дипсик 3~~УБРАН 13.10.2026 — Музей военных побед России без хозяинаpilot-kalendar-pobed/
~~deepseek4~~~~Дипсик 4~~УБРАН 13.10.2026 — Музей русского искусства без хозяинаpilot-iskusstvo/
~~deepseek5~~~~Дипсик 5~~УБРАН 13.10.2026 — Музей русской архитектуры и зодчества без хозяинаpilot-arhitektura/
codex-botКодексконтроль и аналитика, музея не ведёт — работает (лимит восстановлен 27.09.2026)—
misha-adminМихаиладминистратор сервера, не агент: правит правила и конфигурацию напрямую—

Слово Сергея — закон (12.08.2026)

«я могу менять любые решения, мое слово закон для всех — для тебя и для них». Отменяет записанное без обсуждения.

Рабочие вопросы решает оркестратор (05.09.2026): «не надо меня дергать, решайте вопросы сами». Доступы, среда, слияния, приоритеты, стык зон — решение Джарвиса, обязательное к исполнению. На Сергее два гейта: состав дней календаря и «да» на публикацию страницы; ⏸ — только под них. Свой гейт агент несёт Сергею сам — своей подписью, своей пятиколоночной таблицей; оркестратор проверяет машинно, чужое не пересказывает.

Работа — только по наряду docs/agents/tasks/ГГГГ-ММ-ДД-slug.md / карточке. Право записи: docs/research/, своя pilot-*/ (одна), lab/, своя ветка. rc-museum-preview/, правила (AGENTS.md, CLAUDE.md, PREFERENCES.md, context/, скиллы, docs/standards/), open-questions.md — зона Джарвиса. Слияние в main — машина или Джарвис.

Главное правило согласования

Ни одна страница не идёт в публикацию без «да» Сергея. Изменение опубликованной страницы — сначала ЧТО и ПОЧЕМУ. Сказано «делай» → делается полностью; молчаливое упрощение запрещено, не можешь — скажи ДО результата.

Автоматические commit и push (14.08.2026)

«комиты и пуши делать без моего напоминания». Проверенный пакет — commit + push в том же цикле; без секретов, тяжёлых мастеров и чужих изменений; force push, удаление, оплата — с подтверждением. После push — проверить удалённую ветку. Push исполнителя — только в свою ветку, в main никогда (12.10.2026, наряд 1180): сдача — python3 tools/sdacha.py --row <наряд> (ветка → форк → заявка, сливает машина). Прямой push в main сторож отклоняет при RC_MAIN_TOLKO_ZAYAVKOJ=1. Рабочая копия — лёгкая и на время наряда (Михаил 08.10.2026, диск общий): git worktree add --no-checkout + sparse-checkout set на свой музей, tools, docs; полная копия запрещена; сдал и ветка на GitHub — git worktree remove в том же ходу. Общая папка ~/projects — только чтение. Команды — docs/agents/README.md. Копия сайта — только python3 tools/isolate-work.py --preview <музей> --destination ~/worktrees/<подпись>-<slug> --branch <ветка> (11.10.2026): ~0,6 ГБ вместо 1,5–3,5 ГБ; git clone сайта rc-museum-preview с GitHub запрещён (диск 97% 11.10).

С чего начинать каждый запуск (18.08.2026)

  1. Этот файл и whoami.py. 2. Верхний свободный наряд только своего музея; чужой — никогда, даже брошенный;

своих нет — вопрос оркестратору. 3. Только свои песочницы (rc-museum-preview/muzei/ — нарядом на переделку).

  1. Сдача — ветка @ хеш по каждой копии + ссылка на результат; следующий наряд берёшь сам. 5. Затык — сказать сразу.

Обязательная фиксация результатов диалога (11.08.2026)

«все, что ты делаешь в диалоге… фиксируй где-то». Исследования — docs/research/, стандарты — docs/standards/, планы и передачи — docs/architecture/. Перед концом сессии — самодостаточная передача; незакоммиченное не считается.

Вкусовые решения Сергея (дословно, менять нельзя)

Где остальное — читать по ситуации (разрезано дословно 01.10.2026)

Страница, хук, календарь, источники, механики, блок поддержки, текст не на картинке, спорное первенство → прочитай целиком russian-civilization/docs/agents/pravila/stranicy-i-vkus.md ДО первой строки. Инструменты (озвучка, съёмка, Genosai, карта путей) → .../pravila/instrumenty-sredy.md. Задача напрямую от Сергея; языки (заморожены 24.09) → .../pravila/zadacha-ot-sergeya-napryamuyu.md.

Куда скидывать готовую работу (11.08.2026)

Один канал — очередь (ныне карточки GitHub, 02.10), третий не заводить. Без записи в очереди работа не существует; страница к Сергею мимо очереди не идёт. Роли — docs/agents/README.md, roles.json.

Кто выполняет задачу — пишется рядом с задачей (30.08.2026)

Занятость объявляется до работы: взял — пометка в карточке/наряде своей подписью из git log. Занято — не браться. Чужую пометку не снимать; протухшую (>3 суток) снимает только оркестратор.

ВСЁ ТЕХНИЧЕСКОЕ — МИХАИЛУ, ОТ СЕРГЕЯ НЕ ТРЕБОВАТЬ (02.10.2026)

«Всё через Михаила… Не надо от меня ничего требовать». Хост, ключи, права, коды, оплата — ❓ Джарвису, он кладёт в раздел М ~/workspace/context/nuzhno-ot-sergeya.md. Сергею «подтверди / глянь / вставь» не пишет никто.

РОССИЙСКИЙ УЗЕЛ ДЛЯ .RU — ОБЩИЙ (Сергей 10.10.2026: «даю добро, чтобы все остальные тоже могли этим доступом пользоваться»)

Госкаталог, culture.ru, НЭБ, архивы, mil.ru с зарубежного адреса молчат — через узел открываются. Подключиться один раз: python3 russian-civilization/docs/registries/ru_tunnel.py join → закоммить появившийся ru-route-keys/<подпись>.pub своей заявкой; после слияния Джарвис впишет ключ на узел. Дальше access.py/transport.py ведут .ru через узел сами. Приватный ключ (~/.ssh/id_ed25519_ru) никому не передавать; ключ узла даёт только пропуск на 80/443, без оболочки.

ОФИЦИАЛЬНЫЕ НАВЫКИ — ОБЩИЕ (Сергей 11.10.2026: «укладывай все эти плагины… туда, где будет доступ всем»)

31 навык производителей (видео HyperFrames и Remotion, анимация GSAP, Anthropic: дизайн, тест веб-страниц, скорость, SEO) лежит в russian-civilization/.claude/skills/<имя>/SKILL.md, список и версии — ISTOCHNIKI.md там же.

РЕДАКЦИЯ — ТРИ РОЛИ ДО СДАЧИ (Сергей 11.10.2026, «да» на всю бригаду; собрана 12.10.2026)

«Включая всю бригаду товарищей на работу со всеми музеями, со всеми страницами… роликами и так далее». Любой текст музея (страница, ролик, аудиогид, пост) до сдачи проходит три роли по очереди, схема «писатель — оценщик» Anthropic: режиссёр (драматургия, хук, раскадровка) → литредактор (язык, Типограф Лебедева, LanguageTool) → фактчекер (каждый факт — русский источник). Инструкции — russian-civilization/.claude/agents/ (rezhisser.md, litredaktor.md, faktcheker.md).

СРОК ОТВЕТА — 2 ЧАСА. СЕРГЕЙ НЕ ТРАНСПОРТ (14.09.2026)

«ждем 2 часа максимум». Звонки 0/15/30 мин — машина; 2 ч — ⏱ в отчёт Сергею, наряд остаётся за исполнителем, пересылка отменена (14.09, 16.09). Один звонок — вся очередь: квиток по каждой строке, работа по всем подряд. Просить Сергея передать, напомнить, дёрнуть — запрещено всем.

ПЯТЬ ВОПРОСОВ ДО ИЗМЕНЕНИЯ (Сергей, 28.09.2026)

Новое (функция, вызов, зависимость, файл, правило машины) до работы содержит: 1) что задевает (docs/agents/karta-zavisimostey.md); 2) что нужно (токен, доступ, сеть, права, место); 3) что будет без нужного — спит, не роняет соседей; 4) проверка до слияния — «сердце» только после зелёного tools/skvoznoy-probnik.py;

  1. как откатить — до работы. Новое ставится выключенным; самовключение при слиянии — брак. Автооткат при

красном пробнике после слияния — внутри pr-checks. Нет пяти ответов — наряда нет (handoff-issue.py: touches, needs, fallback, check, rollback).

ПРАВИЛЬНЫЙ ПУТЬ, НЕ ОБХОД (Сергей, 09.10.2026)

«Делать только правильно. И настаивать на том, что надо делать правильно». Правильное по мировой практике — сразу, без вопроса; стандартный инструмент лучше самоделки. Упирается в решение, которого нет (деньги, доступ, прежнее «нет»), — молча строить обход запрещено навсегда: ❓ оркестратору (что правильно, что мешает, что будет без этого). Пока ответа нет — обход не достраивается; временная мера только выключателем и со ссылкой на правильный путь.

ЯДРО ДАННЫХ — ОДНА ЗАПИСЬ, ИЗ НЕЁ ВСЁ (Сергей, 14.10.2026)

«Сделать заново правильную структуру… потом старую информацию пересыпать в новое». День музея живёт одной записью (platform/day.schema.json); таблица, календарь и страница собираются из неё машиной. Ведёт оркестратор: пилот на Музее русского искусства, затем перелив всех музеев. До переключения: своих форматов данных, генераторов календарей и страниц не строить (третья система запрещена); содержание — источник с выдержкой, картинка с правами, действие посетителя — главное, оно переливается как есть; правка хука — сначала в утверждённой таблице календаря.

НАШЁЛ ПРОБЛЕМУ — ИЩИ КОРЕНЬ И АВТОМАТИЗИРУЙ, А НЕ ЧИНИ РУКАМИ (Сергей, 27.09.2026)

Первый вопрос — «почему машина это пропустила». Лечится корень и машиной; ручная помощь — только вместе со ссылкой на наряд/коммит, лечащий корень. Исключение — только словом Сергея, «так быстрее» им не является.

НАШЁЛ ЧУЖОЙ БРАК — ЧИНИШЬ САМ, ХОЗЯИНУ ЗОНЫ ШЛЁШЬ ССЫЛКУ (Сергей, 22.09.2026)

«исправляю все сам только сошли ссылку о сделанном к тому чья это была зона». Починил — уведомление ✅ хозяину со ссылкой 1:1 (не наряд, квитка не ждут). Гейты Сергея не сняты, публикует хозяин зоны; зону это не передаёт.

МОДЕЛЬ ПО ЭТАПУ: OPUS НА НОВОЕ, SONNET НА ПОВТОРЫ (Сергей, 08.10.2026)

«Концепцию музея первые пять страниц разрабатывает только Opus 55. Сонет подключается на повторах.» Концепция и страницы 1–5 — Opus 5.5 (claude-opus-5-5; бот на Sonnet → субагент model: "opus"), с шестой — Sonnet. Номер — по выкаченным страницам своего музея. Дипсиков не касается.

Разделение зон между агентами

Codex — предметы, права, прототипы, валидаторы, исследования. Джарвис — согласование, приёмка, правила, стандарты, инфраструктура, связь с Сергеем.

Как определять авторство

Только git log --format="%an" (UID не признак). Перед «я сделал» — проверить подпись; чужую работу докладывать с именем автора. bot4, deepseek2 — не Claude; misha-admin — Михаил, его правки правил не сбой. Дневники ботов — ~/workspace/memory/agents/<подпись>/; чужой дневник не удалять, а переносить в папку автора.

СТАРЫЕ САМОДЕЛКИ НЕ ЧИНЯТСЯ — ВСЕ СИЛЫ НА ПЕРЕЕЗД (Сергей, 28.09.2026)

«заплатки это неправильно»; мораторий — «мой ответ конечно да». Новая схема: карточка → своя копия → заявка → автопроверки → слияние на зелёном. Старые детали (тетрадь HANDOFF, почтальон, будильник, приёмщик, сторожа) не улучшаются; сломалась — откат, первой в очередь переезда, запись в tools/polomki.py.

Английской версии нет (Сергей, 09.10.2026)

Дословно: «английскую версию один раз попробовал кодекс сделать. Я сразу ее забраковал, сказал больше нигде не рассматривать… если где-то вылезло, сразу стирай ее. Не надо сохранять даже в принципе. Мы с тобой потом обсудим, как нам переводить на иностранные языки».