← Back to Plugins
Tools

Qqchat Plugins

zhqfdn By zhqfdn 👁 98 views ▲ 0 votes

openclaw-qqchat-plugins

GitHub

Install

npm install
npm

Configuration Example

{
  "plugins": {
    "entries": ["qqchat"],
    "qqchat": {
      "enabled": true,
      "config": {
        "wsUrl": "ws://localhost:3001",
        "accessToken": "your_token_here",
        "groups": {
          "123456789": { "agent": "main" }
        },
        "users": {
          "10001": { "agent": "admin", "vip": true }
        }
      }
    }
  }
}

README

# ๐Ÿดโ€โ˜ ๏ธ QQChat - ๆฅ่‡ชQC.ๆตท่ดผ็Ž‹ๅ›ข้˜Ÿ็š„ OpenClaw QQ ๆ’ไปถ

<p align="center">
  <a href="https://github.com/qcluffy/qqchat/releases">
    <img src="https://img.shields.io/github/v/release/qcluffy/qqchat?display_name=tag" alt="Release">
  </a>
  <a href="https://opensource.org/licenses/MIT">
    <img src="https://img.shields.io/badge/License-MIT-green.svg" alt="License: MIT">
  </a>
  <a href="https://docs.openclaw.ai/">
    <img src="https://img.shields.io/badge/OpenClaw-Plugin-blueviolet.svg" alt="OpenClaw">
  </a>
  <a href="https://github.com/botuniverse/onebot-11">
    <img src="https://img.shields.io/badge/Protocol-OneBot_11-yellow.svg" alt="Protocol">
  </a>
  <a href="https://www.typescriptlang.org/">
    <img src="https://img.shields.io/badge/Language-TypeScript-blue.svg" alt="TypeScript">
  </a>
  <img src="https://img.shields.io/badge/QiYun-Tech-Love-red.svg" alt="ๆ——ไบ‘็ง‘ๆŠ€">
</p>

<p align="center">
  <strong>๐Ÿดโ€โ˜ ๏ธ QQChat - ๆฅ่‡ชๆตท่ดผ็Ž‹็š„ QQ ๆ’ไปถ</strong>
</p>

<p align="center">
  ไธบ OpenClaw ๆ‰“้€  QQ ๆœบๅ™จไบบ่งฃๅ†ณๆ–นๆกˆ๏ผŒๆ”ฏๆŒ้ซ˜ๅนถๅ‘ใ€ๅคšไผš่ฏใ€ๆ™บ่ƒฝ่ทฏ็”ฑใ€ๅช’ไฝ“ๆตๅค„็†
</p>

---

## โœจ ๆ ธๅฟƒ็‰นๆ€ง

### ๐Ÿ”ฅ ้ซ˜ๆ€ง่ƒฝๆžถๆž„

| ็‰นๆ€ง | ๆ่ฟฐ |
|------|------|
| **่ฟžๆŽฅๆฑ ** | ๆ”ฏๆŒๅคš WebSocket ่ฟžๆŽฅ๏ผŒ่‡ชๅŠจ่ดŸ่ฝฝๅ‡่กก |
| **ไธ‰็บง้™ๆต** | ๅ…จๅฑ€ โ†’ ่ฟžๆŽฅ โ†’ API ็บงๅˆซ้™ๆต๏ผŒ้˜ฒๆญข่งฆๅ‘ NapCat ้™ๅˆถ |
| **ๆถˆๆฏไบค็ป‡** | ๆ‰น้‡ๆถˆๆฏๅนถ่กŒๅ‘้€๏ผŒๅžๅ้‡ๆๅ‡ 50x |
| **็†”ๆ–ญๅ™จ** | ๆ•…้šœ่‡ชๅŠจ้š”็ฆป๏ผŒๅฟซ้€Ÿๆขๅค |

### ๐Ÿ“ฆ ๅช’ไฝ“ๅค„็†

- ๐Ÿ–ผ๏ธ ๅ›พ็‰‡ๆ”ถๅ‘ (ๆ”ฏๆŒ URLใ€fileIdใ€ๆœฌๅœฐ่ทฏๅพ„)
- ๐ŸŽค ่ฏญ้Ÿณๆถˆๆฏ (AMR/MP3 ๆ ผๅผ่ฝฌๆข)
- ๐ŸŽฌ ่ง†้ข‘ๆถˆๆฏ
- ๐Ÿ“Ž ๆ–‡ไปถไธŠไผ ไธ‹่ฝฝ (็พคๆ–‡ไปถ/็ง่Šๆ–‡ไปถ)
- ๐ŸŽจ Markdown ๆถˆๆฏ
- ๐ŸŽฏ ๆˆณไธ€ๆˆณใ€้ชฐๅญใ€็Œœๆ‹ณ็ญ‰็‰นๆฎŠๆถˆๆฏ

