Проекты
Проект — это папка с кодом на вашем компьютере. Git-репозиторий не обязателен: локальную папку тоже можно добавить.
Раздел Проекты отвечает на вопросы, на которые Хранилище и Привязки сами по себе не отвечают:
- что это за код — из чего проект состоит, на чём написан, как его поднять;
- что установлено специально для него и в какую именно папку;
- что читает агент до всякого скилла —
CLAUDE.mdиAGENTS.md; - сколько контекста каждый AI-инструмент получит в этой папке и по какой цене в токенах;
- почему конкретный скилл вообще доступен агенту здесь;
- совпадает ли ваша настройка с тем, о чём договорилась команда;
- что изменилось с тех пор, как вы смотрели в прошлый раз;
- где шла работа — в каких папках и каким инструментом, если доступна поддерживаемая локальная история;
- чем один проект отличается от другого — когда здесь агент справляется, а в соседнем репозитории нет.
Добавление папки ничего не устанавливает, не создаёт в проекте файлов, не делает Git-коммит и не отправляет данные наружу. Это просто запись «я работаю здесь».
Три формы проекта
onplate различает их сам и говорит об этом в подзаголовке блока «Что это за проект».
| Форма | Что это | Чем отличается на экране |
|---|---|---|
| Одна папка с кодом | обычный репозиторий | одна часть, один профиль |
| Монорепозиторий | один .git, внутри backend, frontend, … | части перечислены, ветка одна на всех, профиль один |
| Рабочая папка | пустая папка, в которую склонировано несколько репозиториев | у каждой части своя ветка и свой профиль |
Есть и четвёртый ответ: «Похоже на папку с проектами, а не на проект». Так onplate отвечает, когда внутри лежат независимые репозитории: один профиль и одна карточка описывали бы сразу всё, поэтому он предлагает добавить их по отдельности.
Где искать
Проекты живут в боковой панели отдельной группой «Проекты» — над «Управлением». В группе перечислены сами папки, а не один пункт меню: щёлкаете по проекту и сразу попадаете на его страницу. Если проектов больше десяти, в группе появляется поиск по названию, пути и Git-адресу.
Первым пунктом группы стоят «Все проекты» — это «Обзор проектов», экран про все папки сразу. Ниже — «Избранные», затем недавние (разбитые по вашим группам, если вы их завели) и свёрнутый «Архив».
Рядом с проектом стоят до двух счётчиков: непросмотренные изменения и то, что требует внимания — неприменённые записи профиля, локальное вне профиля, ошибки, пропавшая папка. Так видно, куда заглянуть, не открывая каждый.
Быстрый старт
- Откройте группу Проекты в боковой панели.
- Нажмите Добавить на странице «Проекты».
- Выберите папку из предложенных или укажите другую. В предложениях — те папки, где вы уже работали: onplate нашёл их в настройках ваших AI, наружу при этом ничего не отправлялось.
- Выберите добавленный проект в боковой панели.
- Останьтесь на вкладке Обзор — это первое, что onplate может рассказать о папке, ещё до всякой настройки.
Обзор проектов
Экран «Все проекты» отвечает на вопросы, которые не помещаются внутрь одной папки: какие проекты требуют внимания, что делать с длинным списком и как выполнить одну операцию сразу над несколькими репозиториями.
Фильтры вверху: Активные, Нужно внимание, Архив, Все. Проекты можно разложить по группам и пометить тегами — и то и другое остаётся на этом компьютере и в репозиторий не уезжает.
Одна операция сразу над несколькими проектами
Отметьте проекты галочками — появится панель действий:
| Действие | Что делает |
|---|---|
| Поставить… | ставит выбранные ресурсы из хранилища в корень каждого отмеченного проекта |
| Снять… | удаляет с диска то, что onplate ставил в корни отмеченных проектов |
| Применить профили | догоняет в каждом проекте его собственный .onplate/profile.json |
| Группа и теги, В избранное, В архив | наводит порядок в списке, диска не касается |
Три вещи здесь устроены иначе, чем в диалоге одного проекта, и это осознанно.
Только корень. Часть внутри проекта (backend, frontend) у каждого своя, и
«поставь в frontend всем семи» — вопрос без ответа. Для папки внутри проекта
есть диалог этого проекта.
Никаких групп «здесь / глобально / хранилище». На несколько папок сразу их не существует. Вместо них у строки счёт «в скольких из выбранных уже стоит», а сортировка ставит недостающее наверх: экран открывают, чтобы дополнить.
«Применить профили» — не раскатка одного на всех. Каждый проект приводится к своему профилю из своего репозитория. Общего плана нет: это способ догнать то, о чём уже договорились в каждом репозитории по отдельности.
Снятие спрашивает подтверждение и называет проекты поимённо: файлы удаляются с диска, записи в хранилище onplate остаются.
Сравнить два проекта
Отметьте ровно два проекта — в панели появится «Сравнить». Это ответ на самый частый вопрос при отладке AI-контекста: «почему здесь агент справляется, а в соседнем репозитории нет».
В шапке — обе стороны: сколько ресурсов, сколько файлов инструкций, сколько токенов всегда в контексте и сколько пунктов требуют внимания. Ниже — построчное сравнение ресурсов и файлов инструкций. По умолчанию показаны только различия; совпадения раскрываются одной кнопкой.
Строка — это вид плюс имя, а не установка: у одного скилла их столько, в скольких AI он стоит, и человек спрашивает «есть ли он там», а не «сколько раз». Из нескольких установок берётся худший статус — «где-то сломано» и есть ответ.
Различий четыре вида, и каждое названо словами:
- стоит в разных AI-инструментах;
- разные версии;
- с установкой не всё в порядке на одной из сторон;
- заметно разный вес в контексте — порог 200 токенов: два живых
CLAUDE.mdпочти никогда не совпадают байт в байт, и отмечать различием десяток токенов значит топить экран в строках, которые ничего не объясняют.
Инструкции сравниваются по пути от корня проекта: абсолютные пути у двух проектов разные по определению.
Общие ресурсы в сравнение не входят — они одинаковы у любых двух проектов на этой машине, и строка «есть у обоих» про них была бы шумом. Поэтому и токены посчитаны только по проектной области и инструкциям; на экране это сказано прямо.
Где шла работа
Нижний блок экрана раскладывает локальные журналы AI-инструментов по всем запомненным проектам сразу. Период — 7 дней, 30 дней или всё время.
У каждого проекта: сколько сессий и ходов, разбивка по инструментам, последние пять сессий по названию и дате. Проекты, в которых за период не работали, не выбрасываются, а собираются в свёрнутую строку — «не трогали» это тоже ответ.
Отдельно названы сессии, которые шли в папках, которых onplate не знает: обычно такие папки стоит добавить проектами.
Сумма по проектам может выйти больше общего числа: сессия, ходившая по двум запомненным корням, честно числится у обоих, и прятать её у одного было бы неправдой.
Журналы читаются локально, содержимое диалогов не сохраняется.
Шапка проекта
Шапка не меняется при переходе между вкладками и отвечает на вопрос «где я»:
- название папки, Git-ветка и AI-инструменты, связанные с проектными установками;
- строка «Зачем» — что вообще показывает этот раздел;
- полный путь и Git-адрес: длинные значения сокращаются, полное видно в подсказке или копируется отдельной кнопкой;
- время снимка проекта — и пометка, если папка изменилась уже после него.
Справа от вкладок — действия, доступные с любой из них:
- «Как открыть проект» — открыть папку в редакторе (в текущем или новом окне), в терминале, в Finder или начать сессию в установленном AI-инструменте. Выбранный способ запоминается и становится основной кнопкой для этого проекта; ненайденные приложения помечены «не найден», а не скрыты.
- перечитать весь проект;
- Поставить в проект;
- меню с избранным и архивом;
- Забыть.
Счётчики ресурсов в шапке не живут — они относятся к одной вкладке и стоят на ней, чтобы число и строки, которые оно посчитало, были рядом.
Четыре вкладки
Страница проекта разделена на вкладки, потому что отвечает на четыре разных вопроса. Выбранная вкладка запоминается для каждого проекта отдельно: вы вернётесь туда же, где были, в том числе после перезапуска приложения.
| Вкладка | Отвечает на вопрос | Что внутри |
|---|---|---|
| Обзор | всё ли в порядке и что это за код | AI-настройка, контекст каждого инструмента, изменения, состав и стек, Git, профиль |
| Ресурсы | что получит AI и откуда это взялось | счётчики, поиск и фильтры, три группы по происхождению, карта связей |
| Инструкции | что агент прочитает до скиллов | CLAUDE.md, AGENTS.md, их разбор и правка |
| Сессии | где и чем работали, и что из этого вызывалось | локальные сессии агентов и использование ресурсов |
Вкладки переключаются и с клавиатуры: стрелки, Home и End внутри ряда.
Обзор
Разделы, которым нечего сказать, свёрнуты в строку со сводкой: «В отслеживаемом состоянии проекта нет изменений», «всё совпадает с профилем», «Git не найден». Ответ виден не открывая, а экран не превращается в анкету из одинаковых пустых карточек. Раздел с ошибкой или ещё загружающийся не сворачивается никогда — про него как раз есть что сказать.
AI-настройка проекта
Верхний блок собирает всё, что мешает считать настройку согласованной, и к каждой проблеме даёт конкретное следующее действие — «Проверить снова», «Открыть папку», «Создать профиль», «Разобрать профиль», «Проверить локальное», «Проверить использование».
| Состояние | Что значит |
|---|---|
| Синхронизировано | папка, профиль и установки в AI согласованы |
| Нужны действия | есть что разобрать |
| Заблокирован | папка недоступна, профиль не читается или найден конфликт |
Это список задач, а не индикатор «всё хорошо / всё плохо». «Нужны действия» — нормальное состояние живого проекта, а не ошибка. Когда задач нет, блок не показывает пустой список: он говорит, что папка, профиль и установки согласованы.
Отдельная строка появляется, когда ресурс не использовался 30 дней. Она называет и цену бездействия: сколько токенов постоянного контекста этот набор занимает в каждом запуске агента. Кнопка рядом ведёт на вкладку «Сессии», где видно, откуда взялось это число.
Ниже задач — необязательные советы, и каждый подтверждён данными этого проекта, а не общими соображениями: закрепить за проектом общий ресурс, вызовы которого здесь зафиксированы; разобраться с ресурсом, который вызывался, но среди установок не находится; написать файл инструкций, если ресурсы есть, а правил для них нет.
Сколько контекста получит каждый AI
Блок отвечает на вопрос «что реально доедет до модели в этой папке» — отдельно для каждого AI-инструмента, между ними переключают вкладки.
Внутри выбранного инструмента три группы: инструкции, ресурсы проекта и
общие ресурсы. У каждой строки — источник и цена в токенах, у файлов
инструкций — сколько файлов утащено @-импортами и сколько ссылок сломано.
Имя файла инструкций нажимается и открывает сам файл — здесь же, не уводя с
«Обзора». Открывается тот же просмотр, что и на вкладке «Инструкции»: текст,
упоминания, @-импорты и правка.
Два числа в шапке инструмента разведены намеренно: всегда в контексте — то, что тратится на каждый запрос, и максимум при активации — то, что добавится, только если ресурс сработает. Складывать их в одно число значило бы пугать суммой, которой не бывает.
Если у проекта есть профиль, каждая строка сравнивается с ним: зелёное «в профиле», жёлтое «только локально» у проектного ресурса и «не закреплён в профиле» у общего. Над списком — сводка «проектных в профиле · вне профиля · требуют действия». Общие ресурсы в неё не входят: профиль проекта их не требует по устройству, а не по недосмотру.
Изменения проекта
Блок отвечает на вопрос «что здесь произошло с тех пор, как я смотрел». В счёт идут инструкции, ресурсы, профиль, Git, части проекта и локальные AI-сессии.
Точку отсчёта вы ставите сами кнопкой «Начать отслеживание» — само открытие страницы будущие изменения просмотренными не помечает. Дальше каждое изменение названо: что это (инструкция, скилл, MCP-сервер, субагент, профиль, ветка, часть проекта, AI-сессия), добавлено оно, изменено или удалено, к какой области относится и во сколько токенов обошлось. Кнопка «Считать просмотренными» охватывает весь список, а не только показанные строки.
Число непросмотренных изменений видно в боковой панели рядом с проектом — этот счётчик и приводит сюда.
Что это за проект
Блок отвечает на два вопроса сразу: из чего проект состоит и на чём он написан.
Каждая часть — строка: путь от корня, ветка (если у части свой репозиторий), факты о стеке и команды запуска. Ниже — то, что в этой части работает.
Факты показываются с уликой. У каждого чипа — язык, фреймворк, образ, сервис, порт — в подсказке написано, из какого файла и с какой строки он взят. Это не педантичность: человек, поймавший onplate на выдуманном факте о своём коде, справедливо перестанет верить и оценкам безопасности. По той же причине здесь нет строк «наверное»: чего onplate не знает, того в блоке просто нет — а если не нашлось ничего, он так и пишет.
Переменные окружения не перечисляются поимённо — их бывают десятки. Показывается счётчик, улика на нём.
Как это запустить. Команды собираются из docker-compose.yml, Makefile,
скриптов пакета и только потом из README — в этом порядке надёжности. Каждая
помечена назначением (поднять, тесты, подготовить) и файлом, откуда
взята.
Расхождения не разрешаются за вас: если Makefile говорит одно, а README
другое, показаны обе команды. Часто это и есть самый полезный факт — README
устарел.
Команду можно скопировать. Кнопки «выполнить» здесь нет и не будет. onplate
не запускает даже установку собственного раннера: curl … | sh — это исполнение
скачанного кода, и запускать чужое, помечая такое же у других своим сканером,
было бы двоемыслием. Если команда выглядит опасной, рядом стоит пометка
«сканер насторожился» или «сканер против».
Что работает в части. Под фактами — скиллы и субагенты, найденные в этой папке, с ответом на три вопроса:
- откуда взялись — «поставил onplate» или «лежит здесь» (приехало вместе с кодом);
- работали ли — число вызовов за 30 дней или «ни разу за 30 дней»;
- упомянуты ли в
CLAUDE.mdилиAGENTS.md.
«Ни разу за 30 дней» рядом со скиллом, написанным специально под этот код, — самое полезное, что здесь можно показать: либо описание не цепляет агента, либо скилл мёртвый.
Чужой скилл можно принять в хранилище — onplate скопирует его к себе, чтобы им можно было пользоваться как обычным. Файлы в проекте останутся на месте: меняется только то, что onplate о них знает.
Перечитывание. Состав проекта пересчитывается сам: склонировали рядом ещё
один репозиторий, переключили ветку, поправили docker-compose.yml — блок
меняется без единого нажатия. Кнопка «Перечитать проект» остаётся на случай,
когда ждать не хочется.
Git-контекст
Локальное состояние репозитория — то, что относится к AI-настройке и к профилю: сколько не закоммичено (или «всё закоммичено»), есть ли конфликты, насколько ветка впереди или позади, изменён ли профиль локально, связанные worktree и история профиля в коммитах.
onplate не делает fetch и репозиторий не меняет. Если Git на машине не найден, блок так и говорит — и сворачивается в одну строку, потому что сказать ему больше нечего.
Профиль проекта и эта машина
Блок намеренно разделён на два направления, потому что это два разных решения.
Установить настройки из профиля — применить у себя то, о чём договорилась команда. Перед изменением файлов onplate показывает план: что поставит, что обновит, где конфликт. До подтверждения плана не меняется ничего. Если ставить нечего, блок так и говорит: на этой машине уже установлено всё из профиля.
Добавить локальные настройки в профиль — предложить команде то, что у вас уже работает. Обычный первый шаг: личная настройка становится командной. Пока профиля нет, кнопка называется Создать профиль.
Профили частей. В рабочей папке с несколькими клонами профиль не один.
Вместо этого блока появляются «Профили частей»: у каждого репозитория свой
.onplate/profile.json, потому что коммитится он туда же, где лежит код.
onplate предлагает писать профиль только туда, откуда его можно отправить в
pull request, — папка без своего репозитория для этого не место, и он объясняет,
почему не предлагает. В монорепозитории профиль по-прежнему один, но его записи
умеют называть части: скилл миграций уедет в backend, а не в корень.
Подробности обоих направлений — в профиле проекта.
Ресурсы
Что получит AI в этой папке
Список — это всё, что реально доедет до AI: и установленное через onplate, и приехавшее вместе с кодом, и общее для инструмента. Один и тот же ресурс, доступный нескольким AI, — одна строка.
Разложено по происхождению, тремя группами:
| Группа | Что это |
|---|---|
| Поставлено через onplate | записи, которые onplate знает: их можно обновить, заменить и убрать |
| Приехало вместе с кодом | лежит внутри папки проекта, но поставлено не через onplate; AI читает это точно так же |
| Общее для AI-инструмента | живёт в домашнем каталоге инструмента и доступно во всех проектах, открытых через него |
Средняя группа раньше не показывалась нигде, хотя на обычном проекте она и есть почти всё содержимое. Чужую находку из неё можно взять под управление — файл останется на месте, изменится только то, что onplate о нём знает.
Разница между двумя областями установки — главное, что стоит понять в этом разделе:
| Ресурс проекта | Общий ресурс | |
|---|---|---|
| Где виден | только в этой папке | во всех проектах выбранного AI |
| Кто решает | вы или профиль проекта | вы, один раз |
| Едет ли в репозиторий | да, если включён в профиль | нет, пока вы явно не выберете |
Скилл для проверки Go-кода имеет смысл поставить только в репозиторий backend-сервиса. Скилл про вашу личную манеру писать коммиты — глобально: он нужен вам везде и команде не нужен вовсе.
Счётчики, поиск и фильтры
Наверху вкладки — числа по видам: скиллы, MCP, субагенты, остальное и внимание. Каждое число нажимается и включает фильтр по этому виду: счётчик без выхода на строки, которые он посчитал, вопрос «а какие именно?» не закрывает, а задаёт. Рядом — поиск по имени и папке.
Считается всё, что AI получит здесь, — все три происхождения сразу. Ряд фильтров показывает только те виды, которые в проекте есть; «внимание» появляется, только когда есть чему требовать внимания.
Если расчёт не удался, счётчики молчат: «0 скиллов» — такой же ответ по существу, как пустой список, и такая же неправда при сбое.
Поставить в проект
Кнопка в шапке (и в каждой части — «поставить сюда») открывает установку из хранилища прямо сюда. Порядок вопросов тот же, в котором думает человек: «в этом проекте агенту нужны миграции и postgres», а не «в какой проект поставить этот скилл».
Куда. Части проекта перечислены кнопками, рядом с каждой — сколько раз в ней запускали агента. Есть корень и другая папка… для подпапки, которую onplate частью не считает.
Кому. AI-инструменты, найденные в этой папке. Если рядом уже есть папка
.agents, она появляется в списке отдельной строкой: её читают Codex и Cursor —
одна копия вместо двух. Claude Code её не читает, и onplate называет её папкой, а
не инструментом, именно поэтому. Сама onplate такую папку не заводит: предлагать
место, которого нет, значит звать создавать его на пустом месте.
Про Cursor есть отдельное предупреждение, и оно снято замером, а не взято из
документации: Cursor читает чужие каталоги проекта — .claude, .codex,
.agents — раньше собственного .cursor. Если скилл с таким именем уже
лежит в одном из них, копия в .cursor окажется на диске, но модели не
достанется. onplate говорит об этом до установки, а не после.
Что. Общий список скиллов, MCP-серверов и субагентов тремя группами: уже
стоит здесь, стоит глобально — агент видит это и здесь, всё остальное. У
строк подписано, где ресурс уже стоит («в этом проекте стоит в: backend») и
куда его вообще можно поставить, если инструмент такого места внутри проекта не
имеет.
До установки видно две вещи: что появится на диске (полный путь каждой записи) и сколько токенов это добавит в контекст каждого запуска агента. Ничего не пишется, пока вы не нажмёте «Поставить».
Что может не поставиться и почему — onplate называет прямо: у AI нет такого места внутри проекта, сканер против (нужно подтверждение), в каталоге лежат чужие файлы (тогда ставьте из «Хранилища» — там спрашивают, что с ними делать).
Внизу — «Записать в профиль проекта»: то же самое получит команда.
Предупреждение о каталоге запуска. Иногда рядом с выбранной папкой появляется
предупреждение: агента запускают не отсюда, а из другой части проекта. Это важно,
потому что скиллы читаются относительно каталога запуска: положенное в
frontend не подхватится, если агент стартует в backend.
Предупреждение показывается только когда есть с чем сравнить — какая-то часть проекта за 30 дней срабатывания набрала, а выбранная нет. Оно называет ту часть и предлагает перейти в неё одним нажатием. Если истории запусков нет вовсе, onplate молчит: сказать было бы нечего.
Ставить в «тихую» папку — законный выбор: её могли готовить заранее. Предупреждение говорит лишь, что прочитается скилл при запуске именно из неё.
Как ресурсы подключены к проекту
Нижний блок вкладки отвечает на вопрос, которого нет больше нигде: почему этот скилл вообще доступен агенту здесь. Причин четыре, и они перечислены явно:
- установлен в папку проекта — лежит внутри этой папки;
- доступен через AI — общий ресурс, видимый во всех проектах инструмента;
- назван в инструкции —
CLAUDE.mdупоминает его по имени или тащит@-импортом; - пришёл в составе пакета — устанавливался не отдельно, а вместе с другими.
Сводка над списком называет числа: сколько файлов инструкций проверено, сколько ресурсов проектных и общих, сколько прямых ссылок и сколько из них сломано. Сломанная ссылка — то самое упоминание в пустоту, только увиденное со стороны ресурса, а не со стороны файла.
Что это не значит. Это карта доступности и объявленных связей, а не журнал вызовов. Она не утверждает, что один ресурс запускает другой. Фактические вызовы считаются в одном месте — в «Использовании ресурсов» на вкладке «Сессии», и блок отсылает туда одной строкой с числом, а не повторяет ту же таблицу под другим заголовком.
Если файлы инструкций прочитать не удалось, onplate называет их число, а не делает вид, что связей нет.
Инструкции
CLAUDE.md и AGENTS.md — третье место, где живёт контекст агента, наравне со
скиллами и MCP. Агент читает их раньше любого скилла. onplate находит эти
файлы и в корне проекта, и в частях, и показывает у каждого: сколько ресурсов
упомянуто, сколько ссылок ведёт в пустоту, сколько файлов утащено в контекст
@-импортами и сколько блоков вписал сам onplate при установке пакетов.
Файл открывается тут же — в режиме просмотра или исходного текста. Рядом с текстом разбор:
| Что видно | Зачем |
|---|---|
| упомянутые скиллы и субагенты с их состоянием | «лежит в проекте», «лежит в backend», «глобальный», «есть в каталоге, но не установлен», «не нашёлся нигде» |
| срабатывания каждого упомянутого | упомянут в инструкции и ни разу не сработал — повод переписать описание |
@-импорты и их размер | эти файлы тратят токены каждую сессию, а видно их только здесь |
| блоки onplate | тот кусок текста написали не вы, а установка пакета |
Файл можно править прямо здесь — кнопка «Править», затем «Сохранить». Правка идёт в тот самый файл проекта, который читает агент; копии onplate не заводит. Если файлов инструкций ещё нет, кнопка «Создать файл инструкций» предложит имя и скажет, какие инструменты его читают. Файл появится в проекте только после сохранения.
Самая тихая поломка, ради которой всё это и сделано: инструкция ссылается на скилл, которого нет. Агент прочитает, не найдёт и придумает своё. Такие упоминания подсвечены и в тексте, и в списке.
Пометка «личный» означает файл вроде CLAUDE.local.md: обычно он в
.gitignore, и у коллеги по репозиторию его не будет.
Пустая вкладка — нормальное состояние, и onplate так и пишет: файлов инструкций может не быть вовсе, ресурсы проекта и общие ресурсы от этого работать не перестанут.
onplate ничего из этого не хранит: файл читается с диска на каждый показ. Копия стала бы вторым источником правды о тексте, который вы правите в своём редакторе каждый день.
Сессии
Сессии проекта
Локальные сессии coding-агентов, рабочая папка которых относится к этому проекту. Поддерживаемые инструменты появляются сами, когда доступна их локальная история.
У сессии видно название, инструмент, дату, модель, число ходов и какие ресурсы
в ней подтверждённо вызывались — с указанием, чем именно вызов подтверждён
(записанный Claude Code вызов Skill или Task, открытый Codex файл SKILL.md из
известного каталога скилла, записанный OpenCode вызов skill).
Что с сессией можно сделать:
- Продолжить — открыть её в том же CLI. Если CLI на машине не найден, onplate так и пишет, а не прячет кнопку;
- начать новую сессию в любом установленном инструменте прямо из проекта;
- связать с проектом сессию, которая началась из другой папки, или, наоборот, сказать, что сессия к проекту не относится. Оба решения хранятся только на этой машине.
Список фильтруется по инструменту, периоду (7 дней, 30 дней, всё время) и поиском по названию.
Сессия связывается с проектом автоматически, только когда её сохранённая рабочая папка — этот проект или одна из его частей; onplate говорит по каждой, как именно она связана. Читаются названия, идентификаторы, пути, даты, модели и счётчики — без запросов и ответов.
Использование ресурсов
Второй блок вкладки отвечает на вопрос «что из установленного действительно работало». onplate читает локальные журналы за последние 30 дней и показывает: число вызовов скиллов и субагентов, активные ресурсы, последний вызов и в каком инструменте. Рядом — стоимость профиля в токенах: во сколько обходится набор при каждом запросе.
Три честных ограничения:
- текст диалогов не сохраняется — считается только по метаданным;
- вызовы MCP не додумываются: если источник не позволяет определить их надёжно, статистика их не показывает;
- ноль активности не значит «не установлено». Если поддерживаемых журналов не нашлось, onplate скажет об этом отдельным сообщением, а не покажет ноль. Если часть истории прочитать не удалось, он и это отметит.
Это единственное место, где считаются фактические вызовы. Карта связей на вкладке «Ресурсы» отвечает на другой вопрос — что агенту доступно и почему.
Пример командной работы
Алиса настроила проект локально: поставила скилл go-review, MCP-сервер базы
данных и субагента для тестов. Затем добавила их в профиль проекта и отправила
каталог .onplate обычным pull request.
Боб получил изменения, открыл тот же репозиторий в onplate и на вкладке «Обзор» нажал «Посмотреть, что установить». До применения он увидел точный список установок и отдельно ввёл свои секреты для MCP-сервера.
В результате у обоих одинаковая воспроизводимая настройка проекта, а личные общие скиллы остались личными.
Если что-то пошло не так
Папка проекта недоступна. Её переместили, переименовали или отключили внешний диск. Верните папку по прежнему пути либо забудьте запись и добавьте проект заново по новому пути.
Профиль не читается. Файл повреждён, содержит неподдерживаемые значения или создан более новой версией onplate. Проверьте изменения файла в Git; если дело в версии — сначала обновите onplate.
В профиле есть неприменённые изменения. Откройте «Обзор», нажмите «Посмотреть, что установить», проверьте план и примените нужные записи. До подтверждения плана ничего не меняется. В рабочей папке с несколькими клонами та же кнопка называется «Подготовить» и стоит у каждой части отдельно.
Локальный ресурс не попал в профиль. Нажмите «Проверить локальное», отметьте ресурс и запишите обновлённый профиль.
Общий ресурс не появился. Он не установлен глобально ни в один AI. Откройте Хранилище, установите его для всех проектов нужного инструмента и обновите страницу проекта.
Про проект ничего не рассказано. Знакомых признаков в папке не нашлось. onplate называет стек только тогда, когда может показать файл и строку, откуда он это взял; догадок здесь не бывает.
Скилл не поставился: «в каталоге есть чужие файлы». В папке назначения уже лежит что-то постороннее. Поставьте этот скилл из Хранилища — там спрашивают, что делать с такими файлами.
Связей нет, хотя ресурсы установлены. Проверьте, тот ли это проект: карта связей строится по папке проекта и по файлам инструкций в ней. Если файлы инструкций не читаются, onplate скажет, сколько именно не прочитал.
Сессий нет, хотя работа шла. Сессия связывается с проектом по сохранённой рабочей папке. Если агент стартовал из другой папки, свяжите сессию вручную в списке «Другие локальные сессии» — или посмотрите «Где шла работа» на «Обзоре проектов»: сессии в незнакомых папках названы там отдельно.
onplate предлагает добавить папки по отдельности. Вы добавили каталог, в котором лежат независимые репозитории. Это не проект, а полка с проектами: один профиль и одна карточка описывали бы сразу всё.
Частые вопросы
Куда ставить скилл в монорепозитории? В ту часть, из которой вы запускаете агента: скиллы читаются относительно каталога запуска. onplate показывает срабатывания рядом с каждой частью и предупредит, если выбранная папка не та.
Что считают счётчики на вкладке «Ресурсы»? Всё, что AI получит в этой папке: установки onplate, приехавшее вместе с кодом и общее для инструмента. Ниже счётчиков эти три происхождения разделены группами, так что видно, откуда взялось каждое число.
Чем «Использование ресурсов» отличается от карты связей? Использование — журнал того, что действительно вызывалось. Карта связей — перечень того, что агенту доступно и почему. Ресурс может быть подключён тремя способами и ни разу не сработать; именно это сочетание и стоит искать.
Можно ли поставить скилл сразу в несколько проектов? Да: «Все проекты» → отметить нужные → «Поставить…». Ресурсы лягут в корень каждого; папку внутри проекта выбирают в диалоге самого проекта.
Почему в сравнении проектов нет общих ресурсов? Они одинаковы у любых двух проектов на этой машине. Строка «есть у обоих» ничего не объясняет, поэтому в сравнение и в его счёт токенов входят только проектная область и инструкции.
Запоминается ли выбранная вкладка? Да, отдельно для каждого проекта, и переживает перезапуск приложения.
Запускает ли onplate команды из README? Нет. Их можно только скопировать.
Хранит ли onplate мой CLAUDE.md? Нет. Файл читается с диска при каждом
показе, копии не остаётся. Правка со вкладки «Инструкции» пишет в тот же файл
проекта.
Нужно ли создавать профиль для личного проекта? Нет. Можно просто добавить папку и пользоваться проектными установками. Профиль нужен, когда настройку важно воспроизводить, проверять через Git или передавать другим людям.
Чем профиль проекта отличается от профиля команды? Профиль проекта отвечает на вопрос «что нужно этому коду» и лежит рядом с кодом. Профиль команды описывает роль человека в компании и живёт в отдельном репозитории-реестре.
Попадут ли общие ресурсы в репозиторий? Нет, пока вы явно не выберете такой ресурс при создании или обновлении профиля.
Делает ли onplate Git-коммит? Нет. После записи профиля вы сами смотрите diff, коммитите и пушите. Git-контекст на «Обзоре» тоже только читает: fetch onplate не делает.
Что делает «Забыть»? Удаляет проект из списка onplate и локальные решения по профилю. Папка, профиль и установки остаются на месте.