Протокол ACP: как подключить ИИ-агента к привычной IDE
Как протокол ACP подключает ИИ-агентов к редакторам: поддержка в Zed, JetBrains и Android Studio, отличия от MCP, работа сессий, адаптеры и разрешения.
Опубликовано

Протокол ACP — Agent Client Protocol — позволяет сменить ИИ-агента для программирования и остаться в привычном редакторе, если оба поддерживают этот протокол. С выходом Android Studio Rabbit 2 такой выбор стал доступен разработчикам под Android: в октябрьском анонсе Google говорится о более чем 40 агентах для программирования, которых можно выбирать прямо в IDE. Главное здесь — возможность сохранить среду разработки и самостоятельно выбрать агента, который будет выполнять задачи.
Эту цифру Google приводит в анонсе Android Studio от 28 октября 2026 года. Сведения о поддержке и настройке ниже сверены с сайтом протокола и документацией редакторов 3 ноября 2026 года. Статья основана на документации; сравнительных испытаний агентов мы не проводили.
Что меняет протокол ACP
ACP задаёт общий интерфейс, через который редакторы и агенты для программирования обмениваются запросами, сведениями о ходе работы, разрешениями и результатами. Агент — это программа, которая выполняет задачу с помощью модели, инструментов и рабочего цикла. Редактор, или интегрированная среда разработки (IDE), — место, где вы изучаете код, проверяете изменения и взаимодействуете с этой программой.
Ближайшая аналогия — Language Server Protocol (LSP), стандартизировавший связь между редакторами и языковыми серверами. Языковой сервер предоставляет функции для работы с конкретным языком, например диагностику. ACP переносит тот же принцип разделения на агентов для программирования: редактор реализует клиентскую часть соединения, а агент поддерживает ACP напрямую или через адаптер. Совместимость нужна с обеих сторон. Во введении в ACP этот подход описан как способ обойтись без отдельной интеграции для каждой пары редактора и агента.
Для разработчика, который чередует Claude Code от Anthropic, Codex от OpenAI и Gemini CLI от Google, преимущество — привычное рабочее пространство. Можно оценить другого агента без необходимости одновременно менять редактор. При этом способы подключения этих агентов по ACP различаются — ниже разберём, как именно.
Кто создал ACP?
ACP создала Zed Industries, а вместе с Google компания подготовила Gemini CLI как первую эталонную реализацию. Zed объявила об этом сотрудничестве 27 августа 2025 года. Позже к работе присоединилась JetBrains; на её текущей странице ACP указано, что протокол открыто разрабатывают JetBrains и Zed. Google выступает ранним партнёром по реализации и внедряет протокол в Android Studio. Эти роли описаны в анонсе Zed и на странице ACP у JetBrains.
Это различие важно при оценке поддержки. Создать протокол, сопровождать адаптер и выпустить клиент в редакторе — разные виды участия в проекте.
Какие редакторы и агенты поддерживают ACP?
У Zed, IDE JetBrains и Android Studio есть документированные способы подключения агентов по ACP. В других редакторах используются плагины или расширения, поэтому проверять нужно именно ту интеграцию, которую вы собираетесь установить. Наличие в каталоге подтверждает существование интеграции, но не обещает одинаковой работы всех функций.
Названия плагинов взяты из каталога клиентов ACP. Сведения о Zed, JetBrains и Android Studio опираются на их собственную документацию, ссылки на которую приведены ниже. Здесь собраны варианты, полезные для разработки, а не полный список клиентов ACP.
Zed: у внешних агентов свои настройки
В Zed агенты ACP доступны в Agent Panel и Threads Sidebar. В текущей документации среди распространённых внешних агентов перечислены Claude, Codex, OpenCode, Copilot, Cursor и Pi; там же есть инструкция по настройке Gemini CLI. Основной способ установки — ACP Registry. В документации Zed по внешним агентам описаны и установка, и то, какая сторона отвечает за настройки.
На практике важно учитывать границы наследования настроек. Профили Zed Agent и Zed Skills не становятся автоматически настройками внешнего агента. Описывая рабочую конфигурацию команды, отдельно фиксируйте инструкции, учётные данные и инструменты самого агента.
JetBrains: проверьте ограничения организации и рабочую среду
В JetBrains AI Assistant агенты ACP доступны через AI Chat. Установить агента можно в Settings > Tools > AI Assistant > Agents, а добавить собственного — через acp.json. В документации также указано, что сейчас агенты ACP не поддерживаются в Windows Subsystem for Linux (WSL), а администраторы могут ограничивать доступ к записям реестра или собственным агентам. Эти ограничения следует сверять с документацией JetBrains по ACP.
Руководителю разработки стоит проверить окружение рабочих станций, прежде чем рекомендовать интеграцию команде. То, что всё работает на ноутбуке коллеги, ещё не подтверждает поддержку вашей управляемой среды на WSL.
Агенты: прямая поддержка и адаптер — разные вещи
В каталоге агентов ACP способы подключения названы вполне определённо:
- Claude Agent указан с подключением через SDK-адаптер Zed. Именно так каталог называет интеграцию с Claude; это не утверждение о том, что сам Claude Code CLI напрямую поддерживает ACP.
- Codex CLI указан с подключением через адаптер ACP. Учитывайте этот адаптер в списке компонентов, которые запускает редактор.
- Gemini CLI указан как агент с реализацией протокола, без оговорки об адаптере.
- GitHub Copilot на этой странице явно помечен как общедоступная предварительная версия.
На той же странице перечислены Augment Code, Cline, Cursor, cagent от Docker, Factory Droid, Goose, Hermes Agent, Junie от JetBrains, Kimi CLI, Kiro CLI, Mistral Vibe, OpenCode, OpenHands и Qwen Code. Для Pi указан адаптер pi-acp. Здесь приведена лишь часть записей с названиями из каталога; полный список доступен по ссылке.
Не стоит воспринимать каталог как универсальную таблицу совместимости с редакторами. Работоспособность вашей связки зависит от агента, адаптера, если он нужен, интеграции в редакторе и возможностей, которые стороны согласуют при подключении.
Что даёт Bring Your Own Agent в Android Studio
Android Studio позволяет выбрать агента для программирования и сохранить инструменты разработки под Android. В анонсе стабильного релиза Google перечисляет Claude Agent, Codex, Junie и Google Antigravity и сообщает, что агенты могут обращаться к Android Emulator, системам сборки, Logcat и навыкам для Android. Logcat — инструмент просмотра журналов приложений и системы Android. Доступ к этим инструментам описан в анонсе Rabbit 2 от Google.
Представьте, что вы разбираете сбой Android-приложения. Удобно, когда агент работает рядом с инструментами сборки и диагностики проекта, а вы проверяете исправление в привычной среде. BYOA позволяет выбирать агента независимо от этого рабочего пространства. Насколько хорошо выбранный агент найдёт причину сбоя, всё равно нужно оценивать отдельно.
Для руководителя разработки это возможность провести более содержательный пилот. Зафиксируйте репозиторий, задачу и процесс проверки, затем сравните одобренных агентов в одной среде. Оценивайте полученный патч, запрошенные команды и основания для выводов агента. Успешное подключение само по себе ещё не означает успешного внедрения.
От предварительной версии к стабильному релизу
Google представила BYOA в предварительной версии 24 сентября 2026 года, начиная с Android Studio Rabbit 2 Canary. 28 октября 2026 года компания объявила стабильный релиз Rabbit 2, в который вошла BYOA. Более поздний анонс отменяет статус предварительной версии, указанный при запуске. Анонс предварительной версии, анонс стабильного релиза.
Пометка о предварительной версии относится к конкретному компоненту. Стабильный релиз Android Studio не снимает такую пометку с другого агента и не гарантирует равенства функций у адаптеров.
Как устроена сессия ACP
Редактор запускает агента и обменивается с ним структурированными сообщениями. При локальном транспорте редактор создаёт дочерний процесс — другую программу, работающую под управлением операционной системы. Для связи используется JSON-RPC 2.0, формат запросов, ответов и уведомлений, поверх stdio — стандартных потоков ввода и вывода процесса. Программы обмениваются структурированными сообщениями, а не считывают текст, отображаемый в терминале. Обзор протокола, спецификация транспортов.
Сессия проходит в определённой последовательности:
- Запуск и согласование возможностей. Редактор запускает агента или адаптер и отправляет
initialize. Стороны обмениваются версиями протокола и сведениями о поддерживаемых возможностях. - Аутентификация, если она требуется. Пользователь проходит аутентификацию способом, который объявил агент. Само по себе успешное подключение редактора не даёт учётную запись для агента.
- Начало диалога. Редактор отправляет
session/new, указывая рабочий каталог и предоставляемые им серверы MCP, если они есть. Агент возвращает идентификатор сессии. - Передача задачи и получение статуса. Редактор отправляет
session/prompt, а агент передаёт сообщения и сведения о работе инструментов через уведомленияsession/update. - Обработка запрошенных действий. Когда агент запрашивает разрешение, редактор показывает доступные варианты и передаёт принятое решение обратно. В конце этого цикла агент возвращает ответ с причиной завершения.
Такая последовательность описана в документации по обмену сообщениями и созданию сессий. Сессия — это диалог с агентом, у которого есть собственные контекст и состояние. Это не универсальный файл переписки, общий для всех поставщиков.
Работа с файлами и командами терминала
Доступ к файлам и терминалу относится к возможностям, которые стороны согласуют при подключении. Если такая поддержка есть, агент может читать файлы через редактор методом fs/read_text_file, в том числе получать несохранённые изменения, и записывать их методом fs/write_text_file. Это важно, когда содержимое буфера на экране отличается от файла на диске. Спецификация файловой системы ACP.
Для запуска команд служит terminal/create: этот метод просит клиента создать процесс. Связанные методы позволяют получить вывод, дождаться завершения, остановить команду и освободить терминал. Прежде чем использовать их, агент должен проверить, объявил ли клиент поддержку терминала. Спецификация терминалов ACP.
Агент также может передавать через ACP изменения в виде diff и сведения о ходе работы инструментов, выполняя сами операции собственными средствами. Отображение действий в редакторе не означает, что каждую операцию выполнил именно редактор. Спецификация вызовов инструментов.
ACP и MCP: чем отличаются эти протоколы?
ACP связывает редактор с агентом, а Model Context Protocol (MCP) — ИИ-приложение или агента с инструментами и данными. Оба протокола могут работать в одной сессии. Это сравнение опирается на спецификацию сессий ACP и введение в MCP.

