A 호스팅 에이전트는 제공업체의 클라우드에서 실행됩니다. 저장소 사본과 자격 증명을 제공하면 그곳에서 작업을 수행합니다. 반면 로컬 퍼스트 에이전트는 본인의 머신에서 실행되며, 런타임, 구독, 파일, 키가 머신에 그대로 유지되고 오직 대화 내용만 외부로 나갑니다.
두 방식 모두 합리적인 설계입니다. 코드, 신원, 비용이 위치하는 곳이 다를 뿐이며, 에이전트를 다른 사람과 공유하기 시작하면 이러한 차이는 더욱 중요해집니다.
호스팅 방식이 제공하는 가치와 치러야 할 대가
2026년 기준 대표적인 사례로는 Claude Code on the web과 OpenAI’s Codex cloud tasks가 있습니다. 두 서비스 모두 제공업체의 샌드박스 내에서 저장소 복제본을 대상으로 에이전트를 실행하며, GitHub의 OAuth 연동을 통해 제공업체에 발급된 token으로 git 인증을 처리합니다. 따라서 에이전트가 사용자의 로컬 자격 증명, SSH 키, 환경 변수에 절대 접근할 수 없습니다. 이는 실질적인 보안상의 이점입니다. 개발자의 노트북이 침해되더라도 에이전트 환경으로 유출되지 않으며, 범위가 잘못 지정된 작업이라도 샌드박스 외부의 파일은 건드릴 수 없습니다.
호스팅 에이전트는 항상 켜져 있습니다. 노트북이 절전 모드로 들어가지 않도록 유지할 필요도 없고, 아무것도 설치하지 않아도 됩니다. 사람이 개입하지 않는 24시간 플릿 환경에서는 결정적인 장점입니다.
하지만 그에 따르는 대가는 개선할 수 있는 성질의 것이 아니라 구조적인 문제입니다.
- 모든 것의 두 번째 사본. 에이전트가 작업할 수 있도록 제공업체가 사용자의 저장소와 작업 환경을 보관합니다. 이 사본에는 자체적인 접근 제어, 데이터 보관 주기, 침해 표면(breach surface)이 따릅니다.
- 두 번째 자격 증명 세트. GitHub, 클라우드 계정, 내부 API용 token이 제공업체에 발급됩니다. token을 갱신하려면 제공업체에서도 동일하게 갱신해야 합니다.
- 이중 청구. 이미 보유한 구독에 더해, 혹은 이를 대신하여 호스팅 런타임 비용을 추가로 지불해야 합니다.
- 타인에 의해 결정되는 모델 선택권. 어떤 모델을 사용할 수 있는지, 언제 모델이 변경되는지는 호스트가 결정합니다.
로컬 퍼스트의 장점과 그에 따른 대가
로컬 퍼스트 에이전트는 내 머신에 이미 있는 것을 사용합니다. 이미 지불하고 있는 Claude Code 또는 Codex 구독, 이미 체크아웃해 둔 저장소, 키체인에 이미 보관된 키 등이 여기에 해당합니다. 어디에도 아무것도 복사되지 않습니다. 에이전트를 공유하더라도 다른 사람은 질문할 수 있을 뿐, 실제 작업은 여전히 사용자의 머신에서 수행됩니다.
그 대가는 가용성입니다. 머신이 잠들면 에이전트도 잠듭니다.
이에 대한 해결책은 아키텍처 측면이라기보다 실용적인 방식입니다. 로그인 시 시작되고 비정상 종료 후 재시작되도록 daemon을 서비스로 등록하고, 업무 시간 동안 머신을 깨워 두며, 받은 편지함에 요청을 큐잉하여 오프라인 상태에서도 아무것도 유실되지 않도록 하는 것입니다. 머신이 복귀하면 요청이 순서대로 실행됩니다.
신뢰 경계를 설정하는 두 가지 위치: 제공업체의 샌드박스 둘레에 설정하거나, 내 머신 둘레에 설정하고 룸을 그 외부에 두기.
클라우드 계층이 얼마나 얇아질 수 있는지
muti는 로컬 퍼스트이며, 흥미로운 설계상의 질문은 클라우드에 무엇을 보관하도록 허용할 것인가였습니다. 그에 대한 답은 다음과 같습니다. 룸만 보관하고, 룸이 머신을 가장할 수 있게 만드는 요소는 일절 보관하지 않는 것입니다.
세 가지 메커니즘이 이를 지탱합니다.
아웃바운드 전용. 머신의 daemon은 아웃바운드 연결을 통해 처리할 작업을 폴링합니다. 개방된 포트도, 터널도, 인바운드 경로도 없습니다. muti의 클라우드가 침해당하더라도 공격자가 할 수 있는 일은 요청을 큐에 넣는 것뿐이며, 이 요청 또한 사용자의 권한 규칙과 승인 절차의 제어를 받습니다. 공격자가 사용자의 파일에 직접 접근할 수는 없습니다.
파일이 아닌 이벤트. daemon은 무슨 일이 일어났는지를 기술하는 타임라인 이벤트를 발행합니다. 작업 트리를 업로드하지 않으며, 환경 변수나 키 파일을 읽어 어디론가 전송하는 일도 절대 없습니다.
중간 승인 단계. 머신이 사용자의 소유이므로, 다른 사람의 모든 요청에 대해 네 가지 위험한 작업 유형이 발생할 때마다 일시 중지되어 사용자의 확인을 거칩니다. 사용자의 자격 증명을 가진 호스팅 에이전트는 누구에게도 물어보지 않습니다.
선택 기준 표
muti가 런타임을 호스팅하지 않는 이유
“클라우드에서 실행” 버튼을 추가하는 것은 어렵지 않은 일입니다. 하지만 우리는 그렇게 하지 않았으며, 이는 의도적으로 배제한 비목표(non-goal)입니다. 런타임이 이동하는 순간 자격 증명과 저장소도 함께 이동하며, 소유자는 더 이상 승인 권한을 가진 주체가 되지 못합니다. 에이전트가 항상 확인을 거쳐야 하는 네 가지 작업에서 제공하는 모든 보장은 머신이 소유자의 것이라는 점에 기반합니다.
muti는 룸을 호스팅합니다. 에이전트는 원래 있던 자리에 그대로 머뭅니다.
자주 묻는 질문
“로컬 퍼스트”는 “오프라인”과 같은 뜻인가요? 아닙니다. 에이전트는 모델 제공업체에 접속하기 위해 네트워크가 필요하고, muti는 메시지를 전달하기 위해 네트워크가 필요합니다. 로컬 퍼스트는 머신의 연결 여부가 아니라, 작업과 시크릿이 실제로 존재하는 위치를 의미합니다.
muti의 클라우드를 직접 호스팅할 수 있나요? 룸 계층의 셀프 호스팅은 1인용 오프라인 지원 모드로 로드맵에 포함되어 있습니다. daemon과 클라우드는 이미 일반 API를 통해 통신하고 있습니다.
머신이 여러 대인 경우는 어떻게 하나요? 각각 연결하면 됩니다. 에이전트는 머신 및 작업 디렉터리에 연결되며, daemon이 보고하는 주소를 통해 머신을 구분할 수 있습니다.
이미 우수한 에이전트의 비용을 지불하고 있고 이를 현재 위치에 그대로 유지하고 싶다면, 룸을 만들어 주세요.
게시일 · 수정일