OpenClaw (Clawdbot)— 个人 AI 助手,安装部署

🦞 OpenClaw(原名Clawdbot) — 个人 AI 助手

OpenClaw 是一款运行在您自有设备上的个人 AI 助手
它支持您已在使用的各种通信渠道(WhatsApp、Telegram、Slack、Discord、Google Chat、Signal、iMessage、Microsoft Teams、WebChat),以及扩展渠道如 BlueBubbles、Matrix、Zalo 和 Zalo Personal。它可在 macOS/iOS/Android 上进行语音交互,并能渲染一个由您控制的实时画布(Canvas)。网关(Gateway)仅作为控制平面,产品本身是这个助手。

如果您希望拥有一款感觉本地化、快速且始终在线的个人单用户助手,那么就是它了。

官网 · 文档 · DeepWiki · 入门指南 · 更新指南 · 功能展示 · 常见问题 · 向导工具 · Nix · Docker · Discord

推荐设置:运行初始化向导(openclaw onboard)。该向导将引导您完成网关、工作区、渠道和技能的配置。CLI 向导是推荐方式,支持 macOS、Linux 和 Windows(通过 WSL2;强烈推荐)
支持 npm、pnpm 或 bun。
全新安装?请从这里开始:入门指南

订阅服务(OAuth)

模型说明:虽然支持任意模型,但强烈推荐使用 Anthropic Pro/Max(100/200)+ Opus 4.5,因其在长上下文处理能力和更强的提示注入防护方面表现更佳。详见 初始化配置

模型(选择 + 认证)

安装(推荐方式)

运行环境:Node ≥22

npminstall -g openclaw@latest # 或:pnpm add -g openclaw@latest openclaw onboard --install-daemon 

该向导会安装 Gateway 守护进程(launchd/systemd 用户服务),使其持续运行。

快速入门(TL;DR)

运行环境:Node ≥22

完整新手指南(认证、配对、渠道):入门指南

openclaw onboard --install-daemon openclaw gateway --port 18789 --verbose # 发送消息 openclaw message send --to +1234567890 --message "Hello from OpenClaw"# 与助手对话(可选:将回复发送至任意已连接渠道:WhatsApp/Telegram/Slack/Discord/Google Chat/Signal/iMessage/BlueBubbles/Microsoft Teams/Matrix/Zalo/Zalo Personal/WebChat) openclaw agent --message "Ship checklist" --thinking high 

需要升级?请参考 更新指南(并运行 openclaw doctor)。

开发渠道

  • stable:带标签的正式发布版本(vYYYY.M.DvYYYY.M.D-<patch>),npm 分发标签为 latest
  • beta:预发布版本(vYYYY.M.D-beta.N),npm 分发标签为 beta(macOS 应用可能缺失)。
  • devmain 分支的最新代码,npm 分发标签为 dev(若已发布)。

切换渠道(git + npm):openclaw update --channel stable|beta|dev
详情:开发渠道

从源码构建(开发用途)

建议使用 pnpm 从源码构建。Bun 可选,用于直接运行 TypeScript。

git clone https://github.com/openclaw/openclaw.git cd openclaw pnpminstallpnpm ui:build # 首次运行时自动安装 UI 依赖pnpm build pnpm openclaw onboard --install-daemon # 开发循环(TS 文件变更时自动重载)pnpm gateway:watch 

注意:pnpm openclaw ... 通过 tsx 直接运行 TypeScript。pnpm build 生成 dist/ 目录,可用于通过 Node 或打包后的 openclaw 二进制文件运行。

安全默认设置(私信访问)

OpenClaw 会连接真实的即时通讯平台。请将所有入站私信视为不可信输入

完整安全指南:安全

Telegram/WhatsApp/Signal/iMessage/Microsoft Teams/Discord/Google Chat/Slack 的默认行为:

  • 私信配对dmPolicy="pairing" / channels.discord.dm.policy="pairing" / channels.slack.dm.policy="pairing"):未知发件人将收到一个简短的配对码,机器人不会处理其消息。
  • 通过以下命令批准:openclaw pairing approve <channel> <code>(随后该发件人将被加入本地允许列表)。
  • 公开接收私信需显式启用:设置 dmPolicy="open" 并在渠道允许列表中包含 "*"allowFrom / channels.discord.dm.allowFrom / channels.slack.dm.allowFrom)。

运行 openclaw doctor 可检测存在风险或配置不当的私信策略。

