블로그로 돌아가기

AI 입문가이드

ACP(Agent Client Protocol)란? 나만의 에이전트 가져오기

ACP는 코드 편집기와 코딩 에이전트 사이의 소켓입니다. MCP와 어떻게 다르고 모델과 API 키가 어디에 들어가는지 알아봅니다.

작성자: CheapTokens Team 게시됨읽는 시간 6분

커버: 편집기 → ACP → 에이전트 흐름, 코드 편집기와 코딩 에이전트 사이의 프로토콜
이 페이지의 내용
  1. 왜 소켓이 필요할까?
  2. ACP는 어떻게 동작할까, 쉬운 말로
  3. ACP vs MCP: 무엇이 무엇을 연결하나
  4. Android Studio에서 나만의 에이전트 가져오기
  5. 모델과 API 키는 어디에 있나
  6. 다음에 할 일

Android Studio는 이제 40개가 넘는 코딩 에이전트 메뉴를 제공하며, 관련 소식에서는 세 글자 ACP를 계속 언급합니다. 짧게 정리하면 이렇습니다. Agent Client Protocol(ACP) 은 코드 편집기와 코딩 에이전트 사이의 공용 소켓으로, 컴퓨터와 꽂는 기기 사이의 USB와 비슷합니다. ACP를 지원하는 편집기라면 ACP를 지원하는 어떤 에이전트든 호스팅할 수 있습니다. MCP는 다른 케이블입니다. 에이전트를 편집기가 아니라 도구와 데이터에 연결합니다.

화제의 중심은 Android Studio입니다. Android Developers 블로그(2026년 10월 28일)에 따르면 이제 안정 버전인 Android Studio Rabbit 2는 “Bring Your Own Agent”를 제공합니다. Claude Agent, OpenAI의 Codex, Junie, Google Antigravity를 포함해 40개가 넘는 코딩 에이전트 중에서 고를 수 있습니다. 이 글에는 “ACP”라는 말이 명시되어 있지 않습니다. 이름과 동작 방식은 ACP 소개에서 가져왔습니다(2026년 11월 1일 확인).

왜 소켓이 필요할까?#

편집기가 5개, 코딩 에이전트가 8개 있다고 해봅시다. 모든 조합에 각자의 연결을 직접 만들어야 한다면 5 × 8 = 40개의 통합이 필요하고, 새 에이전트가 하나 추가될 때마다 다섯 편집기 팀에 다섯 개의 작업이 더 생깁니다. 모두가 하나의 소켓에 합의하면 각 편집기는 한 번만 만들고 각 에이전트도 한 번만 만들면 됩니다. 5 + 8 = 13개의 작업입니다. 아이디어는 이게 전부입니다.

ACP 사이트는 하나의 언어 서버가 여러 편집기에서 동작하게 해주는 LSP(Language Server Protocol)와 같은 비교를 합니다. 같은 요령을 코딩 에이전트에 적용한 것입니다. 어떤 ACP 에이전트든 어떤 ACP 편집기와 동작하며, 조합별 맞춤 통합이 필요 없습니다.

플래시카드

ACP 주변에서 만나게 될 용어

ACP는 어떻게 동작할까, 쉬운 말로#

두 동료가 우편 슬롯으로 쪽지를 주고받는 모습을 떠올려 보세요. 편집기가 요청을 쓰면 에이전트는 보여주고 싶은 내용을 써서 돌려줍니다. 로컬 에이전트의 경우 그 우편 슬롯은 문자 그대로입니다. 편집기가 여러분의 머신에서 에이전트를 하위 프로세스로 시작하고, 둘은 stdio를 통해 JSON-RPC 메시지를 주고받습니다. 모든 메시지는 대체로 같은 형태를 가집니다.

json
{ "jsonrpc": "2.0", "id": 1, "method": "…", "params": { … } }

메서드 이름은 ACP 자체에서 정의하므로 직접 작성할 일은 없습니다. 편집기와 에이전트가 작성합니다.

에이전트가 반드시 여러분의 노트북에 있을 필요는 없습니다. 원격 에이전트는 HTTP나 WebSocket을 사용하지만, ACP 사이트에 따르면 완전한 원격 지원은 아직 작업 중입니다. 또한 프로토콜이 코딩을 위해 만들어졌기 때문에 가능한 곳에서는 MCP의 JSON 표현을 재사용하고, 편집기가 그려야 하는 것들(예: diff)을 위한 타입을 추가합니다. 그래서 제안된 변경이 텍스트 덩어리가 아니라 편집기에서 diff로 표시될 수 있습니다.

편집기, ACP, 에이전트, 모델 API가 한 줄로
ACP는 편집기와 에이전트 사이의 연결입니다. 모델은 에이전트 뒤에 별도 연결로 있습니다.

ACP vs MCP: 무엇이 무엇을 연결하나#

에이전트를 가운데에 두세요. 한쪽은 여러분의 편집기이고 그 연결이 ACP입니다. 다른 쪽은 에이전트가 다루는 것들입니다. 파일, 데이터베이스, 서비스. 그 연결이 MCP입니다. 둘은 에이전트의 서로 다른 쪽에 있으므로 경쟁하지 않습니다. MCP가 처음이라면 쉬운 말 MCP 가이드부터 보세요.

