기본 콘텐츠로 건너뛰기

AI와 함께 춤을.. 아니, 코딩을.. (5) - 에이전트 팀으로 컨텍스트 압축 해결하기

지난 포스팅에서 개발 환경을 모노레포로 통합 하여, 동일한 Claude 세션 안에서 앱과 서버들을 한꺼번에 개발할 수 있게 했다고 이야기했다. 덕분에 명세 동기화 문제나 연동 디버깅의 번거로움이 크게 줄었다. 그런데 이렇게 앱과 여러 서버를 하나의 세션에서 다루다 보면, 또 다른 효율 저하 요인이 생긴다. 바로 컨텍스트 사이즈 제약 이다. 컨텍스트 압축이라는 새로운 문제 요즘은 Max 요금제 기준으로 기본 1MB 컨텍스트를 제공해서 예전만큼 빡빡하지는 않다. 하지만 불과 두어 달 전까지만 해도 컨텍스트 크기가 지금보다 훨씬 작았다(그래도 다른 서비스보다는 컸다). 그래서 한꺼번에 많은 코드를 분석시키고 대화를 조금만 이어가면, 빈번한 컨텍스트 압축 이 발생하곤 했다. 컨텍스트 압축이 일어나면 대화의 맥락이 흐려지기 시작한다. 방금 전까지 이해하고 있던 내용을 다시 설명해야 하거나, 이미 정한 구현 방향을 잊고 다른 길로 가기도 한다. 모노레포로 프로젝트를 합친 직후에 이 문제가 두드러지게 나타났다. 해결: 에이전트 팀 구성하기 이 문제를 줄이기 위해 Claude Code가 지원하는 서브에이전트(Sub-agent) 기능 을 적극적으로 활용하기로 했다. 앱과 각 서버를 담당할 전문 에이전트를 만들고, 이들을 총괄할 팀 리더 에이전트 를 따로 두는 방식이다. 말 그대로 "에이전트 팀"을 꾸리는 셈이다. 페르소나 구성은 대략 이렇게 잡았다. 팀 리더 └─ 제품 전체 기획 / 각 개발자에게 업무 지시 앱 개발자 └─ 모바일 앱 개발에 능숙한 개발자 서버#1 개발자 └─ Node.js 개발에 뛰어난 개발자 서버#2 개발자 └─ Python 개발자 이렇게 담당 프로젝트의 특성에 맞춰 각 에이전트의 페르소나를 정의한다. 테스터 에이전트를 따로 두는 분들도 있는데, 나는 별도로 분리하지 않았다. 서브에이전트 생성은 Claude Code에서 프롬프트로 설정할 수 있고, 추가한 뒤에는 세션을 새로 ...

Xcode 15 - ipa is not a valid bundle.

 Xcode 15.0.1(15A507) 업데이트 후 ipa 파일을 생성해서 XCode의 Device 메뉴를 통해서 ipa 설치시 아래와 같은 오류가 발생합니다.


Error installing  'xxxxxx.ipa', ERROR: Error Domain=com.apple.dt.CoreDeviceError Code=3002 "Failed to install the app on the device." UserInfo={NSLocalizedDescription=Failed to install the app on the device., NSURL=file:///xxxxxx.ipa, NSUnderlyingError=0x600005c85c80 {Error Domain=com.apple.dt.CoreDeviceError Code=3000 "The item at xxxxxx.ipa is not a valid bundle." UserInfo={NSURL=file://xxxxxx.ipa, NSLocalizedDescription=The item at xxxxxx.ipa is not a valid bundle., NSLocalizedFailureReason=Failed to read the bundle.}}}

Domain: com.apple.dt.DVTCoreDevice

Code: -1

User Info: {

    DVTErrorCreationDateKey = "2023-11-20 06:30:34 +0000";

}

--



System Information


macOS Version 14.1 (Build 23B74)

Xcode 15.0.1 (22266) (Build 15A507)

Timestamp: 2023-11-20T15:30:34+09:00


ipa 파일이 유효하지 않은 번들이라는 오류 입니다. 


인증서, 프로비저닝 등은 Xcode에서 자동 생성하는 것을 사용하였고, 단말은 테스트 단말로 등록되어 있는 단말임에도 불구하고 설치를 할 수 없다고 오류가 출력됩니다.

프로비져닝 파일을 열어보면 해당 단말도 설치 가능한 단말로 등록되어 있는 것으로 봐서는 단말에 대한 인증 문제는 아닌 것 같습니다.


애플 개발자 커뮤니티에 동일한 문제가 베타 버전 시절에 이미 등록되었음(https://developer.apple.com/forums/thread/731240)에도 정식 버전에 수정이 되지 않았네요.


위 링크를 방문하면 몇가지 해결 방법들이 있습니다.

1) CFBundleName을 수정

2) iOS 단말에서 "신뢰하는 컴퓨터 지우기"를 수행

3) ipa 파일 내부에 있는 .app 파일 위치를 변경

4) CFBundleShortVersionString 수정

5) Finder 이용한 앱 설치


2번 방법은 되는 사람도 있고, 안되는 사람도 있고 저의 경우에는 후자에 속했습니다.

1, 4번 방법은 저에게는 해당되는 사항이 아니어서 시도를 안해봤습니다.

3번은 방법이 너무 과격해서 일단 보류했습니다.


5번 방법으로 다행히 문제를 해결하였습니다.

방법은 설치하려는 단말을 USB로 연결을 합니다. 이후 Finder의 사이드바에서 단말을 선택하고, ipa 파일을 열려 있는 iOS 디바이스 창으로 끌어 놓기를 하면 앱이 설치가 됩니다.


댓글