Agent Skills by ALSEL
Anthropic ClaudeLLM・AI開発⭐ リポ 0品質スコア 50/100

wechat-channel

WeChat と OpenClaw を双方向に連携させるチャンネルスキルです。Wechaty + PadLocal をベースに、プライベートチャット・グループチャット・@メンション検知・画像/ファイル転送など、WeChat メッセージの送受信を幅広くサポートします。WeChat 経由で AI アシスタントと対話したい場合、WeChat のメッセージを受信して AI レスポンスをトリガーしたい場合、または OpenClaw から WeChat へメッセージを送信したい場合に活用してください。

description の原文を見る

微信 (WeChat) 与 OpenClaw 的双向集成通道。基于 Wechaty + PadLocal 实现微信消息的接收和发送,支持私聊、群聊、@提及检测、图片/文件传输。当需要通过微信与 AI 助手交互、接收微信消息触发 AI 响应、或从 OpenClaw 发送消息到微信时使用此技能。

SKILL.md 本文

WeChat チャネル統合

  • Author: Daniel Li
  • Copyright © Daniel Li. All rights reserved.

WeChat を OpenClaw に統合し、双方向メッセージチャネルを実現します。

アーキテクチャ概要

┌─────────────┐     ┌──────────────────┐     ┌─────────────┐
│  WeChat ユーザー  │ ←→  │  Wechaty Bridge  │ ←→  │  OpenClaw   │
│ (個人/グループ)  │     │ (PadLocal プロトコル) │     │   Gateway   │
└─────────────┘     └──────────────────┘     └─────────────┘
                           ↓
                    ┌──────────────────┐
                    │  メッセージフォーマット変換 │
                    │  - テキスト/画像/ファイル │
                    │  - @メンション検出     │
                    │  - グループ/個人チャットルーティング │
                    └──────────────────┘

コアコンポーネント

1. Wechaty Bridge (メッセージブリッジサービス)

独立して動作する Node.js サービス、責務:

  • WeChat ログイン(QR コードスキャン)
  • メッセージ送受信
  • 連絡先/グループ管理
  • OpenClaw Gateway との通信

2. OpenClaw Webhook リシーバー

Wechaty Bridge からのメッセージを受信し、AI Agent に転送します。

3. メッセージ送信 API

OpenClaw Agent が HTTP API 経由で WeChat にメッセージを送信します。

クイックスタート

前提条件

  • Node.js >= 18
  • PadLocal Token(有料サービス、約 ¥200/月)
  • OpenClaw Gateway が稼働中

1. 依存関係のインストール

cd /home/aa/clawd/skills/wechat-channel
npm init -y
npm install wechaty wechaty-puppet-padlocal axios dotenv

2. 環境変数の設定

cp .env.example .env
# .env を編集して設定を入力

3. サービスの起動

node scripts/wechat-bridge.js
# ターミナルに表示される QR コードをスキャンしてログイン

設定ガイド

環境変数 (.env)

# PadLocal Token (必須)
# 取得方法: https://pad-local.com
PADLOCAL_TOKEN=YOUR_PADLOCAL_TOKEN

# OpenClaw Gateway 設定
OPENCLAW_GATEWAY_URL=http://127.0.0.1:18789
OPENCLAW_WEBHOOK_SECRET=your_webhook_secret

# WeChat Bot 設定
WECHAT_BOT_NAME=OpenClaw助手

# セキュリティ設定
# 許可するユーザーの WeChat ID (カンマ区切り、空白で全ユーザー許可)
ALLOWED_USERS=wxid_xxx,wxid_yyy
# 許可するグループ ID (カンマ区切り、空白で全グループ許可)
ALLOWED_GROUPS=xxx@chatroom,yyy@chatroom

# グループチャット動作
# グループメッセージに応答するために@が必要かどうか
REQUIRE_MENTION_IN_GROUP=true

# ログレベル
LOG_LEVEL=info

OpenClaw 設定 (openclaw.json)

{
  "channels": {
    "wechat": {
      "enabled": true,
      "webhookUrl": "http://localhost:3001/webhook",
      "webhookSecret": "your_webhook_secret",
      "dmPolicy": "allowlist",
      "allowFrom": ["wxid_xxx", "wxid_yyy"],
      "groups": {
        "xxx@chatroom": {
          "name": "工作群",
          "requireMention": true
        }
      }
    }
  }
}

メッセージフォーマット

受信メッセージ (Webhook ペイロード)

{
  "type": "message",
  "channel": "wechat",
  "messageId": "msg_123456",
  "from": {
    "id": "wxid_sender",
    "name": "太郎",
    "alias": "taro"
  },
  "chat": {
    "id": "wxid_sender",
    "type": "private"
  },
  "text": "明日の天気を調べてくれないか",
  "timestamp": 1706745600000,
  "mentions": [],
  "replyTo": null
}

グループチャットメッセージ

