Skip to content
OpenInfoHub
Go back

OpenClaw 完全指南(三):频道配置与日常使用

在前两篇文章中,我们了解了 OpenClaw 的核心概念并完成了基本安装。现在让我们深入配置各种消息频道,并学习如何在日常工作中有效使用 OpenClaw。

目录

频道配置详解

OpenClaw 支持 20+ 个消息平台。让我们详细了解如何配置最常用的几个频道。

Telegram 配置

Telegram 是最容易配置的频道之一,也是推荐的入门选择。

创建 Telegram Bot

  1. 在 Telegram 中搜索 @BotFather
  2. 发送 /newbot 命令
  3. 按提示设置 Bot 名称和用户名
  4. 保存 BotFather 返回的 Token(格式:123456:ABCDEF...

配置 OpenClaw

方式一:使用环境变量

export TELEGRAM_BOT_TOKEN="123456:ABCDEF..."

方式二:编辑配置文件

编辑 ~/.openclaw/openclaw.json

{
  "channels": {
    "telegram": {
      "botToken": "123456:ABCDEF...",
      "allowFrom": ["@your_username"],
      "groups": {
        "*": {
          "requireMention": true
        }
      }
    }
  }
}

配置选项说明

测试连接

  1. 在 Telegram 中搜索你的 Bot
  2. 发送 /start 开始对话
  3. 发送任何消息测试响应

WhatsApp 配置

WhatsApp 集成使用 Baileys 库,需要扫码配对。

重要提示

强烈建议使用专用号码

配对 WhatsApp

运行配对命令:

openclaw channels login

这会显示一个二维码,使用你的 WhatsApp 扫描配对。

配置文件

{
  "channels": {
    "whatsapp": {
      "allowFrom": ["+1234567890"],
      "groups": {
        "*": {
          "requireMention": true
        }
      }
    }
  }
}

配置选项说明

凭证存储

WhatsApp 凭证存储在:

~/.openclaw/credentials/whatsapp/

如果需要重新配对,删除此目录并重新运行 openclaw channels login

Discord 配置

Discord 集成支持文本命令和原生斜杠命令。

创建 Discord Bot

  1. 访问 Discord Developer Portal
  2. 点击 “New Application”
  3. 进入 “Bot” 选项卡,点击 “Add Bot”
  4. 复制 Bot Token
  5. 启用以下 Privileged Gateway Intents:
    • Presence Intent
    • Server Members Intent
    • Message Content Intent
  6. 生成邀请链接并添加 Bot 到服务器

配置 OpenClaw

方式一:使用环境变量

export DISCORD_BOT_TOKEN="your-discord-token"

方式二:编辑配置文件

{
  "channels": {
    "discord": {
      "token": "your-discord-token",
      "allowFrom": ["user_id_1", "user_id_2"],
      "guilds": {
        "*": {
          "requireMention": true
        }
      },
      "dmPolicy": "pairing",
      "commands": {
        "native": true,
        "text": true
      }
    }
  }
}

配置选项说明

获取用户 ID

在 Discord 中:

  1. 启用开发者模式(设置 > 高级 > 开发者模式)
  2. 右键点击用户 > 复制 ID

Slack 配置

Slack 集成使用 Bolt 框架。

创建 Slack 应用

  1. 访问 Slack API
  2. 点击 “Create New App” > “From scratch”
  3. 配置 Bot Token Scopes:
    • app_mentions:read
    • channels:history
    • chat:write
    • im:history
    • im:read
    • im:write
  4. 安装应用到工作区
  5. 复制 Bot User OAuth Token 和 App-Level Token

配置 OpenClaw

export SLACK_BOT_TOKEN="xoxb-..."
export SLACK_APP_TOKEN="xapp-..."

或在配置文件中:

{
  "channels": {
    "slack": {
      "botToken": "xoxb-...",
      "appToken": "xapp-...",
      "allowFrom": ["U01234567"],
      "dmPolicy": "pairing"
    }
  }
}

iMessage 配置(macOS)

OpenClaw 支持两种 iMessage 集成方式。

方式一:BlueBubbles(推荐)

BlueBubbles 是推荐的 iMessage 集成方式,支持远程访问。

设置 BlueBubbles 服务器

  1. 在 macOS 上下载并安装 BlueBubbles Server
  2. 配置服务器并获取 URL 和密码
  3. 设置 Webhook

配置 OpenClaw

{
  "channels": {
    "bluebubbles": {
      "serverUrl": "http://localhost:1234",
      "password": "your-password",
      "webhookPath": "/webhook/bluebubbles"
    }
  }
}

方式二:iMessage(传统)

仅限 macOS,使用 imsg CLI。

{
  "channels": {
    "imessage": {
      "allowFrom": ["+1234567890"],
      "groups": {
        "*": {
          "requireMention": true
        }
      }
    }
  }
}

注意:Messages 应用必须登录。

Signal 配置

Signal 集成需要 signal-cli

安装 signal-cli

macOS

brew install signal-cli

Linux

# 下载并安装 signal-cli
wget https://github.com/AsamK/signal-cli/releases/download/v0.11.0/signal-cli-0.11.0.tar.gz
tar xf signal-cli-0.11.0.tar.gz -C /opt
ln -sf /opt/signal-cli-0.11.0/bin/signal-cli /usr/local/bin/

注册 Signal 号码

signal-cli -u +1234567890 register
signal-cli -u +1234567890 verify CODE

配置 OpenClaw

{
  "channels": {
    "signal": {
      "number": "+1234567890",
      "allowFrom": ["+0987654321"]
    }
  }
}

其他频道

OpenClaw 还支持:

详细配置请参考官方文档

安全配置

安全性是 OpenClaw 的重要考虑因素。

DM 策略

OpenClaw 提供两种 DM(直接消息)策略:

配对模式(默认,推荐)

{
  "channels": {
    "telegram": {
      "dmPolicy": "pairing"
    }
  }
}

行为

开放模式(需谨慎)

{
  "channels": {
    "telegram": {
      "dmPolicy": "open",
      "allowFrom": ["*"]
    }
  }
}

警告:开放模式允许任何人与 Bot 交互,仅在受控环境中使用。

白名单配置

始终配置白名单以限制访问:

{
  "channels": {
    "telegram": {
      "allowFrom": ["@user1", "@user2", "123456789"]
    },
    "whatsapp": {
      "allowFrom": ["+1234567890", "+0987654321"]
    },
    "discord": {
      "allowFrom": ["user_id_1", "user_id_2"]
    }
  }
}

群组配置

控制 Bot 在群组中的行为:

{
  "channels": {
    "telegram": {
      "groups": {
        "*": {
          "requireMention": true
        }
      }
    }
  },
  "routing": {
    "groupChat": {
      "mentionPatterns": ["@openclaw", "openclaw", "hey claw"]
    }
  }
}

选项

运行安全检查

定期运行安全诊断:

openclaw doctor

这会检查:

聊天命令

OpenClaw 支持多种聊天命令来控制 Agent 行为。

基本命令

在任何频道中发送这些命令:

/status - 查看状态

显示当前会话的状态信息:

/status

输出示例:

Model: claude-opus-4-6
Tokens: 1,234 / 200,000
Cost: $0.05
Session: main

/new/reset - 重置会话

开始一个新的会话,清除历史记录:

/new

/reset

Agent 会回复确认消息。

/compact - 压缩上下文

压缩会话上下文,生成摘要:

/compact

可选地提供压缩指令:

/compact 保留最近的代码讨论

/think - 设置思考级别

调整 Agent 的思考深度(仅 GPT-5.2 和 Codex 模型):

/think off
/think minimal
/think low
/think medium
/think high
/think xhigh

/verbose - 详细模式

启用或禁用详细输出:

/verbose on
/verbose off

/usage - 使用统计

控制每次响应后的使用统计显示:

/usage off      # 不显示
/usage tokens   # 仅显示 token 数
/usage full     # 完整统计

群组命令

这些命令仅在群组中可用,且仅群组所有者可以使用。

/restart - 重启 Gateway

重启 Gateway 进程:

/restart

警告:这会断开所有连接并重新启动。

/activation - 激活模式

切换群组激活模式:

/activation mention   # 需要提及
/activation always    # 始终响应

会话管理

理解 OpenClaw 的会话模型对于有效使用至关重要。

会话类型

主会话(Main Session)

群组会话

会话配置

{
  "session": {
    "scope": "per-sender",
    "resetTriggers": ["/new", "/reset"],
    "reset": {
      "mode": "daily",
      "atHour": 4,
      "idleMinutes": 10080
    }
  }
}

选项说明

会话文件

会话数据存储在:

~/.openclaw/agents/<agentId>/sessions/

工作区定制

工作区是 Agent 的”大脑”,包含操作指令和记忆。

工作区结构

~/.openclaw/workspace/
├── AGENTS.md       # Agent 操作指令
├── SOUL.md         # Agent 个性和行为
├── TOOLS.md        # 可用工具说明
├── IDENTITY.md     # Agent 身份信息
├── USER.md         # 用户信息
├── HEARTBEAT.md    # 心跳任务配置
├── MEMORY.md       # 可选的持久记忆
└── skills/         # 技能目录
    ├── gmail/
    ├── calendar/
    └── ...

编辑 SOUL.md

SOUL.md 定义 Agent 的个性:

# Agent 个性

你是一个高效、友好的个人助手。

## 沟通风格

- 简洁明了,避免冗长
- 使用友好但专业的语气
- 适当使用表情符号 😊
- 中文为主要语言

## 行为准则

- 主动提供帮助建议
- 在执行重要操作前确认
- 保护用户隐私
- 承认不确定性

## 专长领域

- 日程管理
- 邮件处理
- 代码审查
- 文档编写

编辑 AGENTS.md

AGENTS.md 包含操作指令:

# Agent 操作指令

## 邮件处理

- 每天早上 9 点检查未读邮件
- 自动归档营销邮件
- 标记重要邮件并通知我

## 日程管理

- 提前 15 分钟提醒会议
- 检查日程冲突
- 建议最佳会议时间

## 代码审查

- 检查代码风格
- 识别潜在 bug
- 建议性能优化

编辑 HEARTBEAT.md

HEARTBEAT.md 定义主动任务:

# 心跳任务

## 每日任务

- 检查未读邮件数量
- 查看今日日程
- 检查待办事项

## 每周任务

- 生成周报
- 清理旧文件
- 备份重要数据

## 条件任务

- 如果有紧急邮件,立即通知
- 如果磁盘空间不足,发出警告

使用 MEMORY.md

MEMORY.md 用于持久记忆(可选):

# 持久记忆

## 用户偏好

- 喜欢简洁的回复
- 工作时间:9:00-18:00
- 时区:UTC+8

## 重要信息

- 项目 A 的截止日期:2026-03-15
- 客户 B 的联系方式:xxx
- 服务器 C 的 IP:xxx

## 学习记录

- 用户经常在周五下午请假
- 用户喜欢在早上处理重要任务

心跳功能

心跳是 OpenClaw 的主动式功能,让 Agent 定期检查和执行任务。

配置心跳

{
  "agent": {
    "heartbeat": {
      "every": "30m"
    }
  }
}

选项

心跳行为

每次心跳时,Agent 会:

  1. 读取 HEARTBEAT.md(如果存在)
  2. 执行指定的任务
  3. 如果没有需要处理的事项,回复 HEARTBEAT_OK
  4. 如果回复 HEARTBEAT_OK,不会发送消息

心跳策略

{
  "agent": {
    "heartbeat": {
      "every": "30m",
      "ackMaxChars": 20,
      "directPolicy": "allow"
    }
  }
}

选项说明

最佳实践

  1. 保守开始:初始设置 every: "0m" 禁用心跳
  2. 逐步启用:熟悉后再启用心跳
  3. 明确任务:在 HEARTBEAT.md 中明确定义任务
  4. 避免空文件:如果 HEARTBEAT.md 为空,心跳仍会运行但 Agent 自行决定

媒体处理

OpenClaw 支持处理图片、音频和文档。

发送媒体给 Agent

直接在聊天中发送文件,Agent 可以访问:

Agent 发送媒体

Agent 可以生成和发送媒体文件。

语法

在回复中单独一行包含:

MEDIA:<path-or-url>

示例

这是你要的截图。
MEDIA:https://example.com/screenshot.png

或本地文件:

报告已生成。
MEDIA:/tmp/report.pdf

媒体配置

{
  "channels": {
    "telegram": {
      "mediaMaxMb": 50
    },
    "discord": {
      "mediaMaxMb": 25
    }
  }
}

语音转录

启用语音转录(需要配置转录服务):

{
  "media": {
    "transcription": {
      "enabled": true,
      "provider": "whisper"
    }
  }
}

日常使用技巧

技巧 1:使用别名

为常用命令创建别名:

# 在 ~/.bashrc 或 ~/.zshrc 中
alias claw="openclaw"
alias claw-status="openclaw status"
alias claw-logs="tail -f /tmp/openclaw/openclaw-$(date +%Y-%m-%d).log"

技巧 2:快速发送消息

使用 CLI 发送消息:

openclaw message send --to +1234567890 --message "提醒我明天开会"

技巧 3:与 Agent 对话

直接从命令行与 Agent 对话:

openclaw agent --message "总结今天的邮件" --thinking high

技巧 4:使用模板

AGENTS.md 中定义常用模板:

## 邮件模板

### 会议邀请
当我说"发送会议邀请"时,使用以下模板:
...

### 周报
当我说"生成周报"时,包含:
...

技巧 5:多 Agent 设置

为不同用途创建多个 Agent:

# 创建工作 Agent
openclaw agents add work --workspace ~/.openclaw/workspace-work

# 创建个人 Agent
openclaw agents add personal --workspace ~/.openclaw/workspace-personal

技巧 6:使用 Cron 任务

设置定时任务:

{
  "cron": {
    "jobs": [
      {
        "schedule": "0 9 * * *",
        "command": "openclaw agent --message '检查今日日程'"
      },
      {
        "schedule": "0 18 * * 5",
        "command": "openclaw agent --message '生成本周总结'"
      }
    ]
  }
}

技巧 7:集成 Webhook

接收外部事件:

{
  "webhooks": {
    "enabled": true,
    "port": 18790,
    "endpoints": [
      {
        "path": "/github",
        "action": "forward-to-agent",
        "message": "GitHub 事件: {{body}}"
      }
    ]
  }
}

故障排查

问题 1:Agent 不响应

检查清单

  1. Gateway 是否运行?

    openclaw status
  2. 频道是否连接?

    openclaw status --deep
  3. 用户是否在白名单中? 检查配置文件中的 allowFrom

  4. 群组是否需要提及? 尝试 @bot_name 你好

问题 2:会话丢失

解决方案

检查会话文件:

ls -la ~/.openclaw/agents/*/sessions/

如果文件损坏,可以重置:

rm ~/.openclaw/agents/*/sessions/<SessionId>.jsonl

问题 3:心跳过于频繁

解决方案

调整心跳间隔:

{
  "agent": {
    "heartbeat": {
      "every": "1h"
    }
  }
}

或临时禁用:

{
  "agent": {
    "heartbeat": {
      "every": "0m"
    }
  }
}

问题 4:API 限制

解决方案

  1. 使用更高级别的 API 订阅
  2. 配置模型回退:
    {
      "agent": {
        "model": "anthropic/claude-opus-4-6",
        "fallback": ["anthropic/claude-sonnet-4-5", "openai/gpt-4"]
      }
    }

问题 5:媒体文件过大

解决方案

调整大小限制:

{
  "channels": {
    "telegram": {
      "mediaMaxMb": 100
    }
  }
}

下一步

在本文中,我们详细介绍了如何配置各种消息频道、使用聊天命令、管理会话以及日常使用技巧。

在下一篇也是最后一篇文章中,我们将探讨:

参考资源


内容基于 OpenClaw 官方文档改编,遵循内容许可限制


Share this post on:

Previous Post
OpenClaw 完全指南(四):高级功能与维护
Next Post
OpenClaw 完全指南(二):快速安装与配置