开源 | ChatClaw Go语言开发的openclaw龙虾智能体
<h1 align="center">ChatClaw</h1><p align="center">
5分钟拥有类 OpenClaw 的龙虾个人AI智能体,沙箱安全,占资源少,运行快.
</p>
<p>5分钟拥有类 OpenClaw 的小龙虾个人AI智能体,沙箱安全防护, macOS/Windows 30M 极小安装包,1 分钟安装。连接 WhatsApp、Telegram、Slack、Discord、Gmail、钉钉、企业微信、QQ、飞书等主流通讯应用,内置技能市场、知识库、记忆、MCP、计划任务等核心功能。Go语言开发,运行快、占资源少。</p>
<p><img src="https://img2024.cnblogs.com/blog/79124/202603/79124-20260312190643450-2060377671.png" alt="image" loading="lazy"></p>
<p>开源地址:https://github.com/zhimaAi/ChatClaw/</p>
<h3 id="ai-聊天助手">AI 聊天助手</h3>
<p>向 AI 助手提出任何问题,它会智能搜索您的知识库并生成相关回答。</p>
<p><img src="https://img2024.cnblogs.com/blog/79124/202603/79124-20260312190229937-76259403.png" alt="image" loading="lazy"></p>
<h3 id="ppt-快速生成">PPT 快速生成</h3>
<p>向智能助手发送一句话指令,即可自动创建和生成 PowerPoint 演示文稿。</p>
<p><img src="https://img2024.cnblogs.com/blog/79124/202603/79124-20260312190255192-2055742501.png" alt="image" loading="lazy"></p>
<h3 id="技能管理器">技能管理器</h3>
<p>使用指令让机器人帮您查找电脑上已安装的功能或安装新的扩展插件。</p>
<p><img src="https://img2024.cnblogs.com/blog/79124/202603/79124-20260312191132578-251066086.png" alt="image" loading="lazy"></p>
<h3 id="知识库--文档向量化存储--类似开源版ima">知识库 | 文档向量化存储类似开源版ima</h3>
<p>上传您的文档(如 TXT、PDF、Word、Excel、CSV、HTML、Markdown),系统会自动解析、分割并转换为向量嵌入,存储到您的私有知识库中,供 AI 模型进行精准检索和利用。</p>
<p><img src="https://img2024.cnblogs.com/blog/79124/202603/79124-20260312190347080-372136957.png" alt="image" loading="lazy"></p>
<h3 id="划词即时问答">划词即时问答</h3>
<p>选中屏幕上的任意文字,它会被自动复制并填入悬浮快问框。一键发送给 AI 助手,即刻获得回答。</p>
<h3 id="智能吸附一边聊天一边查ai">智能吸附,一边聊天,一边查AI</h3>
<p>可以贴靠在其他应用窗口旁的智能助手。在其中快速切换不同配置的 AI 助手进行提问。机器人根据您关联的知识库生成回答,并支持一键将回复发送到您的对话中。</p>
<p><img src="https://img2024.cnblogs.com/blog/79124/202603/79124-20260312190434728-415842716.png" alt="image" loading="lazy"></p>
<h2 id="服务器模式部署">服务器模式部署</h2>
<p>ChatClaw 支持以服务器模式运行(无需桌面 GUI),通过浏览器访问。</p>
<h3 id="二进制直接运行">二进制直接运行</h3>
<p>从 GitHub Releases 下载对应平台的二进制文件:</p>
<table>
<thead>
<tr>
<th>平台</th>
<th>文件</th>
</tr>
</thead>
<tbody>
<tr>
<td>Linux x86_64</td>
<td><code>ChatClaw-server-linux-amd64</code></td>
</tr>
<tr>
<td>Linux ARM64</td>
<td><code>ChatClaw-server-linux-arm64</code></td>
</tr>
</tbody>
</table>
<pre><code class="language-bash">chmod +x ChatClaw-server-linux-amd64
./ChatClaw-server-linux-amd64
</code></pre>
<p>浏览器打开 http://localhost:8080 即可使用。</p>
<p>服务默认监听 <code>0.0.0.0:8080</code>。可通过环境变量自定义监听地址和端口:</p>
<pre><code class="language-bash">WAILS_SERVER_HOST=127.0.0.1 WAILS_SERVER_PORT=3000 ./ChatClaw-server-linux-amd64
</code></pre>
<h3 id="docker">Docker</h3>
<pre><code class="language-bash">docker run -d \
--name chatclaw-server \
-p 8080:8080 \
-v chatclaw-data:/root/.config/chatclaw \
registry.cn-hangzhou.aliyuncs.com/chatwiki/chatclaw:latest
</code></pre>
<p>浏览器打开 http://localhost:8080 即可使用。</p>
<h3 id="docker-compose">Docker Compose</h3>
<p>创建 <code>docker-compose.yml</code> 文件:</p>
<pre><code class="language-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:
</code></pre>
<p>然后运行:</p>
<pre><code class="language-bash">docker compose up -d
</code></pre>
<p>浏览器打开 http://localhost:8080 即可使用。停止服务:<code>docker compose down</code>。数据持久化在 <code>chatclaw-data</code> 卷中。</p>
<h2 id="技术栈">技术栈</h2>
<table>
<thead>
<tr>
<th>层级</th>
<th>技术</th>
</tr>
</thead>
<tbody>
<tr>
<td>桌面框架</td>
<td>Wails v3 (Go + WebView)</td>
</tr>
<tr>
<td>后端语言</td>
<td>Go 1.26</td>
</tr>
<tr>
<td>前端框架</td>
<td>Vue 3 + TypeScript</td>
</tr>
<tr>
<td>UI 组件</td>
<td>shadcn-vue (New York 风格) + Reka UI</td>
</tr>
<tr>
<td>样式方案</td>
<td>Tailwind CSS v4</td>
</tr>
<tr>
<td>状态管理</td>
<td>Pinia</td>
</tr>
<tr>
<td>构建工具</td>
<td>Vite</td>
</tr>
<tr>
<td>AI 框架</td>
<td>Eino (字节跳动 CloudWeGo)</td>
</tr>
<tr>
<td>AI 模型供应商</td>
<td>OpenAI / Claude / Gemini / Ollama / DeepSeek / 豆包 / 通义千问 / 智谱 / Grok</td>
</tr>
<tr>
<td>数据库</td>
<td>SQLite + sqlite-vec (向量检索)</td>
</tr>
<tr>
<td>国际化</td>
<td>go-i18n + vue-i18n</td>
</tr>
<tr>
<td>任务运行</td>
<td>Task</td>
</tr>
<tr>
<td>图标</td>
<td>Lucide</td>
</tr>
</tbody>
</table>
<h2 id="项目结构">项目结构</h2>
<pre><code>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 截图
</code></pre>
<p>开源地址</p>
<p>https://github.com/zhimaAi/ChatClaw/</p><br><br>
来源:https://www.cnblogs.com/likwo/p/19710076
頁:
[1]