{
  "type": "message",
  "channel": "wechat",
  "messageId": "msg_789012",
  "from": {
    "id": "wxid_sender",
    "name": "太郎"
  },
  "chat": {
    "id": "xxx@chatroom",
    "type": "group",
    "name": "仕事グループ"
  },
  "text": "@OpenClaw助手 今日の会議の内容をまとめてください",
  "mentions": ["bot_wxid"],
  "isMentioned": true
}

メッセージ送信 (API)

# テキスト送信
curl -X POST http://localhost:3001/api/send \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_SECRET" \
  -d '{
    "to": "wxid_receiver",
    "type": "text",
    "content": "承知しました、処理中です..."
  }'

# 画像送信
curl -X POST http://localhost:3001/api/send \
  -H "Content-Type: application/json" \
  -d '{
    "to": "wxid_receiver",
    "type": "image",
    "url": "https://example.com/image.png"
  }'

# ファイル送信
curl -X POST http://localhost:3001/api/send \
  -d '{
    "to": "wxid_receiver",
    "type": "file",
    "path": "/path/to/file.pdf",
    "filename": "report.pdf"
  }'

セキュリティポリシー

プライベートチャットポリシー (dmPolicy)

ポリシー説明
open全員がプライベートチャットできる(危険)
allowlistallowFrom リストのユーザーのみ
pairingペアリング承認が必要

グループチャットポリシー

設定説明
requireMention: trueBot への@が必須
allowFromグループ内でトリガーを許可するユーザーリスト

ユースケース

1. 個人アシスタント

ユーザー: 明日の東京の天気を調べてくれ
Bot: 明日の東京の天気:晴れ、気温 -5°C ~ 5°C、ダウンジャケットをお勧めします。

2. グループチャットアシスタント

ユーザー: @OpenClaw助手 さっきの議論をまとめて
Bot: さっきの議論の要点:
1. プロジェクトの進捗を加速する必要がある
2. 来週水曜までにデザイン案を完成させる
3. 金曜にコードレビューを実施

3. 自動化通知

// OpenClaw Agent から通知を送信
await sendWechatMessage({
  to: 'xxx@chatroom',
  text: '⚠️ サーバーの CPU 使用率が 90% を超えています。確認してください!'
});

トラブルシューティング

ログイン問題

問題: QR コードスキャン後にログインできない 解決:

  1. PadLocal Token が有効か確認
  2. WeChat アカウントが制限されていないか確認
  3. Token の取得をやり直す

メッセージ送受信問題

問題: メッセージ送信に失敗 解決:

  1. ネットワーク接続を確認
  2. 対象ユーザー/グループ ID が正しいか確認
  3. ログのエラーメッセージを確認

接続切断

問題: サービスしばらく実行後に切断される 解決:

  1. PM2 でプロセスを管理し、自動再起動を設定
  2. PadLocal サービスのステータスを確認
  3. ハートビート検出と再接続メカニズムを実装

制限事項

PadLocal の制限

  • 有料 Token が必要(約 ¥200/月)
  • 単一 Token で複数の WeChat アカウントにログインできない
  • WeChat のセキュリティ制限の影響を受ける可能性

WeChat プラットフォームの制限

  • メッセージ送信頻度制限(1~2 秒の間隔を推奨)
  • グループチャットの人数制限
  • ファイルサイズ制限(約 100MB)
  • ミニプログラムメッセージに非対応

機能の制限

  • 音声メッセージの自動テキスト化に非対応(別途統合が必要)
  • ビデオアカウントのコンテンツに非対応
  • 紅包、送金などの機密機能は使用不可

関連ファイル

  • scripts/wechat-bridge.js - メインサービスコード
  • scripts/message-handler.js - メッセージ処理ロジック
  • .env.example - 環境変数テンプレート
  • references/wechaty-api.md - Wechaty API リファレンス

TODO

  • PadLocal Token を取得
  • OpenClaw Webhook 受信を設定
  • プライベートチャットのメッセージ送受信をテスト
  • グループチャットの @メンションをテスト
  • セキュリティポリシーを設定
  • システムサービスとして展開
  • 断線時の自動再接続を実装
  • メッセージキューを追加(高並行処理)

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
aaaaqwq
リポジトリ
aaaaqwq/claude-code-skills
ライセンス
MIT
最終更新
不明

Source: https://github.com/aaaaqwq/claude-code-skills / ライセンス: MIT

関連スキル

OpenAILLM・AI開発⭐ リポ 6,054

agent-browser

AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。

by JimmyLv
汎用LLM・AI開発⭐ リポ 1,982

anyskill

AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。

by LeoYeAI
汎用LLM・AI開発⭐ リポ 1,982

engram

AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。

by LeoYeAI
汎用LLM・AI開発⭐ リポ 21,584

skyvern

AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。

by Skyvern-AI
汎用LLM・AI開発⭐ リポ 1,149

pinchbench

PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。

by pinchbench
汎用LLM・AI開発⭐ リポ 4,693

openui

OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。

by thesysdev
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: aaaaqwq · aaaaqwq/claude-code-skills · ライセンス: MIT