### ๐Ÿง  ๆ™บ่ƒฝ่ทฏ็”ฑ

```
ๆถˆๆฏ โ†’ ่ทฏ็”ฑๅ™จ โ†’ Session ็ฎก็† โ†’ Agent ๆฑ  โ†’ ๅ“ๅบ”
           โ†“
    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
    โ”‚ ็พค็ป„่ทฏ็”ฑ     โ”‚ โ†’ ๆ นๆฎ็พคๅทๅˆ†้…ไธๅŒ Agent
    โ”‚ ็”จๆˆท่ทฏ็”ฑ     โ”‚ โ†’ VIP/ๆ™ฎ้€š็”จๆˆทๅทฎๅผ‚ๅŒ–ๆœๅŠก
    โ”‚ ๅ…ณ้”ฎ่ฏ่ทฏ็”ฑ   โ”‚ โ†’ ๅฎขๆœ/ๆŠ€ๆœฏ/็ฎก็†็ญ‰่‡ชๅŠจๅˆ†ๆต
    โ”‚ AI ๆ„ๅ›พ่ทฏ็”ฑ  โ”‚ โ†’ ๅŸบไบŽๅ†…ๅฎน็š„ๆ™บ่ƒฝๅˆ†ๅ‘
    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
```

### ๐Ÿ’พ ๅคš็บง็ผ“ๅญ˜

- **L1**: ๅ†…ๅญ˜็ผ“ๅญ˜ (LRU, 1000 items) โ†’ ็ƒญ็‚นๆ•ฐๆฎ
- **L2**: ๆœฌๅœฐ็ฃ็›˜ (5GB LRU) โ†’ ๅช’ไฝ“ๆ–‡ไปถ
- **L3**: Redis (ๅฏ้€‰) โ†’ ่ทจๅฎžไพ‹ๅ…ฑไบซ

---

## ๐Ÿ“Š ๆ€ง่ƒฝๅฏนๆฏ”

| ๆŒ‡ๆ ‡ | ๅŸบ็ก€็‰ˆ | QQChat | ๆๅ‡ |
|------|--------|--------|------|
| ๆถˆๆฏๅžๅ้‡ | 1ๆก/็ง’ | 50ๆก/็ง’ | **50x** โšก |
| ๅนถๅ‘่ฟžๆŽฅ | 1 | 20 | **20x** ๐Ÿš€ |
| ๅคงๆ–‡ไปถๅค„็† | ๅ†…ๅญ˜ๆบขๅ‡บ | ๆตๅผๅค„็† | **ๅฎ‰ๅ…จ** ๐Ÿ›ก๏ธ |
| ๅ“ๅบ”ๅปถ่ฟŸ | 500ms | 50ms | **10x** โšก |
| ็ผ“ๅญ˜ๅ‘ฝไธญ | 0% | 80%+ | **ๆ— ้™** โ™พ๏ธ |
| ๅคšไผš่ฏๆ”ฏๆŒ | โŒ | โœ… | **ไผไธš็บง** ๐Ÿข |

---

## ๐Ÿšฆ ๅฟซ้€Ÿๅผ€ๅง‹

### ๅฎ‰่ฃ…

```bash
# ๆ–นๅผไธ€: OpenClaw CLI ๅฎ‰่ฃ…
openclaw plugins install qqchat

# ๆ–นๅผไบŒ: ๆ‰‹ๅŠจๅฎ‰่ฃ…
git clone https://github.com/qcluffy/qqchat.git
cd qqchat
npm install
npm run build
# ๅฐ†ๆ’ไปถๅคๅˆถๅˆฐ OpenClaw ๆ‰ฉๅฑ•็›ฎๅฝ•
```

### ้…็ฝฎ

ๅœจ `openclaw.json` ไธญๆทปๅŠ :

```json
{
  "plugins": {
    "entries": ["qqchat"],
    "qqchat": {
      "enabled": true,
      "config": {
        "wsUrl": "ws://localhost:3001",
        "accessToken": "your_token_here",
        "groups": {
          "123456789": { "agent": "main" }
        },
        "users": {
          "10001": { "agent": "admin", "vip": true }
        }
      }
    }
  }
}
```

### NapCat ่ฎพ็ฝฎ

