Connect with us

Интегрированные среды разработки

Использование агентских навыков в Xcode 27

Apple представила Xcode 27 на WWDC 26, добавив множество улучшений для агентной разработки, включая официальные агентские навыки (Agent Skills).

Опубликовано

/

     
     

Apple представила Xcode 27 на WWDC 26, добавив множество улучшений для агентной разработки, включая официальные агентские навыки (Agent Skills). Как вы уже наверняка знаете, важно выбирать навыки из авторитетных источников. Apple, конечно, абсолютно к таким относится!

Официальные Агентские Навыки повлияют на то, как мы создаём приложения — как в новом Xcode, так и в уже существующих IDE, таких как Claude, Codex или Cursor. Ранее я выпустил SwiftUI Agent Skill, чтобы с помощью AI собирать более качественные представления, но, честно говоря, я очень рад, что теперь появилась официальная альтернатива.

Экспорт агентных навыков для использования в сторонних средах разработки

Хотя агентные навыки уже доступны в Xcode 27, вам может понадобиться сделать их доступными глобально — независимо от того, используете ли вы Codex, Claude, Cursor или любую другую среду разработки, которая поддерживает агентные навыки.

В рамках многочисленных улучшений Xcode команда также представила новый инструмент командной строки под названием agent:

Использование агентских навыков в Xcode 27

Интерфейс командной строки Xcode Agent CLI теперь включает новую команду экспорта навыков Agent Skills.

Хотя CLI в основном ориентирован на Model Context Protocol, поставляемый с Xcode, теперь он также позволяет экспортировать агентские навыки, которые поставляются с Xcode.

Вот как можно экспортировать навыки из Xcode 27 для использования в Claude, Codex, Cursor или любой другой IDE:

  1. Откройте Terminal.app
  2. Выполните команду xcrun agent skills export ~/.agents/skills
    Многие популярные IDE для Agent поддерживают папку ~/.agents/ для обнаружения навыков Agent Skills.
    Использование агентских навыков в Xcode 27
  3. Откройте свою агентную среду разработки и при необходимости обновите список навыков. Если навыки не отображаются, перезапустите среду разработки.

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

Использование агентских навыков в Xcode 27

Агентные навыки Xcode 27 доступны прямо в поле запроса Cursor.

Агентные навыки, поставляемые с Xcode 27

После выполнения команды в терминале вы увидите, какие агентные навыки сейчас доступны в Xcode 27. Важное примечание: не все эти навыки полезны за пределами Xcode — подробнее об этом позже.

avanderlee@AJs-MacBook-Pro MacOS % xcrun agent skills export ~/.agents/skills 
Exported 7 skills to /Users/avanderlee/.agents/skills
  ✓ uikit-app-modernization
  ✓ device-interaction
  ✓ swiftui-whats-new-27
  ✓ swiftui-specialist
  ✓ test-modernizer
  ✓ c-bounds-safety
  ✓ audit-xcode-security-settings

 

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

  • uikit-app-modernization
    Модернизирует приложения на UIKit для многооконных окружений, заменяя устаревшие API общего состояния, такие как UIScreen.main и interfaceOrientation. Обрабатывает миграцию жизненного цикла сцен и асимметричные отступы безопасной области как в кодовых базах на Swift, так и на Objective-C.
  • device-interaction
    Проверяет поведение вашего приложения на реальном устройстве или в симуляторе с помощью снимков экрана, анализа иерархии пользовательского интерфейса и синтезированных сенсорных взаимодействий. Запускается как субагент, чтобы подтвердить, что функции действительно работают, и выявить визуальные или функциональные ошибки.
  • swiftui-whats-new-27
    Документирует новые API SwiftUI, особенности поведения и устаревания, представленные в выпусках операционных систем 2027 года: iOS, macOS, watchOS, tvOS и visionOS 27. Охватывает миграцию на макрос @State, перетаскивание для изменения порядка, новые API панели инструментов, действия смахивания, приложения на основе документов и другие изменения.
  • swiftui-specialist
    Предоставляет авторитетные рекомендации Apple и идиоматические шаблоны для написания, проверки и рефакторингаSwiftUI кода. Охватывает структуру представлений, поток данных, использование окружения, модификаторы, локализацию, анимации, идентичность в ForEach и нестрого устаревшие API.
  • test-modernizer
    Переносит существующие наборы тестов XCTest на Swift Testing и реструктурирует старый код Swift Testing для использования новых возможностей. Сопоставляет проверки с ожиданиями, преобразует setUp/tearDown в init/deinit, а также добавляет признаки, подтверждения и параметризованные тесты.
  • c-bounds-safety
    Помогает внедрить языковое расширение C -fbounds-safety, чтобы предотвращать выход за границы памяти. Охватывает языковую модель, аннотации указателей, настройки сборки компилятора и отладку нарушений границ во время выполнения.
  • audit-xcode-security-settings
    Проверяет состояние безопасности проекта Xcode и постепенно включает усиливающие защиту настройки сборки, предупреждения компилятора и проверки статического анализатора. Настраивает полномочия повышенной безопасности и возможности вроде аутентификации указателей, типизированных распределителей памяти и нулевой инициализации стека.

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

Можно ли использовать все эти навыки, не запуская их внутри Xcode?

В основном да, но не все. Навык — это, по сути, просто набор инструкций, а инструкции полезны только тогда, когда у агента есть инструменты, чтобы по ним действовать. Навыки, основанные на знаниях, такие как swiftui-specialist, swiftui-whats-new-27 и test-modernizer, можно переносить куда угодно, поскольку они только читают и редактируют ваши исходные файлы. Я спокойно использую их в Cursor вообще без запущенного Xcode.

Исключения — навыки, которым нужно взаимодействовать с чем-то за пределами вашего кода. audit-xcode-security-settings ожидает инструменты, специфичные для Xcode, чтобы читать и записывать настройки сборки, поэтому в других средах он скатывается к ручному редактированию .pbxproj. А device-interaction — самый очевидный пример: он управляет реальным устройством через инструменты, которые предоставляет только агент Xcode 27, поэтому за пределами Xcode ему просто нечего вызывать. Моё эмпирическое правило: если навык работает только с исходными файлами, он работает везде; как только ему нужна конфигурация проекта или запущенное устройство, лучше запускать его изнутри Xcode.

Другие популярные агентные навыки, которые стоит изучить

Если вы только знакомитесь с агентными навыками, возможно, вам теперь будет интересно найти больше навыков для использования. Я ищу навыки через skills.sh — например, так выглядит обзор моих личных агентных навыков. Если хотите больше контекста по конкретным агентным навыкам, вот несколько связанных статей:

А если вы только начинаете заменять свой AGENTS.md, вам понравится эта статья: «Объяснение агентных навыков: замена AGENTS.md переиспользуемыми знаниями для ИИ». Все вместе они дополняют агентные навыки, которые поставляются с Xcode 27.

Заключение

То, что Apple предоставляет официальные агентные навыки, — большое благо для сообщества. При этом для сторонних агентных навыков с открытым исходным кодом на GitHub всё ещё есть место: навыки Apple могут быть компактными, не покрывать всё, что вам нужно, или устаревать из-за более медленных обновлений. Важно внимательно следить за результатами кода, который выдают агенты, и понимать, есть ли пробелы в используемых ими навыках. Собирать накопленные знания в навыки с открытым исходным кодом будет проще и быстрее, чем ждать неопределённых обновлений в релизах Xcode.

Если вы нашли опечатку - выделите ее и нажмите Ctrl + Enter! Для связи с нами вы можете использовать info@apptractor.ru.
Telegram

Популярное

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: