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

Kimi Code

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

Поставщик: Moonshot Имя установки: kimi-code Статус: GA Нативная конфигурация: <project>/AGENTS.md, <project>/.kimi-code/skills/, <project>/.kimi-code/agents/ и <project>/.kimi-code/.apothem/support/

Установка

apothem install --harness kimi-code --project /path/to/project

Адаптер записывает общую поверхность управления Apothem в AGENTS.md в корне проекта как управляемый блок, ограниченный маркерами-разделителями (текст оператора за пределами маркеров сохраняется). Он устанавливает навыки и команды, обёрнутые как навыки, в нативный каталог навыков проекта Kimi Code, <project>/.kimi-code/skills/, а помощников Apothem — как субагентов Kimi Code в <project>/.kimi-code/agents/ (см. Субагенты). Остальные группы остаются в принадлежащем Apothem поддереве поддержки <project>/.kimi-code/.apothem/support/. Проектный AGENTS.md читают многие инструменты для написания кода помимо Kimi Code, поэтому блок записывается как руководство для всего проекта, которое не называет своим читателем ни один конкретный инструмент.

Kimi Code читает файл инструкций AGENTS.md в корне проекта, следуя универсальному соглашению AGENTS.md, а конфигурация проекта размещается в <project>/.kimi-code/. Kimi Code считает корнем проекта ближайший каталог, содержащий .git, выполняя поиск вверх от рабочего каталога, поэтому передайте корень репозитория как --project. Поверхность <project>/.kimi-code/mcp.json принадлежит оператору; Apothem называет её, но не создаёт в ней записей.

Записываемые файлы: <project>/AGENTS.md (управляемый блок), навыки и команды (в виде навыков) в <project>/.kimi-code/skills/, по одному <project>/.kimi-code/agents/<name>.md для каждого помощника Apothem, а также группы хуков, правил и шаблонов в <project>/.kimi-code/.apothem/support/.

Субагенты

Kimi Code читает субагента из файла Markdown в .kimi-code/agents/ (или .agents/agents/) согласно документации Kimi Code по пользовательским субагентам. Установка записывает по одному файлу на каждого помощника Apothem в <project>/.kimi-code/agents/ — для всех четырнадцати помощников. Она выполняет установку только для проекта и не записывает папку ~/.kimi-code/agents/.

Каждый файл сохраняет инструкции помощника без изменений и содержит следующие ключи фронтматтера:

КлючЧто записывает Apothem
name, descriptionИмя и описание помощника.
toolsРазрешённые помощнику инструменты в виде списка имён инструментов Kimi Code.
disallowedToolsЗапрещённые помощнику инструменты в виде списка имён инструментов Kimi Code. Kimi Code применяет его после tools.

Kimi Code сопоставляет имена инструментов точно, с учётом регистра, и выдаёт предупреждение об имени, для которого у него нет инструмента. Поэтому установка переименовывает два инструмента, которые Kimi Code называет иначе, — WebFetch в FetchURL и TodoWrite в TodoList, — и опускает имена, для которых у Kimi Code нет инструмента: MultiEdit, NotebookEdit, PowerShell, Monitor, Artifact, TaskCreate и TaskUpdate. Запрещённый инструмент остаётся запрещённым. Если таким образом исчезают все разрешённые инструменты помощника, файл содержит tools: [], что не разрешает ни одного инструмента; опущенный tools разрешал бы все инструменты.

Установка никогда не записывает model (у Kimi Code нет ключа модели для субагента, который использует модель основной сессии или [secondary_model] в config.toml), override (он позволил бы файлу проекта заменить встроенного субагента), subagents, whenToUse или ключи Apothem maxTurns, version, updated и portability.

