Claude Agent SDK는 대화 상태를 유지하고 영구적인 환경에서 명령을 실행한다는 점에서 기존의 상태 비저장(stateless) LLM API와 다릅니다. 이 가이드에서는 프로덕션에서 SDK 기반 에이전트를 배포하기 위한 아키텍처, 호스팅 고려 사항 및 모범 사례를 다룹니다.
기본 샌드박싱을 넘어선 보안 강화(네트워크 제어, 자격 증명 관리, 격리 옵션 포함)에 대해서는 보안 배포를 참조하세요.
보안과 격리를 위해 SDK는 샌드박스 컨테이너 환경 내에서 실행해야 합니다. 이를 통해 프로세스 격리, 리소스 제한, 네트워크 제어 및 임시 파일 시스템을 제공합니다.
SDK는 명령 실행을 위한 프로그래밍 방식의 샌드박스 구성도 지원합니다.
각 SDK 인스턴스에는 다음이 필요합니다:
런타임 종속성
npm install -g @anthropic-ai/claude-code리소스 할당
네트워크 접근
api.anthropic.com으로의 아웃바운드 HTTPS상태 비저장 API 호출과 달리, Claude Agent SDK는 다음과 같은 장기 실행 프로세스로 작동합니다:
여러 제공업체가 AI 코드 실행을 위한 안전한 컨테이너 환경을 전문으로 합니다:
자체 호스팅 옵션(Docker, gVisor, Firecracker)과 상세한 격리 구성에 대해서는 격리 기술을 참조하세요.
각 사용자 작업에 대해 새 컨테이너를 생성한 후, 완료되면 삭제합니다.
일회성 작업에 가장 적합하며, 작업이 완료되는 동안 사용자가 AI와 상호작용할 수 있지만, 완료되면 컨테이너가 삭제됩니다.
예시:
장기 실행 작업을 위해 영구적인 컨테이너 인스턴스를 유지합니다. 종종 수요에 따라 컨테이너 내에서 여러 Claude Agent 프로세스를 실행합니다.
사용자 입력 없이 자율적으로 행동하는 에이전트, 콘텐츠를 제공하는 에이전트 또는 대량의 메시지를 처리하는 에이전트에 가장 적합합니다.
예시:
데이터베이스 또는 SDK의 세션 재개 기능에서 가져온 히스토리와 상태로 하이드레이션되는 임시 컨테이너입니다.
사용자가 간헐적으로 상호작용하여 작업을 시작하고, 작업이 완료되면 종료되지만 계속할 수 있는 컨테이너에 가장 적합합니다.
예시:
하나의 글로벌 컨테이너에서 여러 Claude Agent SDK 프로세스를 실행합니다.
에이전트들이 긴밀하게 협업해야 하는 경우에 가장 적합합니다. 에이전트들이 서로의 작업을 덮어쓰는 것을 방지해야 하므로 이것은 가장 인기가 적은 패턴일 가능성이 높습니다.
예시:
컨테이너에서 호스팅할 때, SDK 인스턴스와 통신하기 위해 포트를 노출합니다. 애플리케이션은 외부 클라이언트를 위한 HTTP/WebSocket 엔드포인트를 노출할 수 있으며, SDK는 컨테이너 내부에서 실행됩니다.
에이전트 서비스의 주요 비용은 토큰이며, 컨테이너는 프로비저닝하는 사양에 따라 다르지만 최소 비용은 시간당 약 5센트입니다.
이는 제공업체에 따라 다를 수 있으며, 각 샌드박스 제공업체는 샌드박스가 종료될 수 있는 유휴 타임아웃에 대해 다른 기준을 설정할 수 있습니다. 사용자 응답이 얼마나 자주 있을 것으로 예상되는지에 따라 이 타임아웃을 조정해야 합니다.
Claude Code CLI는 semver로 버전이 관리되므로, 모든 호환성을 깨는 변경 사항은 버전이 지정됩니다.
컨테이너는 단순히 서버이므로 백엔드에 사용하는 동일한 로깅 인프라가 컨테이너에도 작동합니다.
에이전트 세션은 타임아웃되지 않지만, Claude가 루프에 빠지는 것을 방지하기 위해 'maxTurns' 속성을 설정하는 것을 권장합니다.
Was this page helpful?