openclaw/README-ZH.md
2026-01-27 16:31:20 +08:00

80 KiB
Raw Blame History

🦞 Clawdbot — 个人AI助手

Clawdbot

蜕变!蜕变!

CI状态 GitHub版本 DeepWiki Discord MIT许可证

Clawdbot 是一款运行于自有设备的个人AI助手。 它能在你日常使用的通讯渠道上与你互动WhatsApp、Telegram、Slack、Discord、Signal、iMessage、Microsoft Teams、WebChat还支持BlueBubbles、Matrix、Zalo及Zalo Personal等扩展渠道。在macOS/iOS/Android上可实现语音对话并能渲染实时可控的Canvas界面。Gateway只是控制平面——产品核心在于助手本身。

如果你需要一款专属、单用户的助手,追求本地化、高速响应且常驻后台的体验,这就是为你打造的。

官网 · 文档 · 快速入门 · 更新指南 · 展示案例 · 常见问题 · 向导 · Nix · Docker · Discord社区

推荐配置方式:运行引导向导(clawdbot onboard。它将引导你完成gateway、workspace、channels及skills的配置。CLI向导是推荐路径支持macOS、Linux及Windows通过WSL2强烈推荐。 兼容npm、pnpm或bun。 首次安装?从这里开始:快速入门

订阅服务OAuth

模型建议:虽然支持任意模型,但强烈推荐Anthropic Pro/Max100/200+ Opus 4.5凭借其长上下文处理能力与更强的prompt-injection防护。详见入门指南

模型(选择与认证)

  • 模型配置与CLIModels
  • 认证配置轮换OAuth vs API keys与故障转移Model failover

安装(推荐)

运行环境:Node ≥22

npm install -g clawdbot@latest
# 或pnpm add -g clawdbot@latest

clawdbot onboard --install-daemon

向导将安装Gateway守护进程launchd/systemd用户服务确保服务常驻运行。

快速启动(极简指南)

运行环境:Node ≥22

完整新手教程(认证、配对、渠道):快速入门

clawdbot onboard --install-daemon

clawdbot gateway --port 18789 --verbose

# 发送消息
clawdbot message send --to +1234567890 --message "Hello from Clawdbot"

# 与助手对话可选通过任意已连接渠道回传WhatsApp/Telegram/Slack/Discord/Signal/iMessage/BlueBubbles/Microsoft Teams/Matrix/Zalo/Zalo Personal/WebChat
clawdbot agent --message "Ship checklist" --thinking high

需要升级?更新指南(并运行 clawdbot doctor)。

开发渠道

  • stable:正式版本(vYYYY.M.DvYYYY.M.D-<patch>npm dist-tag latest
  • beta:预发布版本(vYYYY.M.D-beta.Nnpm dist-tag betamacOS应用可能缺失
  • devmain分支最新提交npm dist-tag dev(发布时)。

切换渠道git + npmclawdbot update --channel stable|beta|dev。 详情:开发渠道

源码安装(开发)

源码构建推荐使用pnpm。Bun可选用于直接运行TypeScript。

git clone https://github.com/clawdbot/clawdbot.git
cd clawdbot

pnpm install
pnpm ui:build # 首次运行自动安装UI依赖
pnpm build

pnpm clawdbot onboard --install-daemon

# 开发循环TS变更自动重载
pnpm gateway:watch

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

安全默认DM访问

Clawdbot连接真实的消息通讯界面。将入站DM视为不可信输入

完整安全指南:Security

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

  • DM配对dmPolicy="pairing" / channels.discord.dm.policy="pairing" / channels.slack.dm.policy="pairing"):未知发送者收到配对码,助手不处理其消息。
  • 批准方式:clawdbot pairing approve <channel> <code>(随后发送者被加入本地白名单)。
  • 公开入站DM需显式选择启用设置 dmPolicy="open" 并在渠道白名单中包含 "*"allowFrom / channels.discord.dm.allowFrom / channels.slack.dm.allowFrom)。

运行 clawdbot doctor 可发现风险/配置错误的DM策略。

核心亮点

  • 本地优先Gateway —— 会话、渠道、工具与事件的单一控制平面。
  • 多渠道收件箱 —— WhatsApp、Telegram、Slack、Discord、Signal、iMessage、BlueBubbles、Microsoft Teams、Matrix、Zalo、Zalo Personal、WebChat、macOS、iOS/Android。
  • 多代理路由 —— 将入站渠道/账户/会话路由至隔离的代理workspaces + 每代理会话)。
  • 语音唤醒 + 对话模式 —— macOS/iOS/Android的常驻语音集成ElevenLabs。
  • 实时Canvas —— 代理驱动的可视化工作区,支持A2UI
  • 一流工具 —— 浏览器、canvas、nodes、cron、会话及Discord/Slack操作。
  • 配套应用 —— macOS菜单栏应用 + iOS/Android nodes
  • 引导安装 + Skills —— 向导式安装,支持捆绑/管理/workspaceSkills。

