Discord 봇
Discord 서버에 캐릭터를 두고, 누가 비용을 낼지 정합니다.
Reverie 봇은 Discord 채널에 캐릭터를 추가합니다. 캐릭터는 각자의 이름과 프로필 사진으로 말하고, 그렇게 한 말은 모두 어느 Reverie 계정에 크레딧으로 청구됩니다.
이 봇은 서버에서만 작동합니다. 다이렉트 메시지는 아예 무시합니다 — 켤 수 있는 DM 모드가 없습니다. 일대일 대화에는 Telegram 봇이나 웹 앱을 쓰세요.
설치하기
연동 대시보드 열기
앱에서 Labs → Discord 및 Telegram 봇으로 갑니다.
서버에 봇 추가하기
Discord 카드에서 Add Bot to Server를 누르고 서버를 고릅니다. 요청되는 권한은 전부 체크된 채로 두세요 — 각각이 왜 필요한지는 아래 표에 있습니다.
Discord 계정 연결하기
서버에서 /link-account를 실행합니다. 봇이 10분 뒤 만료되는 일회용 링크를 답으로 줍니다. 열어서 로그인하면 두 계정이 이어집니다. Discord 계정 하나는 Reverie 계정 하나에만 대응합니다.
채널에 캐릭터 추가하기
채널에서 /add-character를 실행하고 자동완성에서 캐릭터를 고릅니다 — 공개 캐릭터와 당신의 비공개 캐릭터가 모두 나옵니다. 봇은 캐릭터가 자기 이름으로 글을 올릴 수 있도록 webhook을 만들고, 인사를 보냅니다.
초대가 요청하는 권한
| 권한 | 왜 필요한지 |
|---|---|
| View Channels | 봇이 쓰이는 채널을 읽기 위해 |
| Send Messages | 답장과 명령 결과를 올리기 위해 |
| Manage Messages | 답장을 부른 메시지가 지워졌을 때 캐릭터의 답장도 치우기 위해 |
| Embed Links | 명령 결과와 커뮤니티 추첨 공지가 임베드라서 |
| Manage Roles | Reverie 자체 서버에서 커뮤니티 추첨에 쓰는 역할을 주기 위해 |
| Manage Webhooks | 필수. 캐릭터는 캐릭터마다 따로인 webhook으로 말합니다 |
Manage Webhooks가 없으면 /add-character가 실패하고 캐릭터도 추가되지 않습니다.
명령어
Manage Channels라고 표시된 명령어는 그 Discord 권한을 가진 멤버에게만 보입니다.
| 명령어 | 옵션 | 필요 권한 | 하는 일 |
|---|---|---|---|
/help | — | — | 명령어 목록을 나에게만 보여줍니다 |
/link-account | — | — | Discord와 Reverie 계정을 잇는 일회용 링크를 올립니다 |
/add-character | name(필수) | Manage Channels | 이 채널에 캐릭터를 넣고 인사합니다 |
/remove-character | name(필수) | Manage Channels | 캐릭터를 빼고 그 webhook을 지웁니다 |
/list-characters | — | — | 이 채널의 캐릭터를 각각 제거 버튼과 함께 보여줍니다 |
/character-info | name(필수) | — | 소개, 설명, 인사말, 제작자, 대화 수, NSFW 표시 |
/reset-chat | — | Manage Channels | 채널의 메시지와 요약을 지우고 지운 개수를 알려줍니다 |
/settings | 하위 명령 하나(필수) | 아래 참조 | 채널 설정과 개인 설정 |
/my-account | — | — | 크레딧, 요금제 사용량, 갱신일, 대화 수 |
/regenerate-reply | model(선택) | — | 캐릭터의 마지막 답장을 다시 뽑습니다. 그 한 번만 다른 모델로도 가능 |
/reply-suggestions | — | — | 추천 답장 세 개를 버튼으로. 누르면 당신의 메시지로 전송됩니다. 텍스트 채널만 |
/settings만 쓰면 유효한 명령이 아닙니다 — 항상 여섯 하위 명령 중 하나를 붙입니다.
| 하위 명령 | 옵션 | 필요 권한 | 효과 |
|---|---|---|---|
/settings model | model(선택) | — | 이 채널 주인공 캐릭터에 쓰는 당신의 모델. 비우면 현재 값을 보여주거나 초기화합니다. 고급 모델은 구독이 필요할 수 있습니다 |
/settings language | language(선택) | Manage Channels | 채널의 응답 언어. 비우면 영어로 돌아갑니다 |
/settings channel-mode | mode: auto 또는 mention | Manage Channels | 캐릭터가 모든 메시지에 답할지, 불릴 때만 답할지 |
/settings chat-style | style: RP 또는 NORMAL | Manage Channels | 행동 묘사가 있는 롤플레이 문장인지, 대사만인지 |
/settings payment-mode | mode: owner 또는 user | Manage Channels | 누구에게 청구할지 |
/settings daily-limit | credits(필수, 0 이상) | Manage Channels | UTC 하루당 크레딧 상한. 0은 무제한 |
같은 설정이 웹 대시보드에도 채널별로 있으며, 이름은 Payment mode, Daily credit limit, Chat style, Reply mode, Response language, Your model입니다. 언어와 모델은 그 채널에 누군가 메시지를 보내기 전까지 비활성 상태로 남습니다.
캐릭터가 답할 때
캐릭터는 @멘션되었을 때, 누군가 그 메시지에 답장했을 때, 또는 채널이 자동 답장 상태일 때 답합니다. 자동 답장은 기본적으로 꺼져 있어서, 막 추가한 캐릭터는 불리기 전까지 조용합니다.
한 채널에 캐릭터가 여럿이면 그 채널은 하나의 그룹 채팅처럼 움직입니다. 한 번의 프롬프트에 그 자리의 캐릭터가 모두 들어가고, 누가 말할지는 모델이 정합니다. 이름을 부르는 것은 메시지와 함께 전달되는 힌트일 뿐, 그 캐릭터에게 답하게 만드는 스위치가 아닙니다. 그룹 채팅 →
누가 내는가
| 결제 방식 | 청구 대상 | 비고 |
|---|---|---|
| Owner pays(기본) | 그 서버에 처음 캐릭터를 넣은 Reverie 계정 | 하루 크레딧 상한이 적용됩니다 |
| User pays | 보낸 사람 각자의 잔액 | 보낸 사람이 계정을 연결해 두어야 합니다. 하루 상한은 무시됩니다 |
메시지 비용은 웹 앱과 같습니다. 토큰당 비용에 모델의 크레딧 배수를 곱합니다. 하루 카운터는 00:00 UTC에 초기화되고, 채널 설정 대화 상자가 오늘 사용량을 상한과 함께 보여줍니다.
채널에서 되는 것
- 이미지. 캐릭터가 Discord에서 이미지를 만들 수 있습니다.
- 음성 출력. 캐릭터가 음성 메시지를 보낼 수 있습니다.
- 음성 입력. 당신이 보낸 음성 메시지는 글로 옮겨집니다. 25 MB까지.
- 기억. 모델이 도구를 지원하면 캐릭터가 기억을 저장·수정·삭제하고, 월드북의 설정도 맥락에 들어갑니다.
- 기록. 길어진 채널은 자라는 대로 자동 요약됩니다.
- 채널에 두 번째 캐릭터를 넣으면 그 채널의 대화 방식, 결제 방식, 하루 상한을 그대로 가져옵니다.
메시지 수정과 삭제
자기 최근 메시지를 고치면 그에 대한 답장이 다시 만들어집니다.
Discord에서 메시지를 지우면 그 메시지와 그 뒤의 모든 메시지가 캐릭터의 기록에서 사라지고, 그 시점 뒤에 생긴 기억과 첨부도 함께 사라집니다. 캐릭터의 답장도 채널에서 치워집니다. 되돌릴 수 없습니다.
봇이 읽는 것
봇은 볼 수 있는 채널의 모든 메시지를 받습니다 — 멘션과 답장이 봇에게 닿는 것도 그래서입니다. 답할 때마다 그 채널의 지난 한 시간 동안의 최근 메시지도 읽는데, 자기에게 한 말이 아닌 것까지 포함해 모델에 맥락으로 넘겨 캐릭터가 분위기를 따라가게 합니다.
봇이 있는 채널은 봇이 듣고 있는 채널이라고 여기세요. 그게 원하는 바가 아니라면 캐릭터를 따로 만든 채널에 두세요.
한도
| 한도 | 값 |
|---|---|
| 채널당 캐릭터 수 | 5 |
| Discord 메시지 길이 | 2,000자 |
| 음성 메시지 크기 | 25 MB |
| Discord 채널당 webhook 수 | 15 (Discord 자체 상한) |
| 채널당 대기 중인 메시지 수 | 3 |
같은 사람이 빠르게 잇달아 보낸 메시지는 한 턴으로 합쳐집니다.
연결 끊기
연동 대시보드에서 Unlink Account로 끊습니다. 봇을 서버에서 빼거나 서버를 나가도 계정 연결은 끊기지 않습니다.
관련 문서
- Telegram 봇 — 같은 캐릭터를 Telegram에서
- Reverie Labs — 연동 대시보드가 있는 곳
- 그룹 채팅 — 여러 캐릭터 대화가 움직이는 방식
- 크레딧 — 메시지 하나의 비용