agentleFS
Igor-lxIgor-lx/claudeHarness/.claude/skills/task/SKILL.md

task

Skill2 starsChanged 34 days agoMITView on GitHub

Начать задачу по этому проекту с правильного яруса входа — определить класс задачи, прочитать ровно то, что ей нужно, описать область, если база о ней молчит, спроектировать правку до первой строки и собрать «что придётся тронуть» одним вызовом инструмента. Использовать в начале любой работы с кодом этого репозитория: анализ, объяснение, багфикс, рефактор, новая функциональность, удаление.

28 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use inbox, grill-me and 4 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • kv0906Skill

    inbox

    Quick capture mode (with content) or batch processing mode (no content). GTD-style routing of inbox items to proper folders. Use "/inbox thought to capture" or "/inbox" to process.

    Also in 3 projects that use this

  • GoogleSkill

    grill-me

    A relentless interview to sharpen a plan or design.

    Also in 5 projects that use this

  • VercelSkill

    setup

    Set up Vercel CLI and project configuration. Use when the user says "set up Vercel", "configure Vercel", "link to Vercel", or "vercel init".

    Also in 4 projects that use this

  • BlockSkill

    plan

    Draft a TDD, PRD, or lightweight plan in the conversation without committing it.

    Also in 3 projects that use this

  • Google CloudSkill

    triage

    Gather context on a change or bug and plan the implementation.

    Also in 3 projects that use this

  • SentrySkill

    review

    Fixture review skill.

    Also in 3 projects that use this

The file

Files
SKILL.md

Начало задачи: ярус входа

Полный вход в проект — тысячи строк доктрины; сколько именно у этого проекта, записано в фактах, раздел «Цена ярусов входа». Для рефактора слоя это дёшево, для вопроса про одну константу — абсурдно. Этот скилл задаёт, что читать под конкретную задачу, и не даёт ни занизить ярус, ни завысить.

Что читать под каждый класс, записано в доктрине — .claude/rules/loop.md, раздел «Соразмерность: что читать под задачу». Здесь эта таблица не пересказывается: прежде скилл держал свою копию, и она разошлась с доктриной — у объяснения узла копия велела читать «сам файл и его тест», а доктрина — всю очерченную область и документы. Здесь — порядок и команды, которыми строка таблицы исполняется.

Шаг 1. Определи класс задачи

Класс определяется по тому, что будет в ответе, а не по глаголу, которым попросили. Признак: в ответе есть хотя бы одно утверждение о том, как код себя ведёт, что означает или верно ли сделан. При наличии такого утверждения класс — не A, независимо от формулировки просьбы.

КлассПризнак
A. Расположениеответ — «где лежит», «что уже решено», без утверждений о поведении
B. Объяснение узлаответ описывает поведение одного файла или хука
C. Багфиксместо известно, поведение меняется точечно
D. Рефакторкод переезжает, поведение обязано остаться прежним
E. Новоепоявляется файл, ветка, проп или модуль
F. Удалениеуходит узел, возможность, проп или экспорт

Род задачи — вторая ось, и она про судьбу найденного: у работы есть дифф кода — новое, правка, рефактор, удаление, тест — чинить, в том числе место, записанное пунктом долга перехода; диффа кода нет — назвать и предложить (loop.md, «чинить или назвать»).

Шаг 2. Прочитай строку своего класса — командами

КлассКоманды
Aраздел «Проект на одной странице» в .context/00-map.md, затем нужный раздел карты
Bnode .claude/tools/graph.mjs brief <путь> — и всё, что он очертил, целиком и дословно: сам файл, то, чем он пользуется, то, что пользуется им, тесты области, дверь папки и документ по её имени
Cто же плюс node .claude/tools/graph.mjs plan <путь> и записи 07-invariants.md, 09-decisions.md по области
Dполный вход (CLAUDE.md, 01-facts.md) плюс plan, blast и levels по узлу
Eполный вход плюс .context/10-idioms.md, раздел «Как заводится новый узел» в .claude/rules/code.md, plan и levels по точке встраивания и brief по каждому предполагаемому импорту
Fполный вход плюс plan, blast и levels по удаляемому и раздел «Как убирается узел» в .claude/rules/code.md

Ярус занижать нельзя: если по ходу выяснилось, что задача шире выбранного класса, недостающее дочитывается и это называется в отчёте. Завышать тоже нельзя: прочитанное сверх необходимого результата не даёт, и завышение называется в отчёте так же.

Шаг 3. База молчит об области — сначала описать область

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

Найдено работой на стенде: задачи, сделанные до заполнения базы, проверили только механику — досье и план отвечали из пустоты, и всё, что база должна была остановить, не останавливалось ничем.

Шаг 4. C, D, E, F — проект правки до первой строки

node .claude/tools/graph.mjs plan <путь>