Star历史

Star历史图表

已构建功能全景

核心平台

渠道

应用 + Nodes

工具 + 自动化

运行时 + 安全

运维 + 打包

工作原理(简述)

WhatsApp / Telegram / Slack / Discord / Signal / iMessage / BlueBubbles / Microsoft Teams / Matrix / Zalo / Zalo Personal / WebChat
               │
               ▼
┌───────────────────────────────┐
│            Gateway            │
│       (控制平面)             │
│     ws://127.0.0.1:18789      │
└──────────────┬────────────────┘
               │
               ├─ Pi agentRPC
               ├─ CLIclawdbot …)
               ├─ WebChat UI
               ├─ macOS应用
               └─ iOS / Android nodes

关键子系统

Tailscale访问Gateway仪表板

Clawdbot可自动配置Tailscale Serve仅tailnetFunnel公开同时Gateway保持绑定到loopback。配置gateway.tailscale.mode

  • off不启用Tailscale自动化默认
  • serve:通过tailscale serve实现仅tailnet的HTTPS默认使用Tailscale身份header
  • funnel:通过tailscale funnel实现公开HTTPS需要共享密码认证

注意:

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

详情:Tailscale指南 · Web界面

Remote GatewayLinux表现优异

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

  • Gateway主机默认运行exec工具与渠道连接。
  • 设备Nodes通过node.invoke运行设备本地操作(system.run、相机、屏幕录制、通知)。 简而言之exec在Gateway所在位置运行设备操作在设备所在位置运行。

详情:远程访问 · Nodes · Security

通过Gateway协议的macOS权限

macOS应用可在node mode下运行通过Gateway WebSocketnode.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在启用+白名单后切换每会话的提权访问。
  • Gateway通过sessions.patchWS方法持久化每会话开关thinkingLevelverboseLevelmodelsendPolicygroupActivation一并存储。

详情:Nodes · macOS应用 · Gateway协议

Agent to Agentsessions_* 工具)

  • 用于跨会话协调工作,无需在聊天界面间切换。
  • sessions_list —— 发现活跃会话agents及其元数据。
  • sessions_history —— 获取会话的转录日志。
  • sessions_send —— 向另一会话发送消息可选回复回传ping-pong + 公告步骤(REPLY_SKIPANNOUNCE_SKIP)。

详情:Session工具

Skills注册表ClawdHub

ClawdHub是最小化的Skills注册表。启用ClawdHub后代理可自动搜索Skills并按需拉取新Skills。

ClawdHub

聊天命令

