에이전트 작업을 YAML로 선언하고 클러스터에서 안전하게 실행하는 방법
에이전트가 코드를 수정하고 테스트를 돌리는 동안, 그 작업이 격리된 공간에서 이루어지고 필요할 때 언제든 멈추거나 이어갈 수 있다면 어떨까요. AX는 에이전트 작업을 선언적으로 정의하고, 이를 샌드박스 안에서 실행하며, 대규모로 관리하는 런타임입니다. 쿠버네티스를 사용해 본 사람이라면 익숙한 구조로, 복잡한 에이전트 워크로드를 단순한 YAML 파일로 제어할 수 있게 합니다.
개발 중인 상태와 주요 변경 사항
AX와 그 일부 기능은 현재 활발한 개발 단계에 있습니다. 핵심 개념, 프로토콜, 사양이 계속 다듬어지고 있으며, 안정 버전 출시 전까지 주요 호환성 깨짐이 발생할 수 있습니다. 따라서 프로덕션 환경에 바로 적용하기보다는, 이러한 변화가 예상된다는 점을 인지하고 사용해야 합니다. 현재는 개념 검증과 초기 실험에 초점을 맞춘 도구로 보는 것이 적절합니다.
에이전트 워크로드를 위한 세 가지 원시 요소
에이전트는 상태가 없는 마이크로서비스나 일괄 처리 작업과는 다릅니다.
- Task 신뢰할 수 없는 에이전트 코드를 CPU와 메모리 한계가 있는 격리된 샌드박스에서 실행합니다.
- Workspace Git 저장소, MCP 서버, 스킬 패키지를 미리 구성해 모든 에이전트가 준비된 상태로 시작하도록 합니다.
- Model 플랫폼이 사용할 LLM을 설정하고, 자격 증명을 쿠버네티스 시크릿에서 안전하게 가져옵니다.
- 중단 및 재개 유휴 상태의 에이전트를 일시 중지하고, 정확히 멈춘 위치에서 다시 실행할 수 있습니다.
- 디버깅 실행 중인 에이전트 샌드박스에 셸로 접속해 내부 상태를 직접 확인할 수 있습니다.
쿠버네티스 기반 설치 및 실행
AX는 모든 작업을 Agent Substrate라는 샌드박스 실행 환경 위에서 스케줄링합니다. 따라서 클러스터에 Agent Substrate가 설치되어 있어야 하며, Go와 kubectl, ko, 컨테이너 레지스트리가 필요합니다. Agent Substrate는 ate-system 네임스페이스에 설치되며, AX는 이의 Control API를 통해 통신합니다. CLI는 go install 명령으로 설치하며, make deploy 명령으로 제어 평면을 배포합니다. 배포 과정에서는 PostgreSQL이 설치되고, ko를 이용해 제어 평면 이미지가 빌드 및 배포됩니다. 모든 구성은 ax-system 네임스페이스에 위치합니다.
kubectl 스타일의 CLI 인터페이스
ax CLI는 gRPC를 통해 제어 평면과 통신하며, kubectl과 유사한 구조를 따릅니다. apply, get, describe, delete 등 기본적인 명령 외에도 에이전트 특화 명령을 제공합니다. ax apply로 YAML 파일을 적용하고, ax get tasks로 작업 목록을 확인하며, ax describe task로 상세 정보를 볼 수 있습니다. 특히 ax ssh 명령을 사용하면 실행 중인 샌드박스에 직접 접속해 에이전트가 무엇을 하고 있는지 실시간으로 관찰할 수 있습니다. 또한 kubectx와 연동되어 활성 쿠버네티스 컨텍스트를 따라 자동으로 제어 평면에 연결됩니다.
안정성 확인이 필요한 초기 단계 도구
AX는 대규모 에이전트 워크로드를 관리하는 데 필요한 기본 구조를 제공하지만, 아직 안정 버전이 아닙니다. 핵심 사양과 프로토콜이 변경될 수 있으므로, 프로덕션 시스템에 의존하기보다는 개발 및 테스트 환경에서 먼저 검증하는 것이 좋습니다. Apache License 2.0으로 배포되며, Agent Substrate와의 의존 관계가 명확하므로 해당 인프라를 이미 구축한 팀에게 적합합니다. 에이전트 실행 환경의 격리와 스케줄링을 직접 관리해야 하는 상황에서, 선언적 방식을 선호한다면 AX를 검토해 볼 가치가 있습니다.