跳转到主要内容

AI Agent 集成

通过 SKILL 将 juhe-cli 接入 Claude Code 或 OpenClaw 等 AI Agent 平台

场景描述

通过 SKILL 机制将 juhe-cli 接入 AI Agent 平台(如 Claude Code、OpenClaw), 让 AI 能够直接调用微信/企业微信的 CLI 命令,实现智能客服、自动群管、 联系人管理等场景。

实现步骤

  1. 部署 SKILL 到 AI Agent 平台
  2. 在 Agent 中描述使用场景
  3. Agent 自动调用 CLI 命令完成任务

Claude Code 集成

在 Claude Code 中,SKILL 存放在 .claude/commands/ 目录下, Claude 可以根据任务描述自动调用相应的命令。

示例 SKILL 文件结构

bash
.claude/commands/
├── send-message.md       # 发送消息
├── search-contact.md     # 搜索联系人
├── create-room.md        # 创建群聊
└── auto-reply.md         # 自动回复

send-message.md

markdown
---
description: 向指定的微信好友发送消息
---

# 发送微信消息

当用户要求发送微信消息时,使用以下命令:

```bash
juhe-cli msg send_text '{"to_wxid": "好友微信ID", "content": "消息内容"}'
```

## 参数说明
- to_wxid: 好友的微信 ID(通过 contact search 获取)
- content: 要发送的消息内容

## 示例
```bash
# 发送文本消息
juhe-cli msg send_text '{"to_wxid": "wxid_abc123", "content": "你好!"}'

# 发送链接
juhe-cli msg send_text '{"to_wxid": "wxid_abc123", "content": "查看文档:https://example.com"}'
```

## 注意事项
- 确保 to_wxid 正确,否则消息无法送达
- 消息内容长度建议不超过 1000 字符
- 避免频繁发送相同内容以防被限制

search-contact.md

markdown
---
description: 搜索微信联系人
---

# 搜索微信联系人

当用户需要查找联系人时,使用以下命令:

```bash
juhe-cli contact search '{"keyword": "搜索关键词"}'
```

## 参数说明
- keyword: 搜索关键词(昵称、备注、微信号)

## 示例
```bash
# 按昵称搜索
juhe-cli contact search '{"keyword": "张三"}'

# 按备注搜索
juhe-cli contact search '{"keyword": "客户李四"}'

# 按微信号搜索
juhe-cli contact search '{"keyword": "wxid_abc123"}'
```

## 返回结果
返回匹配的联系人列表,包含:
- 微信 ID (wxid)
- 昵称 (nickname)
- 备注名 (remark)
- 头像 URL (avatar)

OpenClaw 集成

OpenClaw 使用 JSON 格式的技能定义文件,存放在 .openclaw/skills/ 目录。

技能定义示例

json
{
  "name": "send_wechat_message",
  "description": "向微信好友发送文本消息",
  "parameters": {
    "to_wxid": {
      "type": "string",
      "description": "好友的微信 ID",
      "required": true
    },
    "content": {
      "type": "string",
      "description": "消息内容",
      "required": true
    }
  },
  "command": "juhe-cli msg send_text '{\"to_wxid\": \"{{to_wxid}}\", \"content\": \"{{content\"}}'"}

完整的技能文件

json
{
  "skills": [
    {
      "name": "send_message",
      "description": "发送微信消息",
      "command": "juhe-cli msg send_text '{\"to_wxid\": \"{{to_wxid}}\", \"content\": \"{{content}}\"}'",
      "parameters": {
        "to_wxid": {"type": "string", "required": true},
        "content": {"type": "string", "required": true}
      }
    },
    {
      "name": "search_contact",
      "description": "搜索联系人",
      "command": "juhe-cli contact search '{\"keyword\": \"{{keyword}}\"}'",
      "parameters": {
        "keyword": {"type": "string", "required": true}
      }
    },
    {
      "name": "create_room",
      "description": "创建群聊",
      "command": "juhe-cli room create '{\"topic\": \"{{topic}}\"}'",
      "parameters": {
        "topic": {"type": "string", "required": true}
      }
    },
    {
      "name": "invite_to_room",
      "description": "邀请好友进群",
      "command": "juhe-cli room invite '{\"chat_room_id\": \"{{chat_room_id}}\", \"wxid\": \"{{wxid}}\"}'",
      "parameters": {
        "chat_room_id": {"type": "string", "required": true},
        "wxid": {"type": "string", "required": true}
      }
    }
  ]}