在WhatsApp/Telegram/Slack/Microsoft Teams/WebChat中发送群组命令仅限所有者

  • /status —— 紧凑会话状态(模型 + tokens成本如可用
  • /new/reset —— 重置会话
  • /compact —— 压缩会话上下文(摘要)
  • /think <level> —— off|minimal|low|medium|high|xhigh仅限GPT-5.2 + Codex模型
  • /verbose on|off
  • /usage off|tokens|full —— 每响应用量页脚
  • /restart —— 重启gateway群组中仅限所有者
  • /activation mention|always —— 群组激活切换(仅群组)

应用(可选)

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

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

macOSClawdbot.app可选

  • 菜单栏控制Gateway与健康状态。
  • Voice Wake + 一键通悬浮窗。
  • WebChat + 调试工具。
  • 通过SSH远程控制gateway。

注意macOS权限需在签名构建后才能跨重建保持docs/mac/permissions.md)。

iOS node可选

  • 通过Bridge作为node配对。
  • 语音触发转发 + Canvas界面。
  • 通过clawdbot nodes …控制。

运行手册:iOS连接

Android node可选

  • 通过相同Bridge + 配对流程与iOS配对。
  • 暴露Canvas、Camera及Screen capture命令。
  • 运行手册:Android连接

Agent workspace + Skills

  • Workspace根目录~/clawd(可通过agents.defaults.workspace配置)。
  • 注入的prompt文件AGENTS.mdSOUL.mdTOOLS.md
  • Skills~/clawd/skills/<skill>/SKILL.md

配置

最小化配置 ~/.clawdbot/clawdbot.json(模型 + 默认值):

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

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

