CodeRabbitCodeRabbitKorea User Group
CodeRabbit 에이전트가 이제 Discord 안에서 동작합니다
코드레빗CodeRabbitAI 에이전트AI 코드 리뷰오픈소스개발 생산성Discord

CodeRabbit 에이전트가 이제 Discord 안에서 동작합니다

CodeRabbit Korea User Group·
원문 보기 →

해당 블로그는 Konrad Sopala 원저자의 글 'CodeRabbit Agent is now in Discord'을 번역한 것입니다. 더 나은 이해를 위해서 약간의 의역이 반영되었습니다.

오픈소스 프로젝트를 운영하고 계신다면 커뮤니티는 이미 Discord에 모여 있을 가능성이 높습니다. 몇 년 전에 만들어 둔 서버가 지금은 여러분의 메일함보다 더 활발할지도 모릅니다. 기여자와 메인테이너가 여러 채널에서 대화를 나누고 이따금 누군가는 #help 채널에 스택 트레이스를 그대로 붙여 넣습니다.

리뷰 대기열은 계속 쌓여 갑니다. AI 덕분에 풀 리퀘스트를 여는 일이 너무 쉬워졌고 그 결과 메인테이너들은(대부분 무보수로 1인 프로젝트를 운영합니다) 품질이 제각각인 기여에 파묻히고 있습니다. 승인하려면 하나하나 사람 리뷰어의 손길이 필요한 기여들이죠.

지금까지 CodeRabbit은 풀 리퀘스트 안에서 그 일을 도왔습니다. 오늘부터는 달라집니다. CodeRabbit 에이전트가 이제 Discord 안에서 동작합니다.

이게 정확히 무엇인가

CodeRabbit in Discord는 CodeRabbit 에이전트를 여러분의 서버 안으로 들여옵니다. 설치하고 나면 채널은 더 이상 단순한 채팅 공간에 머물지 않습니다. CodeRabbit이 조사하고 계획을 세우고 자동화를 실행하고 프로젝트 지식에서 답을 찾고 실제 코드 작업까지 해내는 공간이 되죠. 누구도 지금 있던 스레드를 떠날 필요가 없습니다.

이 모든 것은 CodeRabbit 앱에서 관리합니다. 서버를 연결하면 새로운 Discord 설정 영역이 나타나고 다음 항목마다 전용 페이지가 생깁니다.

  • 커넥션(Connections)
  • 자동화(Automations)
  • 활동(Activity)
  • 지식 베이스(Knowledge base)
  • 스코프(Scopes)
  • 샌드박스(Sandbox)

서버는 상호작용이 일어나는 공간이고 CodeRabbit 웹 인터페이스는 제어판 역할을 합니다. 메인테이너에게 중요한 건 이것이 CodeRabbit의 다른 모든 곳에서 돌아가는 바로 그 에이전트라는 점입니다.

자동화, 끝나지 않는 유지보수 작업을 대신 처리합니다

오픈소스 프로젝트를 운영하는 일의 상당 부분은 같은 작업의 반복입니다.

  • 주간 의존성 점검
  • 방금 등록된 이슈 분류
  • 릴리스에 무엇이 바뀌었는지 정리
  • 누군가 다급하게 이슈를 올리기 전에 새로 공개된 CVE가 코드에 영향을 주는지 확인

풀 리퀘스트 요약과 배포 차단 요소 확인을 예약해 둔 자동화 설정 화면

Discord 자동화는 CodeRabbit 에이전트의 나머지 기능과 같은 모델을 사용하며 트리거는 세 종류가 있습니다.

  • 예약(Scheduled): 여러분이 정한 주기에 맞춰 실행됩니다
  • 메시지 트리거(Message-triggered): Discord 봇이나 앱이 보낸 조건에 맞는 메시지에 반응하고 그 결과를 지정한 곳으로 돌려보냅니다
  • 웹훅 트리거(Webhook-triggered): 외부 이벤트에서 실행됩니다