Если инструмент недоступен, проверяйте и подключение инструмента, и подключение редактора. Например, в JetBrains отдельно настраивается передача агентам пользовательских серверов MCP и встроенного сервера IntelliJ MCP. Одна лишь поддержка ACP не включает все инструменты. Эти параметры описаны в настройках реестра JetBrains.
Если вы проектируете границы взаимодействия сервисов, статья MCP и API поможет с другим вопросом: как предоставить доступ к функциям приложения. Если вы создаёте приложение на основе агентов для программирования, нужный уровень интеграции разобран в объяснении адаптера ACP для Vercel AI SDK.
Как подключить Claude Agent к Android Studio
Выберите агента в Android Studio и пройдите аутентификацию у его поставщика. В текущей инструкции Google настройка начинается в окне агента или в Settings > Tools > AI > Agents. Инструкции, опубликованные при запуске, предлагают войти в учётную запись или указать API-ключ; поддерживаемые тарифы определяет поставщик. Текущая инструкция по подключению, инструкция по аутентификации.
Установите версию с поддержкой BYOA
Используйте стабильную Android Studio Rabbit 2 или более позднюю версию, в документации которой указана BYOA. Требование использовать только Canary относилось к запуску предварительной версии.
Выберите Claude Agent
Откройте окно агента и выберите Claude Agent. Выбрать агента также можно через Settings > Tools > AI > Agents.
Пройдите аутентификацию для выбранного агента
Войдите в учётную запись по инструкции агента или укажите API-ключ, если такой вариант предложен. Используйте учётную запись и способ доступа, одобренные для вашего проекта. Для подключения другого агента потребуются его собственная аутентификация и право доступа.
Начните с запроса с чёткими границами
Инструкция Google завершается отправкой запроса. Для первой задачи подойдёт такой вариант: «Объясни, как собирается этот проект, и найди соответствующую задачу запуска тестов. Не меняй файлы». Это предложенная отправная точка, а не результат испытаний поставщика.
Проверьте рабочий процесс перед расширением задач
Затем попросите внести небольшое изменение в рабочей ветке, которое будет удобно проверить. Изучите предложенную правку, варианты разрешений и все запрошенные команды. Прежде чем поручать более крупную задачу, убедитесь, что понимаете результат. Это рекомендация по внедрению, дополняющая инструкцию поставщика по подключению.
Если не удаётся пройти аутентификацию, проверьте настройки учётной записи или ключа выбранного агента. Если агент подключился, но не может использовать инструмент, изучите возможности, которые предоставляет эта интеграция. Это разные точки отказа — фиксируйте их отдельно в заметках по настройке.
Какие ограничения важны для команды
Стандартизируйте подключение, а затем проверьте поведение каждого агента. Протокол избавляет от повторной работы над интеграциями, но не делает агентов взаимозаменяемыми во всех деталях эксплуатации.
Аутентификация остаётся отдельной для каждого агента. Для каждого выбранного поставщика предусмотрите свой способ входа или настройки API-ключа. Конкретная реализация может использовать уже имеющиеся учётные данные, но ACP не предоставляет общей учётной записи или общего пула квот. Например, Zed прямо описывает собственную аутентификацию внешних агентов и их связь с поставщиками. Границы настройки в Zed.
Восстановление сессии доступно при определённых условиях. Для операции session/load агент должен поддерживать возможность loadSession. Там, где она реализована, можно загрузить существующую сессию. Это не означает, что агент другого поставщика сможет унаследовать внутреннее состояние исходного агента. Прежде чем обещать беспроблемное переключение, проверьте, как именно ваша связка работает с историей. Спецификация загрузки сессий.
Удалённое подключение нужно проверять для конкретной реализации. Текущая страница транспортов описывает stdio и сообщает, что спецификация транспорта Streamable HTTP ещё разрабатывается. Допускаются собственные транспорты. Не следует считать, что работающая локальная интеграция автоматически сможет подключиться к удалённой конечной точке агента. Спецификация транспортов ACP.
Запрос разрешения не заменяет песочницу
ACP задаёт формат сообщений для решений о разрешениях, но не обеспечивает изоляцию на уровне операционной системы. В спецификации сказано, что агент работает с правами своего процесса, запросы разрешений носят рекомендательный характер, а соблюдать решения обязан сам агент. Клиент отдельно выполняет запрошенные методы файловой системы и терминала в рамках собственных возможностей. Соображения безопасности ACP.

