From f2d303c233f10b18f804bf37a18175bf8a74833c Mon Sep 17 00:00:00 2001 From: Dmitry Dementev Date: Mon, 20 Jul 2026 04:27:56 -0400 Subject: [PATCH] docs: add .scratch/ workflow and sub-agent delegation policies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Зачем: - зафиксировать правила работы с .scratch/ (рабочая зона) и делегирования субагентов. - Что: - описано, что .scratch/ коммитится, но не попадает в master. - добавлена процедура слияния фиче-ветки (git rm .scratch + --no-ff). - описаны принципы делегирования объёмной и механической работы субагентам. - Проверка: - cat AGENTS.md --- AGENTS.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/AGENTS.md b/AGENTS.md index 7e3444e..8cf7797 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -84,3 +84,22 @@ This repository contains personal dotfiles and configurations for a highly produ ### Handoffs Записки для продолжения работы в новой сессии — `.scratch/handoffs/YYYYMMDD-HHMM-.md` (одноразовые, коммитятся, уборка best-effort; скилл `/handoff` пишет сюда). + +### `.scratch/` — рабочая зона; в master не переносится + +Весь `.scratch/` — заметки по ходу дела: handoffs, PRD фич, нарезка задач. Коммитится (не в `.gitignore`), чтобы версионировать и передавать между сессиями, но в master ей делать нечего — это процесс, а не продукт. + +Долговечное знание держим **вне** `.scratch/` (в `docs/`, `CONTEXT.md`). Прежде чем сливать фиче-ветку, убедись, что долговечная часть уже вынесена туда. + +Слияние фиче-ветки в master: + +1. Последним коммитом ветки — `git rm -r .scratch` (`chore: убрать рабочие заметки перед слиянием в master`). +2. `git merge --no-ff` в master. + +`--no-ff` тянет все коммиты ветки в историю master, поэтому удалённый `.scratch/` остаётся достижим из merge-коммита и достаётся из истории в любой момент. Ничего не теряется — тег или архив не нужны. + +## Субагенты и экономия контекста + +Объёмную и механическую работу делегируем субагентам (Sonnet или аналогичная, в зависимости от сложности задачи), чтобы не засорять контекст основной сессии: проверки (реперы/линт/валидация), пакетные и файловые операции, отладка и прочее. Субагент сам читает «шумный» ввод-вывод и возвращает только результат. + +- Мелочь делегировать не стоит — кроме случая, когда она даёт объёмный вывод: пусть субагент прочитает его у себя и вернёт выжимку.