ACP는 편집기와 에이전트를, MCP는 에이전트와 도구를 연결한다
두 프로토콜을 나란히. ACP는 편집기를 향하고, MCP는 도구를 향한다.

둘은 가까운 친척이기도 합니다. 위에서 언급했듯 ACP는 가능한 곳에서 MCP의 JSON 표현을 빌려옵니다. 직접 짝지어 보세요.

짝 맞추기

각 이름을 연결 대상과 짝지으세요

  • ACP편집기 ⇄ 코딩 에이전트
  • MCP에이전트 ⇄ 도구와 데이터
  • stdio를 통한 JSON-RPC로컬 ACP 에이전트가 편집기와 대화하는 방식
  • 모델 API (base URL + key)에이전트 ⇄ 언어 모델

Android Studio에서 나만의 에이전트 가져오기#

공용 프로토콜이 없으면 편집기에 에이전트를 추가하는 일은 편집기 벤더의 몫입니다. Android Studio Rabbit 2에서는 에이전트를 직접 고릅니다. Android Developers 글에 따르면 에이전트 창을 열고 에이전트를 선택하거나 Settings > Tools > AI > Agents에서 고르면 됩니다. 그다음 인증하고 첫 프롬프트를 보냅니다. 글에는 “인증”이라고만 되어 있습니다. 무엇을 요구하는지는 고른 에이전트에 따라 다르므로 해당 에이전트의 문서를 확인해야 합니다.

직접 확인해보고 싶다면 순서는 이렇습니다.

순서대로 배열하기

Android Studio 단계를 순서대로 배열하세요

  1. Android Studio Rabbit 2 열기
  2. 에이전트 선택 (에이전트 창 또는 Settings > Tools > AI > Agents)
  3. 인증
  4. 첫 프롬프트 보내기

모델과 API 키는 어디에 있나#

초보자가 가장 헷갈리는 부분입니다. ACP 연결은 편집기와 에이전트 사이의 대화를 전달합니다. 에이전트는 생각하기 위해 여전히 언어 모델이 필요하고, 그것은 보통 자체 로그인이나 API 키를 쓰는 별도 연결입니다. 편집기를 바꿔도 모델은 바뀌지 않고, 모델을 바꿔도 편집기는 바뀌지 않습니다. Android Studio 글에는 커스텀 키나 모델에 대한 내용이 없으므로, 무엇을 바꿀 수 있는지는 고른 에이전트에 따라 다릅니다.

일부 에이전트는 OpenAI 호환 엔드포인트를 지정할 수 있게 해줍니다. base URL, 키, 모델 id입니다. 여러분의 에이전트가 그렇다면 이것이 모델 쪽 연결의 전부이며, 설정을 건드리기 전에 터미널에서 테스트할 수 있습니다(키는 환경 변수의 자리표시자입니다).

bash
curl https://api.cheaptokens.dev/v1/chat/completions \
  -H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-ai/DeepSeek-V4-Flash-0731",
    "messages": [{"role": "user", "content": "Explain ACP in one sentence."}]
  }'

텍스트는 choices[0].message.content에, 토큰 수는 usage에 담긴 JSON 응답을 돌려받습니다. 코딩 에이전트는 매 단계마다 많은 컨텍스트를 다시 보내므로 긴 컨텍스트 모델이 적합합니다. CheapTokens에서는 DeepSeek-V4-Flash입니다. 380K 컨텍스트 윈도우, 응답당 최대 32,768 출력 토큰, 하루 중 언제든 동일한 가격, 모든 모델에 걸친 하나의 잔액을 제공합니다. API는 OpenAI 및 Anthropic과 호환됩니다. 정확한 모델 id는 CheapTokens 문서에서 가져오세요. 제공사마다 id가 다릅니다. 자세한 내용은 DeepSeek 모델 페이지에 있습니다.

어떤 도구가 커스텀 키를 받는지 모르겠다면, 내 API 키를 어디에 넣을까 가이드에서 채팅, 편집기, 터미널, 코드를 차례로 다룹니다. “base URL”이 낯선 용어라면 base_url이 무엇이고 어떻게 바꾸는지를 읽어보세요.

직접 해보기직접 해보기: ACP 에이전트를 설치했습니다. 사용하는 모델을 바꾸려면 어떤 연결을 바꿔야 할까요?정답 보기

ACP 연결이 아닙니다. 편집기와 에이전트 사이의 소켓은 그대로입니다. 모델은 에이전트 자체의 설정입니다. 에이전트가 노출한다면 에이전트 설정의 base URL, 키, 모델 id입니다.

다음에 할 일#

원하는 에이전트의 문서를 열고 모델을 설정하는 곳을 찾아보세요. 에이전트 내부 동작이 궁금하다면 AI 에이전트는 어떻게 동작하나: 루프에서 단계별로 보여줍니다. ACP는 편집기와 에이전트가 어떻게 대화하는가라는 한 가지 질문에만 답합니다. 나머지는 모두 에이전트와 그 도구 및 모델 사이에 남습니다.