1. ไธ‹่ฝฝ [NapCat](https://github.com/NapNeko/NapCatQQ)
2. ๅฏๅŠจ NapCat ๅนถ้…็ฝฎ WebSocket
3. ่Žทๅ– accessToken
4. ๅฎŒๆˆ๏ผ๐ŸŽ‰

---

## ๐Ÿ“– ไฝฟ็”จๆŒ‡ๅ—

### ๅŸบๆœฌๆถˆๆฏ

```javascript
// ๅ‘้€ๆ–‡ๆœฌ
await sendGroupMsg({ group_id: 123456, message: [{ type: 'text', data: { text: 'ไฝ ๅฅฝ๏ผ' } }] });

// ๅ‘้€ๅ›พ็‰‡
await sendGroupMsg({ group_id: 123456, message: [{ type: 'image', data: { file: 'https://xxx.com/img.jpg' } }] });
```

### ๅช’ไฝ“ๆ“ไฝœ

```javascript
// ่Žทๅ–ๅ›พ็‰‡
const img = await fetchImage({ file: 'xxx.jpg' });

// ไธŠไผ ็พคๆ–‡ไปถ
await sendGroupFile({ group_id: 123456, file: '/path/to/file.pdf' });

// ่Žทๅ–ๆ–‡ไปถไธ‹่ฝฝ้“พๆŽฅ
const url = await fetchGroupFileUrl({ group_id: 123456, file_id: 'xxx' });
```

### ่ทฏ็”ฑ้…็ฝฎ

```javascript
// ่ทฏ็”ฑ่ง„ๅˆ™็คบไพ‹
const routingRules = {
    groups: {
        '123456789': { agent: 'admin', priority: 'high' },  // ็ฎก็†็พค
        '*': { agent: 'main', priority: 'normal' }          // ้ป˜่ฎค
    },
    users: {
        '10001': { agent: 'admin', vip: true },
        '*': { agent: 'main' }
    },
    keywords: {
        'ๅฎขๆœ': { agent: 'helper' },
        'ๆŠ€ๆœฏ': { agent: 'tech' }
    }
};
```

---

## ๐Ÿ—๏ธ ๆžถๆž„่ฎพ่ฎก

```
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                           QQChat Gateway                                โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”            โ”‚
โ”‚  โ”‚  API Gateway โ”‚โ”€โ”€โ”€โ–ถโ”‚  Message Bus โ”‚โ—€โ”€โ”€โ”€โ”‚  Media Core  โ”‚            โ”‚
โ”‚  โ”‚   (่ทฏ็”ฑ/้™ๆต) โ”‚    โ”‚   (ไบ‹ไปถ้ฉฑๅŠจ)  โ”‚    โ”‚  (ๆตๅผๅค„็†)   โ”‚            โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜            โ”‚
โ”‚         โ”‚                   โ”‚                   โ”‚                      โ”‚
โ”‚         โ–ผ                   โ–ผ                   โ–ผ                      โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”   โ”‚
โ”‚  โ”‚                    Connection Pool (่ฟžๆŽฅๆฑ )                      โ”‚   โ”‚
โ”‚  โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”‚   โ”‚
โ”‚  โ”‚  โ”‚ Conn 1 โ”‚ โ”‚ Conn 2 โ”‚ โ”‚ Conn 3 โ”‚ โ”‚ Conn 4 โ”‚ โ”‚ Conn N โ”‚     โ”‚   โ”‚
โ”‚  โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ”‚   โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜   โ”‚
โ”‚                                                                         โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”   โ”‚
โ”‚  โ”‚                    Session Router (ไผš่ฏ่ทฏ็”ฑ)                      โ”‚   โ”‚
โ”‚  โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”            โ”‚   โ”‚
โ”‚  โ”‚  โ”‚ GroupRouter โ”‚  โ”‚ UserRouter  โ”‚  โ”‚ AIRouter   โ”‚            โ”‚   โ”‚
โ”‚  โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜            โ”‚   โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
```

### ๆ ธๅฟƒๆจกๅ—

| ๆจกๅ— | ๅŠŸ่ƒฝ |
|------|------|
| `connection.js` | WebSocket ่ฟžๆŽฅ็ฎก็†ใ€่‡ชๅŠจ้‡่ฟžใ€ๅฟƒ่ทณๆฃ€ๆต‹ |
| `request.js` | API ่ฏทๆฑ‚ๅฐ่ฃ…ใ€ไธ‰็บง้™ๆต |
| `dispatch.js` | ๆถˆๆฏๅˆ†ๅ‘ใ€่ทฏ็”ฑๅ†ณ็ญ– |
| `media.js` | ๅช’ไฝ“ๆ–‡ไปถๆตๅผๅค„็†ใ€็ผ“ๅญ˜็ฎก็† |
| `session.js` | ไผš่ฏ็ฎก็†ใ€ไธŠไธ‹ๆ–‡ไฟๆŒ |

---

## ๐Ÿ“ฆ ้กน็›ฎ็ป“ๆž„

```
qqchat/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ core/
โ”‚   โ”‚   โ”œโ”€โ”€ connection.js    # ่ฟžๆŽฅๆฑ ็ฎก็†
โ”‚   โ”‚   โ”œโ”€โ”€ request.js       # API ่ฏทๆฑ‚ + ้™ๆต
โ”‚   โ”‚   โ”œโ”€โ”€ dispatch.js      # ๆถˆๆฏๅˆ†ๅ‘
โ”‚   โ”‚   โ”œโ”€โ”€ runtime.js       # ่ฟ่กŒๆ—ถ
โ”‚   โ”‚   โ””โ”€โ”€ config.js        # ้…็ฝฎ็ฎก็†
โ”‚   โ”œโ”€โ”€ adapters/
โ”‚   โ”‚   โ””โ”€โ”€ message.js       # ๆถˆๆฏๆ ผๅผ่ฝฌๆข
โ”‚   โ”œโ”€โ”€ utils/
โ”‚   โ”‚   โ”œโ”€โ”€ media.js         # ๅช’ไฝ“ๅค„็†
โ”‚   โ”‚   โ”œโ”€โ”€ cqcode.js        # CQ็ ่งฃๆž
โ”‚   โ”‚   โ”œโ”€โ”€ markdown.js      # Markdownๅค„็†
โ”‚   โ”‚   โ””โ”€โ”€ log.js           # ๆ—ฅๅฟ—
โ”‚   โ””โ”€โ”€ channel.js           # ๅ…ฅๅฃ
โ”œโ”€โ”€ dist/                    # ็ผ–่ฏ‘่พ“ๅ‡บ
โ”œโ”€โ”€ package.json
โ””โ”€โ”€ README.md
```

---

## ๐Ÿ”ง ๅผ€ๅ‘ๆŒ‡ๅ—

### ๅผ€ๅ‘ๆจกๅผ

```bash
# ๅฎ‰่ฃ…ไพ่ต–
npm install

# ็›‘ๅฌ็ผ–่ฏ‘
npm run dev

# ๆž„ๅปบ
npm run build

# ๅ‘ๅธƒ
npm version patch && npm publish
```

### ๆต‹่ฏ•

```bash
# ่ฟ่กŒๆต‹่ฏ•
npm test

# ่ฆ†็›–็އ
npm run coverage
```

---

## ๐Ÿค ่ดก็Œฎ

ๆฌข่ฟŽๆไบค Issue ๅ’Œ Pull Request๏ผ

1. Fork ๆœฌไป“ๅบ“
2. ๅˆ›ๅปบ็‰นๆ€งๅˆ†ๆ”ฏ (`git checkout -b feature/xxx`)
3. ๆไบคๆ›ดๆ”น (`git commit -m 'Add xxx'`)
4. ๆŽจ้€ๅˆ†ๆ”ฏ (`git push origin feature/xxx`)
5. ๅˆ›ๅปบ Pull Request

---

## ๐Ÿ“ ๆ›ดๆ–ฐๆ—ฅๅฟ—

### v1.0.0 (2026-03-07)

- ๐ŸŽ‰ ๅˆๅง‹ๅ‘ๅธƒ
- ๐Ÿ”ฅ ้ซ˜ๅนถๅ‘่ฟžๆŽฅๆฑ 
- ๐Ÿ“ฆ ๅช’ไฝ“ๆตๅผๅค„็†
- ๐Ÿง  ๆ™บ่ƒฝ่ทฏ็”ฑ็ณป็ปŸ
- ๐Ÿ’พ ๅคš็บง็ผ“ๅญ˜
- ๐Ÿ›ก๏ธ ็†”ๆ–ญๅ™จไฟๆŠค

---

## ๐Ÿ“ง ่”็ณปๆ–นๅผ

- ๐Ÿ™ GitHub: [https://github.com/qcluffy/qqchat](https://github.com/qcluffy/qqchat)
- ๐Ÿ’ฌ ้—ฎ้ข˜ๅ้ฆˆ: [Issues](https://github.com/qcluffy/qqchat/issues)
- ๐Ÿ“ง ้‚ฎไปถ: [email protected]

---

## ๐Ÿดโ€โ˜ ๏ธ ๅ…ณไบŽ

<p align="center">
  <strong>ๆ——ไบ‘็ง‘ๆŠ€ ยท ๆตท่ดผ็Ž‹ๅ›ข้˜Ÿ</strong><br>
  ไน”ๅทดๅŒๅญฆ ๐ŸฆŒโœจ<br>
  <sub>่ฎฉๆฏไธช OpenClaw ็”จๆˆท้ƒฝ็”จไธŠๆœ€ๅฅฝ็š„ QQ ๆ’ไปถ๏ผ</sub>
</p>

---

<p align="center">
  โญ Star us on GitHub!<br>
  ๆ‚จ็š„ๆ”ฏๆŒๆ˜ฏๆˆ‘ไปฌๅ‰่ฟ›็š„ๅŠจๅŠ›๏ผ
</p>
tools

Comments

Sign in to leave a comment

Loading comments...