<p align="center">
<img src="../../frontend/src/assets/images/logo-floatingball.png" width="150" height="150">
</p>

<h1 align="center">ChatClaw</h1>

<p align="center">
  <strong>5분 만에 OpenClaw 같은 개인 AI 에이전트를 확보하세요. 샌드박스 보안, 작고 빠름</strong>
</p>

<p align="center">
  <a href="README.md">English</a> |
  <a href="README_zh-CN.md">简体中文</a> |
  <a href="README_zh-TW.md">繁體中文</a> |
  <a href="README_ja-JP.md">日本語</a> |
  <a href="README_ko-KR.md">한국어</a> |
  <a href="README_ar-SA.md">العربية</a> |
  <a href="README_bn-BD.md">বাংলা</a> |
  <a href="README_de-DE.md">Deutsch</a> |
  <a href="README_es-ES.md">Español</a> |
  <a href="README_fr-FR.md">Français</a> |
  <a href="README_hi-IN.md">हिन्दी</a> |
  <a href="README_it-IT.md">Italiano</a> |
  <a href="README_pt-BR.md">Português</a> |
  <a href="README_sl-SI.md">Slovenščina</a> |
  <a href="README_tr-TR.md">Türkçe</a> |
  <a href="README_vi-VN.md">Tiếng Việt</a>
</p>

ChatClaw는 오픈소스 로컬 지식 베이스 및 OpenClaw 그래픽 데스크톱 어시스턴트 애플리케이션입니다.
프로그래밍 없이 원클릭으로 로컬 PC에 배포할 수 있습니다.微信、 釘钉、기업微信、QQ、웍스、WhatsApp 등 주류 메신저 앱에 연결하여,
명령을 보내기만 하면 AI가 대신 작업을 실행해 줍니다.내장된 OpenClaw 5000+ 스킬 라이브러리를 갖추고 있으며, ima와 유사한 로컬 지식 베이스 관리도 지원합니다.

## 미리보기

### AI Chatbot Assistant

AI 어시스턴트에게 어떤 질문이든 하세요. 어시스턴트가 지식 베이스를 지능적으로 검색하여 관련 답변을 생성합니다. 내장 스킬 마켓과 함께 AI 에이전트가 자율적으로 작업하므로全程 개입이 필요하지 않습니다. 복잡한 프로젝트 기획, 문서 정리, PPT 생성, 다단계 작업 실행 등 모든 영역에서 AI 에이전트가 자율적으로 분석하고, 효율적으로 추진하며, 최종적으로 완전한 결과를 제공합니다.

![](../../images/previews/en/image1.png)

![](../../images/previews/en/image2.png)

### Multi-Agent Mode, Tailored for Different Scenarios

독립적인 여러 AI 에이전트를 생성하여 각각 고유한 페르소나, 메모리, 스킬을 가집니다. 필요할 때 서로干扰 없이 전환하세요. 각 에이전트에 "고객 서비스", "데이터 분석가", "카피 어시스턴트" 등 다른 역할을 할당하고, 서로 다른 스킬, 지식 베이스, 응답 스타일을 구성할 수 있습니다.

![](../../images/previews/en/image3.png)

### Local Knowledge Base Management

문서(TXT, PDF, Word, Excel, CSV, HTML, Markdown)를 업로드하면 시스템이 자동으로 파싱, 분할, 벡터화하여 프라이빗 지식 베이스에 저장합니다. AI 모델의 정밀한 검색과 활용을 지원하며, 폴더 및 지식 베이스별 문서 정리를 지원합니다.

![](../../images/previews/en/image4.png)

### Skill Manager — AI Responds at Command

5000+ 즉시 사용 가능한 AI 스킬이 생산성, 개발 도구, 멀티미디어, 스마트 홈 등을 커버합니다. 프로그래밍 없이 AI에게 작업을 도와달라고 하세요. 명령어를 사용하여 설치된 기능을 찾거나 새 확장 플러그인을 설치하세요. 스킬 마켓에서 자유롭게 스킬을 검색하고 설치하세요.

![](../../images/previews/en/image5.png)

### Memory — Natural & Smarter Interactions

