Skip to content
Apothem
Адаптеры окружений

Zed

Адаптер окружения Apothem для Zed (GA).

Поставщик: Zed Industries Имя установки: zed Статус: GA Нативная конфигурация: <project>/.rules

Установка

apothem install --harness zed --project /path/to/project

Адаптер записывает один файл инструкций Zed с областью действия проекта на основе общих правил Apothem и поверхности управления. Zed читает один файл инструкций проекта — первое совпадение из этого списка:

.rules
.cursorrules
.windsurfrules
.clinerules
.github/copilot-instructions.md
AGENT.md
AGENTS.md
CLAUDE.md
GEMINI.md

Каталога правил для каждого инструмента нет, поэтому вся поверхность Apothem попадает в плоский файл .rules в начале этого списка.

Кроме того, он записывает навыки Apothem, а также правила и шаблоны, на которые они ссылаются, в ваш домашний каталог пользователя, прежде чем затронуть проект (см. Файлы за пределами проекта).

Записываемые файлы:

  • <project>/.rules — файл инструкций.
  • ~/.agents/skills/<name>/SKILL.md для каждого навыка и каждой команды Apothem, в вашем домашнем каталоге пользователя.
  • ~/.config/apothem/rules/ и ~/.config/apothem/templates/, в вашем домашнем каталоге пользователя.

Файлы за пределами проекта

Установка также записывает навыки Apothem в ваш домашний каталог пользователя, прежде чем что-либо изменить в проекте:

ПапкаЧто Apothem туда записывает
~/.agents/skills/По одной папке с SKILL.md для каждого навыка Apothem и по одной для каждой команды Apothem (команда становится навыком с тем же именем).
~/.config/apothem/rules/, ~/.config/apothem/templates/Правила и шаблоны, на которые ссылаются навыки и файл инструкций.

Эти папки являются общими. Они не принадлежат исключительно проекту:

  • Каждый проект, в который вы устанавливаете zed, и каждая другая установка Apothem, указывающая эту папку, используют одну и ту же копию и записывают одни и те же файлы, поэтому порядок установки не имеет значения. ~/.agents/skills/ читают и несколько других инструментов; они перечислены в реестре окружений.
  • --project выбирает, какой файл инструкций записать и к какому проекту относится установка. Он не меняет место, куда попадают навыки.
  • Установка не добавляет в ваш репозиторий ни одного файла навыка или правила. Проект получает файл инструкций, а также папку данных .apothem/, которую создаёт каждая установка в проект.
  • Папки в домашнем каталоге записываются первыми. Если это не удаётся, например потому что папка на пути является ссылкой, ведущей за пределы вашего домашнего каталога (ссылка, остающаяся внутри него, разрешается), или в неё нельзя записать, установка останавливается с ошибкой до того, как в проекте что-либо изменится.
  • Папка навыка с именем навыка Apothem, которую Apothem не записывал, остаётся нетронутой, а установка выводит предупреждение с её именем. Переименуйте или переместите её, затем запустите apothem update. apothem verify завершается неудачей, пока это имя занято.
  • В сумме файлы занимают несколько мегабайт.

Установка выводит примечание с названиями папок, которые она записывает за пределами --project, а --dry-run их перечисляет.

Сопоставление профиля с нативной конфигурацией

Адаптер читает общий профиль Apothem и рендерит файл .rules проекта при каждом запуске apothem install или apothem update. Общий профиль является источником истины; для любого ранее существовавшего .rules (или локальных правок сгенерированного файла в проекте) создаётся резервная копия, прежде чем следующая синхронизация заменит содержимое, управляемое Apothem.

Заметки о совместимости

Zed называет AGENTS.md своим основным файлом инструкций и сохраняет .rules проекта как поддерживаемый файл совместимости (инструкции Zed). Поскольку Zed читает только первое совпадение, новый .rules скрывает AGENTS.md, CLAUDE.md или любой другой файл ниже в списке, на который проект уже опирается. Установка никогда не редактирует эти файлы. Когда .rules содержит только блок Apothem, а ваш текст находится в файле с более низким приоритетом, установка и обновление выводят предупреждение с именем скрытого файла; скопируйте нужные вам инструкции в .rules за пределами блока Apothem, чтобы сохранить их в Zed.