Запрос может предлагать разовое разрешение или отказ, а также варианты с запоминанием решения. Область действия и срок сохранения запомненных решений определяет агент. Прочитайте предложенный вариант, прежде чем считать, что «всегда» относится только к текущей команде или каталогу. Семантика вариантов разрешений.
Тем, кто отвечает за платформу, стоит вместе с настройками редактора проверять исполняемый файл агента, среду выполнения и политику разрешений. Диалог подтверждения помогает видеть происходящее, но сам по себе не доказывает, что действия агента изолированы.
Где ожидания завышены и кому пора пробовать ACP?
Реальное преимущество — меньшая зависимость между редактором и агентом. Поддержка ACP не доказывает, что агент пишет более качественный код, что его настройки можно перенести от другого агента или что любая связка предоставляет одинаковый рабочий процесс. Эти результаты нужно оценивать напрямую.
Разработчикам, которые уже переключаются между агентами, стоит попробовать сейчас. Подключите поддерживаемого агента в своём привычном редакторе. Главный критерий — помогают ли проверка правок, видимость команд и работа с контекстом выполнить типичную задачу.
Руководителям разработки стоит провести пилот до стандартизации. Используйте одну задачу и одинаковые критерии приёмки для всех агентов. Зафиксируйте способы аутентификации, поддерживаемые инструменты, восстановление сессий и поведение разрешений. Выбирайте по результату работы и управляемости, а не по размеру реестра.
Тем, кто отвечает за платформу, стоит подождать, если нужная среда не поддерживается. Конкретный пример — ограничение WSL, указанное в документации JetBrains. Удалённый рабочий процесс, зависящий от ещё не подтверждённого поведения транспорта, — ещё одна причина проверить связку до внедрения.
Для разработчика, которому удобно работать в терминале, мало что меняется. Само появление протокола не повод менять интерфейс. Если вы ещё выбираете агента под свои задачи, сравнение Codex и Claude Code поможет определить критерии, а затем проверить их на своём репозитории.
Частые вопросы
Что такое Agent Client Protocol?
Agent Client Protocol — общий интерфейс между агентом для программирования и редактором или другим клиентом. Он позволяет совместимым реализациям обмениваться запросами, сведениями о ходе работы и действиями без отдельной специализированной интеграции для каждой пары.
Чем ACP отличается от MCP?
ACP отвечает за связь редактора с агентом. MCP подключает ИИ-приложение или агента к внешним инструментам и данным. При создании сессии ACP можно передать конфигурации серверов MCP, поэтому оба протокола могут участвовать в одном рабочем процессе.
Чем A2A отличается от MCP?
Agent2Agent (A2A) стандартизирует общение между независимыми агентами. MCP подключает ИИ-приложения к внешним возможностям и данным. A2A решает задачу совместной работы агентов, а рассматриваемый здесь ACP — задачу подключения к редактору. Подробнее — в объяснении проекта A2A.
Поддерживает ли Claude Code протокол ACP?
В каталоге указан именно Claude Agent с подключением через SDK-адаптер Zed. Используйте поддерживаемую интеграцию, описанную в документации вашего редактора. Эта запись не означает, что любой исполняемый файл Claude Code имеет встроенную поддержку ACP. В документации Zed Claude Agent описан как внешний агент с собственной аутентификацией.
Остаётся ли Claude Code лучшим агентом для программирования?
Поддержка ACP не даёт ответа на этот вопрос. Сравнивайте агентов на своём репозитории: с одинаковой задачей, критериями проверки и набором разрешённых инструментов. Выбирайте того, чьи изменения можете проверить и чей рабочий процесс подходит для ваших регулярных задач.
Кто разработал Agent Client Protocol?
Zed создала ACP и вместе с Google подготовила Gemini CLI как первую эталонную реализацию. Затем к работе присоединилась JetBrains; в её текущей документации ACP описан как протокол, который открыто разрабатывают JetBrains и Zed.
Чем Agent Client Protocol отличается от Agent Communication Protocol?
Это разные проекты с одной аббревиатурой. Agent Client Protocol связывает редакторы и агентов для программирования. Agent Communication Protocol от IBM решал задачу общения между агентами; теперь IBM Research сообщает, что он входит в A2A.
Как работает ACP?
В локальной сессии редактор запускает агента как дочерний процесс и общается с ним через JSON-RPC поверх stdio. Стороны согласуют возможности, проходят необходимую аутентификацию, открывают сессию и обмениваются запросами, обновлениями и решениями о разрешениях.
Что означает ACP в контексте агентного ИИ?
В контексте интеграции с редактором ACP обычно означает Agent Client Protocol. При изучении архитектуры или выборе библиотеки сверяйтесь с полным названием: за той же аббревиатурой может стоять другой проект — Agent Communication Protocol.
С чего начать следующую рабочую сессию
Оставайтесь в своём редакторе, выберите одобренного агента ACP и начните с небольшой задачи в репозитории, результат которой сможете проверить. Запишите, какие агент и адаптер используются, как проходит аутентификация, какие инструменты доступны и как обрабатываются разрешения. Расширяйте пилот, только когда понятен весь рабочий цикл, включая то, что происходит при отказе в действии.
Практические руководства об изменениях в процессах разработки — в нашей рассылке.
- Опубликовано
- Категория
- Build
- Язык










