@honor-claw/yoyo 0.0.1-beta.2 → 0.0.1-beta.21

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.
Files changed (79) hide show
  1. package/index.ts +2 -2
  2. package/openclaw.plugin.json +7 -0
  3. package/package.json +20 -20
  4. package/skills/search/SKILL.md +182 -0
  5. package/skills/search/scripts/search.sh +69 -0
  6. package/skills/yoyo-control/SKILL.md +105 -120
  7. package/skills/yoyo-control/references/alarm-create.md +473 -0
  8. package/skills/yoyo-control/references/app-close.md +183 -0
  9. package/skills/yoyo-control/references/app-open.md +178 -0
  10. package/skills/yoyo-control/references/call-phone.md +250 -0
  11. package/skills/yoyo-control/references/capture-screenshot.md +205 -54
  12. package/skills/yoyo-control/references/contact-search.md +235 -0
  13. package/skills/yoyo-control/references/hotspot.md +208 -0
  14. package/skills/yoyo-control/references/local-search.md +224 -15
  15. package/skills/yoyo-control/references/message-send.md +246 -0
  16. package/skills/yoyo-control/references/mobile-data.md +248 -0
  17. package/skills/yoyo-control/references/no-disturb.md +239 -0
  18. package/skills/yoyo-control/references/quiet-mode.md +228 -0
  19. package/skills/yoyo-control/references/ringing-mode.md +223 -0
  20. package/skills/yoyo-control/references/screen-record.md +220 -0
  21. package/skills/yoyo-control/references/vibration-mode.md +235 -0
  22. package/skills/yoyo-control/references/volume-operate.md +274 -0
  23. package/skills/yoyo-control/scripts/invoke.js +33 -111
  24. package/src/agent/copy-templates.ts +56 -0
  25. package/src/agent/index.ts +3 -0
  26. package/src/agent/templates/AGENTS.md +223 -0
  27. package/src/apis/claw-cloud.ts +70 -23
  28. package/src/apis/honor-auth.ts +20 -10
  29. package/src/apis/types.ts +24 -1
  30. package/src/cloud-channel/channel.ts +245 -58
  31. package/src/cloud-channel/client.ts +87 -12
  32. package/src/cloud-channel/types.ts +30 -0
  33. package/src/commands/env/impl.ts +58 -0
  34. package/src/commands/env/index.ts +1 -0
  35. package/src/commands/index.ts +11 -1
  36. package/src/commands/login/impl.ts +17 -8
  37. package/src/commands/logout/impl.ts +23 -0
  38. package/src/commands/logout/index.ts +1 -53
  39. package/src/commands/status/index.ts +172 -42
  40. package/src/gateway-client/client.deprecated.ts +1 -1
  41. package/src/gateway-client/client.ts +15 -20
  42. package/src/gateway-client/types.ts +2 -2
  43. package/src/honor-auth/browser.ts +12 -15
  44. package/src/honor-auth/callback-server.ts +3 -6
  45. package/src/honor-auth/cloud.ts +65 -12
  46. package/src/honor-auth/config.ts +25 -17
  47. package/src/honor-auth/index.ts +1 -0
  48. package/src/honor-auth/token-manager.ts +24 -14
  49. package/src/modules/claw-configs/config-manager.ts +211 -11
  50. package/src/modules/claw-configs/hosts.ts +48 -0
  51. package/src/modules/claw-configs/index.ts +1 -0
  52. package/src/modules/claw-configs/types.ts +4 -0
  53. package/src/modules/device/device-info.ts +20 -9
  54. package/src/modules/device/providers/linux.ts +128 -0
  55. package/src/modules/device/providers/macos.ts +123 -0
  56. package/src/modules/device/providers/pad.ts +0 -16
  57. package/src/modules/device/registry.ts +12 -3
  58. package/src/modules/login/impl.ts +38 -16
  59. package/src/runtime.ts +44 -0
  60. package/src/schemas.ts +4 -1
  61. package/src/services/connection/impl.ts +89 -9
  62. package/src/services/connection/status-tracker/events.ts +127 -0
  63. package/src/services/connection/status-tracker/index.ts +31 -0
  64. package/src/services/connection/status-tracker/storage.ts +133 -0
  65. package/src/services/connection/status-tracker/tracker.ts +370 -0
  66. package/src/services/connection/status-tracker/types.ts +131 -0
  67. package/src/types.ts +0 -4
  68. package/src/utils/fs-safe.ts +544 -0
  69. package/src/utils/version.ts +29 -0
  70. package/src/utils/ws.ts +21 -0
  71. package/skills/yoyo-control/references/open-app.md +0 -54
  72. package/skills/yoyo-control/references/phone-call.md +0 -217
  73. package/skills/yoyo-control/references/schedule.md +0 -107
  74. package/skills/yoyo-control/references/screen-recorder.md +0 -67
  75. package/skills/yoyo-control/references/search-contact.md +0 -37
  76. package/skills/yoyo-control/references/send-message.md +0 -155
  77. package/skills/yoyo-control/references/volume.md +0 -536
  78. package/skills/yoyo-control/scripts/README.md +0 -103
  79. package/skills/yoyo-control/scripts/volume-up.json +0 -7
