OpenClaw WebChat 채널
WebChat은 OpenClaw Gateway에 내장된 채팅 인터페이스입니다. WebSocket을 통해 직접 연결되므로 외부 서비스, API 키 또는 서드파티 계정이 필요하지 않습니다. Gateway를 시작하고 인증을 구성한 후 WebChat UI를 열면 AI 어시스턴트와 바로 대화를 시작할 수 있습니다. 모든 메시지는 결정론적으로 라우팅되므로, 응답은 항상 대화를 시작한 WebChat 세션으로 반환됩니다.
WebChat 지원 기능
텍스트 메시지
지원
미디어 및 파일
미지원
리액션
미지원
스레드
미지원
음성 메시지
미지원
그룹 채팅
미지원
WebChat 사전 요구사항
- OpenClaw Gateway 설치 및 실행 중
- Gateway 인증 구성 완료 (token 또는 password 모드)
- 최신 웹 브라우저 (Control UI) 또는 네이티브 macOS/iOS 클라이언트
- Gateway WebSocket 포트에 대한 네트워크 접근 (기본값: 3000)
WebChat 빠른 설정
Gateway 시작
OpenClaw Gateway를 실행합니다. WebChat은 내장되어 있으므로 별도의 설치나 플러그인이 필요하지 않습니다. 'openclaw start'를 실행하여 Gateway 서비스를 시작합니다.
인증 구성
openclaw.json에서 gateway.auth.mode를 'token' 또는 'password' 인증으로 설정합니다. localhost를 포함한 모든 연결에 인증이 필수입니다.
WebChat 열기
브라우저의 Control UI 채팅 탭을 통해 WebChat 인터페이스에 접근하거나, 네이티브 macOS/iOS 클라이언트를 실행합니다. ws://localhost:3000 (또는 구성된 호스트와 포트)으로 Gateway에 연결합니다.
채팅 시작
테스트 메시지를 보내 연결을 확인합니다. AI 어시스턴트가 동일한 WebChat 세션을 통해 응답합니다. 대화 기록은 Gateway에서 관리되며 재연결 시에도 유지됩니다.
WebChat 구성 예시
{
"gateway": {
"port": 3000,
"bind": "127.0.0.1",
"auth": {
"mode": "token",
"token": "YOUR_SECRET_TOKEN"
}
}
}WebChat 상세 문서
아키텍처 개요
Gateway 인증
{
"gateway": {
"auth": {
"mode": "token",
"token": "a-strong-random-token-here"
}
}
}원격 접근
{
"gateway": {
"remote": {
"url": "wss://your-remote-host:3000",
"token": "YOUR_REMOTE_TOKEN"
}
}
}세션 관리
읽기 전용 모드
네이티브 클라이언트 기능
메시지 전달
{
"channels": {
"webchat": {
"textChunkLimit": 2000,
"blockStreaming": true
}
}
}보안 모범 사례
WebChat 구성 참조
| Key | Type | Default | Description |
|---|---|---|---|
| gateway.port | number | 3000 | Gateway의 WebSocket 포트 번호 |
| gateway.bind | string | "127.0.0.1" | Gateway가 WebSocket 연결을 위해 바인딩하는 호스트 주소 |
| gateway.auth.mode | string | "token" | 인증 모드: 공유 비밀에는 'token', 자격 증명 기반 인증에는 'password' |
| gateway.auth.token | string | "" | WebSocket 인증용 공유 비밀 토큰 |
| gateway.auth.password | string | "" | WebSocket 인증용 비밀번호 |
| gateway.remote.url | string | "" | 원격 Gateway WebSocket URL (예: wss://remote-host:3000) |
| gateway.remote.token | string | "" | 원격 Gateway 연결을 위한 인증 토큰 |
| gateway.remote.password | string | "" | 원격 Gateway 연결을 위한 인증 비밀번호 |
| session.defaultKey | string | "" | WebChat 대화의 기본 세션 키 |
| session.storage | string | "memory" | 세션 스토리지 백엔드 (memory, file, redis 등) |
| textChunkLimit | number | 2000 | 발신 메시지 청크당 최대 문자 수 |
| blockStreaming | boolean | false | 실시간 피드백을 위해 생성 중 블록 기반 청크로 응답 전송 |
Gateway의 WebSocket 포트 번호
Gateway가 WebSocket 연결을 위해 바인딩하는 호스트 주소
인증 모드: 공유 비밀에는 'token', 자격 증명 기반 인증에는 'password'
WebSocket 인증용 공유 비밀 토큰
WebSocket 인증용 비밀번호
원격 Gateway WebSocket URL (예: wss://remote-host:3000)
원격 Gateway 연결을 위한 인증 토큰
원격 Gateway 연결을 위한 인증 비밀번호
WebChat 대화의 기본 세션 키
세션 스토리지 백엔드 (memory, file, redis 등)
발신 메시지 청크당 최대 문자 수
실시간 피드백을 위해 생성 중 블록 기반 청크로 응답 전송
WebChat 자주 묻는 질문
WebChat 문제 해결
Gateway가 실행되고 있지 않거나, WebSocket 포트가 방화벽에 의해 차단되어 있습니다.
토큰 또는 비밀번호가 Gateway 구성과 일치하지 않습니다.
AI 에이전트가 구성되지 않았거나, AI 제공업체 API 키가 유효하지 않습니다.
SSH 터널이 올바른 포트를 포워딩하지 않거나, Gateway가 예상 주소에서 수신 대기하고 있지 않습니다.
연결 사이에 세션이 만료되었거나 삭제되었습니다.