亮点功能

  • 本地优先网关 —— 统一的控制平面,用于管理会话、渠道、工具和事件。
  • 多渠道收件箱 —— 支持 WhatsApp、Telegram、Slack、Discord、Google Chat、Signal、iMessage、BlueBubbles、Microsoft Teams、Matrix、Zalo、Zalo Personal、WebChat、macOS、iOS/Android。
  • 多代理路由 —— 将入站渠道/账号/联系人路由至隔离的代理(工作区 + 每个代理的独立会话)。
  • 语音唤醒 + 对话模式 —— 基于 ElevenLabs,在 macOS/iOS/Android 上实现始终在线的语音交互。
  • 实时画布 —— 由代理驱动的可视化工作区,支持 A2UI
  • 一流工具支持 —— 浏览器、画布、节点、定时任务、会话,以及 Discord/Slack 操作。
  • 配套应用 —— macOS 菜单栏应用 + iOS/Android 节点
  • 初始化向导 + 技能 —— 通过向导驱动的设置流程,内置/托管/工作区技能。

Star 历史

在这里插入图片描述

我们迄今构建的一切

核心平台

渠道

应用 + 节点

工具 + 自动化

运行时 + 安全

运维 + 打包

工作原理(简述)

WhatsApp / Telegram / Slack / Discord / Google Chat / Signal / iMessage / BlueBubbles / Microsoft Teams / Matrix / Zalo / Zalo Personal / WebChat │ ▼ ┌───────────────────────────────┐ │ 网关 (Gateway) │ │ (控制平面) │ │ ws://127.0.0.1:18789 │ └──────────────┬────────────────┘ │ ├─ Pi 代理 (RPC) ├─ CLI (openclaw …) ├─ WebChat UI ├─ macOS 应用 └─ iOS / Android 节点 

关键子系统

Tailscale 访问(网关仪表盘)

OpenClaw 可自动配置 Tailscale Serve(仅限 tailnet 内部)或 Funnel(公开),同时网关仍绑定到本地回环地址。配置 gateway.tailscale.mode

  • off:不启用 Tailscale 自动化(默认)。
  • serve:通过 tailscale serve 提供仅限 tailnet 的 HTTPS(默认使用 Tailscale 身份头)。
  • funnel:通过 tailscale funnel 提供公开 HTTPS(需共享密码认证)。

注意事项:

  • 启用 Serve/Funnel 时,gateway.bind 必须保持为 loopback(OpenClaw 会强制执行)。
  • 通过设置 gateway.auth.mode: "password"gateway.auth.allowTailscale: false,可强制 Serve 要求密码。
  • Funnel 除非设置了 gateway.auth.mode: "password",否则拒绝启动。
  • 可选:设置 gateway.tailscale.resetOnExit,在关闭时自动撤销 Serve/Funnel。

详情:Tailscale 指南 · Web 界面

远程网关(Linux 很棒)

在小型 Linux 实例上运行网关完全可行。客户端(macOS 应用、CLI、WebChat)可通过 Tailscale Serve/FunnelSSH 隧道连接,并且仍可在需要时配对设备节点(macOS/iOS/Android)以执行设备本地操作。

  • 网关主机 默认运行 exec 工具和渠道连接。
  • 设备节点 通过 node.invoke 运行设备本地操作(system.run、摄像头、屏幕录制、通知)。
    简而言之:exec 在网关所在位置运行;设备操作在设备所在位置运行。

详情:远程访问 · 节点 · 安全

通过网关协议实现 macOS 权限

macOS 应用可运行在节点模式下,并通过网关 WebSocket(node.list / node.describe)广播其能力与权限映射。客户端随后可通过 node.invoke 执行本地操作:

  • system.run 运行本地命令并返回 stdout/stderr/退出码;设置 needsScreenRecording: true 以要求屏幕录制权限(否则将返回 PERMISSION_MISSING)。
  • system.notify 发送用户通知,若通知权限被拒绝则失败。
  • canvas.*camera.*screen.recordlocation.get 也通过 node.invoke 路由,并遵循 TCC 权限状态。

提升权限的 bash(主机权限)与 macOS TCC 是分开的:

  • 使用 /elevated on|off 在启用并加入允许列表后,按会话切换提升访问权限。
  • 网关通过 sessions.patch(WS 方法)持久化每会话的切换状态,同时持久化 thinkingLevelverboseLevelmodelsendPolicygroupActivation

详情:节点 · macOS 应用 · 网关协议

代理间通信(sessions_* 工具)

  • 使用这些工具在会话间协调工作,无需在不同聊天界面间切换。
  • sessions_list —— 发现活跃会话(代理)及其元数据。
  • sessions_history —— 获取指定会话的对话记录。
  • sessions_send —— 向另一个会话发送消息;可选回复 ping-pong 和公告步骤(REPLY_SKIPANNOUNCE_SKIP)。

详情:会话工具

技能注册表(ClawHub)

