약 300줄의 Python 브리지를 구축해 Slack에서 바로 Rovo Dev와 AI 지원 코딩을 수행할 수 있도록 구성했습니다.
터미널을 열거나 작업 환경을 전환할 필요 없이, 기존 업무 공간에서 AI 기반 코딩 지원을 활용할 수 있습니다.
이 글은 Rovo Dev CLI를 Slack에 연결하는 실험 과정을 소개하며, 터미널을 열지 않고도 AI와 함께 코딩하는 방법을 다룹니다.
환경 구성: 터미널에서 Slack으로 전환하기
평소 업무는 대부분 Slack에서 이루어집니다.
반면 터미널을 사용하는 경우는 많지 않습니다.
그래서 이런 생각을 하게 되었습니다.
“Slack에서 바로 Rovo Dev(Atlassian의 AI 코딩 에이전트)와 대화할 수 있다면 어떨까?”
작업 맥락을 전환할 필요도 없고, 터미널을 열 필요도 없으며, 매번 acli rovodev run --yolo 명령을 실행할 필요도 없습니다.
결과적으로 이는 충분히 구현 가능했습니다.
이 글에서는 주말 동안 어떻게 구축했는지 소개합니다.
전체 구조 살펴보기
주요 특징
터미널 없이 사용 가능
Slack에서 바로 AI 코딩 에이전트와 작업할 수 있습니다.
Socket Mode 지원
공개 URL, ngrok, 방화벽 설정이 필요 없습니다.
지정된 메시지만 처리
지정된 사용자의 메시지만 처리하며, 다른 사용자의 메시지는 자동으로 무시됩니다.
부팅 시 자동 실행
systemd 서비스로 실행되어 항상 사용할 수 있습니다.
Rovo Dev 기능 그대로 활용
파일 읽기, bash 실행, Jira 조회, Confluence 검색 등을 지원합니다.
동작 방식: 단계별 살펴보기
기술 스택
구성 요소 | 기술 | 목적 |
|---|---|---|
AI 에이전트 |
| Rovo Dev CLI의 HTTP API 모드 |
Slack 연동 | Slack Bolt(Python) + Socket Mode | Slack 메시지 수신 및 전송 |
브리지 | Python 3 (약 300줄) | Slack과 Rovo Dev 연결 |
프로세스 관리자 | systemd | 부팅 시 자동 실행 및 장애 발생 시 자동 재시작 |
핵심 기능: acli rovodev serve
이 구성의 핵심은 acli rovodev serve PORT입니다.
이는 잘 알려지지 않은 Rovo Dev CLI 모드 중 하나로, 간단한 API를 제공하는 로컬 HTTP 서버를 실행합니다:
acli rovodev serve 18888 --disable-session-token
이를 통해 두 가지 주요 엔드포인트를 사용할 수 있습니다:
POST /v3/set_chat_message– AI에 메시지 전달GET /v3/stream_chat– Server-Sent Events(SSE) 스트림 형태로 응답 수신
브리지는 Slack 메시지를 POST 요청으로 전달한 뒤, SSE 스트림을 읽어 전체 응답을 수집하고 완료된 결과를 다시 Slack으로 전송합니다.
보안: 지정된 메시지만 처리
누구나 봇에게 DM을 보내거나 @mention으로 호출할 수 있지만, 지정된 Slack 사용자 ID에서 보낸 메시지만 처리됩니다.
다른 사용자의 메시지는 별도의 알림 없이 자동으로 무시됩니다.
구현은 한 줄의 로직으로 처리할 수 있습니다:
ALLOWED_USER_ID = os.environ.get("ALLOWED_USER_ID", "")
def is_allowed(event) -> bool:
if not ALLOWED_USER_ID:
return True # no restriction set
return event.get("user") == ALLOWED_USER_ID
“홈 디렉터리에 어떤 파일이 있나요?”
Rovo Dev가
ls -la ~명령을 실행하고 결과를 전달합니다.
“해결되지 않은 Jira 이슈를 보여주세요.”
→ Jira를 조회하고 미해결 이슈 목록을 제공합니다.“해결되지 않은 Jira 이슈를 보여주세요.”
Jira를 조회하고 미해결 이슈 목록을 제공합니다.
“feature/xyz라는 새 브랜치를 만들어 주세요.”
git 명령을 실행해 브랜치를 생성합니다.
“이 함수의 단위 테스트를 작성해 주세요. [코드 붙여넣기]”
테스트 코드를 생성합니다.
다음 단계
스트리밍 응답
ChatGPT처럼 Rovo Dev가 응답을 생성하는 동안 부분 결과를 실시간으로 전송합니다.
멀티 세션 지원
Slack의 각 스레드를 서로 다른 Rovo Dev 세션으로 관리합니다.
슬래시 명령어 지원
/rv plan,/rv ask,/rv review와 같은 명령어를 제공합니다.
파일 업로드 지원
Slack에 파일을 첨부하면 Rovo Dev가 해당 파일을 읽고 처리합니다.
핵심 요약
acli rovodev serve를 HTTP + SSE 방식으로 연결하는 Slack 봇을 구축했습니다.
이 봇은 systemd 서비스로 실행되어 부팅 시 자동으로 시작되며, 지정된 사용자의 메시지에만 응답합니다.
이를 통해 터미널을 사용하지 않고도 Slack에서 AI 지원 코딩 환경을 활용할 수 있습니다.
전체 코드는 약 300줄의 Python으로 구성되었으며, 구축에는 약 2시간이 소요되었습니다.
대부분의 시간은 Slack 권한 설정 작업에 사용되었습니다.
출처:
Coding at the speed of thought: how I talk to Rovo Dev from Slack
작성자:
Anuj Shah (Software Engineer)
발행일: 2026년 08월 05일


