콘텐츠로 이동

revka channel 및 integrations

CLI에서 채널을 추가, 제거, 목록 조회, 상태 확인, 메시지 전송하고 integration 상세 정보를 확인합니다.

revka channel은 에이전트가 통신하는 메시징 플랫폼을 관리하는 커맨드라인 인터페이스입니다. 지원 플랫폼으로는 Telegram, Discord, Slack, WhatsApp, Matrix, iMessage, 이메일 등 전체 채널 카탈로그가 있습니다. CLI에서 구성된 채널을 목록 조회하고, 시작하고, 상태 확인을 실행하고, 채널을 추가하거나 제거하고, Telegram 허용 목록을 관리하고, 특정 채널을 통해 단발성 메시지를 전송할 수 있습니다. 함께 제공되는 revka integrations 명령은 특정 integration의 상세 정보를 확인하는 데 사용합니다.

이 명령들을 사용하면 config.toml을 직접 수정하지 않고도 채널을 구성하고 운영할 수 있으며, 채널을 실제로 사용하기 전에 동작을 확인하거나 채팅 플랫폼으로 알림(센서 경보, 작업 완료 알림 등)을 스크립트로 전송할 수 있습니다. 채널은 장기 실행 데몬 내에서 동작하며, 여기서 설명하는 CLI 명령은 해당 런타임과 구성을 제어합니다.

플랫폼별 설정 가이드와 전체 채널 카탈로그는 메시징 채널 연결채널 개요를 참고하세요.

Terminal window
revka channel list
revka channel start
revka channel doctor
revka channel add <channel_type> <config_json>
revka channel remove <name>
revka channel bind-telegram <identity>
revka channel send <message> --channel-id <TYPE> --recipient <TARGET>
revka integrations info <name>
서브커맨드인수기능
list구성된 모든 채널을 목록 조회합니다.
start구성된 모든 채널을 시작합니다.
doctor구성된 모든 채널에 대해 상태 확인을 실행합니다.
add<channel_type> <config_json>구현되지 않음 — 오류를 출력하고 revka onboard 사용을 안내합니다.
remove<name>구현되지 않음 — 오류를 출력하고 ~/.revka/config.toml 직접 편집을 안내합니다.
bind-telegram<identity>Telegram 사용자명 또는 숫자 사용자 ID를 허용 목록에 추가합니다.
send<message> --channel-id <TYPE> --recipient <TARGET>지원하는 채널 유형을 통해 단발성 메시지를 전송합니다.

config.toml[channels_config] 아래에 현재 구성된 모든 채널을 나열합니다.

Terminal window
revka channel list

채널을 시작하거나 상태 확인을 실행하거나 메시지를 전송하기 전에 어떤 채널이 어떤 구성 이름으로 존재하는지 확인할 때 사용합니다.

구성된 모든 채널을 시작합니다.

Terminal window
revka channel start

이 명령은 구성에 정의된 채널을 활성화하여 인바운드 메시지를 수신하고 응답을 전송할 수 있게 합니다. 게이트웨이 서버, 채널, 하트비트 모니터, cron 스케줄러를 포함하는 완전한 프로덕션 런타임을 위해서는 revka daemon을 사용하세요. 이 명령은 전체 스택의 일부로 채널을 함께 시작합니다.

구성된 모든 채널에 대해 상태 확인(health_check())을 실행하고 활성 상태를 보고합니다.

Terminal window
revka channel doctor

채널이 정상적으로 동작하지 않을 때 사용합니다. 각 채널의 연결을 프로브하여 로그를 분석하기 전에 어떤 채널이 실패하고 있는지 파악할 수 있습니다. 모든 채널이 활성 liveness 프로브를 구현하는 것은 아닙니다. 특히 웹훅 방식의 채널은 폴링이나 WebSocket 채널과 다르게 보고될 수 있습니다. 시스템 전체 진단은 revka doctor, status & self-test를 참고하세요.

revka channel add는 추가 작업으로 구현되어 있지 않습니다. 실행하면 대신 revka onboard를 사용하도록 안내하는 오류가 출력됩니다.

Channel type '<type>' — use `revka onboard` to configure channels

채널을 추가하거나 재구성하려면 인터랙티브 온보딩 마법사를 실행하세요.

Terminal window
revka onboard # 전체 설정 마법사
revka onboard --channels-only # 안내형 채널 구성 흐름만 실행

또는 ~/.revka/config.toml[channels_config] 아래에서 직접 채널을 추가할 수 있습니다. 채널 유형별 필수 키는 채널 개요Telegram, Discord & Slack, Matrix, Mattermost & Nextcloud Talk 등 플랫폼별 페이지를 참고하세요.

