CopilotForXcode

AI Coding ToolsIDESwift

★ 8,218주당 +1조회 6

무엇인가

Copilot for Xcode는 Xcode의 Source Editor Extension 슬롯에 등록되는 macOS 앱이다. 확장 자체는 얇은 진입점이고, 실제 작업은 호스트 앱이 등록하는 백그라운드 서비스가 수행한다. GitHub Copilot, Codeium, ChatGPT를 하나의 확장에서 함께 다루는 위치에 있다.

어떻게 동작하나

설치하면 `Copilot for Xcode.app`이 Applications 폴더에 놓이고, 첫 실행 시 launch agent를 만들어 `CopilotForXcodeExtensionService.app`을 백그라운드로 띄운다. Xcode에서 명령을 실행하면 확장이 이 서비스에 요청을 넘긴다. 코드 제안은 GitHub Copilot LSP(Node 필요)와 Codeium 언어 서버가 처리하며, Codeium 서버는 `~/Library/Application Support/com.intii.CopilotForXcode/Codeium/executable/`에 설치된다. 채팅과 Prompt to Code는 OpenAI API 키 또는 다른 LLM을 사용하고, 임베딩 모델은 채팅 기능의 일부에만 필요하다. API 키는 키체인에 저장되고 헬퍼 앱이 처음 접근할 때 암호 입력을 요구한다.

무엇과 다른가

제공자 선택을 호스트 앱 설정에서 바꾸는 구조다. `Service - Chat Model`과 `Service - Embedding Model`에서 모델을 정의하고, `Feature - Chat`에서 어떤 제공자를 쓸지 지정한다. Custom Commands로 채팅과 수정 동작을 사용자 정의 명령으로 확장할 수 있다. 제안 기능은 두 가지 표시 모드를 제공하며, gitignore에 포함된 파일은 채팅과 Prompt to Code가 직접 선택하지 않는 한 접근하지 않는다.

어떻게 쓰나

Homebrew 또는 최신 릴리스에서 `Copilot for Xcode.app`을 받아 Applications 폴더에 넣고 한 번 실행한다. System Settings에서 확장을 켠다. macOS 15는 `General > Login Items & Extensions > Xcode Source Editor`, macOS 14는 `Privacy & Security > Extensions > Xcode Source Editor` 경로다. `CopilotForXcodeExtensionService.app`에 Accessibility API 권한을 부여하고, Xcode Settings의 Key Bindings에서 `copilot`으로 필터링해 단축키를 지정한다. 전역 핫키도 설정할 수 있다.

전제와 한계

공용 네트워크 연결이 전제다. GitHub Copilot 사용자는 Node 설치와 활성 구독이, Codeium 사용자는 계정이 필요하다. 채팅과 Prompt to Code에는 유효한 OpenAI API 키가 있어야 한다. Folder Access와 Accessibility API 권한을 요구하며, 키 입력 감시가 우려되면 `CGEvent.tapCreate`, `AXObserver`, `AX___`를 코드에서 직접 확인하고 빌드하도록 안내한다. 업데이트 후에는 앱을 한 번 열고 Xcode를 재시작해야 확장이 다시 로드되고, 기능이 동작하지 않으면 권한을 제거 후 재부여한다.

유사 도구