Что нужно знать:

  • Файлы субагентов — обычные файлы проекта. Зафиксируйте их вместе с проектом или укажите .kimi-code/agents/ в .gitignore; Apothem не делает этот выбор за вас.
  • Kimi Code использует помощника, когда запрошено делегирование. Начиная со своего выпуска от 2026-10-25 он по умолчанию выполняет задачи сам, а не запускает субагентов по собственной инициативе, поэтому просите помощника по имени — в сообщении или в AGENTS.md. Страница поставщика о пользовательских субагентах всё ещё описывает автоматическое планирование, так что это может измениться.
  • Файл уровня проекта в .kimi-code/agents/ имеет приоритет над определением с тем же именем на дополнительном уровне, уровне пользователя и уровне плагинов. Давайте своим помощникам имена, отличные от имён Apothem. Код Kimi Code также читает .kimi-code/agents/ раньше общей папки .agents/agents/, в которую Apothem никогда не записывает, и сохраняет первый из двух одноимённых файлов; документация об этом не сообщает.
  • Ваш файл с именем помощника Apothem сохраняется в ~/.apothem/backups/, а затем заменяется. Удаление не возвращает его на место. Файлы с другими именами никогда не затрагиваются.
  • Более ранние выпуски хранили файлы помощников в поддереве поддержки, в .kimi-code/.apothem/support/agents/, где Kimi Code их не загружал. apothem update или apothem uninstall удаляет эту копию, предварительно сохранив её в ~/.apothem/backups/.

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

Адаптер читает общий профиль Apothem и рендерит поверхность инструкций AGENTS.md в корне проекта при каждом запуске apothem install или apothem update. Поведенческие правила и корпус управления попадают в управляемый блок AGENTS.md. Каждый навык и каждая команда, обёрнутая как навык, попадает в .kimi-code/skills/<name>/SKILL.md — каталог навыков проекта, который загружает Kimi Code. Адаптер записывает только эту специфичную для Kimi папку и никогда не записывает .agents/skills/, который читают и другие инструменты. Навыки, которые вы сами добавляете в .kimi-code/skills/ под другими именами, сохраняются при установке, обновлении и удалении. Навык там с тем же именем, что у навыка Apothem, заменяется: установка и обновление перезаписывают его, а удаление удаляет его, каждый раз после сохранения копии с отметкой времени в ~/.apothem/backups/, и установка не выводит никакого уведомления о конфликте. Давайте своим навыкам имена, отличные от имён Apothem.

Группы хуков, правил и шаблонов размещаются в .kimi-code/.apothem/support/, и на них ссылается поверхность инструкций. Kimi Code не загружает их из поддерева поддержки, поэтому копии Apothem в нём являются справочным материалом, на который указывает блок AGENTS.md. Блок завершается разделом о вспомогательных файлах Apothem, который называет относительно корня проекта каталог в .kimi-code/.apothem/support/, относительно которого разрешается каждая ссылка в стиле репозитория (rules/<name>.md, templates/..., hooks/...), поэтому закоммиченный AGENTS.md не содержит путей, привязанных к конкретной машине. (Поведение Kimi Code описано по его страницам о настройке навыков, определений помощников и хуков, прочитанным 2026-10-24 для навыков и хуков и 2026-10-27 для определений помощников.)

Что не устанавливается нативно

Kimi Code документирует нативное место для хуков. Адаптер пока не записывает туда по следующим причинам.

  • Хуки. Kimi Code читает хуки из массива [[hooks]] в ~/.kimi-code/config.toml ($KIMI_CODE_HOME/config.toml, когда задана эта переменная). Apothem не записывает ни одного. Этот файл имеет область действия пользователя, тогда как этот адаптер записывает в корень проекта; запись допускает только четыре поля (event и command обязательны, matcher и timeout необязательны), а лишнее поле не даёт конфигурации загрузиться; и у Apothem нет слияния TOML, которое позже могло бы удалить только его собственные записи. Вспомогательные скрипты хуков остаются в поддереве поддержки.
  • Фронтматтер навыков. Страница поставщика документирует ключи SKILL.md name и description (оба обязательны), type, whenToUse, disableModelInvocation (также принимается как disable-model-invocation) и arguments. Она не устанавливает никакого правила для других ключей. Навыки устанавливаются с тем фронтматтером, который у них есть в исходниках Apothem, поэтому такие ключи, как version, updated, archetype, userInvocable, argument-hint, portability и allowed-tools, доходят до Kimi Code, который может их проигнорировать или отклонить.
  • Одноимённые навыки. Kimi Code отдаёт приоритет уровню проекта над уровнем пользователя, поэтому навык в <project>/.kimi-code/skills/ имеет приоритет над навыком с тем же именем в ~/.agents/skills/, который записывает другой адаптер Apothem. Страница поставщика не сообщает, как .kimi-code/skills/ и .agents/skills/ ранжируются относительно друг друга внутри уровня проекта.

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

