Xcode 27이 에이전트형으로 진화하다
WWDC26에서 헤드라인을 장식한 것은 프레임워크 소식이었습니다. SwiftUI의 reorder 컨테이너, 새로운 document 프로토콜, App Intents의 백그라운드 실행 같은 것들이죠. 하지만 작업 일과를 가장 크게 바꾸는 변화는 더 조용히 일어났습니다. Xcode 27은 코딩 에이전트를 IDE에 내장했고, Apple은 다섯 개의 세션을 들여 툴바 버튼, plan 명령, 아티팩트 패널, 그리고 sub-agents 팬아웃이 어떻게 하나의 작업 방식으로 맞물리는지 설명했습니다.
Apple 스스로의 표현이 그 의도를 분명히 보여줍니다. Xcode Intelligence 팀은 “당신은 코드의 비전을 주도하고, Xcode는 당신이 더 빠르고 확신을 가지고 그곳에 도달하도록 돕습니다”라는 말로 시작하면서, 설계 목표가 “당신이 즐기는 작업에 집중할 수 있도록 하는 것”이라고 덧붙입니다.1 흥미로운 지점은 이제 LLM이 Swift를 작성한다는 사실 자체가 아닙니다. 흥미로운 지점은 Apple이 에이전트를 당신이 직접 손으로 쓰던 바로 그 도구들, 즉 빌드, 프리뷰 렌더러, 테스트 러너, String Catalog, 그리고 Xcode Cloud에 연결했다는 점입니다. 에이전트는 자신의 코드가 컴파일되는지 추측하지 않습니다. 직접 빌드하고, 에러를 읽고, 다시 시도합니다.
TL;DR / 핵심 요약
- 코딩 에이전트는 Xcode 26.3에서 처음 등장했습니다. Xcode 27은 도구 세트를 확장하고 상호작용을 재설계하여, 화면을 왼쪽의 트랜스크립트(대화, 도구 호출, sub-agents)와 오른쪽의 아티팩트 패널(파일, diff, 프리뷰)로 나눕니다.1
/plan슬래시 명령은 에이전트를 plan mode로 전환시켜, 코드가 작성되기 전에 마크다운으로 된 아키텍처를 승인하게 하며, 큐에 쌓인 메시지를 통해 작업 도중에도 방향을 조정할 수 있습니다.1- 에이전트는 Xcode의 실제 검증 도구인 빌드, 프리뷰 렌더링, 테스트 러너를 직접 실행하므로 진행하면서 스스로 검증합니다. 데모에서는 새 기능을 위해 통과하는 테스트 케이스 12개를 작성하고 실행했습니다.1
- UI 프로토타이핑은 “넓게 펼치고, 리믹스하고, 반복하는” 루프에 기댑니다. 이름이 붙은 여러 Swift 프리뷰를 한 번에 요청한 다음, 마음에 드는 부분을 조합합니다. 인라인 주석과 이미지 첨부로 변경 범위를 정확한 한 줄까지 좁힐 수 있습니다.2
- 현지화는 String Catalog와 Apple의 언어별 스타일 가이드를 통해 진행됩니다. 메인 대화가 작업을 sub-agents로 팬아웃하고,
TRANSLATION.md용어집이 용어의 일관성을 유지합니다.34 - Xcode Cloud의 설정이 더 짧아졌고(저장소 연결, 첫 빌드 시작), 이제 웹훅과 다중 저장소 빌드를 구동합니다. 이는 이전보다 더 많은 코드를 작성하는 에이전트 중심 워크플로의 CI 절반에 해당합니다.5
이제 에이전트는 에디터 안에 산다
화면에서 시작하겠습니다. 레이아웃이 곧 작동 모델을 담고 있기 때문입니다. Xcode 27에서 에이전트 트랜스크립트는 옆에 덧붙인 채팅 서랍이 아니라 하나의 에디터 패널입니다. 팀은 “트랜스크립트가 에디터 패널로 옮겨와서, 탭이나 분할, 또는 당신의 워크플로에 맞는 어떤 방식으로든 다른 에디터와 함께 구성할 수 있습니다”라고 설명합니다.6 툴바 중앙의 버튼에서 대화를 시작하고, 옵션-시프트-클릭으로 그 대화를 별도의 패널로 열어 에이전트가 작업하는 동안 파일을 읽을 수 있습니다.1
Apple은 작업 공간을 왼쪽의 트랜스크립트와 오른쪽의 아티팩트 패널로 나눕니다. 에이전트는 소스, 빌드 설정, 열려 있는 파일, 그리고 현재 선택 영역까지 볼 수 있습니다.
이 분할이 중요합니다. “왼쪽에는 트랜스크립트가 있습니다… 진행 상황에 대한 코멘트, 도구 호출, 실행 중인 sub-agents 등을 포함합니다. 오른쪽에는 아티팩트가 있습니다. 생성된 것들, 즉 파일, 편집, 프리뷰입니다.”1 모든 diff, 모든 새 파일, 모든 렌더링된 프리뷰는 그것이 핵심 역할을 맡기 전에 당신이 검토하는 아티팩트로 나타납니다. 에이전트는 변경 사항을 점검할 수 있도록 펼쳐 놓은 채, 공개된 상태로 작동합니다.
에이전트가 볼 수 있는 범위는 일반적인 컨텍스트 윈도보다 넓습니다. “Xcode에서 에이전트를 사용해 탐색할 때, 에이전트는 프로젝트 전체를 볼 수 있습니다. 소스 코드, 빌드 설정, 심지어 열려 있는 파일과 현재 선택 영역까지요.”1 데모에서 개발자는 데이터 모델과 뷰 계층 구조에 대한 설명을 요청한 다음, 에이전트가 두 개의 아키텍처 문서를 저장소에 작성하도록 해서 그 발견 작업이 대화가 끝난 뒤에도 남도록 합니다. 이는 “프로젝트 안에 문서화된 지식 베이스”로서 “동적이며 코드베이스와 나란히 진화할 수 있습니다.”1 새로운 에이전트 세션에 코드베이스를 다시 설명해 본 적이 있다면, 이 지도를 영속화하려는 본능에 공감할 것입니다.
외부 에이전트를 써 본 사람이라면 주목할 만한 세부 사항이 하나 있습니다. Apple은 에이전트가 자동으로 호출하는 Apple Document Search 도구를 추가했습니다. “사용 중인 에이전트에 따라, 기본 지식에 최신 프레임워크 정보가 포함되어 있지 않을 수 있습니다. Apple Document Search를 통해 에이전트는 고품질 문서에 접근할 수 있습니다.”1 이는 코딩 에이전트가 완전히 새로운 API에서 가장 흔히 보이는 실패 양상, 즉 존재하지 않는 심볼을 자신 있게 호출하는 문제를, 에이전트가 필요로 하는 바로 그 순간에 최신 문서로 가는 경로를 제공함으로써 해결합니다.
Plan mode가 당신을 아키텍트로 만든다
워크플로의 빌드 절반은 /plan 슬래시 명령으로 도달하는 plan mode를 통해 진행됩니다. 그 표현은 의도적입니다. “Plan mode는 당신이 아키텍트가 되어, 코드가 작성되기 전에 접근 방식을 그려 보도록 합니다.”1 에이전트는 컨텍스트를 수집하고, sub-agents를 띄워 병렬로 탐색할 수 있으며, 당신이 읽고 인라인으로 편집한 다음 구현이 시작되기 전에 승인하는 마크다운 형식의 계획을 만들어냅니다.6
Plan mode는 구현을 검토 단계로 바꿉니다. 큐에 쌓인 메시지와 에이전트의 명확화 질문은 코드가 안착하기 전에 Apple이 “촘촘한 소통 루프”라 부르는 것을 만들어냅니다.
Apple은 에이전트형 워크플로에서 왜 계획에 더 무게가 실리는지 솔직합니다. “Xcode에서 에이전트로 빌드하면 아이디어를 기능으로 너무 빠르게 바꿀 수 있어서… 올바른 계획을 확보하는 것이… 더 중요한 단계가 됩니다.” 그 대가는 “정제 작업이 잘못 지어진 기초를 고치는 데 쓰이는 대신, 당신이 원하는 기능을 다듬는 데 쓰인다는 것”입니다.1 코드를 생성하는 비용이 0에 가까워지면, 잘못된 코드를 생성하는 비용도 함께 떨어지고, 유일한 방어선은 당신이 실제로 검토한 계획뿐입니다.
두 가지 상호작용 세부 사항이 이 루프를 작동하게 합니다. 큐에 쌓인 메시지를 통해 에이전트를 방해하지 않고도 요구 사항을 추가할 수 있습니다(“이렇게 메시지를 큐에 넣으면 에이전트가 현재 하고 있는 일을 끝낼 때까지 기다리는 대신, 떠오르는 순간에 내 아이디어를 표현할 수 있습니다”).1 그리고 에이전트는 명확화 질문을 되돌려 묻습니다. 그래서 데모에서 개발자는 에이전트가 제안한 목록에서 어떤 인사이트 지표를 표면화할지 고릅니다. 그 결과는 개발자가 고무도장을 찍은 계획이 아니라, 함께 작성한 계획입니다.
그다음은 검증입니다. 에이전트는 Xcode의 빌드 도구를 사용해 컴파일 에러에 부딪히고, “빌드 에러가 에이전트에게 직접 전달되기” 때문에 반복합니다.1 현재 실행 대상에서 프리뷰를 아티팩트로 렌더링하고, Device Hub를 통해 iPad simulator에서 앱을 실행하며, 기존 테스트 스위트에 맞춰 유닛 테스트를 작성합니다. “에이전트는 새 변경 사항을 검증하기 위한 전체 테스트 스위트를 작성했고, 새로운 테스트 케이스 12개가 모두 통과하는 것을 실행하고 확인할 수 있었습니다.”1 이것이 일반적인 챗봇과 구별되는 핵심 차이입니다. 에이전트는 당신이 손에 들었을 바로 그 도구들로 자신의 피드백 루프를 스스로 닫습니다.
프로토타이핑은 넓게 펼치는 루프다
UI 프로토타이핑 세션은 작업을 기계에 넘기는 데 가장 강하게 반발하는 세션이며, 바로 그래서 가장 유용합니다. Apple Design Team의 프로토타이퍼 Sam은 그 규칙을 두 번 말합니다. “비판적 사고를 이 도구들에 위임하지 마세요,” 그리고 “코딩 에이전트를 당신의 프로토타이핑 과정에서 최고의 경험이 무엇인지 발견하도록 돕는 협업자로 생각하세요. 기억하세요, 최종 결정권은 항상 당신에게 있습니다.”2
세션은 임의의 레이아웃에 당신을 묶어 버리는 모호한 프롬프트와, 나란히 평가할 수 있도록 이름이 붙은 10개의 Swift 프리뷰 변형을 요청하는 구체적인 프롬프트를 대비시킵니다.
이 기법은 “넓게 펼치고, 리믹스하고, 반복하기”입니다.2 “독서 모임을 관리하는 UI를 만들어 줘” 같은 모호한 프롬프트는 당신이 묶이게 되는 임의의 레이아웃을 만들어냅니다. 더 나은 프롬프트는 여러 변형을 요청하고, 기능을 명시적으로 이름 짓고, 스타일적 단서(커피숍의 따뜻함, 종이와 타이포그래피의 느낌)를 주며, 각 변형에 고유한 이름의 Swift 프리뷰를 부여합니다. 데모에서는 이것이 클릭으로 오갈 수 있는 10개의 서로 다른 방향을 만들어내고, 그다음 당신은 에이전트에게 어떤 요소들을 조합할지 알려 줍니다.2 프리뷰가 리빌드 없이 캔버스에서 렌더링되기 때문에, 루프가 충분히 촘촘해서 디자인을 일회용처럼 다룰 수 있습니다.
두 가지 정제 도구가 메인 에이전트 워크플로로 이어집니다. 이미지 첨부를 통해 텍스트를 넘어선 의도를 전달할 수 있고, 대표 세션에서 개발자는 iPad의 Freeform에서 차트를 스케치해 보내고, 에이전트는 그 스케치를 그에 맞는 Swift Charts 선 그래프로 옮기면서 도중에 프리뷰를 렌더링해 스스로 검증합니다.1 인라인 주석은 더 날카로운 도구입니다. “주석은 무엇을 바꿀지만 말하는 게 아니라, 어디서 바꿀지를 보여 줍니다. 그래서 결과가 정확하고 당신이 의도한 바로 그것에 범위가 맞춰집니다.”1 페이드인 애니메이션을 위한 줄과 추세 색상을 위한 줄을 가리키면, 주변 코드가 컨텍스트가 됩니다. 애니메이션에 한해서는, Sam은 에이전트에게 애니메이션을 이름이 붙은 단계들로 분해한 나란한 튜닝 패널을 만들어 달라고 요청하길 권합니다. 그러면 컨텍스트를 전환하지 않고도 스프링 강성과 시차 타이밍을 조정할 수 있습니다.2
현지화는 String Catalog를 통해 진행된다
현지화는 오케스트레이션 이야기가 구체화되는 지점이자, Apple의 통합 우위를 외부에서 가장 따라 하기 어려운 지점입니다. 그 토대는 수년간의 String Catalog 작업 위에 세워졌습니다. 카탈로그는 문자열이 어디서 쓰이는지를 추적하기 시작했고, 그다음 어떻게 쓰이는지를 추적해 코멘트를 자동 생성했으며, Xcode 27은 그 컨텍스트를 에이전트에게 가져옵니다. “Xcode 27부터는 코딩 에이전트를 사용해 Xcode에서 문자열을 직접 번역할 수 있습니다.”3
에이전트는 프로젝트를 준비하고, 모든 타깃을 빌드해 현지화 가능한 문자열을 찾아내고, String Catalog를 생성한 다음, 번역을 sub-agents로 팬아웃합니다. 각 sub-agent는 문자열별 컨텍스트를 함께 들고 갑니다.
흐름은 정밀합니다. 에이전트가 Xcode에게 프로젝트를 준비하라고 지시하면, Xcode는 언어를 추가하고 모든 타깃을 빌드해 모든 현지화 가능한 문자열을 찾아내며, 빠진 String Catalog는 자동으로 생성됩니다.3 그다음 에이전트는 문자열을 배치로 나누고 “번역 작업을 개별 subagent들에게 위임”하는데, 각 subagent에게는 그 문자열이 어디서 쓰이는지, 비슷한 용어의 문자열은 무엇인지, 같은 문자열이 다른 언어에서 어떻게 번역되었는지에 대한 컨텍스트가 전달됩니다.3 복수형 처리는 이 통합이 결실을 맺는 좋은 예입니다. %lld items의 경우, “Xcode가 sub-agents에게 언어와 무관하게 어떤 변형이 필요한지 항상 알려 주기” 때문에 sub-agent는 올바른 프랑스어 변형(“un élément,” “deux éléments”)을 만들어냅니다.3
곱씹어 볼 만한 것은 모호성 해소 문제입니다. Localization 팀의 Avery는 “book”이라는 단어로 이야기를 엽니다. 이 단어는 한 문장에서는 읽는 물건이고 다른 문장에서는 호텔 예약을 뜻하며, 대부분의 언어에서 별개의 번역을 가집니다. “추가 컨텍스트가 없으면 잘못된 번역이 선택될 수 있습니다.”3 String Catalog가 그 컨텍스트를 제공하고, Apple은 그 위에 언어별 스타일 가이드와 당신이 작성하는 어떤 지침이든 덧입힙니다. 권장되는 패턴은 용어집, 번역 금지 용어, 톤 메모를 담은 TRANSLATION.md 파일로, 에이전트가 번역 작업에서만 이를 로드하도록 AGENTS.md와는 분리해 둡니다.3 데모에서 개발자는 “landmarks”에 대한 기본값 “lieux d’intérêt”를 보다 캐나다식인 “attraits”로 재정의하고, 이후 관련 없는 별개의 기능이 카탈로그의 문자열 간 메모리를 통해 자동으로 “attraits”를 가져옵니다. 이는 “기본값으로는 선택하지 않았을 번역”입니다.3
한계에 대한 솔직함이 간직할 만한 대목입니다. Apple은 일부 언어는 모델 학습 데이터에 덜 등장해 번역이 더 나쁠 수 있다고 짚고, 장기간 일관성이 필요한 작업에는 대용량 컨텍스트 모델을 권하며, 당신이 구사하지 못하는 언어에서는 코드를 읽어내는 우위가 증발한다고 직설적으로 말합니다. “유창하게 구사하지 못하는 언어로 문자열을 번역하는 데 에이전트를 쓸 때 그 우위는 사라집니다.”3 그 해답은 원어민의 TestFlight 피드백, 그리고 프랑스어 문장이 영어보다 길어지기 때문에 잘림을 일찍 잡아내도록 프리뷰에서 현지화된 UI를 렌더링하는 것입니다. 집중 작업을 위한 언어별 Generate Translations 버튼은 String Catalog 자체에 들어 있습니다.4
Xcode Cloud는 에이전트 워크플로의 CI 절반이다
에이전트가 당신으로 하여금 더 많은 코드를 더 빠르게 쓰게 만든다면, 무언가는 회귀를 잡아내야 하고, Apple의 답은 설정이 눈에 띄게 짧아진 Xcode Cloud입니다. Xcode Cloud 팀은 그 경계를 명시적으로 긋습니다. “Xcode에 에이전트 지원이 도래하면서, 많은 개발자가 그 어느 때보다 더 많은 코드를 쓰고 있습니다… 하지만 코드와 새 기능의 빠른 속도를 어떻게 확장하고 따라잡으며, 버그와 성능 문제가 고객의 기기에 도달하기 전에 잡아낼 수 있을까요? Xcode Cloud는 품질을 위한 당신의 동반자입니다.”5
온보딩은 이제 저장소를 연결하고, 기본 워크플로를 수락하고, 첫 빌드를 시작하는 것입니다. 소스는 임시 VM에서 실행되며 절대 저장되지 않습니다.
설정은 Get Started 버튼, 당신의 서명 설정에서 미리 채워지는 개발자 팀, 저장소 연결, 그리고 첫 빌드로 이루어지며, Apple은 “Xcode Cloud 빌드는 임시 가상 머신에서 실행됩니다… 소스 코드는 절대 저장되지 않으며 Apple은 그것에 접근할 방법이 없습니다”라고 강조합니다.5 내부 TestFlight로의 배포는 생성된 워크플로를 통해 이루어지고, 같은 흐름으로 저장소를 다시 인증하지 않고도 같은 작업 공간에서 두 번째 앱(macOS)을 온보딩합니다.5
자동화 계층은 이것이 평범한 CI를 넘어서는 지점입니다. 웹훅은 빌드 생명 주기인 생성, 시작, 완료 시점에 발화하여 당신이 선택한 엔드포인트로 페이로드를 전송하는데, 데모는 이를 통해 빌드를 맞춤형 대시보드에 연결합니다.5 그리고 다중 저장소 지원은 공유 프레임워크를 자체 저장소로 분리하는 현실적인 경우를 처리합니다. 추가 Git 원격을 더하면 “이제 Xcode Cloud가 모든 올바른 의존성을 갖춘 채 프로젝트를 빌드할 수 있습니다.”5 “Xcode 27의 새로운 기능” 세션은 전체 요점을, 그렇지 않으면 놓쳤을 회귀를 잡아내는 것으로 규정합니다. “회귀가 슬쩍 끼어들었는지도 모른 채 업데이트를 출시하는 것은 아무도 시도하고 싶지 않은 곡예비행 묘기입니다.”7
ACP는 당신이 선택한 에이전트를 Xcode로 데려온다
위에서 다룬 Apple Document Search와 맞춤 도구 이야기는 그림의 MCP 측면입니다. Xcode 자신의 에이전트가 IDE 안에서 하는 도구 호출이죠. 27 주기는 두 번째이자 별개의 메커니즘을 더합니다. State of the Union에서 Apple은 이렇게 발표했습니다. “오늘, Xcode가 Agent Client Protocol 지원을 추가하여 호환되는 어떤 에이전트든 Xcode로 데려올 수 있습니다. ACP 지원과 Gemini 통합은 오늘 제공되는 Xcode 26 업데이트로 출시됩니다. 그리고 Xcode 27에는 더 많은 것이 올 예정입니다.”8 이 정밀함이 중요합니다. ACP는 Xcode 27을 기다리지 않습니다. WWDC 주간에 출시된 Xcode 26 업데이트로 제공되며, 더 깊은 통합은 27에서 도착합니다.
MCP와의 구별이 핵심입니다. MCP는 Xcode 에이전트에게 호출할 도구를 제공하고, ACP는 에이전트 그 자체를 데려옵니다. Apple은 이를 플러그인 시스템을 통해 설명합니다. “Agent Client Protocol을 사용하면 플러그인이 당신이 선택한 에이전트를 데려올 수 있습니다.”8 설치는 명령줄 호출이거나 Xcode에 바로 붙여 넣는 git URL이며, Figma와 GitHub 같은 파트너는 원클릭 설정을 제공합니다.8 그래서 agent skills와 MCP 도구를 나르던 바로 그 플러그인 포맷이 이제 에이전트 전체도 나릅니다.
코딩 인텔리전스 패널이 그 두 번째 경로에 손을 뻗을 만한 이유를 채워 주었습니다. WWDC 2026 Coding Intelligence, Machine Learning & AI Group Lab의 로컬에서 전사된 녹음을 의역하면, 패널은 ACP를 LM Studio나 Ollama류 런타임 같은 제공자를 통해 로컬에 호스팅된 모델과 대화하는 에이전트를 꽂는 방법으로 묘사했습니다. 그래서 당신 자신의 기기에서 돌아가는 모델이 Xcode를 구동할 수 있다는 것입니다.10 그들은 동일한 MCP 대 ACP의 경계를 그으면서, ACP 에이전트가 더 오래된 단일 트랜스크립트 챗 제공자 경로보다 더 유능하다고 규정했습니다. 챗 제공자는 하나의 대화인 반면, ACP 에이전트는 sub-agents, 상태 관리, 파일 I/O, 그리고 단일 교환보다 훨씬 오래 도는 에이전트형 루프를 데려옵니다.10 별도의 초보자 지향 랩이 그 역량 격차에 대략적인 수치를 붙였습니다. 패널은 챗 모드의 도구 수를 대략 10~15개로, Xcode에서 에이전트 모드가 쓸 수 있는 도구 약 60개에 대비시켰습니다. 그래서 에이전트 경로는 IDE 표면의 훨씬 더 많은 부분에 닿습니다.11 같은 패널은 세 가지 모드가 작동하는 시간 지평을 스케치했습니다. 예측 완성은 몇 초를 아끼고, 챗은 수십 초 동안 돌며, 1년 전 약 30분 돌던 에이전트는 이제 한 시간 이상 돌면서, 에이전트가 작업할 시간을 더 벌수록 그 범위도 커집니다.11
simulator 상호작용은 Xcode 27과 함께 새로 도착한 부분입니다. 같은 패널은 에이전트가 simulator를 직접 구동하면서 탭하고, 스와이프하고, 입력한 다음, 접근성 트리와 스크린샷을 되읽어 화면에 무엇이 있는지 파악한다고 묘사했습니다.10 에이전트는 그렇게 학습한 상호작용을 반복 가능한 UI 테스트로 바꾸어서, 직접 손으로 발견한 흐름이 에이전트 없이도 실행하는 테스트가 됩니다. 패널은 에이전트를 몇 시간 동안 돌려 버그를 사냥하고 어느 영역에 가장 주의가 필요한지 보고하게 한 사례를 묘사했습니다.10 이는 IDE 내 에이전트가 이미 빌드 및 테스트 도구에 맞춰 돌리는 바로 그 자기 검증 루프를, 이제 실행 중인 앱까지 확장해 닫습니다.
Xcode 디렉터 Ken Orr는 Day 4 Dub Dub Daily 인터뷰에서 이 방식으로 잘 작업하는 법을 규정하는 개인적 기법을 들려주었습니다. 그는 “에이전트에게 기본적으로 무엇을 할지 명세를 먼저 적어 두게 한 다음 작업을 시키”라고 합니다. “그래서 에이전트는 명세를 적고, 그다음 코드를 쓰고, 그다음 제가 후속으로 시켜서, 자신이 쓴 것을 검증할 뿐 아니라 그 명세에 있는 모든 것을 테스트하는지도 확인하는 일련의 테스트를 만들게 합니다.”9 그가 꼽는 대가는 오래갑니다. “당신의 앱이 무엇을 하는지에 대한 일종의 살아 숨 쉬는 정의를 갖게 됩니다.”9 이는 앞서의 plan mode 논거, 즉 명세가 먼저, 그다음 코드, 그다음 코드를 명세에 다시 묶는 테스트라는 흐름과 맞아떨어집니다. 에이전트가 만들어내는 변화에 대해 Orr는 분명하게 말했습니다. “에이전트와 상호작용할 때 당신은 자신을 한 단계 끌어올릴 수 있고… 그래서 훨씬 더 빠르게 최종 결과에 도달합니다.”9
이것이 Claude Code 옆에서 차지하는 자리
이미 외부 코딩 에이전트를 돌리고 있다면 떠오르는 분명한 질문은, IDE 내 에이전트가 그것을 대체하느냐입니다. 근거 있는 답은, 둘은 서로 다른 문제를 풀며, 그 사이의 이음매가 흥미로운 영역이라는 것입니다.
Xcode 27의 에이전트는 Apple만이 연결할 수 있는 것들에서 이깁니다. 에이전트가 스스로 검증하는 빌드, 프리뷰, 테스트 도구, 최신 프레임워크 심볼을 위한 Apple Document Search, 그리고 외부 도구가 볼 수 없는 String Catalog의 누적된 문자열별 현지화 컨텍스트입니다.13 이것들은 모델이 아니라 통합이며, 바로 그것이 오래가는 우위입니다. Claude Code 같은 외부 에이전트는 Apple 툴체인 바깥에서 이깁니다. 셸, Swift와 백엔드를 가로지르는 저장소 전반의 리팩터, 당신이 이미 만들어 둔 맞춤 MCP 도구, 그리고 모든 프로젝트에서 동일한 워크플로입니다.
두 가지는 제가 App Intents 대 MCP 도구 글에서 계속 돌아오는 바로 그 경계를 따라 공존합니다. Apple의 에이전트는 앱과 그 빌드 그래프 안에서 유창하고, 범용 에이전트는 당신의 기기 전체에 걸쳐 유창합니다. Apple은 문을 잠그지 않았습니다. Xcode 에이전트는 당신 자신의 도구를 추가하는 것을 지원하고(“일부는 Xcode에 내장되어 있고, 일부는 Apple 프레임워크 팀이 제공하며, 당신 자신의 것도 추가할 수 있습니다”),1 Apple은 외부 에이전트가 읽는 바로 그 파일인 AGENTS.md 관례로 표준화했습니다.3 Xcode + Claude Code 설정에서처럼 MCP를 통해 Xcode를 외부 에이전트에 연결해 두었다면, 올바른 모델은 양자택일이 아니라 계층화된 것입니다. 빌드 루프가 촘촘한 작업에는 IDE 에이전트를, IDE의 경계를 넘는 모든 것에는 외부 에이전트를 쓰는 것이죠.
한 가지 더. Apple은 모델 품질이, 특히 언어 간에 차이가 난다는 점을 솔직히 밝히고, 일관성이 중요한 장기 작업에는 대용량 컨텍스트 모델을 권합니다.3 이는 Foundation Models 에이전트형 워크플로의 트레이드오프와 맞물립니다. 값싸고, 사적이고, 빠른 차례에는 온디바이스 모델을, 컨텍스트 윈도가 필요한 작업에는 더 큰 모델을 쓰는 것입니다. 당신 자신의 에이전트 코드를 위해 모델을 고를 때 하는 바로 그 계산이 Xcode 안에서도 적용됩니다.
FAQ
Xcode 27에서 코딩 에이전트는 어떻게 시작하나요?
Xcode 툴바 중앙의 버튼을 사용해 대화나 작업을 시작하세요. 탭 및 분할과 함께 작동하는 에디터 패널로 열립니다. 옵션-시프트-클릭하면 별도의 패널로 열려 파일을 나란히 읽을 수 있습니다. 코딩 어시스턴트 사이드바는 병렬 대화들을 나열하고 입력이 필요한 대화에 표시를 남깁니다.16
Plan mode란 무엇이며 언제 써야 하나요?
/plan 슬래시 명령으로 발동되는 plan mode는 에이전트가 코드를 쓰기 전에 컨텍스트를 수집하고 마크다운으로 된 아키텍처를 만들어내게 합니다. 당신은 그것을 검토하고, 인라인 피드백을 주거나 메시지를 큐에 넣고, 승인해 구현하게 합니다. 사소하지 않은 어떤 기능에든 사용하세요. 코드 생성이 빠를 때, 계획을 제대로 잡는 것이야말로 당신이 잘못 지어진 기초를 다듬는 일을 막아 줍니다.1
Xcode 27 현지화는 일반 LLM 번역과 어떻게 다른가요?
에이전트는 각 문자열이 어디서, 어떻게 쓰이는지를 추적하는 String Catalog를 통해 번역하고, 그 위에 Apple의 언어별 스타일 가이드를 덧입힙니다. 작업을 sub-agents로 팬아웃하며, 각각은 문자열이 다른 언어에서 어떻게 번역되었는지를 포함한 문자열별 컨텍스트를 받습니다. 재정의를 위해 TRANSLATION.md 용어집을 추가할 수 있습니다. 그 컨텍스트 덕분에 컨텍스트 없는 모델이 틀리는 “book” 같은 단어의 모호성을 해소할 수 있습니다.3
IDE 내 에이전트가 Claude Code나 다른 외부 에이전트를 대체하나요?
아니요. Xcode 에이전트는 빌드 루프가 촘촘한 작업에서 가장 강하며, Xcode의 빌드, 프리뷰, 테스트 도구에 맞춰 스스로 검증하고 최신 Apple 문서를 읽습니다. 외부 에이전트는 셸, 저장소 전반의 다중 언어 리팩터, 그리고 맞춤 MCP 도구에서 가장 강합니다. Apple은 당신 자신의 도구를 추가하는 것을 지원하고 공유 AGENTS.md 관례를 사용하므로, 설정은 양자택일이 아니라 계층화됩니다.13
Apple은 왜 에이전트와 함께 Xcode Cloud를 권하나요?
에이전트가 개발자로 하여금 더 많은 코드를 더 빠르게 쓰게 만들어서 회귀 위험을 높이기 때문입니다. Xcode Cloud는 소스를 절대 저장하지 않는 임시 VM에서 여러 기기와 OS 버전에 걸쳐 병렬로 빌드하고 테스트하며, 선택한 브랜치로의 모든 커밋에서 실행되고7, 이제 웹훅과 다중 저장소 빌드를 지원합니다. 더 높아진 코드 속도를 받쳐 주는 안전망입니다.5
전체 Apple Ecosystem 클러스터: 외부 에이전트에서 Xcode를 구동하기 위한 Xcode + Claude Code MCP 설정, 생성된 코드를 둘러싼 품질 게이트를 강제하기 위한 Apple 개발용 hooks, 온디바이스 대 대형 모델 선택을 위한 Foundation Models 에이전트형 워크플로, 그리고 Apple의 도구 표면이 개방형 에이전트 생태계와 만나는 지점을 다룬 App Intents 대 MCP 도구 프런티어. 허브는 Apple Ecosystem 시리즈에 있습니다. 에이전트로 iOS를 빌드하는 더 넓은 그림은 iOS Agent Development 가이드를 참고하세요.
References
-
Apple, WWDC26 session 259, “Xcode, agents, and you.” developer.apple.com/videos/play/wwdc2026/259. Source for the transcript/artifacts split, project-wide agent context, Apple Document Search, plan mode and queued messages, build/preview/test self-verification (12 passing test cases), inline annotations, image attachments, sub-agent orchestration for localization and accessibility, and adding your own tools. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩
-
Apple, WWDC26 session 227, “Create UI prototypes using agents in Xcode.” developer.apple.com/videos/play/wwdc2026/227. Source for “do not delegate critical thinking,” the go-wide/remix/repeat loop, named Swift preview variations, and the side-by-side tuning panel with phased animations. ↩↩↩↩↩
-
Apple, WWDC26 session 213, “Translate your app using agents in Xcode.” developer.apple.com/videos/play/wwdc2026/213. Source for String Catalog context history, the prepare/build/discover flow, sub-agent batching, plural variations, the “book” disambiguation, the “attraits” override and cross-feature reuse,
TRANSLATION.mdandAGENTS.mdguidance, model-quality and language-frequency caveats, and TestFlight review. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Apple, WWDC26 session 258, “What’s new in Xcode 27.” developer.apple.com/videos/play/wwdc2026/258. Source for the per-language Generate Translations button in the String Catalog and the agent using full project context plus Xcode’s language-specific style guidance. ↩↩
-
Apple, WWDC26 session 261, “Build, deliver, and automate with Xcode Cloud.” developer.apple.com/videos/play/wwdc2026/261. Source for the agents-raise-code-velocity framing, the Get Started onboarding flow, ephemeral VMs that never store source, internal TestFlight distribution, the webhook build lifecycle, and additional-repository support. ↩↩↩↩↩↩↩
-
Apple, WWDC26 session 258, “What’s new in Xcode 27.” developer.apple.com/videos/play/wwdc2026/258. Source for the transcript moving into the editor pane, the toolbar entry point for conversations, plan-mode review with inline feedback, and the coding assistant sidebar for parallel conversations. ↩↩↩
-
Apple, WWDC26 session 258, “What’s new in Xcode 27.” developer.apple.com/videos/play/wwdc2026/258. Source for the regression framing (“a stunt plane maneuver that no one wants to try”) motivating Xcode Cloud adoption. ↩↩
-
Apple, WWDC26 session 102, “Platforms State of the Union.” developer.apple.com/videos/play/wwdc2026/102. Source for Agent Client Protocol support, ACP and Gemini shipping in an Xcode 26 update available during WWDC week with more coming in Xcode 27, the plugin bringing an agent of your choice, and the command-line / git-URL install plus one-click setup from Figma and GitHub. ↩↩↩
-
Apple, WWDC26 session 399, “Dub Dub Daily: Day 4.” developer.apple.com/videos/play/wwdc2026/399. Ken Orr, Director of Xcode, interviewed on Day 4. Source for the spec-then-code-then-tests technique, the “living, breathing definition of what your app does” framing, and “elevate yourself up one level when you’re interacting with agents.” ↩↩↩
-
Apple, WWDC26 session 8121, “Coding Intelligence, Machine Learning & AI Group Lab.” developer.apple.com/videos/play/wwdc2026/8121. Paraphrased from a locally transcribed recording of the WWDC 2026 Coding Intelligence, Machine Learning & AI Group Lab; Apple publishes no official captions for the labs. Source for ACP plugging in agents that talk to locally hosted models (LM Studio, Ollama-style providers), the ACP-agent-versus-chat-provider capability contrast (sub-agents, state, file I/O, longer loops), and the Xcode 27 simulator interaction (tap/swipe/type, accessibility tree and screenshots, repeatable UI tests, multi-hour bug hunts). ↩↩↩↩
-
Apple, WWDC26 session 8007, “Coding Intelligence for Beginners Group Lab.” developer.apple.com/videos/play/wwdc2026/8007. Paraphrased from a locally transcribed recording of the WWDC 2026 Coding Intelligence for Beginners Group Lab; Apple publishes no captions for the labs, so the figures here are approximate and the wording is a paraphrase, not a quotation. Source for the roughly 10-to-15 chat-mode tool count against roughly 60 tools in agent mode, and the completion-chat-agent time-horizon progression (seconds, tens of seconds, and agents moving from around 30 minutes a year ago to an hour or more now). ↩↩