ClawHub 是一个极简的技能注册表。启用 ClawHub 后,代理可自动搜索技能并在需要时拉取新技能。

ClawHub

聊天命令

在 WhatsApp/Telegram/Slack/Google Chat/Microsoft Teams/WebChat 中发送以下命令(群组命令仅限所有者):

  • /status —— 简洁会话状态(模型 + 令牌数,如有则显示成本)
  • /new/reset —— 重置会话
  • /compact —— 压缩会话上下文(摘要)
  • /think <level> —— off|minimal|low|medium|high|xhigh(仅限 GPT-5.2 + Codex 模型)
  • /verbose on|off
  • /usage off|tokens|full —— 每次回复的用量页脚
  • /restart —— 重启网关(群组中仅限所有者)
  • /activation mention|always —— 切换群组激活模式(仅限群组)

应用(可选)

仅网关即可提供出色的体验。所有应用均为可选,用于添加额外功能。

如果您计划构建/运行配套应用,请遵循以下平台操作手册。

macOS(OpenClaw.app)(可选)

  • 网关和健康状态的菜单栏控制。
  • 语音唤醒 + 按键通话覆盖层。
  • WebChat + 调试工具。
  • 通过 SSH 控制远程网关。

注意:macOS 权限需签名构建才能在重建后保留(参见 docs/mac/permissions.md)。

iOS 节点(可选)

  • 通过 Bridge 配对为节点。
  • 语音触发转发 + 画布界面。
  • 通过 openclaw nodes … 控制。

操作手册:iOS 连接

Android 节点(可选)

  • 通过与 iOS 相同的 Bridge 和配对流程配对。
  • 提供画布、摄像头和屏幕捕获命令。
  • 操作手册:Android 连接

代理工作区 + 技能

  • 工作区根目录:~/.openclaw/workspace(可通过 agents.defaults.workspace 配置)。
  • 注入的提示文件:AGENTS.mdSOUL.mdTOOLS.md
  • 技能:~/.openclaw/workspace/skills/<skill>/SKILL.md

配置

最小化的 ~/.openclaw/openclaw.json(模型 + 默认值):

{ agent: { model: "anthropic/claude-opus-4-5" } } 

完整配置参考(所有键 + 示例)。

安全模型(重要)

  • 默认:工具在会话的主机上运行,因此当只有您自己使用时,代理拥有完全访问权限。
  • 群组/渠道安全:设置 agents.defaults.sandbox.mode: "non-main",使非主会话(群组/渠道)在每会话 Docker 沙箱中运行;此时 bash 在这些会话的 Docker 中运行。
  • 沙箱默认:允许 bashprocessreadwriteeditsessions_listsessions_historysessions_sendsessions_spawn;禁止 browsercanvasnodescrondiscordgateway

详情:安全指南 · Docker + 沙箱 · 沙箱配置

WhatsApp

  • 链接设备:pnpm openclaw channels login(凭据存储在 ~/.openclaw/credentials)。
  • 通过 channels.whatsapp.allowFrom 设置允许与助手对话的用户。
  • 若设置了 channels.whatsapp.groups,则成为群组允许列表;包含 "*" 以允许所有群组。

Telegram

  • 设置 TELEGRAM_BOT_TOKENchannels.telegram.botToken(环境变量优先)。
  • 可选:设置 channels.telegram.groups(配合 channels.telegram.groups."*".requireMention);设置后即为群组允许列表(包含 "*" 以允许所有群组)。也可根据需要设置 channels.telegram.allowFromchannels.telegram.webhookUrl
{ channels: { telegram: { botToken: "123456:ABCDEF" } } } 

Slack

  • 设置 SLACK_BOT_TOKEN + SLACK_APP_TOKEN(或 channels.slack.botToken + channels.slack.appToken)。

Discord

  • 设置 DISCORD_BOT_TOKENchannels.discord.token(环境变量优先)。
  • 可选:设置 commands.nativecommands.textcommands.useAccessGroups,以及根据需要设置 channels.discord.dm.allowFromchannels.discord.guildschannels.discord.mediaMaxMb
{ channels: { discord: { token: "1234abcd" } } } 

Signal

  • 需要 signal-clichannels.signal 配置段。

iMessage

  • 仅限 macOS;需登录 Messages。
  • 若设置了 channels.imessage.groups,则成为群组允许列表;包含 "*" 以允许所有群组。

Microsoft Teams

  • 配置 Teams 应用 + Bot Framework,然后添加 msteams 配置段。
  • 通过 msteams.allowFrom 设置允许对话的用户;通过 msteams.groupAllowFrommsteams.groupPolicy: "open" 设置群组访问。

