# Как ассистенты получают навыки и инструкции

> Что memex сообщает ассистенту при подключении, какими способами отдаёт навыки, как изменение доходит до подключения и какие указания приходят вместе с заметками live-state и профилем.

Страница: https://docs.memex.tools/ru/skills-over-mcp

## При подключении

Когда ассистент подключается, memex первым делом передаёт ему короткий текст с инструкциями. В нём сказано, что описания и теги ассистент пишет сам; что `list_skills` возвращает одобренные тобой наборы инструкций, а `get_skill` загружает один из них; что в разделе заметки *Sources* — то, что нужно перечитать, прежде чем действовать по ней, и туда же надо записать, к чему ассистент обращался; что всё, что он пишет, проходит проверку; и что из наведения порядка ему можно, а что нельзя в его роли. Для агентов и кураторов текст разный.

## Способы получить навык

Навыки доступны как **инструменты** (`list_skills` и `get_skill`), **ресурсы** (`memex://skill/<slug>`) и **промпты**, которые некоторые клиенты показывают как команды. На странице навыка один переключатель: когда навык включён, открыты все эти способы. В API под ним для совместимости остались отдельные флаги для каждого способа.

Шесть навыков встроены в memex и идут в списке первыми: `memex-recall` — правила чтения и записи в этой базе знаний; `memex-curation` — как проводить уборку; `memex-profile` — как найти, прочитать и поддерживать заметку-профиль; `memex-docs` — эта документация; `memex-skills` — как написать, проверить и улучшить навык; `memex-writing` — как написать заметку (пока он включён). За ними идут твои включённые навыки, сначала новые. Четыре встроенных навыка есть на странице «Навыки» в списке **Системные навыки**: их можно разблокировать — тогда это будет твоя заметка, которую ассистенты получают под тем же именем. `memex-docs` и `memex-writing` там не показаны. От настроек зависит только `memex-writing`, и только через выбранные варианты.

## Кто какие навыки получает

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

## Как изменение доходит до ассистента

Memex общается по схеме «один запрос — один ответ», без потоковой передачи, поэтому не может сам отправить ассистенту изменение посреди разговора. Вместо этого список доходит до ассистента тремя путями.

1. При подключении инструкции `initialize` точно перечисляют, что получает это подключение.
2. Тот же список есть в описании инструмента `list_skills`, поэтому клиент, который держит описания инструментов в контексте всю сессию, знает его, ничего не вызывая.
3. Каждый результат инструмента, даже неудачной загрузки, содержит короткое значение `skills_version`. Если оно отличается от того, что это подключение видело в последний раз (в том числе из-за изменённого описания), в том же результате приходит и `skills_changed` — список доступных навыков одной строкой. Так что ассистент узнаёт об изменении при первом же вызове после него, не раньше.

## memex-writing

`memex-writing` доходит до ассистентов так же. Пока он включён, текст `initialize` содержит короткий абзац *Writing notes*: загрузить навык, прежде чем писать или менять заметку, и помнить, что твои просьбы важнее. `memex-recall` говорит то же одной строкой, и этим же заканчивается описание `propose`. Первый результат инструмента после того, как ты поменяешь вариант или переключатель, один раз содержит `personalization_changed` — указание загрузить навык заново или, если он выключен, сообщение, что он больше не действует. Когда навык выключен, ни одна из этих подсказок не отправляется.

## live-state

`live-state` работает только через `get`: в ответе с заметкой, у которой есть этот тег, всегда есть указание исправить заметку, если работа самого ассистента изменила систему, которую она описывает. То есть предложить патч к фразам, которые стали неверными, а если не выходит — оставить комментарий о том, что изменилось.

## user-profile

`user-profile` работает при подключении и через `get`. В инструкциях, которые получает каждое подключение, названа твоя заметка-профиль (или сказано, что её нет и как поискать снова), а в ответе с самой заметкой есть указание, как её читать: она важнее того, что ассистент помнит о тебе; незаполненный раздел значит «неизвестно»; границы из неё действуют для всех заметок, которые пишутся здесь; а изменение предлагается небольшим патчем и только тогда, когда из разговора видно, что строка перестала быть верной.

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

## По теме

- [Как работают навыки](https://docs.memex.tools/ru/how-skills-work): Как ассистенты получают навыки, страница «Навыки» и страница навыка, встроенные навыки, профиль и три тега, которые читает memex.
- [Навыки](https://docs.memex.tools/ru/skills): Заметки с инструкциями, которые ассистент загружает под подходящую задачу, и как их создавать и настраивать.
- [Инструменты MCP: справочник](https://docs.memex.tools/ru/mcp-tools): Как memex работает по MCP и что делает, принимает и возвращает каждый его инструмент.
- [Профиль](https://docs.memex.tools/ru/profile): Заметка о тебе, которую читает каждый подключённый ассистент, — чтобы не рассказывать о себе в каждом чате.