이 중 어느 것이든 Discord 대상으로 지정해 두면 결과가 그대로 채널에 도착합니다.

커넥션과 스코프, 공개 서버에서도 안전하게 만드는 부분

이 부분은 천천히 읽어 보시길 권합니다. "괜찮은 아이디어네"와 "이건 실제로 써 보고 싶다"를 가르는 지점이거든요.

여러분의 Discord 서버는 십중팔구 공개 서버입니다. 누구나 들어와서 글을 쓸 수 있죠. 저장소와 연결된 도구에 접근할 수 있는 AI 에이전트가 낯선 사람이 말을 걸 수 있는 채널에 앉아 있다고 생각하면 불안해지실 겁니다. 저희도 마찬가지고요. 그래서 CodeRabbit은 그런 방식으로 동작하지 않습니다.

**커넥션(Connections)**은 CodeRabbit이 접근할 수 있는 외부 도구와 API입니다. 워크스페이스에 한 번 만들어 두고 이후에는 검색하고 수정하고 테스트하고 필요한 곳에 신중하게 할당합니다.

GitHub와 함께 Linear 커넥션을 설정하는 다크 모드 화면

**스코프(Scopes)**는 특정 Discord 채널에 어떤 저장소와 커넥션, 어떤 지출 한도가 적용되는지를 정합니다. Discord 채널에서 실행된 작업은 해당 스코프가 허용한 저장소와 커넥션만 사용할 수 있고 그 이상은 손대지 못합니다.

나머지 제어 화면

여기에 세 개의 페이지가 더해져 전체를 완성하며 모두 CodeRabbit 웹 인터페이스에서 관리합니다.

  • 지식 베이스(Knowledge base): CodeRabbit in Discord가 무엇을 알고 있는지 검토하고 관리합니다. 어떤 기여자가 개발 환경 세팅 방법을 쉰 번째로 물어봐도 추측이 아니라 프로젝트 문서에 근거한 답이 돌아옵니다
  • 샌드박스(Sandbox): Discord 기반 실행을 위한 공용 실행 환경으로 샌드박스 접근이 활성화되어 있을 때 사용할 수 있습니다
  • 활동(Activity): 최근 실행 기록과 그 결과를 남겨 에이전트가 커뮤니티에서 무엇을 왜 했는지 정확히 확인할 수 있습니다

같은 에이전트, 새로운 공간

Slack에서 CodeRabbit 에이전트를 써 보셨다면 지금까지의 내용 중 새로운 건 하나도 없습니다. 트리거, 커넥션, 스코프 모델까지 전부 동일합니다. Discord는 에이전트가 동작하는 또 하나의 공간일 뿐이고 오픈소스에게는 이미 사람들이 모여 있는 바로 그 공간입니다.

아직 에이전트를 만나 본 적이 없으시다면, 에이전트는 단일 PR 리뷰를 넘어서는 CodeRabbit의 한 부분입니다. 조사하고 계획을 세우고 예약·트리거 자동화를 실행하며 연결된 도구와 함께 코드 작업까지, 이 모든 것을 여러분이 정한 경계 안에서 수행합니다.

직접 써 보기

CodeRabbit Discord Agent 페이지로 이동해 시작해 보세요. 오픈소스 프로젝트를 운영하고 계시다면 저희 Discord 에이전트는 영원히 무료입니다.

다음번에 기여자가 #help 채널에 스택 트레이스를 붙여 넣을 때, 이제 그 자리를 떠나지 않고도 곧바로 손을 쓸 수 있습니다.

관련해서 Slack 에이전트 활용 사례에서 같은 에이전트를 Slack에서 어떻게 쓰는지 볼 수 있습니다. 오픈소스 메인테이너의 번아웃과 DiscordCodeRabbit 에이전트와 함께 계획하기도 함께 살펴보시길 추천 드립니다.

CodeRabbit 시작하기