@qihoo/tuitui-openclaw-channel 1.0.36 → 1.0.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/package.json +2 -1
- package/package.json +2 -1
- package/skills/tuitui-im-read/SKILL.md +135 -0
package/dist/package.json
CHANGED
package/package.json
CHANGED
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: tuitui-im-read
|
|
3
|
+
description: |
|
|
4
|
+
推推(tuitui) IM 消息读取工具使用指南
|
|
5
|
+
|
|
6
|
+
**当以下情况时使用此 Skill**:
|
|
7
|
+
(1) 需要获取群聊或单聊的历史消息
|
|
8
|
+
(2) 用户提到"聊天记录"、"消息"、"群里说了什么"
|
|
9
|
+
(3) 需要按时间范围过滤消息、分页获取更多消息
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# 推推 IM 消息读取
|
|
13
|
+
|
|
14
|
+
## 执行前必读
|
|
15
|
+
|
|
16
|
+
- 该 Skill 中的所有消息读取工具均以机器人身份调用,只能读取机器人有权限的会话。
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## 工具: tuitui_im_get_messages
|
|
21
|
+
|
|
22
|
+
### 参数说明
|
|
23
|
+
|
|
24
|
+
| 参数 | 类型 | 必填 | 说明 |
|
|
25
|
+
|------|------|------|------|
|
|
26
|
+
| `chatId` | string | ✅ | 聊天 ID。单聊填对方的 tuitui account,群聊填群ID,频道填频道ID |
|
|
27
|
+
| `chatType` | string | ✅ | 聊天类型:单聊填 `direct`,群聊填 `group`, 频道填 `channel` |
|
|
28
|
+
| `relativeTime` | string | ❌ | 相对时间范围:today / yesterday / day_before_yesterday / last_{N}_{unit}(unit: minutes/hours/days/months)。与 `startTime`/`endTime` 互斥 |
|
|
29
|
+
| `startTime` | string | ❌ | 起始时间,ISO 8601 格式,如 `2026-02-27T00:00:00+08:00`。不填默认从最早开始。与 `relativeTime` 互斥 |
|
|
30
|
+
| `endTime` | string | ❌ | 结束时间,ISO 8601 格式,如 `2026-02-27T23:59:59+08:00`。不填默认到当前时间。与 `relativeTime` 互斥 |
|
|
31
|
+
| `limit` | number | ❌ | 每页条数,范围 1~100,单聊群聊默认 100,频道默认20 |
|
|
32
|
+
| `cursor` | string | ❌ | 分页游标,首次调用填 `"0"`,翻页时传上次返回的 `cursor`, 带有cursor时,必须要有relativeTime或者startTime参数 |
|
|
33
|
+
| `orderAsc` | boolean | ❌ | 排序方向,`true` 正序(从旧到新),`false` 逆序(从新到旧,默认) |
|
|
34
|
+
|
|
35
|
+
### 返回结构
|
|
36
|
+
|
|
37
|
+
```json
|
|
38
|
+
{
|
|
39
|
+
"errcode": 0,
|
|
40
|
+
"errmsg": "ok",
|
|
41
|
+
"cursor": "xxx",
|
|
42
|
+
"has_more": true,
|
|
43
|
+
"current_time": "2026-03-21 10:00:00",
|
|
44
|
+
"msgs": [
|
|
45
|
+
{
|
|
46
|
+
//...
|
|
47
|
+
}
|
|
48
|
+
]
|
|
49
|
+
}
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
字段说明:
|
|
53
|
+
|
|
54
|
+
| 字段 | 说明 |
|
|
55
|
+
|------|------|
|
|
56
|
+
| `current_time` | 当前服务器时间,格式 `YYYY-MM-DD HH:MM:SS`,辅助理解消息的相对时间 |
|
|
57
|
+
| `has_more` | `true` 时说明还有更多数据,可用返回的 `cursor` 继续翻页 |
|
|
58
|
+
| `msgs` | 消息列表,空数组表示该时间段内没有消息 |
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## 核心约束
|
|
63
|
+
|
|
64
|
+
### 1. 时间范围:确保消息覆盖完整
|
|
65
|
+
|
|
66
|
+
- 用户说"今天"、"最近一周"等相对时间时,应该优先使用 relativeTime 参数,例如 今天=today 过去一周=last_7_days 过去一个月=last_31_days
|
|
67
|
+
- 只有用户明确的说日期时,才计算并使用 `startTime` / `endTime` 字段(ISO 8601,+08:00 时区)
|
|
68
|
+
- 不确定范围时适当放宽,宁可多拉再过滤
|
|
69
|
+
|
|
70
|
+
### 2. 分页:根据需要翻页获取更多结果
|
|
71
|
+
|
|
72
|
+
- 返回结果中 `has_more=true` 时,将 `cursor` 传入下次调用继续获取下一页
|
|
73
|
+
- 根据用户需求判断是否需要翻页:需要完整结果时继续翻页,浏览概览时第一页通常够用
|
|
74
|
+
|
|
75
|
+
### 3. 排序方向
|
|
76
|
+
|
|
77
|
+
- 默认 `orderAsc=false`(逆序),拉取最新消息
|
|
78
|
+
- 需要按时间顺序阅读时,传 `orderAsc=true`
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## 使用场景示例
|
|
83
|
+
|
|
84
|
+
### 场景 1:获取群聊最新消息
|
|
85
|
+
|
|
86
|
+
```json
|
|
87
|
+
{
|
|
88
|
+
"chatId": "4511334567",
|
|
89
|
+
"chatType": "group"
|
|
90
|
+
}
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### 场景 2:获取最近一周的某群聊消息
|
|
94
|
+
|
|
95
|
+
```json
|
|
96
|
+
{
|
|
97
|
+
"chatId": "4511334567",
|
|
98
|
+
"chatType": "group",
|
|
99
|
+
"relativeTime": "last_7_days"
|
|
100
|
+
}
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### 场景 3:获取最近一周的某群聊消息时出现分页后,继续分页获取更多消息
|
|
104
|
+
|
|
105
|
+
第一次调用返回 `has_more: true` 和 `cursor: "xxx"`,继续获取:
|
|
106
|
+
|
|
107
|
+
```json
|
|
108
|
+
{
|
|
109
|
+
"chatId": "4511334567",
|
|
110
|
+
"chatType": "group",
|
|
111
|
+
"relativeTime": "last_7_days",
|
|
112
|
+
"cursor": "xxx"
|
|
113
|
+
}
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### 场景 4:获取某频道最新消息
|
|
117
|
+
|
|
118
|
+
```json
|
|
119
|
+
{
|
|
120
|
+
"chatId": "45113345673344",
|
|
121
|
+
"chatType": "channel"
|
|
122
|
+
}
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## 常见错误与排查
|
|
128
|
+
|
|
129
|
+
| 错误现象 | 根本原因 | 解决方案 |
|
|
130
|
+
|---------|---------|---------|
|
|
131
|
+
| 消息结果为空 | 时间范围不对或 chatId 有误 | 检查 `chatId`、`chatType`,适当放宽时间范围 |
|
|
132
|
+
| 消息不完整 | 没有检查 `has_more` 并翻页 | `has_more=true` 时用返回的 `cursor` 继续翻页 |
|
|
133
|
+
| 报错 invalid tuitui account | 账号未配置或未启用 | 确认 tuitui 账号已正确配置 |
|
|
134
|
+
| 报错 找不到 tuitui_im_get_messages tool | 龙虾选线未开启,需要去龙虾 Dashboard->代理->Tools->检查 tuitui_im_get_messages 是否开启
|
|
135
|
+
|