
IDE나 자체 제작 프론트엔드에서 AI agent로 ACP를 통해 연결하더라도, 클라이언트가 권한을 결정한다고 단정할 수는 없습니다.
요약
ACP(Agent Communication Protocol)를 통한 AI 에이전트 연결 시, 클라이언트가 아닌 서버가 권한과 정책을 결정하는 소유 경계의 중요성을 다룹니다. GitHub Copilot CLI의 사례를 통해 세션 관리와 도구 사용 권한의 분리 구조를 설명합니다.
핵심 포인트
- ACP 연결 시 클라이언트가 아닌 서버가 권한을 결정할 수 있음
- GitHub Copilot CLI는 서버 기동 시 도구와 추론 노력을 결정함
- 접속 대상 선택과 권한 선택은 별개의 개념임
- stdio와 TCP 방식에 따른 프로세스 수명 및 운영 책임의 차이
IDE나 자체 제작 프론트엔드에서 AI agent로 ACP (Agent Communication Protocol)를 통해 연결하더라도, 클라이언트(client)가 권한을 결정한다고 단정할 수는 없습니다.
GitHub Copilot CLI의 ACP server에서 흥미로운 점은 이 소유 경계(ownership boundary)가 상당히 명확하다는 것입니다. 공식 자료에서 확인한 범위로는, 세션(session) 측에서 작업 디렉토리와 MCP server는 전달할 수 있는 반면, 사용할 수 있는 tool과 reasoning effort는 server 기동 시에 결정되며, 그곳에서 생성·읽기되는 모든 세션에 초기 설정으로서 계승됩니다.
즉, 접속 대상을 선택하는 것과 권한을 선택하는 것은 별개입니다. 여러 편집 화면이나 agent가 동일한 장수명(long-lived) server에 연결한다면, endpoint 명뿐만 아니라 누가 그 process를 기동했는지까지 runtime profile로서 다루고 싶습니다.
stdio는 부모 process와 함께 종료되는 단일 client용입니다. TCP는 loopback으로 대기하며, 개별 client로부터 독립하여 남습니다. 동일한 ACP와 NDJSON이라 하더라도 수명과 운영 책임은 같지 않습니다.
사용 가능한 command도 통지되는 snapshot이 기준이며, 대화형 UI에 의존하는 기능에는 차이가 있습니다. 아직 public preview 단계로 변경될 가능성이 있으며, 이번에는 실제 기기 연결을 수행하지 않았습니다. 다만 "대응 여부"보다 "policy를 누가 소유하는가"를 먼저 읽어야 할 사례로서, 상당히 실용적이라고 생각합니다.
정보원: GitHub
AI 자동 생성 콘텐츠
본 콘텐츠는 X AI 사용법/팁의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기