实际应用案例

1. AI 智能客服

bash
# 用户: "帮我把这个产品介绍发给王先生"

# AI 自动执行:
# 1. 搜索联系人
juhe-cli contact search '{"keyword": "王先生"}'

# 2. 发送消息
juhe-cli msg send_text '{"to_wxid": "wxid_wang", "content": "王先生您好,这是我们最新款产品介绍..."}'

2. 智能群管

bash
# 用户: "把所有标记为 VIP 的客户拉到一个新群里"

# AI 自动执行:
# 1. 创建群聊
juhe-cli room create '{"topic": "VIP 客户群"}'

# 2. 获取标签为 VIP 的联系人
juhe-cli label get_by_label '{"label_id": "1"}'

# 3. 批量邀请进群
for contact in vip_contacts:
  juhe-cli room invite '{"chat_room_id": "xxx", "wxid": "$contact.wxid"}'

3. 联系人管理

bash
# 用户: "给所有未联系的客户发送关怀消息"

# AI 自动执行:
# 1. 搜索标签"未联系客户"
juhe-cli label get_by_label '{"label_id": "2"}'

# 2. 逐个发送关怀消息
for contact in contacts:
  juhe-cli msg send_text '{"to_wxid": "$contact.wxid", "content": "您好,最近有什么可以帮助您的吗?"}'

  # 间隔延迟
  sleep 3

4. 自动日报生成

bash
# 用户: "生成今天的微信运营日报"

# AI 自动执行:
# 1. 获取今日新增联系人
new_contacts=$(juhe-cli contact list '{}')

# 2. 获取今日消息统计
messages=$(juhe-cli sync msg '{}')

# 3. 获取群活跃度
rooms=$(juhe-cli room list '{}')

# 4. 生成报告
echo "微信运营日报 - $(date +%Y-%m-%d)
-------------------------
新增联系人: $(echo $new_contacts | jq length)
消息总量: $(echo $messages | jq length)
活跃群聊: $(echo $rooms | jq length)
-------------------------"

高级用法:多 Agent 协作

通过 SKILL 机制,可以创建多个专业化的 Agent 协作完成复杂任务。

json
# Agent 1: 客户信息收集
{
  "name": "collect_customer_info",
  "description": "收集客户基本信息",
  "skills": ["contact search", "label get_by_label"]
}

# Agent 2: 消息发送
{
  "name": "message_sender",
  "description": "负责发送各类消息",
  "skills": ["msg send_text", "msg send_image"]
}

# Agent 3: 群组管理
{
  "name": "group_manager",
  "description": "管理微信群组",
  "skills": ["room create", "room invite", "room remove"]
}

# 协作任务: "为新客户创建专属服务群"
# Agent 1 收集客户信息
# Agent 3 创建服务群并邀请相关人员
# Agent 2 发送欢迎消息和使用指南

部署与配置

1. 环境准备

bash
# 安装 juhe-cli
npm install -g juhe-cli

# 配置认证
juhe-cli config set api_key "your_api_key"
juhe-cli config set endpoint "https://api.example.com"

# 验证安装
juhe-cli version

2. SKILL 部署

bash
# Claude Code
mkdir -p .claude/commands
cp skills/*.md .claude/commands/

# OpenClaw
mkdir -p .openclaw/skills
cp skills/*.json .openclaw/skills/

# 重启 Agent 服务
# Claude Code 会自动加载新 SKILL
# OpenClaw 需要手动加载技能文件

3. 测试验证

bash
# 测试发送消息
juhe-cli msg send_text '{"to_wxid": "test_wxid", "content": "测试消息"}'

# 测试搜索联系人
juhe-cli contact search '{"keyword": "测试"}'

# 测试群组操作
juhe-cli room list '{}'

最佳实践

  • 为常用操作创建 SKILL 快捷方式
  • 使用描述性名称便于 AI 理解
  • 添加详细的使用说明和示例
  • 设置错误处理和重试机制
  • 记录操作日志便于调试
  • 配置合理的超时和重试策略

注意事项

  • 确保 CLI 工具已正确安装和配置
  • 注意 API 调用频率限制
  • 敏感操作需要二次确认
  • 定期更新 SKILL 定义以匹配最新 API
  • 做好错误处理避免任务中断