Зачем это всё
ИИ-ассистент быстрый, но дрейфует. Он угадывает пути к файлам, придумывает API, который изменился две версии назад, пишет правдоподобный мусор, который компилируется и тихо гниёт, забывает всё между сессиями и либо спрашивает разрешения на каждый чих, либо молча делает не то. По сути - гениальный стажёр с амнезией: печатает быстрее тебя, но к обеду уже не помнит, как тебя зовут.
Помогает не очередной инструмент, а простой порядок работы: короткие правила, готовые сценарии для частых задач и несколько полезных заметок. Он просит агента сначала разобраться, а потом менять файлы; говорить, когда чего-то не знает; и сохранять важный контекст между сессиями.
Здесь показано, из чего всё состоит. Метод вырос из реального проекта, но не привязан к языку, модели или инструменту. Скачай kit и положи его рядом со своим проектом - хоть это личная папка на компьютере без Git, хоть рабочий репозиторий.
Кому это всё
- Тем, кто уже живёт с ИИ-агентом и устал в третий раз объяснять одно и то же.
- Тем, кто хочет, чтобы агент проверял, а не угадывал - и сам признавался, где не уверен.
- Тем, кто делает личный проект в локальной папке, соло-разработчикам и маленьким командам: порядок работы вместо набора привычек в голове одного человека.
- Любому стеку и почти любому инструменту. Claude Code - из коробки; Cursor, Cline, Codex, Aider - с лёгкой адаптацией.
Чего тут нет - серебряной пули. Метод не делает агента умнее; он лишь мешает ему выстрелить себе в ногу и тут же забыть, что нога была.
И где он кусается. У метода свои острые края: навесишь церемонию на правку в одну строку - сам себе придумал работу; устаревший индекс или карта сбивает с пути хуже, чем их отсутствие; параллельные писатели тихо затирают друг друга; память гниёт, когда её никто не подрезает. Почти всё это - провалы избытка метода, а не нехватки: лекарство - самая нижняя ступень, которая доказывает изменение, и уход за индексами и памятью, которые ты держишь.
Метод вырос из зрелого Android-проекта: правила, навыки, роли, спек-каталог и память агентов реально гоняются каждый день. Из kit'а убрано всё про Kotlin, Gradle, PowerShell и локаль - остался переносимый скелет.
Восемь принципов на один экран
Сначала исследуй
Никогда не угадывай путь или поведение. Прочитай карту, потом код. Сохрани находки, не грепай дважды.
Сначала цель, потом детали
Сначала договорись, что должно измениться и зачем. Только потом решай, какие файлы трогать и в каком порядке.
Делай план, который можно проверить
После каждого шага должно быть понятно, что произошло: файл появился, команда завершилась без ошибки, функция найдена.
Не усложняй мелочи
Опечатка - это /quick, узкий баг - /fix. Подробный план нужен только там, где действительно есть выбор.
Автономия вместо бюрократии
Не спрашивай разрешения читать, искать, собирать, тестировать. Блокеры - в начале, а не после потраченного хода.
Чисто с самого начала
Не пиши слоп: пустые catch, мусорные комментарии, хардкод вместо токена, мёртвый код. Лови на ревью.
Помни между сессиями
Файловая память хранит то, что рантайм забывает: предпочтения, причины решений, контекст проекта.
Статус - из реальности
Статус тикета истинен, потому что так делает код, а не потому что так написано в имени файла или хочется.
Главный файл правил
Это один короткий файл, который агент читает в начале работы. В нём: как с тобой общаться, где искать код, как проверять результат и когда спрашивать, а не угадывать. Остальные материалы могут ссылаться на него.
Главное - держать его коротким. Это не энциклопедия: подробности лежат в docs/, а здесь только нужные ориентиры и подсказка, какой готовый промпт выбрать для задачи. Имя файла зависит от инструмента - CLAUDE.md, AGENTS.md, правило Cursor или GEMINI.md, - но смысл один.
В исходном проекте CLAUDE.md - это ~12 разделов, включая матрицу флейворов и ритуалы PowerShell. Kit оставляет переносимый каркас и выкидывает проектную машинерию: ты заполняешь <PLACEHOLDER> под свой стек.
Навыки: slash-команды
Навык - это сохранённый промпт для повторяющейся задачи. Пишешь /spec - и агент следует понятному сценарию, а не каждый раз придумывает его заново. Если в твоём инструменте нет slash-команд, это может быть обычный текстовый файл, который ты прикладываешь или на который ссылаешься.
Основной набор ведёт идею к готовому и проверенному результату:
/research собрать доказательства, сохранить (до всего нетривиального) /spec стратегическое что/зачем Draft → Approved /spec-tech фазовый проверяемый план Approved → Tactical /spec-dev выполнять по шагу, проверять каждый Tactical → Implemented /spec-check аудит против спеки → Verified / Partial / Broken /spec-fix механический ремонт после аудита Partial / Broken → переаудит /spec-all прогнать весь пайплайн целиком idea → verified
Не слайд, а настоящий навык. /spec-check читает репозиторий и отказывается звать тикет готовым, пока путь не доказан - и отдаёт механическую починку в /spec-fix. (иллюстрация)
$ /spec-check T0207 T0207: auditing the strategic spec + 3 phases against the repo.. PASS file exists export/CsvWriter PASS symbol declared writeRows(rows) PASS no forbidden call grep raw-logger -> 0 hits WARN dead weight old ExportHelper still wired in the container MANUAL export writes a valid file on a real run PASS changelog an entry for every touched file verdict: BlockNeedUserTest (PASS 6 / WARN 1 / FAIL 0) was "Implemented" -> downgraded: the build is sound, but the headline behaviour is unproven until a human runs the export once. next -> /spec-fix drops the orphaned ExportHelper binding, then re-audits.
Под пайплайном - дешёвые пути: /quick (опечатка), /fix (узкий баг). Перед всем пользовательским - /ui-clarify. Для краткости - /caveman. Плюс /git, /verify, /review.
Рядом с пайплайном, но не внутри него, живут две дисциплины:
- Паркуй, не гоняйся (
/park). Наткнулся посреди задачи на реальную проблему вне рамок задачи - крупнее правки в одну строку, требует отдельного взгляда? Запиши её заглушкой, отсей дубликаты против уже заведённого, отчитайся одной строкой и вернись к задаче. Никогда не переключай активную задачу, чтобы гоняться за припаркованной находкой; тривиальное чини на месте, косметические придирки выбрасывай. - Разгребай бэклог (
/backlog). Автопилот по бэклогу: бери тикет с наивысшим приоритетом из подходящих, гоняй пайплайн, повторяй - пока не останется ничего, что агент может продвинуть сам. Две защиты не дают ему сорваться: skip-кэш, чтобы непродвигаемый тикет не выбирался снова на следующем витке, и никаких вопросов посреди цикла - каждый требующий человека тикет попадает в один отчёт по итогу прогона.
И правило для самих вопросов к человеку: отсортируй развилку, прежде чем выносить её. Если её решает внешняя конвенция - исследуй её и рекомендуй; если её решает архитектура - изложи это как производное следствие. Реальные вопросы оставь для продуктовых решений, вкуса без опоры и необратимых действий. «Лучше спросить, чем угадывать» не работает, когда исследование или код уже отвечают - вынести решённую развилку как выбор значит расписаться в том, что не проработал вопрос.
Отдельные помощники для разных задач
Это дополнительные помощники с узкой задачей. Один ведёт работу от запроса до проверки, другой только изучает проект и пишет выводы, третий вносит изменения по плану, четвёртый занимается текстами для людей. Они полезны для больших задач; в небольшом личном проекте можно обойтись и одним агентом.
- Зачем ограничивать инструменты: ресёрчер, который не умеет писать, не испортит файлы случайно.
- Параллелизм: несколько агентов одновременно копают независимые вопросы - локальный код и внешние доки в один заход.
- Каждому - своя память: заметки ресёрчера не засоряют индекс имплементера.
Параллелизм - чистый выигрыш для читателей; параллельные писатели требуют осторожности:
- Писатели затирают друг друга через общее VCS-состояние. Операция одного агента над всем деревом - stash, checkout, reset, restore - откатывает незакоммиченные правки всех остальных писателей, даже по непересекающимся файлам. VCS и сборка между волнами - на оркестраторе, либо у каждого писателя свой checkout.
- Отчёт субагента - это утверждение, а не вердикт. Перепроверяй из собственного чистого состояния оркестратора. Сообщённый отказ часто - фантом устаревшей инкрементальной сборки; сообщённое «компилируется в изоляции» так же не доказано.
- У делегирования есть перекос к хвосту. Субагент тратит бюджет на тяжёлые ранние фазы и обрезает последнюю - доки, проводку, чистку, - а в отчёте пишет «готово». Проверь, что каждый артефакт существует и запускается.
- Изоляция - ещё и рычаг бюджета: гоняй задачу с громоздкими доказательствами в одноразовом агенте, который возвращает один компактный вердикт, - артефакты остаются в дочернем.
Путь задачи: от идеи к проверке
Для заметной задачи полезно записать две разные вещи, не смешивая их:
- Что и зачем: проблема, цель, ограничения и открытые вопросы. Без технических деталей. Если идея не подходит, это станет ясно до лишней работы.
- Как сделать: какие файлы менять, в каком порядке и как проверить результат. Если следующий шаг неясен, агент спрашивает, а не угадывает.
Draft ─► Approved ─► Tactical ─► In Progress ─► Implemented ─► Verified
│ │
└─ черновик может быть сырым └─ аудит может дать вместо этого:
Partial (предупреждения)
Broken (есть отказ)
плюс явные блок-статусы: BlockNeedUserTest, BlockQuestions, BlockExternal, ..
Перед фазами - гейт сложности - градуированная лестница, а не выключатель. Опечатка - это /quick; узкий баг - /fix; мелкая детерминированная правка (≤3 файлов, без новых публичных типов, без миграций и DI) идёт как примитив в три секции; всё остальное - полный пайплайн. Бери самую нижнюю ступень, которая всё ещё доказывает изменение, - и церемония останется пропорциональна работе.
Граф фаз проектируется тремя проходами: инвентарь покрытия (каждая цель ложится в фазу или помечается как вне рамок), топология «производит/потребляет» (ни одна фаза не потребляет то, что произведёт более поздняя), фильтр реальной работы (шаг меняет код, а не текст плана). Каждый шаг кончается статической проверкой.
Когда тикет ждёт ручной проверки, в точку входа каждого изменённого потока вставляется временная лог-строка LOG("ID: что доказывает этот путь"). Инвариант: такой тег существует тогда и только тогда, когда тикет в статусе ожидания теста. Во время ручного прогона ты грепаешь лог по ID: и видишь, какие пути реально выполнились. Аудит удаляет теги на переходе в Verified; в постоянных логах id тикета не живёт.
Статус - из реальности, и это бьёт уже на входе: тикет доходит до «ожидает теста» только когда его основное поведение уже работает от начала до конца. Скомпилированный каркас, который лишь логирует или показывает заглушку, - это веха, а не результат: не зови человека тестировать пустышку.
У блок-статусов есть определённый выход, а не только вход: разблокируй тикет, застрявший на вопросе, решив то, что код уже определяет, спрашивая владельца только о настоящих суждениях (с исследованным дефолтом) и продвигая на один уровень. И жизненный цикл где-то кончается - мягкое удаление Archived убирает отменённый тикет из активного набора, но сохраняет его запись, так что ничто не удаляется жёстко.
Защиты делятся по тому, что они проверяют: механический инвариант жёстко стопорит; суждение лишь информирует и оставляет go/no-go агенту - жёсткая блокировка на эвристике лишь плодит обходы. А деструктивный шаг, который план уже подстраховывает, - не повод выдумывать гейт подтверждения.
Постоянная память агента
Рантайм забывает всё между сессиями. Код, спеки и git остаются - а вот как ты любишь работать, почему прошлое решение было таким и какие правки ты уже давал - нет. Переучивать это каждую сессию - главный скрытый налог: как каждое утро заново знакомиться с коллегой, который вчера с тобой переписал полпроекта.
Лечение - маленькая файловая память в memory/ под контролем версий: всегда загруженный индекс MEMORY.md плюс по файлу на запись. Четыре типа:
user кто человек: роль, опыт, что уже знает → как объяснять feedback как работать здесь - из правок И похвал → не повторять подсказку дважды project живой контекст: кто, что, зачем, к сроку → быстро устаревает reference указатель во внешнюю систему и зачем → где искать
Тонкость - сдержанность. Не храни то, что выводится из репозитория, git-истории или рецепты починки - это уже в коде и коммитах. И проверяй перед советом: память, называющая функцию или путь, - это утверждение «так было, когда записали». Перед действием - грепни, существует ли оно сейчас.
Долговечная память - для фактов, которые стоит хранить; промежуточное состояние одной прерванной задачи - нет, держи их раздельно. Для задачи, которая переживает перерыв, обрамляй её: на каждой границе фазы пиши короткую передачу (цель, что изменилось, решения, открытые блокеры, единственный следующий шаг), а при возобновлении читай последнюю передачу, прежде чем что-то трогать.
Одна оговорка, которую прячет слово «постоянный»: авторитет того, что сделано сейчас, - рабочее дерево, а не git-история. git log, blame и diff отвечают на «как мы сюда пришли» и активно вводят в заблуждение, когда один файл несёт сразу несколько задач. Возобновляй, читая живые файлы, потом правь трекеры - никогда не выводи текущее состояние из диффа.
Порядок исследования и индекс кода
Самое дорогое, что делает ассистент, - угадывает. Догадка выглядит как прогресс и стоит целой неверной реализации. Лекарство - фиксированный порядок поиска: карта → спека → индекс кода/греп → код → внешние доки. Останавливаешься, как только источник ответил.
Одно правило под всем: если ты назвал путь, символ или API - ты их проверил. Для большого репозитория держат запрашиваемый индекс единиц кода: спрашиваешь индекс до грепа и регенерируешь его после правок. Устаревший индекс хуже отсутствующего.
Две дешёвые защиты расширяют порядок. Держи инвентарь того, что проект уже умеет - запрашиваемый список возможностей - и просматривай его, прежде чем проектировать фичу, чтобы агент не пересобирал под новым именем то, что уже существует. И сама карта - артефакт, который ты ведёшь: указатель «фича → местоположение». Держи его в согласии со структурой, которую он описывает, и назначь ответственного за свежесть - та же дисциплина, что и у индекса кода.
Одно уточнение к «проверяй, не угадывай»: имя - это не поведение. Прежде чем рассуждать, что флаг или константа делает, подтверди живое место чтения/вызова - комментарий или упоминание в доках это попадание, а не использование. Символы умирают, переименовываются по смыслу или вообще не подключаются.
Как убедиться, что всё работает
Шаг не сделан, когда ты хотел, чтобы он работал. Он сделан, когда проверка прошла в этом прогоне. Уровень доказательства подбирается под тип изменения:
греп < запуск скрипта < компиляция < точечный тест < полная сборка < запуск-и-наблюдение док скрипт правка типов логика конфиг/ресурсы пользовательское поведение
Бери самую нижнюю ступень, которая реально доказывает это изменение, и не выше. Для каждой проверки записывай ожидал: X | получил: Y - предсказание до чтения результата ловит проверку, которая вернула 0, но напечатала не то. «Работает на моей машине» - не ступень этой лестницы, а суеверие.
Два режима отказа, которые одна лестница не ловит. «Готово» лучше всего как одна fail-closed команда, которая собирает проверки под тип изменения, - любой провалившийся гейт обрывает весь прогон с ненулевым кодом, так что «закончено» означает «все применимые гейты прошли», а не «я их все вспомнил». И зелёное может врать: когда команды сцеплены, в пайпе или ушли в фон, агрегатный код выхода часто отражает хвостовую обёртку, а не ту сборку или тест, что тебе важны. Читай конкретную строку вердикта - проверка, прошедшая по неверной причине, хуже отсутствия проверки.
Веди журнал на уровне логического изменения, а не тронутого файла: одна запись на изменение с пакетом его файлов, и любой индекс регенерируй раз на изменение, а не раз на правку. Предоставленный сам себе, агент пишет пофайловый шум, который хоронит сюжет.
Анти-слоп
Семь паттернов, которые ИИ (и уставший человек) выдаёт легко, а они выглядят нормально и тихо гниют - как забытый в глубине холодильника контейнер: снаружи порядок, пока не откроешь. Правило - не писать их с самого начала и ловить на ревью. Все семь - греп-проверяемые:
catch
3 хардкод вместо токена
4 небезопасный async / глобальный scope
5 логирование мимо фасада
6 заглушки в проде (TODO())
7 мёртвый код после правки
Каждый можно механически просканировать в диффе. Сделай проверку частью «готово», а не «когда-нибудь». Если в стеке есть линтер - закодируй паттерны как правила, чтобы гейт был автоматическим.
Две вещи замыкают петлю. Первое: как внедрить правило на коде, который его уже нарушает? Ставь гейт на новые нарушения, а не на все: заморозь сегодняшнее число как закоммиченную базовую линию, проваливай только при росте и дай базовой линии опускаться по мере уборки, как трещотке, - но не подниматься. Правило кусает сразу, без уборки большим взрывом. Это и есть недостающее звено между «закодируй паттерн» и реальной легаси-базой.
Второе: детектор - лишь половина починки. Линтер останавливает человека один раз; агент переиздаёт тот же паттерн каждое поколение. Так что закрой источник - добавь соответствующий DON'T во всегда загруженный свод правил и подкрепи его в навыках, генерирующих код, чтобы агент перестал производить дефект, а не просто помечал его постфактум.
Пользовательские доки - часть изменения, которое меняет поведение, а не довесок: то же изменение обновляет док, и проверка проваливается, когда поведение и его описание расходятся. Держи пополняемый (append-only) лог «что выпущено» отдельно от выверенной сводки, которую регенерируешь на релизе.
Как внедрить
Метод не привязан ни к инструменту, ни к модели. Ниже три ситуации - выбери свою.
Не готов к полному набору - возьми три файла: CLAUDE.md (переименуй в AGENTS.md, если твой инструмент читает его), /quick и /fix. Добавь /spec и жизненный цикл, когда впервые попадётся задача с настоящими проектными решениями, а memory/ - когда надоест объяснять одно и то же. Это то же правило нижней ступени, применённое к самому kit'у.
A · Новый или почти пустой проект
Сначала дай агенту собрать карту кода его штатной командой - /init в Claude Code (или аналог в твоём инструменте). Потом отдай этот промпт, чтобы он поднял проект сразу по методу:
Промпт для нового проекта (на английском)
This is a fresh or mostly empty project folder. It may be a personal local project without Git. First run your codebase-init command (/init in Claude Code, or the equivalent in your tool) so you have a rules file and a basic map of the project. Then download https://github.com/SerZhyAle/universal-agent-kit/raw/main/universal-agent-kit.zip into a temp or scratch directory and unpack it locally; it extracts to a `universal-agent-kit/` folder beside a `merge-prompt.txt`. Use those extracted files as the source of truth: read `universal-agent-kit/README.md` first, then use `universal-agent-kit/CLAUDE.md`, `universal-agent-kit/.claude/`, `universal-agent-kit/docs/`, `universal-agent-kit/memory/`, and `merge-prompt.txt`. Do not use the article page as the primary source. If you cannot download files in this environment, stop and ask me to place the archive in the workspace. Set this project up on the method from those files: 1. Write the rules file my tool reads (CLAUDE.md / AGENTS.md / a Cursor rule / GEMINI.md - whatever applies) adopting the kit's structure: communication, research order, skill routing, the spec lifecycle, strict rules, anti-slop, post-change discipline. Fill in what already exists; use sensible defaults otherwise. 2. Create the skill / command files and the role briefs from the kit that fit a project of this kind. 3. Set up the plan directory, the scratch directory, and the memory folder with its index. 4. Pick the build / test / lint / run commands for the stack I name - or propose a stack if none exists yet. Show me the plan first; create nothing until I approve.
B · Существующий или личный локальный проект
За минуту. Подходит, если проект уже есть - даже если это просто папка на твоём компьютере без Git. Попроси агента скачать архив, распаковать его рядом с проектом и выбрать самое полезное:
Промпт для существующего проекта (на английском)
Download https://github.com/SerZhyAle/universal-agent-kit/raw/main/universal-agent-kit.zip into a temp or scratch directory and unpack it locally; it extracts to a `universal-agent-kit/` folder beside a `merge-prompt.txt`. Use those extracted files as the source of truth: read `universal-agent-kit/README.md` first, then use `universal-agent-kit/CLAUDE.md`, `universal-agent-kit/.claude/`, `universal-agent-kit/docs/`, `universal-agent-kit/memory/`, and `merge-prompt.txt`. Do not use the article page as the primary source. If you cannot download files in this environment, stop and ask me to place the archive in the workspace. Then study THIS project folder and import what fits it. It may be a local personal project without Git; do not require Git or create a repository: 1. Draft a CLAUDE.md (or my tool's equivalent rules file) that adopts the method, with every placeholder filled from this project: project name, chat language, source root, architecture layers, build / test / lint / run commands, logger, plan directory, scratch directory, file-size budget, read-only zones, and a simple way to name tasks if useful. 2. Recommend which skills (/research, /spec, /spec-tech, /spec-dev, /spec-check, /spec-fix, /quick, /fix, /verify, /review) and which role agents are worth adding here, and say why. Consider /git only if this project already uses Git. 3. Tell me whether my runtime supports persistent agent memory and, if so, how to wire it up. Do not change anything yet. Show me the plan first; on any conflict, my existing files win.
Быстрый способ начать. Агент сначала покажет план и ничего не изменит без твоего подтверждения.
C · Существующий проект - подробный путь
Скачай kit, отдай агенту папку вместе с merge-prompt.txt и скажи: «Добавь Universal Agent Kit в мой проект». Это работает и с обычной локальной папкой. Агент сначала составит список: что уже есть, что можно добавить и где возможен конфликт. Затем покажет план и остановится: ничего не перезаписывается молча. После твоего подтверждения он внесёт выбранные части и заполнит <PLACEHOLDER> по материалам проекта.
Любой инструмент
Каждый агент читает свой файл правил - суть одна, отличается лишь имя:
- Claude Code -
CLAUDE.md+.claude/commands/*(готовые/spec,/research..) +.claude/agents/*как субагенты. - Cursor -
.cursor/rules(или.cursorrules); команды становятся сохранёнными промптами. - Codex, Gemini CLI / Antigravity, Aider, Cline, Windsurf -
AGENTS.md(указатель уже лежит в kit'е, правила - вCLAUDE.mdрядом) /GEMINI.md/ свой аналог; роли вставляются как системные промпты, навыки - как файлы-промпты, на которые ссылаешься. - Методология в
docs/вообще не зависит от инструмента - это просто Markdown.
Любая модель - от сильной до слабой
Метод не зависит и от мощности модели - меняется не он, а несколько ручек:
- Сильная (фронтир, большой контекст): держит больше в голове. Шаги крупнее, автономии больше; спеки и проверки оставляешь ради корректности, а не чтобы вести за руку.
- Средняя: золотая середина метода - спеки, мелкие проверяемые шаги и порядок исследования окупаются максимально.
- Слабая, маленькая или локальная: опираешься на правила сильнее всего - крошечные шаги, проверка после каждого, короткий контекст, меньше автономии. Метод - это то, что вообще делает слабую модель пригодной для работы.
Типовые практики и куда смотреть
Этот kit - не единственная истина, а один связный набор привычек. Сами привычки общие - их же советуют команды, которые эти инструменты и делают:
- Держи контекст коротким. Окно контекста забивается быстро, и качество падает по мере заполнения. Между несвязанными задачами начинай свежий чат.
- Сначала план, потом код. Попроси подход и план, утверди - и только потом разрешай править файлы.
- Два агента в петле. Один пишет, другой ревьюит или гоняет тесты; либо сначала тесты, потом код до зелёного.
- Делай точки возврата. С Git это коммит до и после задачи. Без Git - копия изменяемых файлов или папки проекта, чтобы можно было спокойно отменить неудачный эксперимент.
- Если используешь Git - работай в отдельной ветке. Перед правками проверь, где находишься, и не коммить прямо в защищённую или основную ветку.
- Записывай повторяемое. Часто повторяемый промпт сохрани в команду или файл правил. В команде положи его в общий проект; в личной папке он просто останется рядом с кодом.
- Скриптуй релиз. Зашей версию один раз в каждый артефакт - тег, заметки, сборку, - чтобы они не разъехались; пиши заметки к релизу из выверенного списка видимых пользователю изменений, а не из сырого лога коммитов.
- Читай дифф. Агент быстрый, но не непогрешимый - не вливай то, что сам не прочитал.
Kit превращает эти советы из «хорошо бы» в записанный процесс. Первоисточники стоит прочитать целиком:
Официальные гайды «ИИ для разработки»
- Anthropic · Claude: Claude Code best practices · Effective context engineering
- OpenAI · Codex: Codex docs и quickstart
- Google · Antigravity: antigravity.google · Docs (агентная IDE от Google)
Ссылки ведут на официальные ресурсы вендоров и открываются в новой вкладке. Метод из этой статьи работает поверх любого из этих инструментов.
Держи его живым. Метод требует ухода: регенерируй индекс после изменений, подрезай память, которая устарела, опускай базовые линии трещотки по мере уборки и пересматривай маршруты навыков по мере роста проекта. Запущенный индекс или память хуже, чем их отсутствие, - заложи немного ухода, иначе kit потихоньку начнёт тебе врать.
Происхождение и лицензия
Адаптировано из .claude/-сетапа реального Android-проекта FastMediaSorter. Android-, PowerShell- и локаль-специфичная машинерия удалена; переносимый метод оставлен и переписан нейтрально. С тех пор это же ядро сверено с остальным портфелем автора - Android-приложение, десктопные приложения для Windows, Go-утилиты командной строки, браузерное расширение - и в kit вошли правила, пережившие все эти формы. Исходного кода и проприетарного содержимого здесь нет - только рабочий метод.
Kit - под MIT. Текст этой статьи - под CC BY 4.0. Бери, ремиксуй, адаптируй под свои проекты.