OpenClaw를 Discord에 설정하기: DM 페어링, 서버 채널, 음성
업데이트

OpenClaw를 Discord와 함께 사용하려면 가장 빠르고 안전한 방법은 Discord 봇을 만들고, OpenClaw가 실행되는 머신에 봇 토큰을 설정한 뒤, 게이트웨이를 시작하고, 첫 DM 페어링을 승인한 다음, 비공개 서버를 길드 작업 공간으로 전환하는 것입니다.
이 설정 순서가 중요한 이유는 Discord에서의 OpenClaw가 단순한 “또 하나의 봇”이 아니기 때문입니다. Discord의 각 채널은 자체 컨텍스트, 승인, 라우팅 규칙을 가진 개별 에이전트 세션이 될 수 있습니다. 페어링, 허용 목록, 멘션 설정을 건너뛰면 봇 토큰이 유효해도 설정이 깨진 것처럼 느껴지는 경우가 많습니다.
OpenClaw Discord 문서를 찾고 있다면, 가장 중요한 공식 स्रोत은 OpenClaw Discord 채널 가이드입니다: Discord setup docs (opens in a new tab). 이 페이지는 그 위에 얹는 실용 가이드입니다. 무엇을 먼저 설정해야 하는지, 무엇을 비공개로 유지해야 하는지, 그리고 DM 테스트에서 실제로 쓸 수 있는 비공개 Discord 작업 공간으로 어떻게 넘어가는지를 설명합니다.
먼저 더 넓은 제품 맥락이 필요하다면 NVIDIA NemoClaw vs OpenClaw vs ZeroClaw: Differences, Pi Agent, and Nanobot in 2026를 읽어보세요. 목표가 Discord 기반 어시스턴트가 아니라 저장소 로컬 코딩 도움이라면 How to Use Codex와 How to Use OpenCode가 더 나은 시작점입니다.
빠른 답변: Discord에서 OpenClaw를 가장 빨리 작동시키는 방법은?
| Your situation | Best first step | Why |
|---|---|---|
| You only want to verify the bot works | 토큰을 설정하고, 게이트웨이를 시작한 뒤, Discord DM에서 페어링 | 작동하는 응답 루프까지 가장 짧게 확인할 수 있습니다 |
| You want a private Discord workspace with multiple channels | DM 페어링 후 서버를 guild allowlist에 추가 | 각 채널이 독립된 OpenClaw 세션이 되게 할 수 있습니다 |
You want the bot to reply without @mention in your own server | 해당 guild에 requireMention: false 설정 | 서버가 봇 명령 채널이 아니라 실제 어시스턴트 작업 공간처럼 느껴집니다 |
| You want realtime voice in Discord | 텍스트가 먼저 작동한 뒤 channels.discord.voice 구성 | 음성은 유용하지만, 첫 디버깅 단계로는 적합하지 않습니다 |
안정적인 설정 순서는 다음과 같습니다:
- Discord 봇 만들기
- 필요한 intents 활성화하기
- 봇 토큰을 안전하게 설정하기
- 게이트웨이 시작하기
- 첫 DM 페어링 승인하기
- 서버를 guild allowlist에 추가하기
- 응답에
@mention이 필요한지 결정하기 - 텍스트 채팅이 안정된 뒤에만 음성 추가하기
Discord에서 OpenClaw가 실제로 제공하는 것
Discord의 OpenClaw는 단순한 공유 봇 메모리가 아닙니다.
현재 OpenClaw 문서에 따르면 Discord는 다음을 지원합니다:
- DMs
- guild 텍스트 채널
- forum-channel thread 워크플로
- 네이티브 명령 처리
- 승인 버튼
- 선택적 음성 채널 세션
이 점이 중요한 이유는 이 제품의 실제 형태가 단일 DM 봇이 아니라 에이전트 세션들로 이루어진 Discord 작업 공간이기 때문입니다.
실제로는 다음과 같이 작동합니다:
- Discord DM은 첫 저위험 페어링 채널이 될 수 있습니다
- 각 guild 채널은 별도의 컨텍스트를 유지할 수 있습니다
- 승인과 라우팅은 요청이 발생한 Discord 표면에 연결된 상태로 유지됩니다
- 원하면 나중에 지속 대화를 위해 음성을 추가할 수 있습니다
Quick Start
공식 Discord 문서는 봇을 만들고, 토큰을 설정한 다음, 게이트웨이를 시작하는 흐름을 권장합니다. 실용적인 최소 버전은 다음과 같습니다:
export DISCORD_BOT_TOKEN="YOUR_BOT_TOKEN"
openclaw config set channels.discord.token --ref-provider default --ref-source env --ref-id DISCORD_BOT_TOKEN
openclaw config set channels.discord.enabled true --strict-json
openclaw gatewayOpenClaw가 이미 백그라운드 프로세스로 실행 중이라면, 두 번째 인스턴스를 띄우지 말고 게이트웨이를 재시작하세요.
그다음 Discord에서 봇에게 DM을 보내고 페어링 코드를 승인합니다.
이것이 “Discord 봇 토큰이 있다”에서 “OpenClaw가 실제로 Discord에서 응답 가능하다”까지 가는 가장 짧은 경로입니다.
1단계: Discord 봇을 올바르게 만들기
공식 Discord setup docs (opens in a new tab)에서 OpenClaw는 일반적인 Discord 봇 흐름을 권장합니다:
- Discord Developer Portal로 이동
- 새 애플리케이션 만들기
- 봇 추가
- 봇 토큰 복사
OAuth URL의 기본 스코프는 다음과 같습니다:
botapplications.commands
일반적인 기본 권한은 다음과 같습니다:
- View Channels
- Send Messages
- Read Message History
- Embed Links
- Attach Files
정말 필요하지 않다면 Administrator는 피하세요. 최소 권한의 비공개 서버가 더 나은 기본값입니다.
2단계: 다른 무엇보다 먼저 올바른 intents를 활성화하기
시간을 가장 쉽게 낭비하는 지점 중 하나입니다.
OpenClaw Discord 문서는 다음 intents를 언급합니다:
- Message Content Intent: 필수
- Server Members Intent: 권장, 그리고 role allowlist 및 이름 매칭에 필요
- Presence Intent: 선택 사항
봇은 서버에 들어왔는데 이상하게 동작한다면, 부족한 intents가 첫 번째 점검 대상입니다.
3단계: 토큰을 채팅에 노출하지 않기
Discord 봇 토큰은 비밀 정보입니다. 에이전트와의 채팅에 붙여넣지 마세요.
OpenClaw가 실행되는 머신에서 환경 변수 또는 SecretRef 기반 config 경로를 사용하세요. 문서에서는 토큰을 로컬에 설정한 뒤, config가 그 로컬 비밀을 참조하도록 연결하는 방식을 명시적으로 권장합니다.
안전한 기본 예시는 다음과 같습니다:
export DISCORD_BOT_TOKEN="YOUR_BOT_TOKEN"
openclaw config set channels.discord.token --ref-provider default --ref-source env --ref-id DISCORD_BOT_TOKEN
openclaw config set channels.discord.enabled true --strict-json그다음 게이트웨이를 시작합니다:
openclaw gateway이후에도 텍스트 채팅이 작동하지 않는다면, guild 정책을 건드리기 전에 토큰, intents, 게이트웨이를 먼저 디버깅하세요.
4단계: 먼저 Discord DM에서 페어링하기
OpenClaw의 최신 Discord 문서는 DM을 가장 쉬운 첫 체크포인트로 다룹니다.
실제 흐름은 다음과 같습니다:
- 게이트웨이가 실행 중인지 확인
- Discord에서 봇에게 DM 보내기
- 페어링 코드가 올 때까지 대기
- 기존 OpenClaw 채널 또는 CLI를 통해 해당 코드 승인
DM 페어링부터 시작하는 이유:
- 봇 토큰과 라우팅이 작동하는지 가장 짧은 경로로 확인할 수 있습니다
- 첫 테스트에서 guild 수준 정책을 제거할 수 있습니다
- 전체 서버를 작업 공간으로 바꾸기 전에 봇이 살아 있는지 확인할 수 있습니다
첫 DM에 응답이 없다면 아직 다음 단계로 가지 마세요. 보통 원인은 다음 중 하나입니다:
- 토큰이 틀림
- 게이트웨이가 실행되지 않음
- DM이 차단됨
- intents가 불완전함
5단계: 비공개 Discord 서버를 guild 작업 공간으로 전환하기
DM 페어링이 작동하면, 다음으로 할 일은 “모든 곳에 채널을 더 추가하기”가 아닙니다. “하나의 비공개 Discord 서버를 올바르게 설정하기”입니다.
공식 문서는 각 채널이 자체적으로 분리된 OpenClaw 세션을 갖기 때문에 guild 작업 공간을 권장합니다. 이것이 Discord가 흥미로운 진짜 이유입니다. 다음과 같은 채널을 만들 수 있습니다:
#coding#research#home#ops
그리고 각 채널이 서로 다른 컨텍스트를 유지할 수 있습니다.
첫 번째 config 작업은 서버를 guild allowlist에 추가하는 것입니다:
{
channels: {
discord: {
groupPolicy: "allowlist",
guilds: {
YOUR_SERVER_ID: {
requireMention: true,
users: ["YOUR_USER_ID"],
},
},
},
},
}이 방식은 봇이 응답할 위치와 사용할 수 있는 사용자를 제한하므로 더 안전한 기본값입니다.
6단계: 서버에서 @mention이 필요한지 결정하기
기본적으로 Discord의 OpenClaw는 편의성보다 안전성을 우선합니다.
공유 서버에서는 보통 이것이 맞습니다. 하지만 나와 봇만 있는 비공개 서버에서는 모든 메시지에 @mention이 필요하면 작업 공간이 번거롭게 느껴집니다.
문서에서는 특정 guild에서 mention-only 동작을 끌 수 있다고 보여줍니다:
{
channels: {
discord: {
guilds: {
YOUR_SERVER_ID: {
requireMention: false,
},
},
},
},
}이 설정은 신뢰할 수 있는 서버에서만 사용하세요. 서버가 공유되어 있다면 mention 요구를 켜두는 것이 안전합니다.
7단계: “공유 컨텍스트”를 기대하기 전에 메모리 모델을 이해하기
Discord 문서에서 가장 중요한 개념적 세부사항 중 하나입니다.
OpenClaw는 모든 Discord 대화를 하나의 거대한 공유 메모리 풀로 취급하지 않습니다.
문서에 따르면:
- DM은 메인 에이전트 세션으로 합쳐질 수 있습니다
- guild 채널은 분리된 세션입니다
- 장기 메모리는 모든 guild 채널에 자동으로 같은 방식으로 로드되지 않습니다
즉, #research와 #home이 자동으로 같은 어시스턴트 스레드처럼 느껴질 것이라고 기대하면 안 됩니다. 그 분리는 유용하지만, 존재한다는 점을 알아야 합니다.
모든 곳에서 안정적인 공유 지침이 필요하다면, 채널 메모리가 자동으로 이어질 것이라고 가정하지 말고 전역 에이전트 instruction 레이어에 두세요.
텍스트 채팅이 작동한 뒤에만 음성을 추가하기
OpenClaw는 Discord 음성 채널도 지원하지만, 이는 텍스트가 먼저 안정된 이후에 해야 합니다.
문서에 따르면 음성에는 다음이 필요합니다:
- 네이티브 명령 활성화
channels.discord.voice구성- 대상 음성 채널에서 Connect 및 Speak 권한
최소 자동 입장 형태는 다음과 같습니다:
{
channels: {
discord: {
voice: {
enabled: true,
autoJoin: [
{
guildId: "123456789012345678",
channelId: "234567890123456789",
},
],
},
},
},
}이 기능은 강력하지만 첫 번째 목표는 아닙니다. 먼저 다음이 동작하는지 확인하세요:
- DM 페어링
- guild 텍스트 라우팅
- allowlist가 예상대로 작동하는지
그 다음에만 음성을 추가하세요.
흔한 함정
봇 토큰을 채팅에 보내기
이렇게 하지 마세요. OpenClaw가 실행되는 머신에서 로컬로 토큰을 설정한 뒤, OpenClaw config가 그 로컬 비밀을 참조하도록 하세요.
DM 페어링 없이 바로 guild 채널부터 시도하기
DM 체크포인트를 건너뛰면 토큰, intents, 게이트웨이, guild 정책, 멘션을 한꺼번에 디버깅하게 됩니다.
비공개 서버에서 requireMention을 켜둔 채 봇이 고장 났다고 생각하기
비공개 서버에서는 봇이 정상이어도 멘션되기 전까지 메시지를 무시할 수 있습니다. 이는 실패가 아니라 정책입니다.
모든 Discord 채널이 하나의 공유 메모리를 가진다고 기대하기
Guild 채널은 분리된 상태를 유지하도록 설계되었습니다. 이는 종종 유용하지만, 하나의 전역 채팅 기록을 기대하는 사람에게는 놀라울 수 있습니다.
텍스트 채팅이 되기 전에 음성을 켜기
음성은 디버깅 계층을 하나 더 추가합니다. 텍스트부터 시작하세요.
문제 해결 체크리스트
Discord의 OpenClaw가 응답하지 않으면 다음 순서대로 확인하세요:
- 게이트웨이가 실행 중인지
- 봇 토큰이 유효하고 로컬에 설정되었는지
- Message Content Intent가 활성화되었는지
- 페어링을 위한 DM이 허용되는지
- guild 채널을 테스트 중이라면 서버가 guild allowlist에 있는지
requireMention이 예상대로 설정되었는지- 사용자 또는 guild 정책에 의해 발신자가 차단되지 않았는지
OpenClaw 문서는 진단에 유용한 명령도 안내합니다:
openclaw doctor
openclaw channels status --probe
openclaw logs --follow이 Discord 설정이 잘못된 시작점인 경우
다음이 실제 목표라면 여기서 시작하지 마세요:
- 저장소 로컬 코딩 어시스턴트
- 임베디드 배포용 zero-UI 런타임
- OpenClaw 대안에 대한 일반적인 비교
이 경우 더 나은 읽을거리는 다음과 같습니다:
- How to Use Codex
- How to Use OpenCode
- NVIDIA NemoClaw vs OpenClaw vs ZeroClaw: Differences, Pi Agent, and Nanobot in 2026
FAQ
OpenClaw Discord 설정에서 가장 먼저 테스트해야 하는 것은 무엇인가요?
먼저 Discord DM 페어링을 테스트하세요. 토큰, 게이트웨이, 기본 라우팅이 작동하는지 확인하는 가장 짧은 방법입니다.
모든 Discord 채널에서 @mention이 필요한가요?
항상 그런 것은 아닙니다. 비공개 서버에서는 많은 사용자가 requireMention: false를 원할 수 있습니다. 공유 서버에서는 mention 요구를 유지하는 것이 더 안전한 기본값입니다.
OpenClaw Discord 봇이 온라인인데 응답하지 않는 이유는 무엇인가요?
가장 흔한 원인은 잘못된 토큰, 누락된 Message Content Intent, 중지된 게이트웨이, 차단된 DM, 또는 allowlist/멘션 조건 없이 응답을 막는 guild 정책입니다.
Discord 음성을 먼저 활성화해야 하나요?
아니요. 먼저 DM 페어링과 guild 텍스트 채널을 작동시킨 뒤 음성을 추가하세요.
이 가이드가 일반적인 "OpenClaw 사용법"보다 더 낫나요?
실용적인 검색 의도 기준으로는 그렇습니다. Discord 설정은 더 명확한 목적이 있습니다. 전체 OpenClaw 제품을 한 페이지에 요약하려는 대신, 독자가 하나의 실제 연동을 성공시키도록 돕습니다.
관련 가이드
- NVIDIA NemoClaw vs OpenClaw vs ZeroClaw: Differences, Pi Agent, and Nanobot in 2026
- How to Use Codex
- How to Use OpenCode
- Parallel Code Agents Explained
- Cursor Review: Where It Still Wins and Where It Still Breaks