Kimi Code читает инструкции проекта из AGENTS.md или .kimi-code/AGENTS.md и распознаёт .kimi-code/mcp.json как принадлежащую оператору поверхность MCP; Apothem называет эту поверхность, но не создаёт в ней записей. Из двух файлов инструкций адаптер записывает только AGENTS.md в корне проекта, который Kimi Code читает как инструкции проекта; в документации Kimi Code не сказано, какой из двух файлов имеет приоритет, когда существуют оба. Kimi Code не предоставляет файловой поверхности для строки состояния или output-стиля, поэтому эти группы не материализуются.

Kimi Code работает на семействе моделей Kimi от Moonshot; актуальную модель и поверхность конфигурации см. в справочнике по конфигурации от поставщика.

Проверка

apothem verify --harness kimi-code --project /path/to/project

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

  1. Нативная конфигурация существует по ожидаемому пути.
  2. Каждая управляемая цель существует, включая каталоги навыков и субагентов; управляемые файлы не пусты, а конфигурации JSON или YAML разбираются. Добавьте --profile PATH, чтобы дополнительно подтвердить, что установленные файлы соответствуют этому профилю. Для .kimi-code/agents/ проверяется, что папка существует, а не что в ней есть файл каждого помощника; команда apothem diff --harness kimi-code --project /path/to/project перечисляет файлы помощников, которые отсутствуют или устарели.
  3. Процедура проверки, специфичная для адаптера, сообщает об успехе.

Обновление

apothem update --harness kimi-code --project /path/to/project

Повторно выводит управляемый блок AGENTS.md в корне проекта, навыки, файлы субагентов и группы поддержки из текущего состояния общего профиля. Обновление поверх установки, сделанной до переноса навыков в .kimi-code/skills/, удаляет старый каталог <project>/.kimi-code/.apothem/support/skills/, чтобы каждый навык присутствовал один раз. Обновление поверх установки, сделанной до переноса помощников в .kimi-code/agents/, таким же образом удаляет старый каталог <project>/.kimi-code/.apothem/support/agents/. Перед этим копия каждого удаляемого каталога с отметкой времени сохраняется в ~/.apothem/backups/.

Удаление

apothem uninstall --harness kimi-code --project /path/to/project

Удаляет блок Apothem из AGENTS.md в корне проекта и сохраняет любой текст за пределами маркеров. Файл удаляется, только если в нём больше ничего не остаётся. Также удаляет навыки, которые Apothem разместил в <project>/.kimi-code/skills/ (навыки, которые вы добавили туда под другими именами, сохраняются), файлы субагентов в <project>/.kimi-code/agents/ (файлы, которые вы добавили туда под другими именами, сохраняются, а папка удаляется, если остаётся пустой), и вспомогательные файлы в <project>/.kimi-code/.apothem/support/, включая старые каталоги skills/ и agents/ в поддереве поддержки у установки, которая ни разу не обновлялась. Перед изменением копия каждого файла с отметкой времени сохраняется в ~/.apothem/backups/; резервных файлов в проекте не остаётся. YAML общего профиля и движок Apothem не затрагиваются.

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

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

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

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

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

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

См. также

On this page