diff --git a/resources/skills/about-picobot/references/tools.md b/resources/skills/about-picobot/references/tools.md new file mode 100644 index 0000000..76b1b4e --- /dev/null +++ b/resources/skills/about-picobot/references/tools.md @@ -0,0 +1,156 @@ +# PicoBot 工具说明 + +## send_message — 向指定渠道发送消息 + +向指定会话发送消息,可附带文件或图片。 + +### 参数 + +| 参数 | 必填 | 说明 | +|------|------|------| +| `target_chat_id` | 是 | 目标会话 ID,格式 `:` 或 `::` | +| `content` | 是 | 消息文本内容 | +| `files` | 否 | 文件路径列表 | +| `origin` | 否 | 消息来源标识,不填则自动使用当前 session_id | +| `file_types` | 否 | 指定文件发送类型,`{"路径": "audio"|"file"}`。未指定则自动判断 | + +### file_types 说明 + +控制文件以何种消息类型发送,主要用于飞书渠道: + +- `"audio"`:作为语音消息发送(仅 opus 格式支持) +- `"file"`:作为文件附件发送 + +飞书渠道限制:上传类型和消息类型必须一致。opus 文件以 `"audio"` 发送,其他音频(mp3、wav 等)只能以 `"file"` 发送。 + +### 示例 + +```json +{ + "target_chat_id": "feishu:oc_abc123", + "content": "这是生成的音乐文件", + "files": ["/workspace/music.mp3"], + "file_types": {"/workspace/music.mp3": "file"} +} +``` + +--- + +## chat_manager — 会话管理 + +查看和管理会话及消息。 + +### 参数 + +| 参数 | 必填 | 说明 | +|------|------|------| +| `action` | 是 | 操作: `list_sessions`, `list_channels`, `list_messages` | +| `session_id` | 部分 | `list_messages` 时必填 | +| `count` | 否 | 返回数量(默认 20,最大 100) | +| `offset` | 否 | 跳过前 N 条,用于翻页 | +| `before_time` | 否 | Unix 时间戳(秒),返回该时间之前的消息 | +| `after_time` | 否 | Unix 时间戳(秒),返回该时间之后的消息 | + +--- + +## cron — 定时任务管理 + +管理 cron 定时任务。 + +### 参数 + +| 参数 | 必填 | 说明 | +|------|------|------| +| `action` | 是 | 操作: `add`, `list`, `update`, `remove`, `enable`, `disable` | +| `name` | add必须 | 任务名称 | +| `schedule` | add需要 | 调度规则: `once`(时间戳), `every`(间隔秒), `cron`(表达式) | +| `prompt` | add必须 | 任务提示词 | +| `channel` | add必须 | 执行渠道 | +| `chat_id` | add必须 | 目标对话 | + +--- + +## memory_store — 存储记忆 + +写入长期记忆(Knowledge 类别)。 + +| 参数 | 必填 | 说明 | +|------|------|------| +| `key` | 是 | 记忆唯一键,同 key 覆盖旧值 | +| `content` | 是 | 记忆内容 | +| `importance` | 否 | 重要性 (0.0–1.0) | + +## memory_recall — 搜索知识记忆 + +关键词全文搜索 Knowledge 记忆。 + +| 参数 | 必填 | 说明 | +|------|------|------| +| `query` | 是 | 空格分隔的关键词列表 | +| `since` | 否 | 起始时间戳(unix 毫秒) | +| `until` | 否 | 结束时间戳 | +| `limit` | 否 | 返回数量(默认 10) | + +## timeline_recall — 搜索时间线 + +搜索压缩后的历史会话摘要。 + +| 参数 | 必填 | 说明 | +|------|------|------| +| `query` | 是 | 关键词 | +| `session_id` | 否 | 限定会话 | +| `since` | 否 | 起始时间 | +| `until` | 否 | 结束时间 | +| `limit` | 否 | 返回数量 | + +## memory_forget — 删除记忆 + +按 key 删除记忆。 + +| 参数 | 必填 | 说明 | +|------|------|------| +| `key` | 是 | 要删除的记忆键 | + +--- + +## get_skill — 获取 Skill + +查询 skill 内容。 + +| 参数 | 必填 | 说明 | +|------|------|------| +| `action` | 否 | 操作: `get`(默认), `list` | +| `skill_name` | get时必填 | Skill 名称 | + +--- + +## file_read / file_write / file_edit / file_search — 文件操作 + +工作目录内的文件读写编辑和搜索。详细的参数定义见各工具的 parameters_schema。 + +## bash — 执行命令 + +在本地环境执行 bash 命令,有超时限制和安全检查(阻止 rm -rf /、fork bomb 等)。 + +## http_request / web_fetch — HTTP 和 Web 工具 + +发送 HTTP 请求和获取网页内容,有 URL 安全校验(阻止内网/本地访问)。 + +## calculator — 计算器 + +数学表达式计算和统计函数。 + +| action | 说明 | +|--------|------| +| `evaluate` | 计算表达式 | +| `sum` | 求和 | +| `average` | 平均值 | +| `median` | 中位数 | +| `mode` | 众数 | +| `stdev` / `variance` | 标准差/方差 | +| `min` / `max` | 最小值/最大值 | +| `log` | 对数 | +| `factorial` | 阶乘 | +| `round` | 四舍五入 | +| `percentage_change` | 变化百分比 | +| `percentile` | 百分位数 |