문맥 대화를 활성화하고 개인화된 서비스를 제공하며, 복잡한 작업을 완료하고 지속적으로 학습하고 발전합니다. 로봇은 점점 더 사려 깊고 지능적인 서비스를 제공하는 성장하는 동반자가 됩니다.

![](../../images/previews/en/image6.png)

### Free Model Trial

원클릭으로 ChatWiki에 연결하고 크레딧을 동기화하며 커스텀 모델을 지원합니다. Ollama, Google Gemini, OpenAI 등 고품질 내/외국산 LLM을 내장하고 있어 일상 업무든 전문 시나리오든 좋아하는 AI 모델을 사용하세요.

![](../../images/previews/en/image7.png)

### Multi-Channel Remote Control via WeChat/QQ/WhatsApp

ChatClaw은 다양한 메시지 채널을 지원하여 분석 결과, 모니터링 알림, 연구 요약을 직접 전화로 전송합니다. AI 처리 후 결과는 자동으로 지정 채널로 전송됩니다. 채팅 창에서 명령을 보내면 AI 작업 실행을 원격으로 제어할 수 있습니다.

![](../../images/previews/en/image8.png)

### Scheduled Tasks — Automated Execution

모니터링 빈도를 설정하세요: 5분마다, 매시간, 또는 매일 고정 시간에. Cron 표현식의 그래픽 스케줄러로 직관적인 자동화를 실현합니다. 정기적으로 페이지나 데이터 소스를 가져와 변경 사항을 비교하고, 주요 지표를 모니터링하며, 이상 발견 시 즉시 메시지 채널로 알림을 전송합니다.

![](../../images/previews/en/image9.png)

### Text Selection for Instant Q&A

화면의 텍스트를 선택하면 자동으로 플로팅 퀵 질문 상자에 복사됩니다. 원클릭으로 AI 어시스턴트에게 보내면 즉시 답변을 받을 수 있습니다.

![](../../images/previews/en/image10.png)

### Smart Sidebar

다른 앱 창에 스냅할 수 있는 스마트 어시스턴트입니다. 질문을 위해 서로 다른 구성의 AI 어시스턴트 간에 빠르게 전환하세요. 로봇이 연결된 지식 베이스에 따라 답변을 생성하고 원클릭으로 회신을 보낼 수 있습니다. 스마트 플로팅 팔로우로 도구 입력이 언제나 손에 있습니다.

![](../../images/previews/en/image11.png)

![](../../images/previews/en/image12.png)

### One Question, Multiple Answers: Compare with Ease

질문을 반복할 필요가 없습니다. 여러 "AI 전문가"에게 동시에 질문하고 같은 인터페이스에서 나란히 답변을 비교하여 최선의 결론에 도달하세요.

![](../../images/previews/en/image13.png)

### One-Click Launcher Ball

데스크톱의 플로팅 볼을 클릭하면 ChatClaw 메인 앱 창을 즉시 실행하거나 열 수 있습니다.

![](../../images/previews/en/image14.png)

### Community & Contact Us

도움말을 받거나 개선 제안을 해주세요. WeChat: QR 코드를 스캔하여 ChatClaw 기술 교류 그룹에 참여하세요. 추가时请注明 "chatclaw".


## 서버 모드 배포


## 서버 모드 배포


## 서버 모드 배포


## 서버 모드 배포

ChatClaw은 서버 모드로 실행可能(데스크톱 GUI 불필요), 브라우저를 통해 액세스 가능.

### 바이너리 직접 실행