Глобальный файл инструкций ~/.config/zed/AGENTS.md и блок контекстных серверов MCP (.zed/settings.json context_servers) принадлежат оператору; Apothem их не записывает.

Zed загружает глобальные навыки только из ~/.agents/skills/, в плоской структуре с одной папкой на навык, — именно в такой структуре их записывает установка. Zed разрешает навыки, локальные для проекта, только в доверенном рабочем дереве, а его документация не связывает такое ограничение с глобальной папкой. В одном сообщении указывался предел размера каталога навыков, который Zed отправляет модели; Apothem этого не подтвердил, как и того, учитывается ли в этом пределе навык, отключающий вызов моделью. Имена и описания навыков Apothem в сумме занимают около 20 КБ. Apothem также не подтвердил, как Zed обрабатывает ключ заголовка SKILL.md, которого нет в его списке.

Проверка

apothem verify --harness zed --project /path/to/project

Команда verify подтверждает, что:

  1. Нативная конфигурация существует по ожидаемому пути.
  2. Каждая управляемая цель существует; управляемые файлы не пусты, а конфигурации JSON или YAML разбираются. Добавьте --profile PATH, чтобы дополнительно подтвердить, что установленные файлы соответствуют этому профилю.
  3. Каждая папка навыка Apothem на месте и содержит SKILL.md, какая бы установка её ни записала, и ни одна папка навыка с именем Apothem не принадлежит тому, что Apothem не записывал. Неудачная проверка называет отсутствующие или чужие папки.
  4. Процедура проверки, специфичная для адаптера, сообщает об успехе.

Обновление

apothem update --harness zed --project /path/to/project

Повторно выводит файл .rules проекта из текущего состояния общего профиля.

Обновление также перезаписывает каждую папку навыка, файлы которой отличаются от текущих. Если вы устанавливали более ранним выпуском, который не записывал навыки, обновление их добавляет.

Удаление

apothem uninstall --harness zed --project /path/to/project

Удаляет управляемый блок Apothem из нативного файла конфигурации .rules и сохраняет ваш собственный текст. Файл удаляется, только если в нём ничего не осталось. Перед изменением копия файла с отметкой времени сохраняется в ~/.apothem/backups/; резервного файла в проекте не остаётся. YAML общего профиля и движок Apothem не затрагиваются.

Удаление также удаляет папки навыков, которые оно записало в ~/.agents/skills/, а также правила и шаблоны в ~/.config/apothem/, но только когда никакая другая установка Apothem их больше не использует. Их может использовать другой проект или другой инструмент, разделяющий эту папку. В таком случае удаление сохраняет папки, выводит, какая установка их использует, и их удаляет последнее удаление. Файлы, которые вы добавили в эти папки, остаются, а папка, оставшаяся пустой, удаляется. Перед удалением каждая папка сохраняется в резервную копию в ~/.apothem/backups/.

Шлюз соответствия

python -m apothem.conformity.gate --all .

Устранение неполадок

СимптомИсправление
Файл конфигурации не найденПовторно запустите apothem install --harness zed --project /path/to/project
Проверка не пройденаЗапустите apothem update --harness zed --project /path/to/project, затем проверьте снова
apothem verify называет отсутствующую папку навыкаЗапустите apothem install --harness zed --project /path/to/project; это восстановит папку
Установка или обновление предупреждает, что пропустило папку навыкаПапка с именем навыка Apothem уже существует в папке навыков, и Apothem её не записывал. Переименуйте или переместите её, затем запустите apothem update
Установка останавливается, не изменив проектЗапись в вашем домашнем каталоге не удалась. Прочитайте ошибку, исправьте названную в ней папку (ссылку, ведущую за пределы вашего домашнего каталога, файл на месте папки или папку только для чтения) и установите снова
Неожиданное содержимое конфигурацииПроверьте ~/.config/apothem/profile.yaml или --profile PATH, затем повторно запустите apothem update --harness zed --project /path/to/project

Параметры конфигурации

ФлагПо умолчаниюОписание
--dry-runfalseПредпросмотр установки без записи файлов.

См. также

On this page