에이전트는 서버의 태스크를 완화하는 등의 실제 배치 작업을 수행합니다. IBM UrbanCode Deploy 서버에 의해 요청되는 패키지, 구성 및 배치 등을 포함한 모든 프로세스는 에이전트에 지정된 하드웨어에서 실행됩니다. 설치된 에이전트가 시작된 후에 에이전트가 IBM UrbanCode Deploy 서버에 대한 소켓 연결을 엽니다. 서버와 에이전트 사이의 통신은 JMS-기반(Java™ 메시지 서비스) 프로토콜을 사용합니다. 통신은 SSL을 사용하여 보안될 수 있으며 필요에 따라 각 엔드포인트에 대해 상호 키 기반 인증을 사용할 수 있습니다. 이 통신 프로토콜은 Stateless이며 네트워크 가동 중단에 대해 복원됩니다(Stateless의 장점에 대해서는 아래에서 설명합니다).
여기서는 에이전트를 단일 프로세스로 설명하지만 기술적으로 에이전트는 작업자 프로세스와 모니터 프로세스로 구성됩니다. 작업자는 서버로부터 명령을 받은 후 실제 배치 작업을 실행하는 복수 스레드 프로세스입니다. 작업 명령은 플러그인 단계에서 발생하며 많은 써드파티 도구와 유기적으로 통합할 수 있도록 해줍니다. 모니터는 작업자 프로세스를 관리하는 서비스입니다. 예를 들어, 시작 및 중지, 다시 시작 처리, 업그레이드 및 보안 등을 관리합니다. 에이전트의 해당 기능은 임의로 업그레이드될 수 있는 플러그인에서 파생되므로 에이전트는 거의 업그레이드되지 않습니다. 에이전트가 설치된 후에는 IBM UrbanCode Deploy 웹 애플리케이션에서 관리될 수 있습니다.
에이전트는 IBM UrbanCode Deploy의 확장성 면에서 중요한 역할을 수행합니다. 에이전트를 계속 추가함으로써 시스템의 처리량 및 용량이 거의 기하급수적으로 증가할 수 있으므로 가장 큰 엔터프라이즈에 맞게 확장될 수도 있습니다.