@meet-im/meet 1.0.3

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/README.md ADDED
@@ -0,0 +1 @@
1
+ # @meet-im/meet-channel
package/index.ts ADDED
@@ -0,0 +1,26 @@
1
+ import type { OpenClawPluginApi } from "openclaw/plugin-sdk";
2
+ import { emptyPluginConfigSchema } from "openclaw/plugin-sdk";
3
+ import { meetPlugin } from "./src/channel.js";
4
+ import { setMeetRuntime } from "./src/runtime.js";
5
+
6
+ export { monitorMeetProvider } from "./src/monitor.js";
7
+ export {
8
+ sendMessageMeet,
9
+ sendMediaMeet,
10
+ resolveMeetMedia,
11
+ } from "./src/send.js";
12
+ export { probeMeet, clearProbeCache } from "./src/probe.js";
13
+ export { meetPlugin } from "./src/channel.js";
14
+
15
+ const plugin = {
16
+ id: "meet",
17
+ name: "Meet",
18
+ description: "Meet channel plugin",
19
+ configSchema: emptyPluginConfigSchema(),
20
+ register(api: OpenClawPluginApi) {
21
+ setMeetRuntime(api.runtime);
22
+ api.registerChannel({ plugin: meetPlugin });
23
+ },
24
+ };
25
+
26
+ export default plugin;
@@ -0,0 +1,10 @@
1
+ {
2
+ "id": "meet",
3
+ "channels": ["meet"],
4
+ "skills": ["./skills"],
5
+ "configSchema": {
6
+ "type": "object",
7
+ "additionalProperties": false,
8
+ "properties": {}
9
+ }
10
+ }
package/package.json ADDED
@@ -0,0 +1,75 @@
1
+ {
2
+ "name": "@meet-im/meet",
3
+ "version": "1.0.3",
4
+ "type": "module",
5
+ "description": "OpenClaw Meet channel plugin",
6
+ "scripts": {
7
+ "dev": "tsx watch src/index.ts",
8
+ "build": "tsc",
9
+ "typecheck": "tsc --noEmit",
10
+ "test:unit": "vitest run",
11
+ "test:unit:watch": "vitest",
12
+ "test:coverage": "vitest run --coverage",
13
+ "ci:check": "npx tsc --noEmit && npm run test:coverage",
14
+ "pack": "pnpm pack && node scripts/pack.js",
15
+ "publish": "npm publish --registry https://registry.npmjs.org --access public"
16
+ },
17
+ "license": "MIT",
18
+ "files": [
19
+ "index.ts",
20
+ "src/**/*.ts",
21
+ "!src/**/__tests__/**",
22
+ "!src/**/*.test.ts",
23
+ "skills",
24
+ "openclaw.plugin.json"
25
+ ],
26
+ "repository": {
27
+ "type": "git",
28
+ "url": "ssh://git@git.miyachat.com:2122/meet/openclaw-channel-meet.git"
29
+ },
30
+ "keywords": [
31
+ "openclaw",
32
+ "meet",
33
+ "chatbot",
34
+ "ai",
35
+ "claude"
36
+ ],
37
+ "openclaw": {
38
+ "extensions": [
39
+ "./index.ts"
40
+ ],
41
+ "channel": {
42
+ "id": "meet",
43
+ "label": "Meet",
44
+ "selectionLabel": "Meet IM",
45
+ "docsPath": "/channels/meet",
46
+ "docsLabel": "meet",
47
+ "blurb": "Meet IM platform integration.",
48
+ "aliases": [],
49
+ "order": 80
50
+ },
51
+ "install": {
52
+ "npmSpec": "@meet-im/meet-channel",
53
+ "localPath": ".",
54
+ "defaultChoice": "npm"
55
+ }
56
+ },
57
+ "dependencies": {
58
+ "@meet-im/meet-bot-jssdk": "^1.0.0",
59
+ "zod": "3.23.8"
60
+ },
61
+ "devDependencies": {
62
+ "@types/node": "^22.0.0",
63
+ "@vitest/coverage-v8": "^2.1.8",
64
+ "openclaw": "2026.3.8",
65
+ "tsx": "^4.21.0",
66
+ "typescript": "^5.7.0",
67
+ "vitest": "^2.1.8"
68
+ },
69
+ "peerDependencies": {
70
+ "openclaw": ">=2026.3.8"
71
+ },
72
+ "publishConfig": {
73
+ "access": "public"
74
+ }
75
+ }
@@ -0,0 +1,66 @@
1
+ ---
2
+ name: meet-at
3
+ description: "Meet IM messaging. To mention users, ALWAYS use format <@USER_ID> in message text. Examples: <@553> mentions user 553, <@-1> mentions everyone. Do NOT use @553 format."
4
+ metadata: { "openclaw": { "emoji": "💬", "requires": { "config": ["channels.meet"] } } }
5
+ allowed-tools: ["message"]
6
+ ---
7
+
8
+ # Meet At (Via `message`)
9
+
10
+ Use the `message` tool for all Meet messaging operations.
11
+
12
+ ## CRITICAL: Mention Format
13
+
14
+ **Always use <@USER_ID> format to mention users in message text.**
15
+
16
+ | Format | Description | Example |
17
+ |--------|-------------|---------|
18
+ | <@USER_ID> | Mention specific user | <@553> |
19
+ | <@-1> | Mention everyone | <@-1> |
20
+
21
+ **Do NOT use** @553 format (without brackets).
22
+
23
+ ## Examples
24
+
25
+ Send message with mention:
26
+
27
+ ```json
28
+ {
29
+ "action": "send",
30
+ "channel": "meet",
31
+ "to": "channel:123",
32
+ "message": "<@553> Please check this file"
33
+ }
34
+ ```
35
+
36
+ Mention multiple users:
37
+
38
+ ```json
39
+ {
40
+ "action": "send",
41
+ "channel": "meet",
42
+ "to": "channel:123",
43
+ "message": "<@553> <@554> Please join the meeting"
44
+ }
45
+ ```
46
+
47
+ Mention everyone:
48
+
49
+ ```json
50
+ {
51
+ "action": "send",
52
+ "channel": "meet",
53
+ "to": "channel:123",
54
+ "message": "<@-1> Important announcement"
55
+ }
56
+ ```
57
+
58
+ ## Targets
59
+
60
+ - Private chat: `to: "user:<id>"`
61
+ - Group chat: `to: "channel:<id>"`
62
+
63
+ ## Notes
64
+
65
+ - Use `<@-1>` sparingly, only for important announcements
66
+ - User ID must be a number
@@ -0,0 +1,235 @@
1
+ ---
2
+ name: meet-markdown
3
+ description: "Meet 消息格式指南。激活当用户需要格式化消息、或提及 Meet 特有功能(如颜色文本)。此技能帮助 AI 在 Meet 中正确使用 Markdown 语法。"
4
+ metadata: { "openclaw": { "emoji": "📝", "requires": { "config": ["channels.meet"] } } }
5
+ allowed-tools: ["message"]
6
+ ---
7
+
8
+ # Meet Markdown 格式指南
9
+
10
+ Meet 平台支持的 Markdown 语法,用于消息格式化输出。
11
+
12
+ ## 重要提示
13
+
14
+ **Meet 不支持用反引号包住 Markdown 语法标记**。描述语法时直接写符号,不要加反引号。
15
+
16
+ | 写法 | 说明 |
17
+ |------|------|
18
+ | ✅ 使用 - 创建无序列表 | 正确,直接写符号 |
19
+ | ❌ 使用 `-` 创建无序列表 | 错误,Meet 会把 `-` 显示为代码 |
20
+
21
+ ## 标题
22
+
23
+ 使用 # 符号创建标题,支持 1-6 级:
24
+
25
+ ```markdown
26
+ # 一级标题
27
+ ## 二级标题
28
+ ### 三级标题
29
+ #### 四级标题
30
+ ##### 五级标题
31
+ ###### 六级标题
32
+ ```
33
+
34
+ ## 粗体
35
+
36
+ 使用 ** 或 __ 包裹文本:
37
+
38
+ ```markdown
39
+ **粗体文本**
40
+ __粗体文本__
41
+ ```
42
+
43
+ ## 斜体
44
+
45
+ 使用 _ 包裹文本(**注意:不支持 *斜体* 语法**):
46
+
47
+ ```markdown
48
+ _斜体文本_
49
+ ```
50
+
51
+ ## 删除线
52
+
53
+ 使用 ~~ 包裹文本:
54
+
55
+ ```markdown
56
+ ~~删除线文本~~
57
+ ```
58
+
59
+ ## 行内代码
60
+
61
+ 使用反引号包裹:
62
+
63
+ ```markdown
64
+ `行内代码`
65
+ ```
66
+
67
+ 支持双反引号,用于包含反引号的内容:
68
+
69
+ ```markdown
70
+ ``包含`反引号`的代码``
71
+ ```
72
+
73
+ ## 代码块
74
+
75
+ 使用三个反引号创建代码块,可指定语言:
76
+
77
+ ````markdown
78
+ ```javascript
79
+ function hello() {
80
+ console.log("Hello, Meet!")
81
+ }
82
+ ```
83
+ ````
84
+
85
+ ## 引用
86
+
87
+ 使用 > 创建引用:
88
+
89
+ ```markdown
90
+ > 这是引用文本
91
+ > 可以多行
92
+ ```
93
+
94
+ ## 列表
95
+
96
+ 无序列表使用 *、+ 或 -:
97
+
98
+ ```markdown
99
+ * 项目一
100
+ * 项目二
101
+ * 嵌套项目
102
+ + 也可以用加号
103
+ - 或者减号
104
+ ```
105
+
106
+ 有序列表使用数字加点:
107
+
108
+ ```markdown
109
+ 1. 第一项
110
+ 2. 第二项
111
+ 3. 第三项
112
+ ```
113
+
114
+ ## 表格
115
+
116
+ 标准 Markdown 表格语法:
117
+
118
+ ```markdown
119
+ | 列1 | 列2 | 列3 |
120
+ |-----|-----|-----|
121
+ | A1 | A2 | A3 |
122
+ | B1 | B2 | B3 |
123
+ ```
124
+
125
+ 支持对齐方式:
126
+
127
+ ```markdown
128
+ | 左对齐 | 居中 | 右对齐 |
129
+ |:-------|:----:|-------:|
130
+ | 内容 | 内容 | 内容 |
131
+ ```
132
+
133
+ ## 链接
134
+
135
+ ```markdown
136
+ [链接文本](https://example.com)
137
+ ```
138
+
139
+ 带标题的链接:
140
+
141
+ ```markdown
142
+ [链接文本](https://example.com "链接标题")
143
+ ```
144
+
145
+ ## 图片
146
+
147
+ ```markdown
148
+ ![图片替代文本](https://example.com/image.png)
149
+ ```
150
+
151
+ ## 分割线
152
+
153
+ 使用三个或更多 * 或 -:
154
+
155
+ ```markdown
156
+ ---
157
+ ***
158
+ * * *
159
+ ```
160
+
161
+ ## 颜色文本(Meet 特有)
162
+
163
+ 使用 !! 包裹并指定颜色:
164
+
165
+ ```markdown
166
+ !!#FF6600 橙色文本!!
167
+ !!#00FF00 绿色文本!!
168
+ !!#0000FF 蓝色文本!!
169
+ ```
170
+
171
+ 格式:!!#RRGGBB 文本内容!!
172
+
173
+ 常用颜色:
174
+
175
+ | 颜色 | 代码 | 示例 |
176
+ |------|------|------|
177
+ | 红色 | `#FF0000` | `!!#FF0000 红色!!` |
178
+ | 绿色 | `#00AA00` | `!!#00AA00 成功!!` |
179
+ | 橙色 | `#FF6600` | `!!#FF6600 警告!!` |
180
+ | 蓝色 | `#0066CC` | `!!#0066CC 信息!!` |
181
+ | 灰色 | `#666666` | `!!#666666 次要!!` |
182
+
183
+ ## 不支持的语法
184
+
185
+ 以下 Markdown 语法在 Meet 中**不支持**:
186
+
187
+ - *斜体* - 必须使用 _斜体_
188
+ - Setext 风格标题(使用 === 或 --- 下划线)
189
+ - HTML 标签
190
+ - 任务列表 - [ ] task
191
+
192
+ ## 最佳实践
193
+
194
+ ### 消息格式化建议
195
+
196
+ 1. **简洁优先**:Meet 消息应简洁明了,避免过长
197
+ 2. **使用列表**:多个选项或步骤使用列表展示
198
+ 3. **代码高亮**:代码块指定语言以获得语法高亮
199
+ 4. **表格清晰**:表格列数不宜过多,保持可读性
200
+
201
+ ### 示例:格式化回复
202
+
203
+ ```markdown
204
+ ## 处理结果
205
+
206
+ 已完成以下操作:
207
+
208
+ 1. 解析输入数据
209
+ 2. 生成报告
210
+ 3. 发送通知
211
+
212
+ ### 详细信息
213
+
214
+ | 项目 | 状态 | 说明 |
215
+ |------|------|------|
216
+ | 解析 | ✅ | 成功 |
217
+ | 生成 | ✅ | 成功 |
218
+ | 发送 | ✅ | 成功 |
219
+
220
+ ```javascript
221
+ // 示例代码
222
+ const result = processData(input);
223
+ console.log(result);
224
+ ```
225
+
226
+ ---
227
+
228
+ !!#00AA00 操作完成!!
229
+ ```
230
+
231
+ ## 注意事项
232
+
233
+ - Meet 消息有长度限制,超长消息会被截断
234
+ - 表格宽度有限,过多列会影响显示效果
235
+ - 颜色文本是 Meet 特有功能,其他平台不支持
@@ -0,0 +1,63 @@
1
+ # 颜色代码完整参考
2
+
3
+ ## 基本颜色
4
+
5
+ | 颜色名 | 十六进制代码 | 示例 |
6
+ |--------|-------------|------|
7
+ | 红色 | #FF0000 | `!!#FF0000 红色文本!!` |
8
+ | 绿色 | #00FF00 | `!!#00FF00 绿色文本!!` |
9
+ | 蓝色 | #0000FF | `!!#0000FF 蓝色文本!!` |
10
+ | 黄色 | #FFFF00 | `!!#FFFF00 黄色文本!!` |
11
+ | 青色 | #00FFFF | `!!#00FFFF 青色文本!!` |
12
+ | 洋红 | #FF00FF | `!!#FF00FF 洋红文本!!` |
13
+
14
+ ## 常用强调色
15
+
16
+ | 用途 | 颜色 | 代码 | 示例 |
17
+ |------|------|------|------|
18
+ | 成功/完成 | 绿色 | #00AA00 | `!!#00AA00 操作成功!!` |
19
+ | 警告/注意 | 橙色 | #FF6600 | `!!#FF6600 请注意!!` |
20
+ | 错误/失败 | 红色 | #CC0000 | `!!#CC0000 操作失败!!` |
21
+ | 信息/提示 | 蓝色 | #0066CC | `!!#0066CC 提示信息!!` |
22
+ | 灰色/次要 | 灰色 | #666666 | `!!#666666 次要信息!!` |
23
+
24
+ ## UI 常用颜色
25
+
26
+ | 场景 | 代码 | 示例 |
27
+ |------|------|------|
28
+ | 链接蓝 | #0066FF | `!!#0066FF 链接样式!!` |
29
+ | 高亮黄 | #FFCC00 | `!!#FFCC00 高亮显示!!` |
30
+ | 低调灰 | #888888 | `!!#888888 注释文本!!` |
31
+ | 活力橙 | #FF8C00 | `!!#FF8C00 重要提示!!` |
32
+ | 稳重蓝 | #4169E1 | `!!#4169E1 专业感!!` |
33
+
34
+ ## 使用建议
35
+
36
+ ### 成功/失败状态
37
+
38
+ ```markdown
39
+ !!#00AA00 ✅ 操作成功完成!!
40
+ !!#CC0000 ❌ 操作失败,请重试!!
41
+ ```
42
+
43
+ ### 警告提示
44
+
45
+ ```markdown
46
+ !!#FF6600 ⚠️ 注意:此操作不可逆!!
47
+ !!#FF6600 ⚠️ 请仔细检查输入!!
48
+ ```
49
+
50
+ ### 分级信息
51
+
52
+ ```markdown
53
+ !!#CC0000 【严重】需要立即处理!!
54
+ !!#FF6600 【警告】需要关注!!
55
+ !!#0066CC 【信息】仅供参考!!
56
+ ```
57
+
58
+ ## 注意事项
59
+
60
+ - 颜色代码必须使用 # 开头的 6 位十六进制格式
61
+ - 颜色功能仅在 Meet 平台有效
62
+ - 建议使用高对比度颜色以确保可读性
63
+ - 避免过度使用,保持信息清晰
@@ -0,0 +1,159 @@
1
+ # Meet Markdown 常见问题
2
+
3
+ ## 语法相关
4
+
5
+ ### Q: 为什么 `*斜体*` 不显示斜体?
6
+
7
+ **A:** Meet 不支持 * 语法创建斜体,必须使用 _斜体_。
8
+
9
+ ```markdown
10
+ # 错误 ❌
11
+ *这是斜体*
12
+
13
+ # 正确 ✅
14
+ _这是斜体_
15
+ ```
16
+
17
+ ### Q: 如何显示反引号字符?
18
+
19
+ **A:** 使用双反引号包裹:
20
+
21
+ ```markdown
22
+ ``包含反引号 ` 的文本``
23
+ ```
24
+
25
+ ### Q: 表格对齐如何设置?
26
+
27
+ **A:** 使用冒号 : 在分隔行指定对齐方式:
28
+
29
+ ```markdown
30
+ | 左对齐 | 居中 | 右对齐 |
31
+ |:-------|:----:|-------:|
32
+ | 内容 | 内容 | 内容 |
33
+ ```
34
+
35
+ ### Q: 如何嵌套列表?
36
+
37
+ **A:** 使用缩进(2 或 4 个空格):
38
+
39
+ ```markdown
40
+ - 一级项目
41
+ - 二级项目
42
+ - 三级项目
43
+ ```
44
+
45
+ ### Q: 代码块如何指定语言?
46
+
47
+ **A:** 在开头的三个反引号后添加语言名称:
48
+
49
+ ````markdown
50
+ ```javascript
51
+ const x = 1;
52
+ ```
53
+ ````
54
+
55
+ ## 显示问题
56
+
57
+ ### Q: 消息被截断怎么办?
58
+
59
+ **A:** Meet 消息有长度限制。建议:
60
+ - 将长消息拆分为多条
61
+ - 使用折叠或摘要形式
62
+ - 减少不必要的格式化
63
+
64
+ ### Q: 表格显示混乱?
65
+
66
+ **A:** 可能原因:
67
+ - 列数过多
68
+ - 单元格内容过长
69
+ - 未正确使用分隔行
70
+
71
+ 解决方案:
72
+ - 减少列数
73
+ - 使用简短文本
74
+ - 确保分隔行格式正确
75
+
76
+ ### Q: 颜色文本不显示?
77
+
78
+ **A:** 检查以下几点:
79
+ - 格式是否正确:!!#RRGGBB 文本!!
80
+ - 颜色代码是否为 6 位十六进制
81
+ - 是否有正确的结束标记 !!
82
+
83
+ ## 最佳实践
84
+
85
+ ### Q: 如何写清晰的列表?
86
+
87
+ **A:**
88
+
89
+ ```markdown
90
+ # 推荐 ✅
91
+ - 使用简洁的项目描述
92
+ - 每个项目一行
93
+ - 保持项目长度一致
94
+
95
+ # 不推荐 ❌
96
+ - 这是一条非常长的项目描述,可能会影响阅读体验,应该拆分为多行或简化
97
+ - 另一条长项目...
98
+ ```
99
+
100
+ ### Q: 如何组织长消息?
101
+
102
+ **A:**
103
+
104
+ ```markdown
105
+ ## 标题
106
+
107
+ 简要描述
108
+
109
+ ### 详情
110
+
111
+ 1. 第一点
112
+ 2. 第二点
113
+
114
+ ### 代码示例
115
+
116
+ ```javascript
117
+ // 代码
118
+ ```
119
+
120
+ ### 总结
121
+
122
+ !!#00AA00 关键结论!!
123
+ ```
124
+
125
+ ### Q: 如何高亮重要信息?
126
+
127
+ **A:**
128
+
129
+ ```markdown
130
+ # 使用颜色
131
+ !!#FF6600 重要提示:请注意!!
132
+
133
+ # 使用加粗
134
+ **重要:请仔细阅读**
135
+
136
+ # 组合使用
137
+ !!#CC0000 **严重警告**!!
138
+ ```
139
+
140
+ ## 兼容性
141
+
142
+ ### Q: Meet Markdown 与标准 Markdown 有什么区别?
143
+
144
+ **A:** 主要区别:
145
+
146
+ | 特性 | 标准 Markdown | Meet Markdown |
147
+ |------|--------------|---------------|
148
+ | 斜体 | `*text*` 或 `_text_` | 仅 `_text_` |
149
+ | 颜色文本 | 不支持 | `!!#RRGGBB text!!` |
150
+ | HTML | 支持 | 不支持 |
151
+ | Setext 标题 | 支持 | 不支持 |
152
+ | 任务列表 | 支持 | 不支持 |
153
+
154
+ ### Q: 在其他平台显示效果如何?
155
+
156
+ **A:**
157
+ - 颜色文本会显示原始格式 !!#RRGGBB text!!
158
+ - 其他标准语法基本兼容
159
+ - 建议在多平台使用标准 Markdown