[GitHub Releases](https://github.com/chatwiki/chatclaw/releases)에서 해당 플랫폼의 바이너리를 다운로드하세요:

|| 플랫폼 | 파일 |
||------|------|
|| Linux x86_64 | `ChatClaw-server-linux-amd64` |
|| Linux ARM64 | `ChatClaw-server-linux-arm64` |

```bash
chmod +x ChatClaw-server-linux-amd64
./ChatClaw-server-linux-amd64
```

브라우저에서 http://localhost:8080을 여세요.

서버는 기본적으로 `0.0.0.0:8080`에서 수신합니다. 환경 변수를 통해 호스트와 포트를 사용자 지정할 수 있습니다:

```bash
WAILS_SERVER_HOST=127.0.0.1 WAILS_SERVER_PORT=3000 ./ChatClaw-server-linux-amd64
```

### Docker

```bash
docker run -d \
  --name chatclaw-server \
  -p 8080:8080 \
  -v chatclaw-data:/root/.config/chatclaw \
  registry.cn-hangzhou.aliyuncs.com/chatwiki/chatclaw:latest
```

브라우저에서 http://localhost:8080을 여세요.

### Docker Compose

`docker-compose.yml` 파일 생성:

```yaml
services:
  chatclaw:
    image: registry.cn-hangzhou.aliyuncs.com/chatwiki/chatclaw:latest
    container_name: chatclaw-server
    volumes:
      - chatclaw-data:/root/.config/chatclaw
    ports:
      - "8080:8080"
    restart: unless-stopped

volumes:
  chatclaw-data:
```

그 후 실행:

```bash
docker compose up -d
```

브라우저에서 http://localhost:8080을 여세요. 중지: `docker compose down`. 데이터는 `chatclaw-data` 볼륨에 지속됩니다.

## 기술 스택

|| 레이어 | 기술 |
||------|------|
|| 데스크톱 프레임워크 | [Wails v3](https://wails.io/) (Go + WebView) |
|| 백엔드 언어 | [Go 1.26](https://go.dev/) |
|| 프론트엔드 프레임워크 | [Vue 3](https://vuejs.org/) + [TypeScript](https://www.typescriptlang.org/) |
|| UI 컴포넌트 | [shadcn-vue](https://www.shadcn-vue.com/) + [Reka UI](https://reka-ui.com/) |
|| 스타일링 | [Tailwind CSS v4](https://tailwindcss.com/) |
|| 상태 관리 | [Pinia](https://pinia.vuejs.org/) |
|| 빌드 도구 | [Vite](https://vite.dev/) |
|| AI 프레임워크 | [Eino](https://github.com/cloudwego/eino) (ByteDance CloudWeGo) |
|| AI 모델 제공자 | OpenAI / Claude / Gemini / Ollama / DeepSeek / Doubao / Qwen / Zhipu / Grok |
|| 데이터베이스 | [SQLite](https://www.sqlite.org/) + [sqlite-vec](https://github.com/asg017/sqlite-vec) (벡터 검색) |
|| 국제화 | [go-i18n](https://github.com/nicksnyder/go-i18n) + [vue-i18n](https://vue-i18n.intlify.dev/) |
|| 작업 실행기 | [Task](https://taskfile.dev/) |
|| 아이콘 | [Lucide](https://lucide.dev/) |

## 프로젝트 구조

```
ChatClaw_D2/
├── main.go                     # 애플리케이션 진입점
├── go.mod / go.sum             # Go 모듈 종속성
├── Taskfile.yml                # 작업 실행기 구성
├── build/                      # 빌드 구성 및 플랫폼 자산
│   ├── config.yml              # Wails 빌드 구성
│   ├── darwin/                 # macOS 빌드 설정 및 자격 증명
│   ├── windows/                # Windows 설치 관리자 (NSIS/MSIX) 및 매니페스트
│   ├── linux/                  # Linux 패키징 (AppImage, nfpm)
│   ├── ios/                    # iOS 빌드 설정
│   └── android/                # Android 빌드 설정
├── frontend/                   # Vue 3 프론트엔드 애플리케이션
│   ├── package.json            # Node.js 종속성
│   ├── vite.config.ts          # Vite 번들러 구성
│   ├── components.json         # shadcn-vue 구성
│   ├── index.html              # 기본 창 진입
│   ├── floatingball.html       #浮动 볼 창 진입
│   ├── selection.html          # 텍스트 선택 팝업 진입
│   ├── winsnap.html            # 스냅 창 진입
│   └── src/
│       ├── assets/             # 아이콘(SVG), 이미지 및 전역 CSS
│       ├── components/         # 공유 컴포넌트
│       │   ├── layout/         # 앱 레이아웃, 사이드바, 타이틀바
│       │   └── ui:             # shadcn-vue 기본 요소 (button, dialog, toast…)
│       ├── composables/        # Vue 컴포저블(재사용 가능한 로직)
│       ├── i18n/               # 프론트엔드 i18n 설정
│       ├── locales/            # 번역 파일 (zh-CN, en-US…)
│       ├── lib/                # 유틸리티 함수
│       ├── pages/              # 페이지 수준 뷰
│       │   ├── assistant/      # AI 채팅 어시스턴트 페이지 및 컴포넌트
│       │   ├── knowledge/      # 지식 베이스 관리 페이지
│       │   ├── multiask/       # 멀티 모델 비교 페이지
│       │   └── settings/       # 설정 페이지(제공자, 모델, 도구…)
│       ├── stores:             # Pinia 상태 저장소
│       ├── floatingball:       #浮动 볼 미니 앱
│       ├── selection:          # 텍스트 선택 미니 앱
│       └── winsnap:            # 스냅 창 미니 앱
├── internal:                   # 비공개 Go 패키지
│   ├── bootstrap:              # 애플리케이션 초기화 및 와이어링
│   ├── define:                 # 상수, 기본 제공자, 환경 플래그
│   ├── device:                 # 장치 식별
│   ├── eino:                   # AI/LLM 통합 레이어
│   │   ├── agent:              # Agent 오케스트레이션
│   │   ├── chatmodel:          # 채팅 모델 팩토리(멀티 제공자)
│   │   ├── embedding:          # 임베딩 모델 팩토리
│   │   ├── filesystem:         # AI Agent 파일 시스템 도구
│   │   ├── parser:             # 문서 파서 (PDF, DOCX, XLSX, CSV)
│   │   ├── processor:          # 문서 처리 파이프라인
│   │   ├── raptor:             # RAPTOR 재귀 요약
│   │   ├── splitter:           # 텍스트 분할기 팩토리
│   │   └── tools:              # AI 도구 통합(브라우저, 검색, 계산기…)
│   ├── errs:                   # i18n 인식 오류 처리
│   ├── fts:                    # 전체 텍스트 검색 토크나이저
│   ├── logger:                 # 구조화된 로깅
│   ├── services:               # 비즈니스 로직 서비스
│   │   ├── agents:             # Agent CRUD
│   │   ├── app:                # 애플리케이션 수명 주기
│   │   ├── browser:            # 브라우저 자동화 (chromedp)
│   │   ├── chat:               # 채팅 및 스트리밍
│   │   ├── conversations:      # 대화 관리
│   │   ├── document:           # 문서 업로드 및 벡터화
│   │   ├── floatingball:       #浮动 볼 창(크로스 플랫폼)
│   │   ├── i18n:               # 백엔드 i18n
│   │   ├── library:            # 지식 라이브러리 CRUD
│   │   ├── multiask:           # 멀티 모델 Q&A
│   │   ├── providers:          # AI 제공자 구성
│   │   ├── retrieval:          # RAG 검색 서비스
│   │   ├── settings:           # 사용자 설정 및 캐시
│   │   ├── textselection:      # 화면 텍스트 선택(크로스 플랫폼)
│   │   ├── thumbnail:          # 창 축소판 캡처
│   │   ├── tray:               # 시스템 트레이
│   │   ├── updater:            # 자동 업데이트 (GitHub/Gitee)
│   │   ├── windows:            # 창 관리 및 스냅 서비스
│   │   └── winsnapchat:        # 스냅 채팅 세션 서비스
│   ├── sqlite:                 # 데이터베이스 레이어 (Bun ORM + 마이그레이션)
│   └── taskmanager:            # 백그라운드 작업 스케줄러
├── pkg:                         # 공개/재사용 가능한 Go 패키지
│   ├── webviewpanel:           # 크로스 플랫폼 웹뷰 패널 관리자
│   ├── winsnap:                # 창 스냅 엔진 (macOS/Windows/Linux)
│   └── winutil:                # 창 활성화 유틸리티
├── docs:                       # 개발 문서
└── images:                      # README 스크린샷
```




