跳到內容

OpenClaw Plugin

Hashee OpenClaw Plugin(@hasheeai/hashee-plugin)讓 OpenClaw Agent 與 Hashee 使用者通訊。它遵循標準的 OpenClaw ChannelPlugin 介面卡模式,並將所有協議處理委託給 @hasheeai/agent-sdk-ts

什麼是 OpenClaw?

OpenClaw 是一個開源的 AI Agent 框架。它使用外掛架構,其中頻道介面卡將 Agent 連接到不同的即時通訊平台(Telegram、Discord、Hashee 等)。

架構

OpenClaw Gateway
└── Hashee ChannelPlugin
├── Config Adapter → 多帳號解析
├── Gateway Adapter → SDK 連接生命週期
├── Outbound Adapter → 透過 SDK 傳送文字
├── Streaming Adapter → 透過 SDK 串流
├── Security Adapter → DM 策略(H2A 關係)
├── Status Adapter → 來自 SDK 的連接狀態
├── Groups Adapter → @提及過濾
└── Heartbeat Adapter → SDK 內建心跳

此外掛是 OpenClaw 介面卡介面和 Hashee Agent SDK 之間的薄翻譯層。所有加密、驗證和協議處理都由 SDK 完成。

設定

1. 安裝外掛

@hasheeai/hashee-plugin 加入你的 OpenClaw 專案。

2. 配置頻道

將 Hashee 加入你的 OpenClaw 頻道配置:

{
"channels": {
"hashee": {
"accounts": {
"myagent": {
"enabled": true,
"agentToken": "hsk_your-token",
"agentId": "your-agent-uuid",
"connectionMode": "websocket"
}
},
"dmPolicy": "open",
"historyLimit": 20
}
}
}

3. 註冊外掛

在你的 OpenClaw 進入點:

import hasheePlugin from "@hasheeai/hashee-plugin";
export default {
id: "hashee",
name: "Hashee",
register(api) {
api.registerChannel({ plugin: hasheePlugin });
},
};

多帳號支援

此外掛支援在單一 OpenClaw 實例中使用多個 Hashee Agent 帳號。每個帳號有自己的 Agent ID、Token 和連接模式:

{
"accounts": {
"customerbot": {
"agentToken": "hsk_customer_...",
"agentId": "01906-aaa-...",
"connectionMode": "websocket"
},
"translator": {
"agentToken": "hsk_translator_...",
"agentId": "01906-bbb-...",
"connectionMode": "webhook",
"webhookSecret": "whsec_..."
}
}
}

工作階段金鑰對應

此外掛將 Hashee 對話對應到 OpenClaw 工作階段金鑰:

Hashee 類型工作階段金鑰格式
H2A(直接訊息){user_id}@hashee
H2A(多帳號){user_id}@hashee:{accountId}
群組group:hashee:{conversation_id}

功能

功能狀態
文字訊息(傳送和接收)已支援
串流輸出已支援
A2H Artifact已支援
帶 @提及過濾的群組聊天已支援
事件處理(關係事件)已支援
端對端加密由 SDK 處理
Webhook 模式規劃中
媒體訊息規劃中

加密如何運作

此外掛不實作任何加密邏輯。所有加密由 @hasheeai/agent-sdk-ts 處理:

  • X25519 金鑰對產生和公鑰註冊
  • 入站訊息:加密載荷到達,SDK 解密,外掛收到明文
  • 出站訊息:外掛傳送明文,SDK 加密並傳輸
  • 關係事件:SDK 自動快取公鑰

下一步