@@ -0,0 +1,208 @@
1
+ ---
2
+ name: hotspot
3
+ description: >
4
+ 个人热点管理工具。提供对个人热点功能的统一管理与控制,支持个人热点的开启与关闭、
5
+ 参数设置以及当前状态查询,并可结合指定应用执行相关操作。
6
+ ---
7
+
8
+ # Hotspot 个人热点管理
9
+
10
+ ## Tool Command
11
+
12
+ ```bash
13
+ hotspot
14
+ ```
15
+
16
+ ## 集成工作流
17
+
18
+ ### Step 1: 意图解析与参数组装
19
+
20
+ ```
21
+ ┌─────────────────────────────────────────────────────────────┐
22
+ │ 意图识别与参数提取 │
23
+ │ - 识别操作类型: 打开/关闭/设置/查询 │
24
+ │ - 识别操作对象: 个人热点/热点/便携WLAN/便携式wifi │
25
+ │ - 提取修饰词: 应用名称、热点名称、密码、共享方式 │
26
+ │ - 特殊处理: "设置页面/配置"类需求 → 标记为设置类型 │
27
+ └─────────────────────────────────────────────────────────────┘
28
+
29
+ ┌─────────────────────────────────────────────────────────────┐
30
+ │ 消歧与槽位填充 │
31
+ │ - 同义词识别: 热点/个人热点/便携WLAN/便携式wifi 统一映射 │
32
+ │ - 应用级操作需验证应用名称有效性 │
33
+ │ - 状态查询类缺省时,默认查询当前热点开启状态 │
34
+ └─────────────────────────────────────────────────────────────┘
35
+
36
+ ┌─────────────────────────────────────────────────────────────┐
37
+ │ 生成工具调用 │
38
+ │ - 组装 actionType, app 等参数 │
39
+ │ - 生成平台特定的命令格式 │
40
+ └─────────────────────────────────────────────────────────────┘
41
+ ```
42
+
43
+ ### Step 2: 执行调用
44
+
45
+ - 根据操作系统选择对应的命令格式
46
+ - Windows: Cmd 格式(双引号需转义)
47
+ - Linux: Bash 格式(单引号包裹)
48
+
49
+ ## 意图分类与参数映射
50
+
51
+ | 用户意图 | 关键词示例 | actionType | 可选参数 |
52
+ | :------------- | :--------------------------------------------- | :--------- | :------- |
53
+ | **开启热点** | 打开/开启/启用 + 热点/个人热点/便携WLAN | `打开` | `app` |
54
+ | **关闭热点** | 关闭/停用/停止/断开 + 热点/热点分享/便携WLAN | `关闭` | `app` |
55
+ | **参数设置** | 设置/配置/修改 + 热点名称/密码/频段/最大连接数 | `设置` | `app` |
56
+ | **状态查询** | 查看/查询/获取 + 热点状态/连接设备/热点信息 | `查询` | `app` |
57
+ | **进入设置页** | 进入/打开 + 热点设置/热点配置页面 | `设置` | `app` |
58
+
59
+ ## 参数定义
60
+
61
+ ```json
62
+ {
63
+ "action_type": {
64
+ "type": "string",
65
+ "enum": ["设置", "查询", "打开", "关闭"],
66
+ "description": "个人热点相关操作的动作类型,用于明确本次指令的主要行为。当涉及调整个人热点名称、密码、共享方式或频段等配置时使用设置;当获取当前热点开启状态、配置信息或连接设备列表时使用查询;当要求启用个人热点功能时使用打开;当要求停用个人热点功能时使用关闭。"
67
+ },
68
+ "app": {
69
+ "type": "string",
70
+ "description": "指定执行个人热点相关操作的应用名称。当用户明确要求在某个特定应用内开启、关闭、配置或查询个人热点功能时填写。"
71
+ }
72
+ }
73
+ ```
74
+
75
+ ## Query 示例及输出
76
+
77
+ ### 示例 1: 打开个人热点
78
+
79
+ **用户输入**: "打开热点"
80
+
81
+ **工具**: "hotspot"
82
+
83
+ **JSON 参数**:
84
+
85
+ ```json
86
+ {
87
+ "actionType": "打开"
88
+ }
89
+ ```
90
+
91
+ **Windows (Cmd) 执行命令**:
92
+
93
+ ```bash
94
+ openclaw nodes invoke --node <ID> --command hotspot --params "{\"actionType\":\"打开\"}"
95
+ ```
96
+
97
+ **Linux (Bash) 执行命令**:
98
+
99
+ ```bash
100
+ openclaw nodes invoke --node <ID> --command hotspot --params '{"actionType":"打开"}'
101
+ ```
102
+
103
+ ---
104
+
105
+ ### 示例 2: 关闭个人热点
106
+
107
+ **用户输入**: "关闭热点"
108
+
109
+ **JSON 参数**:
110
+
111
+ ```json
112
+ {
113
+ "actionType": "关闭"
114
+ }
115
+ ```
116
+
117
+ **Windows (Cmd) 执行命令**:
118
+
119
+ ```bash
120
+ openclaw nodes invoke --node <ID> --command hotspot --params "{\"actionType\":\"关闭\"}"
121
+ ```
122
+
123
+ **Linux (Bash) 执行命令**:
124
+
125
+ ```bash
126
+ openclaw nodes invoke --node <ID> --command hotspot --params '{"actionType":"关闭"}'
127
+ ```
128
+
129
+ ---
130
+
131
+ ### 示例 3: 停止热点分享
132
+
133
+ **用户输入**: "停止热点分享"
134
+
135
+ **JSON 参数**:
136
+
137
+ ```json
138
+ {
139
+ "actionType": "关闭"
140
+ }
141
+ ```
142
+
143
+ **Windows (Cmd) 执行命令**:
144
+
145
+ ```bash
146
+ openclaw nodes invoke --node <ID> --command hotspot --params "{\"actionType\":\"关闭\"}"
147
+ ```
148
+
149
+ **Linux (Bash) 执行命令**:
150
+
151
+ ```bash
152
+ openclaw nodes invoke --node <ID> --command hotspot --params '{"actionType":"关闭"}'
153
+ ```
154
+
155
+ ---
156
+
157
+ ### 示例 4: 进入热点设置页面
158
+
159
+ **用户输入**: "进入热点设置页面"
160
+
161
+ **JSON 参数**:
162
+
163
+ ```json
164
+ {
165
+ "actionType": "设置"
166
+ }
167
+ ```
168
+
169
+ **Windows (Cmd) 执行命令**:
170
+
171
+ ```bash
172
+ openclaw nodes invoke --node <ID> --command hotspot --params "{\"actionType\":\"设置\"}"
173
+ ```
174
+
175
+ **Linux (Bash) 执行命令**:
176
+
177
+ ```bash
178
+ openclaw nodes invoke --node <ID> --command hotspot --params '{"actionType":"设置"}'
179
+ ```
180
+
181
+ ---
182
+
183
+ ### 示例 5: 在特定应用中打开热点
184
+
185
+ **用户输入**: "在设置中打开热点"
186
+
187
+ **JSON 参数**:
188
+
189
+ ```json
190
+ {
191
+ "actionType": "打开",
192
+ "app": "设置"
193
+ }
194
+ ```
195
+
196
+ **Windows (Cmd) 执行命令**:
197
+
198
+ ```bash
199
+ openclaw nodes invoke --node <ID> --command hotspot --params "{\"actionType\":\"打开\",\"app\":\"设置\"}"
200
+ ```
201
+
202
+ **Linux (Bash) 执行命令**:
203
+
204
+ ```bash
205
+ openclaw nodes invoke --node <ID> --command hotspot --params '{"actionType":"打开","app":"设置"}'
206
+ ```
207
+
208
+ ---
@@ -1,27 +1,236 @@
1
- # local_search 本地搜索工具使用说明
1
+ ---
2
+ name: local-search
3
+ description: >
4
+ 用户手机内容RAG系统。用户使用自然语言统一查询本地数据,
5
+ 信源包括文档、笔记、日程、图库、yoyo记忆、钱包,
6
+ 用于直接回答用户问题或生成概览性内容。
7
+ ---
8
+
9
+ # Local Search 本地数据搜索
2
10
 