Отдаёт сразу: радиус прямой и транзитивный, парную копию (её правят в той же правке), тесты, обязанные покраснеть, и те, что гоняют узел через другие, записи базы под обновление, документы, публичную поверхность. Это заменяет связку brief + blast + чтение карты руками.

node .claude/tools/graph.mjs levels <путь>

Отдаёт факты узла, слоя и приложения, среди которых правке жить: что узел делает по карте, его поверхность, состояние, слой и направление рёбер, циклы, источники истины и их писатели. Правка, безупречная в строках, ломает именно это — второй источник у факта, вторая ответственность у узла, ребро против слоёв, — и заметить это до письма дешевле, чем после.

Замер читается планкой, а не к сведению: радиус судит I1, потребителей — I2, общий ресурс — C6-бис, изменённое поведение соседа — J9-тер, второй источник истины — A6, ребро между слоями — A5. Имена, уходящие наружу через вход пакета, — изменение контракта: это развилка разработчика, и ставится она вопросом до правки. Не сошлось — перепроектировать сейчас: замысел правится дешевле написанного.

Проект правки называется в отчёте первым пунктом работы: что меняется, где, какие тесты обязаны покраснеть, какие записи и документы уйдут в правку.

Шаг 5. Помни, чем работа закончится

  • правка кода — тесты в том же заходе, J1 «Тест обязан уметь падать» на каждом (сломай, убедись, что краснеет именно он);
  • свод по планке — режим bar на конечном виде правки, до прогона (на задаче чтения — bar <путь>, адрес-папка — вся папка): модель предмета по уровням, сперва чтение — страницы bar-read: критерии с формами, код предмета, срезы соседей, слово каждой страницы в протокол, — затем свидетели — фраза каждой единицы по коду одним предложением и ответ по каждому объявлению, — затем исход по каждому живому критерию: признак, видимый текстом, называют номером строки; ядро узла по каждой тронутой единице переноса, ядро слоя по каждому слою, соседей области одной строкой, — база и документация по каждому файлу области, итог по каждому предмету, печать. Область та же, что прочитана, и найденное в ней на правке чинится; новое состояние и новый файл сверяют с каталогом проекта, а потребителей правленого за областью называет радиус — о совместимости отвечают с опорой на него. Не сошлось — переделать. В отчёте — отпечаток печати, итог по уровням и каждая находка;
  • попутные находки — что попалось по дороге в коде, тестах, базе, правилах или в инструменте, на работе с диффом кода чинится этим же заходом и называется в отчёте отдельно; на задаче чтения — называется и предлагается. Чинится класс, а не пример: правка под один случай оставляет остальные случаи того же класса без изменений. Машинной проверки у этого пункта нет: находку, которую не записали, не обнаруживает ни одна сверка;
  • БД (.context/**, «что и где» для следующей сессии) и документация («почему» для человека) правятся вместе с кодом и подтверждаются порознь, пофайлово, в протоколе свода — таблица «База и документация»: правлено с адресом либо не требуется с причиной. Пустая клетка не даёт печати, а печати нет — нет и закрытия. Кодом здесь считается всё: модули, тесты, стили. Прибавилась возможность, видная снаружи, — строка в витрине, словами продукта, а не кода;
  • node .claude/tools/graph.mjs tested перед отчётом: он и спросит про тесты тронутых файлов, про записи базы и соседей, про документацию, про публичную поверхность и про то, задета ли область смоука;
  • мутационный прогон по новым и изменённым файлам, если правился код: узел закрывается в том контексте, в котором писались его тесты, и печать свода на правке файла, до которого доходят тесты, без свежего замера «чисто» по J10 не ставит. Долг и готовую команду показывает node .claude/tools/graph.mjs mutated;
  • npm run check — весь обязательный набор одной цепочкой: типы, линт, формат, тесты, сверка базы;
  • /code-review на правку узла до коммита — прогон с кодом возврата ноль означает «поведение не сломано», а не «узел устроен верно»;
  • /run, если правка видна на экране — ни база, ни тесты, ни смоук не отвечают, как это выглядит и ощущается;
  • широкое сметание («найди все места, где…») — агентом Explore, чтобы выдача не оседала в основном контексте. Решает разработчик, но предлагаешь ты: форма опознаётся по трём условиям сразу — десятки файлов, на выходе нужен список, а не дословный текст, и где смотреть заранее неизвестно. Не выполнено одно — обычный поиск дешевле, и предлагать нечего;
  • commit, push, deploy — только по прямой команде.

Правило остановки

Поиск и сверка прекращаются, когда следующий шаг перестал менять ответ. Третий источник подряд повторяет известное, уточнение меняет формулировку, но не решение, — значит хватит. Продолжать после этого не тщательность, а работа, результат которой выбрасывается.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.