WebChat

  • 使用网关 WebSocket;无需单独的 WebChat 端口/配置。

浏览器控制(可选):

{ browser: { enabled: true, color: "#FF4500" } } 

文档

完成初始化流程后,如需深入参考,请使用以下文档。

高级文档(发现 + 控制)

运维与故障排除

深入解析

工作区与技能

平台内部机制

邮件钩子(Gmail)

Molty

OpenClaw 专为 Molty(一只太空龙虾 AI 助手)而构建。🦞
由 Peter Steinberger 与社区共同打造。

社区

有关贡献指南、维护者信息及如何提交 PR,请参阅 CONTRIBUTING.md
欢迎 AI/氛围编码的 PR!🤖

特别感谢 Mario Zechner 的支持以及他开发的 pi-mono
特别感谢 Adam Doppelt 对 lobster.bot 的贡献。

感谢所有 clawtributors(爪式贡献者):

Read more

前端实战:基于Vue3与免费满血版DeepSeek实现无限滚动+懒加载+瀑布流模块及优化策略

前端实战:基于Vue3与免费满血版DeepSeek实现无限滚动+懒加载+瀑布流模块及优化策略

目录 前端实战:基于Vue3与免费满血版DeepSeek实现无限滚动+懒加载+瀑布流模块及优化策略 一、前言 二、如何使用腾讯云免费满血版deepseek 1、腾讯云大模型知识引擎体验中心 2、体验deepseek联网助手 3、人机交互获取AI支持 三、基于DeepSeek实现无限滚动+懒加载+瀑布流模块 1、无限滚动+懒加载+瀑布流模块的底层逻辑 2、人机交互策略与Deepseek的实现过程 ①虚拟列表管理 ②布局容器初始化 ③动态渲染与销毁机制 ④无线滚动实现 ⑤内存优化策略 四、最终代码呈现 1、组件代码 2、组件用法 五、结语         作者:watermelo37         ZEEKLOG万粉博主、华为云云享专家、阿里云专家博主、腾讯云、支付宝合作作者,全平台博客昵称watermelo37。         一个假装是giser的coder,做不只专注于业务逻辑的前端工程师,Java、Docker、

【前端高频面试题】 - TypeScript 篇

【前端高频面试题】 - TypeScript 篇 1. 请解释 TypeScript 是什么?它与 JavaScript 的核心区别是什么? 面试回答需突出 TS 的核心价值(类型安全)和与 JS 的关键差异,结构清晰: * TypeScript 定义:TS 是 JavaScript 的超集(Superset),在 JS 语法基础上增加了静态类型系统,最终会编译为纯 JS 运行(支持所有 JS 环境),核心目标是提升代码可维护性、减少运行时错误。 * 与 JavaScript 的核心区别(分点对比): 1. 类型系统:TS 有静态类型(编译阶段检查类型,变量声明时需指定/推断类型);JS 是动态类型(

搭建一个基于Django框架的WebApi项目

搭建一个基于Django框架的WebApi项目

让我们一起走向未来 🎓作者简介:全栈领域优质创作者 🌐个人主页:百锦再@新空间代码工作室 📞工作室:新空间代码工作室(提供各种软件服务) 💌个人邮箱:[[email protected]] 📱个人微信:15045666310 🌐网站:https://meihua150.cn/ 💡座右铭:坚持自己的坚持,不要迷失自己!要快乐 目录 * 让我们一起走向未来 * 一、创建Django项目 * 二、安装相关依赖 * 三、配置MySQL数据库 * 四、配置Redis缓存 * 五、配置JWT中间件 * 六、配置Swagger接口文档 * 七、创建示例API * 八、总结 一、创建Django项目 首先,确保你的环境中已安装Django。如果没有,可以通过以下命令安装: pip install django

GitHub热榜----前端已死?AionUi 横空出世:首个开源“生成式UI”框架,让 AI 在运行时“手搓”界面

GitHub热榜----前端已死?AionUi 横空出世:首个开源“生成式UI”框架,让 AI 在运行时“手搓”界面

摘要:2025 年我们还在惊叹于 V0 和 Bolt 的代码生成能力,而 2026 年初,AionUi 的发布宣告了**“运行时生成 (Runtime GenUI)”**时代的到来。不再需要预先写好所有 Component,不再需要 Hardcode 每一个表单。AionUi 允许你的应用根据用户的意图,实时渲染出从未被编码过的 UI 界面。本文带你上手这个颠覆性的开源项目。 🚀 前言:从“写死”到“生成” 传统前端开发的逻辑是: 产品经理提需求 -> 设计师出图 -> 程序员把 UI 写成代码 (React/Vue) -> 打包发布 -> 用户看到静态界面。