3
11
  ## Tool Command
4
12
 
5
13
  ```bash
6
- local.search
14
+ local-search
7
15
  ```
8
16
 
9
- ## Tool Parameters and Examples
17
+ ## 集成工作流
18
+
19
+ ### Step 1: 意图解析与参数组装
20
+
21
+ ```
22
+ ┌─────────────────────────────────────────────────────────────┐
23
+ │ 意图识别与参数提取 │
24
+ │ - 识别查询内容: 用户原始 query,不做任何改写 │
25
+ │ - 判断是否涉及图片搜索 │
26
+ │ - 数据范围: 文档/笔记/日程/图库/yoyo记忆/钱包 │
27
+ └─────────────────────────────────────────────────────────────┘
28
+
29
+ ┌─────────────────────────────────────────────────────────────┐
30
+ │ 消歧与槽位填充 │
31
+ │ - 当 query 涉及图片、照片、截图等内容时 isSearchImage = true │
32
+ │ - 其他文本类查询(文档、笔记、日程等)isSearchImage = false │
33
+ │ - query 保持用户原始输入,严禁改写 │
34
+ └─────────────────────────────────────────────────────────────┘
35
+
36
+ ┌─────────────────────────────────────────────────────────────┐
37
+ │ 生成工具调用 │
38
+ │ - 组装 query 及可选参数(isSearchImage) │
39
+ │ - 生成平台特定的命令格式 │
40
+ └─────────────────────────────────────────────────────────────┘
41
+ ```
42
+
43
+ ### Step 2: 执行调用
44
+
45
+ - 根据操作系统选择对应的命令格式
46
+ - Windows: Cmd 格式(双引号需转义)
47
+ - Linux: Bash 格式(单引号包裹)
48
+
49
+ ## 数据范围
50
+
51
+ | 信源 | 说明 |
52
+ | :----------- | :--------------------------------------------------------------------- |
53
+ | **文档** | 本地存储的文档(如 Word、PDF、PPT 等),通过文本抽取和向量化建立索引 |
54
+ | **笔记** | 便签、备忘录、记事类应用中的文本内容 |
55
+ | **日程** | 日历和日程条目(会议、活动、提醒等),含时间、地点、参与人等结构化信息 |
56
+ | **图库** | 本地图片、照片、截图等图像内容 |
57
+ | **yoyo记忆** | yoyo 智能助理的历史记忆数据 |
58
+ | **钱包** | 钱包相关数据 |
59
+
60
+ ## 意图分类与参数映射
61
+
62
+ | 用户意图 | 关键词示例 | 参数组合 |
63
+ | :--------------- | :---------------------------- | :---------------------------- |
64
+ | **查询文档内容** | 找/搜/查 + 文档/文件/PPT/PDF | `query` |
65
+ | **查询笔记内容** | 找/搜/查 + 笔记/便签/备忘录 | `query` |
66
+ | **查询日程信息** | 查看/查 + 日程/会议/日历/活动 | `query` |
67
+ | **搜索图片** | 找/搜 + 图片/照片/截图 | `query`, `isSearchImage`=true |
68
+ | **查询yoyo记忆** | 之前说过/记得/上次提到 | `query` |
69
+ | **查询钱包信息** | 查 + 钱包/余额/账单 | `query` |
70
+
71
+ ## 参数定义
10
72
 
