一、项目背景:为什么需要 ChatClaw?
1.1 OpenClaw 的"水土不服"
OpenClaw 作为 GitHub 星标增长最快的开源项目(4 个月 25 万星),虽然功能强大,但对国内用户存在明显痛点:
| 痛点 | 具体表现 |
|---|---|
| 部署复杂 | Node.js 依赖、6000+ 文件、安装耗时 30 分钟+ |
| 资源占用高 | 内存占用 500MB+,老电脑卡顿明显 |
| 网络门槛 | 需配置 GitHub SSH、国际 API 访问困难 |
| 国内生态弱 | 钉钉/企微/飞书适配繁琐,文档以英文为主 |
1.2 ChatClaw 的破局之道
ChatClaw 是一款 开源桌面 AI 工具**,主打私有知识库 + 多模型兼容 + 本地部署,让 AI 只基于你上传的文档回答,彻底告别 "一本正经胡说八道",所有数据存在本地,隐私更安全。:
erlang
┌─────────────────────────────────────────┐
│ ChatClaw 核心优势 │
├─────────────────────────────────────────┤
│ 📦 30MB 单文件 │ 无需 Node.js 环境 │
│ ⚡ 1 分钟安装 │ 一键启动,开箱即用 │
│ 🛡️ 沙箱安全 │ 隔离运行,权限可控 │
│ 🇨🇳 国内生态 │ 原生支持钉钉/企微/QQ │
│ 🚀 Go 语言高性能 │ 内存占用降低 80% │
└─────────────────────────────────────────┘
开源地址: github.com/zhimaAi/Cha...
二、核心功能详解:不止于聊天
2.1 全渠道通讯集成
ChatClaw 原生连接 10+ 主流通讯应用 :
| 类型 | 支持平台 | 接入方式 |
|---|---|---|
| 国内办公 | 钉钉、企业微信、飞书、QQ | 官方 Bot API / Webhook |
| 海外通讯 | WhatsApp、Telegram、Slack、Discord | 官方 API / 网关接入 |
| 邮件协作 | Gmail、企业邮箱 | IMAP/SMTP 协议 |
| 社交娱乐 | 微信(个人号)、抖音 | 适配方案(需配置) |
特色功能:智能吸附窗口
- 在钉钉/企微/飞书聊天界面旁自动贴靠
- 选中任意文本,一键唤起 AI 回复
- 无需切换应用,边聊天边查 AI
2.2 内置技能市场(Skills Marketplace)
┌─────────────────────────────────────────┐
│ ChatClaw 技能市场 │
├─────────────────────────────────────────┤
│ 📊 PPT 快速生成 │ 一句话生成演示文稿 │
│ 📝 文档智能解析 │ PDF/Word/Excel 向量化 │
│ 🔍 知识库问答 │ 私有数据 RAG 检索 │
│ ⏰ 计划任务 │ 定时执行自动化脚本 │
│ 🌐 浏览器自动化 │ 网页数据抓取/填报 │
│ 💻 系统命令执行 │ 安全沙箱内运行 │
│ 🔗 MCP 协议支持 │ 连接外部工具生态 │
└─────────────────────────────────────────┘
2.3 知识库:开源版 ima
ChatClaw 内置完整的 RAG(检索增强生成) 能力:
支持的文档格式:
- TXT、PDF、Word、Excel、CSV、HTML、Markdown
处理流程:
文档上传 → 智能解析 → 文本分割 → 向量嵌入 → SQLite 存储 → AI 检索
技术亮点:
- 采用 RAPTOR 递归摘要 技术,长文档理解更准确
- 本地 SQLite + sqlite-vec 向量数据库,无需外部依赖
- 完全离线运行,数据不出本地
2.4 记忆与上下文
- 短期记忆:对话历史保持,支持多轮上下文理解
- 长期记忆:关键信息自动提取,跨会话记忆
- 个性化配置:不同渠道可配置不同 AI 人格
2.5 MCP(Model Context Protocol)
支持 Anthropic 提出的 MCP 协议,可无缝连接:
- 文件系统工具
- 数据库查询工具
- 代码执行环境
- 第三方 API 服务
三、安装部署:5 分钟极简流程
3.1 环境要求
| 平台 | 最低配置 | 推荐配置 |
|---|---|---|
| Windows | Windows 10 / 4GB 内存 | Windows 11 / 8GB 内存 |
| macOS | macOS 11 / 4GB 内存 | macOS 14 / 8GB 内存 |
| Linux | Ubuntu 18.04 / 2GB 内存 | Ubuntu 22.04 / 4GB 内存 |
无需安装: Node.js、Python、Docker、数据库
3.2 安装部署
Docker:
arduino
docker run -d \
--name chatclaw-server \
-p 8080:8080 \
-v chatclaw-data:/root/.config/chatclaw \
registry.cn-hangzhou.aliyuncs.com/chatwiki/chatclaw:latest
Linux:
bash
# AppImage 格式,无需安装
wget https://github.com/zhimaAi/ChatClaw/releases/latest/download/ChatClaw-linux-x86_64.AppImage
chmod +x ChatClaw-linux-x86_64.AppImage
./ChatClaw-linux-x86_64.AppImage
Docker compose
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:
3.3 服务器版部署(无桌面环境)
二进制直接运行 :
bash
# 下载服务器版二进制
wget https://github.com/zhimaAi/ChatClaw/releases/latest/download/ChatClaw-server-linux-amd64
chmod +x ChatClaw-server-linux-amd64
# 启动服务
./ChatClaw-server-linux-amd64
# 自定义端口
WAILS_SERVER_HOST=0.0.0.0 WAILS_SERVER_PORT=8080 ./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
启动命令:
bash
docker-compose up -d
浏览器打开 http://localhost:8080 即可使用。停止服务:docker compose down。数据持久化在 chatclaw-data 卷中。
技术栈
| 层级 | 技术 |
|---|---|
| 桌面框架 | Wails v3 (Go + WebView) |
| 后端语言 | Go 1.26 |
| 前端框架 | Vue 3 + TypeScript |
| UI 组件 | shadcn-vue (New York 风格) + Reka UI |
| 样式方案 | Tailwind CSS v4 |
| 状态管理 | Pinia |
| 构建工具 | Vite |
| AI 框架 | Eino (字节跳动 CloudWeGo) |
| AI 模型供应商 | OpenAI / Claude / Gemini / Ollama / DeepSeek / 豆包 / 通义千问 / 智谱 / Grok |
| 数据库 | SQLite + sqlite-vec (向量检索) |
| 国际化 | go-i18n + vue-i18n |
| 任务运行 | Task |
| 图标 | Lucide |
项目结构
csharp
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/ # 前端国际化配置
│ ├── 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/ # 国际化错误处理
│ ├── fts/ # 全文搜索分词器
│ ├── logger/ # 结构化日志
│ ├── services/ # 业务逻辑服务
│ │ ├── agents/ # Agent 增删改查
│ │ ├── app/ # 应用生命周期
│ │ ├── browser/ # 浏览器自动化 (chromedp)
│ │ ├── chat/ # 聊天与流式传输
│ │ ├── conversations/ # 会话管理
│ │ ├── document/ # 文档上传与向量化
│ │ ├── floatingball/ # 悬浮球窗口(跨平台)
│ │ ├── i18n/ # 后端国际化
│ │ ├── library/ # 知识库增删改查
│ │ ├── multiask/ # 多模型问答
│ │ ├── providers/ # AI 供应商配置
│ │ ├── retrieval/ # RAG 检索服务
│ │ ├── settings/ # 用户设置与缓存
│ │ ├── textselection/ # 屏幕划词(跨平台)
│ │ ├── thumbnail/ # 窗口缩略图捕获
│ │ ├── tray/ # 系统托盘
│ │ ├── updater/ # 自动更新 (GitHub/Gitee)
│ │ ├── windows/ # 窗口管理与贴靠服务
│ │ └── winsnapchat/ # 贴靠聊天会话服务
│ ├── sqlite/ # 数据库层 (Bun ORM + 迁移)
│ └── taskmanager/ # 后台任务调度器
├── pkg/ # 公共/可复用 Go 包
│ ├── webviewpanel/ # 跨平台 WebView 面板管理器
│ ├── winsnap/ # 窗口贴靠引擎 (macOS/Windows/Linux)
│ └── winutil/ # 窗口激活工具
├── docs/ # 开发文档
└── images/ # README 截图
四、配置指南:连接你的数字员工
4.1 初始化配置
首次启动后,浏览器访问 http://localhost:8080,进入配置向导:
步骤 1:选择 AI 模型供应商
| 供应商 | 特点 | 适用场景 |
|---|---|---|
| DeepSeek | 国产、便宜、推理强 | 国内首选 |
| OpenAI | GPT-4o、功能全面 | 国际业务 |
| Claude | 长文本、代码强 | 技术文档 |
| 豆包/通义 | 字节/阿里生态 | 国内集成 |
| Ollama | 本地模型、隐私优先 | 离线环境 |
步骤 2:配置 API Key
yaml
# 支持多模型配置,自动 failover
ai_providers:
primary:
name: "deepseek"
api_key: "sk-xxxxxxxx"
model: "deepseek-chat"
backup:
name: "openai"
api_key: "sk-yyyyyyyy"
model: "gpt-4o-mini"
4.2 连接通讯渠道
钉钉接入示例 :
-
登录钉钉开放平台,创建企业内部应用
-
获取
AppKey和AppSecret -
在 ChatClaw 配置页面填写:
yamlchannels: dingtalk: app_key: "dingxxxxxxxxxx" app_secret: "xxxxxxxxxxxxxxxx" webhook_token: "xxxxxxxx" -
扫码授权,完成绑定
企业微信接入:
yaml
channels:
wecom:
corp_id: "wwxxxxxxxxxxxxxxxx"
agent_id: "1000002"
secret: "xxxxxxxxxxxxxxxx"
token: "xxxxxxxx"
encoding_aes_key: "xxxxxxxx"
Telegram Bot 接入 :
-
在 Telegram 搜索
@BotFather,创建 Bot 获取 Token -
配置到 ChatClaw:
yamlchannels: telegram: bot_token: "123456789:ABCdefGHIjklMNOpqrsTUVwxyz" -
执行配对命令:
bashchatclaw pairing approve telegram <配对码>
4.3 知识库配置
yaml
knowledge_base:
# 自动监控目录,新文件自动入库
watch_dirs:
- "/path/to/documents"
- "/path/to/manuals"
# 文档处理配置
parser:
chunk_size: 1000
chunk_overlap: 200
enable_raptor: true # 启用递归摘要
# 检索配置
retrieval:
top_k: 5
similarity_threshold: 0.75
五、实战案例:从个人到企业
案例 1:个人效率助手(知识工作者)
场景: 每天需要处理大量微信/钉钉消息、文档、邮件
配置方案:
yaml
# 个人效率配置
skills:
- name: "quick_reply"
enabled: true
channels: ["wechat", "dingtalk"]
# 划词快速回复,AI 生成个性化回复
- name: "document_qa"
enabled: true
knowledge_base: "personal_docs"
# 个人文档库,支持快速查询
- name: "email_assistant"
enabled: true
imap_server: "imap.qq.com"
# 自动分类邮件,生成回复草稿
- name: "ppt_generator"
enabled: true
# 一句话生成 PPT,支持 markdown 输入
使用效果:
- 消息回复效率提升 3 倍
- 文档查找时间从 10 分钟缩短到 30 秒
- 日报/周报生成从 1 小时缩短到 5 分钟
案例 2:中小企业客服中心
场景: 电商公司,日均 500+ 客户咨询,3 人客服团队
部署架构:
markdown
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ 客户咨询入口 │────▶│ ChatClaw 集群 │────▶│ 企业知识库 │
│ 微信/企微/网页 │ │ (3 实例负载) │ │ 产品/订单/物流 │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│
▼
┌─────────────────┐
│ 人工坐席 │
│ (复杂问题转接) │
└─────────────────┘
核心配置:
yaml
# 客服场景优化
skills:
- name: "customer_service"
enabled: true
knowledge_base: "product_faq"
fallback_to_human: true # 复杂问题转人工
- name: "order_query"
enabled: true
api_endpoint: "https://erp.company.com/api/orders"
# 对接 ERP 系统,实时查询订单状态
- name: "escalation"
enabled: true
rules:
- condition: "sentiment < -0.5" # 负面情绪
action: "alert_manager"
- condition: "query_count > 3 && not_resolved"
action: "transfer_to_human"
channels:
wechat: # 微信公众号
wecom: # 企业微信客服
website: # 网页嵌入
效果数据:
- 自动解决率:75%(375/500 咨询无需人工)
- 平均响应时间:从 5 分钟缩短到 10 秒
- 客服人力释放:2 人转岗至运营
案例 3:开发团队智能助手
场景: 20 人研发团队,技术文档分散,新人上手慢
知识库建设:
yaml
knowledge_base:
sources:
- type: "git"
url: "https://github.com/company/wiki"
auto_sync: true
- type: "confluence"
url: "https://wiki.company.com"
space: "DEV"
- type: "file"
path: "/shared/docs/api"
# 代码片段专项索引
code_snippets:
languages: ["python", "go", "java", "vue"]
enable_semantic_search: true
技能配置:
yaml
skills:
- name: "code_review"
enabled: true
trigger: "git_pr_opened"
# 自动审查 PR,生成 review 意见
- name: "tech_qa"
enabled: true
# 技术问题问答,基于内部知识库
- name: "onboarding"
enabled: true
# 新人引导,自动推荐相关文档
- name: "meeting_summary"
enabled: true
# 会议录音转文字,生成摘要
六、进阶玩法:打造专属智能体
6.1 自定义技能开发(Go 语言)
ChatClaw 支持使用 Go 语言开发自定义技能:
go
// skills/custom_skill.go
package skills
import (
"context"
"github.com/zhimaAi/chatclaw-sdk"
)
// WeatherSkill 天气查询技能
type WeatherSkill struct{}
func (w *WeatherSkill) Name() string {
return "weather-query"
}
func (w *WeatherSkill) Description() string {
return "查询指定城市天气"
}
func (w *WeatherSkill) Execute(ctx context.Context, params map[string]string) (string, error) {
city := params["city"]
// 调用天气 API
weather, err := fetchWeather(city)
if err != nil {
return "", err
}
return fmt.Sprintf("%s 今天 %s,温度 %s℃,%s",
city, weather.Condition, weather.Temp, weather.Tips), nil
}
func (w *WeatherSkill) Parameters() []chatclaw.Parameter {
return []chatclaw.Parameter{
{
Name: "city",
Type: "string",
Required: true,
Description: "城市名称,如北京、上海",
},
}
}
6.2 工作流编排
yaml
# workflows/daily_report.yml
name: 自动生成日报
trigger:
type: schedule
cron: "0 18 * * 1-5" # 工作日 18:00
steps:
- name: collect_commits
action: git_log
args:
since: "24h"
author: "{{user}}"
- name: summarize_tasks
action: llm_summarize
input: "{{collect_commits.output}}"
prompt: "将以下 Git 提交记录整理成工作日报要点:"
- name: query_meetings
action: calendar_query
args:
date: "today"
- name: generate_report
action: generate_document
template: "daily_report"
data:
tasks: "{{summarize_tasks.output}}"
meetings: "{{query_meetings.output}}"
- name: send_dingtalk
action: send_message
channel: dingtalk
target: "日报群"
content: "{{generate_report.output}}"
6.3 多智能体协作(Swarm)
yaml
# 配置多个专业智能体
agents:
- name: "coder"
role: "代码专家"
model: "deepseek-coder"
skills: ["code_review", "bug_fix", "refactor"]
- name: "writer"
role: "文档专家"
model: "claude-3-sonnet"
skills: ["doc_write", "translate", "polish"]
- name: "planner"
role: "项目管家"
model: "gpt-4o"
skills: ["schedule", "reminder", "report"]
# 任务自动分配
coordinator:
- trigger: "new_issue"
classifier: "llm"
rules:
- if: "issue.type == 'bug'"
assign: "coder"
- if: "issue.type == 'feature'"
assign: "planner"
- if: "issue.labels contains 'documentation'"
assign: "writer"
七、性能对比:ChatClaw vs OpenClaw
| 指标 | OpenClaw | ChatClaw | 提升 |
|---|---|---|---|
| 安装包大小 | ~500MB | ~30MB | 16 倍减小 |
| 安装时间 | 30+ 分钟 | 1 分钟 | 30 倍加速 |
| 内存占用 | 500-800MB | 80-150MB | 80% 降低 |
| 启动速度 | 15-30 秒 | 3-5 秒 | 5 倍提升 |
| 无桌面支持 | ❌ 需桌面环境 | ✅ 原生支持 | 服务器友好 |
| 国内网络 | ⚠️ 需配置 | ✅ 开箱即用 | 零门槛 |
八、未来展望与社区生态
路线图(2026) :
| 季度 | 里程碑 |
|---|---|
| Q2 | 发布插件市场,支持第三方技能交易 |
| Q3 | 集成更多国产大模型(文心一言、通义千问、智谱) |
| Q4 | 推出移动端 App,支持 iOS/Android |
| 2027 Q1 | 企业版发布,支持 SSO、审计、权限管理 |
九、总结:谁适合使用 ChatClaw?
| 用户类型 | 使用场景 | 推荐理由 |
|---|---|---|
| 效率极客 | 个人知识管理、自动化办公 | 30MB 轻量,随时待命 |
| 客服团队 | 多平台统一回复、知识库问答 | 一键接入 10+ 渠道 |
| 开发者 | 技术文档助手、代码审查 | 开源可定制,Go 语言扩展 |
| 中小企业 | 低成本 AI 客服、智能办公 | 免云服务费用,数据本地 |
| 运维工程师 | 告警通知、自动化脚本 | 服务器版无桌面依赖 |
🚀 立即开始
bash
# 5 分钟拥有你的 AI 智能体
curl -fsSL https://www.chatclaw.ai/install.sh | bash
# 或访问
# GitHub: https://github.com/zhimaAi/ChatClaw
# 官网: https://www.chatclaw.ai
参考资源:
- 开源地址:github.com/zhimaAi/Cha...
- Gitee 镜像:gitee.com/zhimaAi/Cha...
- 技术博客:www.cnblogs.com/likwo/p/197...
如果这篇文章对你有帮助,请点个 👍 关注,持续追踪国产 AI 智能体最新动态!