这款来自 Voicenotes 团队的官方技能使 OpenClaw 能够访问新 API,并具备语义搜索、检索完整转录内容以及按 t... 筛选的功能。
语音符 : 使用语音符技能创建、 搜索和检索用户的音符是一项面向实际任务的技能,主要用于Setup. 在 https://voicenotes.com/app 上创建集成功能;open- claw= true# settings. 复制 API 密钥。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;
涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
使用 Voicenotes 技能创建、搜索并检索用户的笔记。
Webchat:技能 → Voicenotes → 侧边栏中的 API Key
终端:添加到 OpenClaw 配置文件(~/.openclaw/config.yaml)中:
skills:
voicenotes:
env:
VOICENOTES_API_KEY: "your_key_here"
或直接导出环境变量:
export VOICENOTES_API_KEY="your_key_here"
此后该密钥将作为环境变量 $VOICENOTES_API_KEY 可用。
所有请求均需携带 Authorization 请求头:
curl -X GET "https://api.voicenotes.com/api/integrations/open-claw/..." -H "Authorization: $VOICENOTES_API_KEY"
在用户笔记中执行搜索查询:
查询参数:
query(必填):搜索关键词字符串curl -X GET "https://api.voicenotes.com/api/integrations/open-claw/search/semantic?query={search_query}"
-H "Authorization: $VOICENOTES_API_KEY"
按筛选条件(标签和日期范围)获取多个 Voicenotes:
查询参数:
tags(可选):合法标签组成的数组date_range(可选):包含起始与结束时间(UTC 时间戳格式)的数组curl -X POST "https://api.voicenotes.com/api/integrations/open-claw/recordings"
-H "Authorization: $VOICENOTES_API_KEY"
-H "Content-Type: application/json"
-d '{
"tags": ["tag1", "tag2"],
"date_range": ["2026-01-01T00:00:00.000000Z", "2026-02-01T00:00:00.000000Z"]
}'
如需更多上下文,请获取完整转录文本:
curl "https://api.voicenotes.com/api/integrations/open-claw/recordings/{recording_uuid}"
-H "Authorization: $VOICENOTES_API_KEY"
在 Voicenotes 中创建一条文本笔记:
curl -X POST "https://api.voicenotes.com/api/integrations/open-claw/recordings/new"
-H "Authorization: $VOICENOTES_API_KEY"
-H "Content-Type: application/json"
-d '{
"recording_type": 3,
"transcript": "note content here",
"device_info": "open-claw"
}'
语义搜索响应:
返回按相关性排序的笔记及笔记片段数组:
[
{
"type": "note",
"uuid": "NTHiJljf",
"title": "Quick idea about project",
"transcript": "Full transcript text with
for line breaks...",
"tags": ["idea", "project"],
"created_at": "2025-01-15T10:30:00.000000Z"
},
{
"type": "note_split",
"uuid": "8JzkhEGh",
"title": "Long meeting notes",
"transcript": "Relevant chunk from a larger note...",
"tags": ["meeting"],
"created_at": "2025-01-14T09:00:00.000000Z"
},
{
"type": "import_split",
"uuid": "xYz12345",
"title": "filename.extension",
"transcript": "Chunk from an imported note...",
"tags": ["imported"],
"created_at": "2025-01-10T14:00:00.000000Z"
}
]
type: "note" —— 完整匹配搜索结果的笔记type: "note_split" —— 来自较大笔记的片段;如需完整转录文本,可使用 uuid 调用对应接口获取type: "import_split" —— 来自导入笔记的片段;其 title 字段为原始文件名;不可通过 /recordings/{uuid} 接口获取transcript 字段可能包含 HTML 标签(如
、)用于格式化带筛选条件获取录音响应:
返回符合筛选条件的分页笔记列表:
{
"data": [
{
"id": "bTZI5t12",
"title": null,
"transcript": "this is a sample note",
"duration": 0,
"recorded_at": "2026-02-06T10:07:45.000000Z",
"created_at": "2026-02-06T10:07:45.000000Z",
"recording_type": 3,
"tags": []
}
],
"links": {
"first": "https://api.voicenotes.com/api/integrations/open-claw/recordings?page=1",
"last": null,
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"path": "https://api.voicenotes.com/api/integrations/open-claw/recordings",
"per_page": 10,
"to": 1
}
}
关键字段说明:
data —— 录音对象数组links.next —— 下一页 URL(若无下一页则为 null)meta.per_page —— 每页返回结果数(默认为 10)获取单条录音响应:
返回完整笔记详情:
{
"data": {
"id": "NTHiJljf",
"title": "Meeting Connectivity Check",
"transcript": "Full transcript text...",
"duration": 12101,
"recorded_at": "2025-08-07T09:50:14.000000Z",
"created_at": "2025-08-07T09:50:14.000000Z",
"recording_type": 2,
"tags": ["meeting"],
"subnotes": [],
"attachments": []
}
}
关键字段说明:
id —— 笔记 UUIDtranscript —— 完整文本(会议记录中包含 [HH:MM:SS] Speaker N: 时间戳)duration —— 时长(单位:毫秒)recording_type —— 类型标识:1=语音笔记,2=语音会议,3=文本笔记tags —— 标签对象数组,每个对象含 name 字段创建笔记响应:
{
"message": "Recording audio uploaded successfully!",
"recording": {
"id": "bPI3RcUP",
"recording_id": "bPI3RcUP",
"title": null,
"transcript": "Sample note",
"recording_type": 3,
"created_at": "2026-02-04T08:51:29.000000Z",
"tags": []
}
}
关键字段说明:
message —— 成功提示信息recording.id —— 新建笔记的 UUIDrecording.transcript —— 笔记内容api.voicenotes.com 域名下的端点构建 API 请求时,Agent 必须对所有用户提供的输入进行净化处理:
--data-urlencode 对 query 参数进行 URL 编码,禁止使用字符串插值方式拼接;、|、&、$、`、)的任意输入搜索请求的安全示例:
curl -G "https://api.voicenotes.com/api/integrations/open-claw/search/semantic" --data-urlencode "query=user search term here" -H "Authorization: $VOICENOTES_API_KEY"
UUID 校验正则表达式模式: /^[a-zA-Z0-9]{8}$/
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习
最新文章