revka channel remove는 제거 작업으로 구현되어 있지 않습니다. 실행하면 구성 파일을 직접 편집하도록 안내하는 오류가 출력됩니다.

Remove channel '<name>' — edit ~/.revka/config.toml directly

채널을 제거하려면 ~/.revka/config.toml을 열고 해당 [channels_config.<name>] 섹션을 삭제한 뒤 파일을 저장하세요.

해당 사용자가 봇과 대화할 수 있도록 Telegram ID를 허용 목록에 추가합니다. Telegram 사용자명(@ 제외) 또는 숫자 사용자 ID를 사용할 수 있습니다.

Terminal window
revka channel bind-telegram revka_user # 사용자명으로
revka channel bind-telegram 123456789 # 숫자 사용자 ID로

이 명령은 Telegram의 allowed_users 허용 목록에 해당 ID를 추가합니다. Telegram 채널은 채팅 내 페어링 흐름도 지원합니다. 전체 Telegram 설정 및 페어링 상세 정보는 Telegram & Matrix 설정을 참고하세요.

구성된 채널을 통해 단발성 메시지를 전송하고 종료합니다. 스크립트 알림과 자동화 파이프라인을 위해 설계되었습니다.

Terminal window
revka channel send 'Someone is near your device.' \
--channel-id telegram \
--recipient 123456789
플래그의미
--channel-id<TYPE>메시지를 전송할 채널 유형입니다(telegram, discord, slack, mattermost, signal, matrix, whatsapp, qq 중 하나).
--recipient<TARGET>플랫폼별 수신자 ID(예: Telegram 사용자 ID, Slack 채널 ID)입니다.

--recipient 값은 대상 플랫폼에 따라 해석됩니다. Telegram 채팅/사용자 ID, Slack 채널 또는 DM ID, 전화번호 등을 사용합니다. 센서 경보, cron 작업 결과, 또는 채팅으로 메시지를 푸시해야 하는 외부 시스템에 send를 활용하세요.

Terminal window
# 백업 완료 시 ops 채널에 알림 전송
revka channel send "Nightly backup completed." --channel-id slack --recipient C1234567890

텍스트 명령을 지원하는 채팅 채널(특히 Telegram 및 Discord) 내에서 사용자는 아무것도 재시작하지 않고도 에이전트의 모델을 변경하거나 대화를 초기화할 수 있습니다.

명령동작
/models사용 가능한 프로바이더를 표시합니다.
/models <provider>현재 세션의 프로바이더를 전환합니다.
/model현재 모델을 표시합니다.
/model <model-id>현재 세션의 모델을 전환합니다.
/new대화 기록을 지우고 새로 시작합니다.

이 명령들은 revka CLI가 아닌 채널 대화 내에서 실행됩니다. CLI 채널(stdin/stdout)은 인터랙티브 터미널 세션을 종료하기 위한 /quit/exit도 지원합니다.

채널 런타임은 config.toml을 감시하며, 재시작 없이 정해진 변경 사항을 실시간으로 적용합니다. 파일을 편집하고 저장하면 실행 중인 채널이 다음 항목의 업데이트를 반영합니다.

  • default_provider
  • default_model
  • default_temperature
  • api_key / api_url
  • reliability.*
# 아래 키를 편집하면 재시작 없이 실행 중인 채널에 즉시 반영됩니다
default_provider = "anthropic"
default_model = "claude-sonnet-4-20250514"
default_temperature = 0.3

단일 명명된 integration의 상세 정보(설명, 기능, 필수 구성)를 표시합니다.

Terminal window
revka integrations info <name>

Revka는 50개 이상의 integration을 제공하며, 대부분은 config.toml에서 구성합니다. info를 사용하면 특정 integration을 구성하기 전에 해당 integration의 기능과 필요한 키를 확인할 수 있습니다. 전체 카탈로그는 Integration 카탈로그채널, 도구 및 integration 구성 레퍼런스를 참고하세요.

Terminal window
# 구성된 채널을 확인한 후 시작
revka channel list
revka channel start
# 채널이 멈춰 보일 때 전체 상태 확인
revka channel doctor
# 온보딩 마법사로 채널을 구성한 후 Telegram 사용자 허용 목록 등록
revka onboard --channels-only
revka channel bind-telegram 123456789
# Telegram을 통해 스크립트 경보 전송
revka channel send 'Disk usage above 90%.' --channel-id telegram --recipient 123456789
# 채널 제거: ~/.revka/config.toml에서 [channels_config.<name>] 섹션을 삭제
# integration에 필요한 정보 조회
revka integrations info notion