11
73
  ```json
12
74
  {
13
- "name": "local_search",
14
- "description": "用户手机内容RAG系统,用户使用自然语言,统一查询本地数据, 信源包括(文档、笔记、日程、图库、yoyo记忆、钱包),用于直接回答用户问题或生成概览性内容。\n【数据范围】\n- 本地数据:\n - 文档:本地存储的文档(如 Word、PDF、PPT 等),通过文本抽取和向量化建立索引。\n - 笔记:便签、备忘录、记事类应用中的文本内容。\n - 日程:日历和日程条目(会议、活动、提醒等),含时间、地点、参与人等结构化信息。",
15
- "parameters": {
16
- "query": {
17
- "type": "string",
18
- "description": "用户原始query,不需要进行任何改写"
19
- },
20
- "isSearchImage": {
21
- "type": "boolean",
22
- "description": "是否搜索图片"
23
- }
75
+ "query": {
76
+ "type": "string",
77
+ "description": "用户原始 query,不需要进行任何改写。"
24
78
  },
25
- "required": []
79
+ "isSearchImage": {
80
+ "type": "boolean",
81
+ "description": "是否搜索图片。"
82
+ }
26
83
  }
27
84
  ```
85
+
86
+ ### 参数注意事项
87
+
88
+ 1. **query 不做改写**: 必须保持用户的原始输入,严禁对 query 进行任何改写、摘要或重组
89
+ 2. **isSearchImage 判断**: 当用户查询明确涉及图片、照片、截图等图像内容时设为 `true`,其他情况设为 `false` 或不传
90
+
91
+ ## Query 示例及输出
92
+
93
+ ### 示例 1: 查询文档内容
94
+
95
+ **用户输入**: "帮我找一下上次的项目方案文档"
96
+
97
+ **工具**: "local-search"
98
+
99
+ **JSON 参数**:
100
+
101
+ ```json
102
+ {
103
+ "query": "帮我找一下上次的项目方案文档",
104
+ "isSearchImage": false
105
+ }
106
+ ```
107
+
108
+ **Windows (Cmd) 执行命令**:
109
+
110
+ ```bash
111
+ openclaw nodes invoke --node <ID> --command local-search --params "{\"query\":\"帮我找一下上次的项目方案文档\",\"isSearchImage\":false}"
112
+ ```
113
+
114
+ **Linux (Bash) 执行命令**:
115
+
116
+ ```bash
117
+ openclaw nodes invoke --node <ID> --command local-search --params '{"query":"帮我找一下上次的项目方案文档","isSearchImage":false}'
118
+ ```
119
+
120
+ ---
121
+
122
+ ### 示例 2: 搜索图片
123
+
124
+ **用户输入**: "找一下上周拍的风景照片"
125
+
126
+ **工具**: "local-search"
127
+
128
+ **JSON 参数**:
129
+
130
+ ```json
131
+ {
132
+ "query": "找一下上周拍的风景照片",
133
+ "isSearchImage": true
134
+ }
135
+ ```
136
+
137
+ **Windows (Cmd) 执行命令**:
138
+
139
+ ```bash
140
+ openclaw nodes invoke --node <ID> --command local-search --params "{\"query\":\"找一下上周拍的风景照片\",\"isSearchImage\":true}"
141
+ ```
142
+
143
+ **Linux (Bash) 执行命令**:
144
+
145
+ ```bash
146
+ openclaw nodes invoke --node <ID> --command local-search --params '{"query":"找一下上周拍的风景照片","isSearchImage":true}'
147
+ ```
148
+
149
+ ---
150
+
151
+ ### 示例 3: 查询日程信息
152
+
153
+ **用户输入**: "明天有什么会议安排"
154
+
155
+ **工具**: "local-search"
156
+
157
+ **JSON 参数**:
158
+
159
+ ```json
160
+ {
161
+ "query": "明天有什么会议安排",
162
+ "isSearchImage": false
163
+ }
164
+ ```
165
+
166
+ **Windows (Cmd) 执行命令**:
167
+
168
+ ```bash
169
+ openclaw nodes invoke --node <ID> --command local-search --params "{\"query\":\"明天有什么会议安排\",\"isSearchImage\":false}"
170
+ ```
171
+
172
+ **Linux (Bash) 执行命令**:
173
+
174
+ ```bash
175
+ openclaw nodes invoke --node <ID> --command local-search --params '{"query":"明天有什么会议安排","isSearchImage":false}'
176
+ ```
177
+
178
+ ---
179
+
180
+ ### 示例 4: 查询笔记内容
181
+
182
+ **用户输入**: "我之前记的读书笔记里有什么"
183
+
184
+ **工具**: "local-search"
185
+
186
+ **JSON 参数**:
187
+
188
+ ```json
189
+ {
190
+ "query": "我之前记的读书笔记里有什么",
191
+ "isSearchImage": false
192
+ }
193
+ ```
194
+
195
+ **Windows (Cmd) 执行命令**:
196
+
197
+ ```bash
198
+ openclaw nodes invoke --node <ID> --command local-search --params "{\"query\":\"我之前记的读书笔记里有什么\",\"isSearchImage\":false}"
199
+ ```
200
+
201
+ **Linux (Bash) 执行命令**:
202
+
203
+ ```bash
204
+ openclaw nodes invoke --node <ID> --command local-search --params '{"query":"我之前记的读书笔记里有什么","isSearchImage":false}'
205
+ ```
206
+
207
+ ---
208
+
209
+ ### 示例 5: 搜索截图
210
+
211
+ **用户输入**: "找一下之前的微信聊天截图"
212
+
213
+ **工具**: "local-search"
214
+
215
+ **JSON 参数**:
216
+
217
+ ```json
218
+ {
219
+ "query": "找一下之前的微信聊天截图",
220
+ "isSearchImage": true
221
+ }
222
+ ```
223
+
224
+ **Windows (Cmd) 执行命令**:
225
+
226
+ ```bash
227
+ openclaw nodes invoke --node <ID> --command local-search --params "{\"query\":\"找一下之前的微信聊天截图\",\"isSearchImage\":true}"
228
+ ```
229
+
230
+ **Linux (Bash) 执行命令**:
231
+
232
+ ```bash
233
+ openclaw nodes invoke --node <ID> --command local-search --params '{"query":"找一下之前的微信聊天截图","isSearchImage":true}'
234
+ ```
235
+
236
+ ---