安全模型(重要)

  • 默认:工具在main会话的主机上运行,因此仅你本人使用时代理拥有完全访问权限。
  • 群组/渠道安全:设置agents.defaults.sandbox.mode: "non-main"以在非main会话(群组/渠道内运行每会话Docker沙箱这些会话的bash将在Docker中运行。
  • **沙箱默认值:**白名单bashprocessreadwriteeditsessions_listsessions_historysessions_sendsessions_spawn;黑名单browsercanvasnodescrondiscordgateway

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

WhatsApp

  • 链接设备:pnpm clawdbot channels login(凭证存储于~/.clawdbot/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

  • 仅限macOSMessages必须已登录。
  • 如设置channels.imessage.groups,则变为群组白名单;包含"*"以允许所有群组。

Microsoft Teams

  • 配置Teams应用 + Bot Framework然后添加msteams配置段。
  • 通过msteams.allowFrom白名单可访问人员;群组访问通过msteams.groupAllowFrommsteams.groupPolicy: "open"

WebChat

  • 使用Gateway WebSocket无独立WebChat端口/配置。

浏览器控制(可选):

{
  browser: {
    enabled: true,
    controlUrl: "http://127.0.0.1:18791",
    color: "#FF4500"
  }
}

文档

完成引导流程后,使用以下深度参考文档。

高级文档(发现 + 控制)

运维与故障排查

深度解析

Workspace与Skills

平台内部机制

邮件钩子Gmail

Clawd

Clawdbot专为Clawd——一个懂你的AI助手而打造。🦞
作者Peter Steinberger及社区贡献者。

社区

贡献指南、维护者及PR提交方式详见CONTRIBUTING.md
欢迎AI/vibe-coded PR🤖

特别感谢Mario Zechner的支持及pi-mono

感谢所有贡献者:

steipete plum-dawg bohdanpodvirnyi iHildy jaydenfyi joaohlisboa mneves75 MatthieuBizien MaudeBot Glucksberg rahthakor vrknetha radek-paclt Tobias Bischoff joshp123 czekaj mukhtharcm sebslight maxsumrall xadenryan rodrigouroz juanpablodlc hsrvc magimetal zerone0x meaningfool tyler6204 vignesh07 patelhiren NicholasSpisak jonisjongithub abhisekbasu1 jamesgroat claude JustYannicc Hyaxia dantelex SocialNerd42069 daveonkels google-labs-jules[bot] lc0rp mousberg mteam88 hirefrank joeynyc orlyjamie dbhurley Mariano Belinky Eng. Juan Combetto TSavo julianengel bradleypriest benithors rohannagpal timolins f-trycua benostein nachx639 pvoo sreekaransrinath gupsammy cristip73 stefangalescu nachoiacovino Vasanth Rao Naik Sabavat petter-b cpojer scald gumadeiras andranik-sahakyan davidguttman thewilloftheshadow sleontenko denysvitali shakkernerd sircrumpet peschee rafaelreis-r dominicnunez ratulsarna lutr0 danielz1z AdeboyeDN Alg0rix emanuelst KristijanJovanovski rdev rhuanssauro joshrad-dev kiranjd osolmaz adityashaw2 CashWilliams sheeek artuskg Takhoffman onutc pauloportella neooriginal manuelhettich minghinmatthewlam myfunc travisirby buddyh connorshea kyleok mcinteerj dependabot[bot] John-Rood obviyus timkrase uos-status gerardward2007 roshanasingh4 tosh-hamburg azade-c JonUleis bjesuiter cheeeee robbyczgw-cla dlauer Josh Phillips YuriNachos pookNast Whoaa512 chriseidhof ngutman ysqander aj47 superman32432432 Yurii Chukhlib grp06 antons austinm911 blacksmith-sh[bot] damoahdominic dan-dr HeimdallStrategy imfing jalehman jarvis-medmatic kkarimi mahmoudashraf93 pkrmf RandyVentures Ryan Lisse dougvk erikpr1994 Ghost jonasjancarik Keith the Silly Goose L36 Server Marc mitschabaude-bot mkbehr neist sibbl chrisrodz Friederike Seiler gabriel-trigo iamadig Jonathan D. Rhyne (DJ-D) Joshua Mitchell Kit koala73 manmal ogulcancelik pasogott petradonka rubyrunsstuff siddhantjain suminhthanh svkozak VACInc wes-davis zats 24601 adam91holt ameno- Chris Taylor dguido Django Navarro evalexpr henrino3 humanwritten larlyssa odysseus0 oswalpalash pcty-nextgen-service-account rmorse Syhids Aaron Konyer aaronveklabs andreabadesso Andrii cash-echo-bot Clawd ClawdFx EnzeD erik-agens Evizero fcatuhe itsjaydesu ivancasco ivanrvpereira jayhickey jeffersonwarrior jeffersonwarrior jverdi longmaba mickahouan mjrussell odnxe p6l-richard philipp-spiess Pocket Clawd robaxelsen Sash Catanzarite T5-AndyML travisp VAC william arzt zknicker abhaymundhara alejandro maza Alex-Alaniz alexstyl andrewting19 anpoirier arthyn Asleep123 bolismauro chenyuan99 Clawdbot Maintainers conhecendoia dasilva333 David-Marsh-Photo Developer Dimitrios Ploutarchos Drake Thomsen fal3 Felix Krause foeken ganghyun kim grrowl gtsifrikas HazAT hrdwdmrbl hugobarauna Jamie Openshaw Jane Jarvis Jefferson Nunn kentaro Kevin Lin kitze Kiwitwitter levifig Lloyd loukotal louzhixian martinpucik Matt mini mertcicekci0 Miles mrdbstn MSch Mustafa Tag Eldeen ndraiman nexty5870 Noctivoro ppamment prathamdby ptn1411 reeltimeapps RLTCmpe Rolf Fredheim Rony Kelner Samrat Jha senoldogann Seredeep sergical shiv19 shiyuanhai siraht snopoke Suksham-sharma techboss testingabc321 The Admiral thesash Ubuntu voidserf Vultr-Clawd Admin Wimmie wolfred wstock yazinsai ymat19 Zach Knickerbocker 0xJonHoldsCrypto aaronn Alphonse-arianee atalovesyou Azade carlulsoe ddyo Erik hougangdev latitudeki5223 Manuel Maly Mourad Boustani odrobnik pcty-nextgen-ios-builder Quentin Randy Torres rhjoh ronak-guliani William Stock