ClawSkills logoClawSkills

Backboard.io

通过位于 http://localhost:5100 的本地后端集成 Backboard.io,以提供助手、对话、记忆和文档 RAG 功能。

介绍

## Tools

此技能连接到一个封装了 Backboard SDK 的本地 Flask 后端。后端必须运行在 `http://localhost:5100` 上。

### backboard_create_assistant

使用名称和系统提示创建一个新的 Backboard 助手。

**参数:** - `name`(字符串,必填):助手的名称 - `system_prompt`(字符串,必填):助手的系统指令

**示例:** ```json { "name": "Support Bot", "system_prompt": "You are a helpful customer support assistant." } ```

### backboard_list_assistants

列出所有可用的 Backboard 助手。

**参数:** 无

### backboard_get_assistant

获取特定助手的详细信息。

**参数:** - `assistant_id`(字符串,必填):助手的 ID

### backboard_delete_assistant

删除一个助手。

**参数:** - `assistant_id`(字符串,必填):要删除的助手的 ID

### backboard_create_thread

为助手创建一个新的对话线程。

**参数:** - `assistant_id`(字符串,必填):要为其创建线程的助手的 ID

### backboard_list_threads

列出所有对话线程,可选择按助手筛选。

**参数:** - `assistant_id`(字符串,可选):按助手 ID 筛选线程

### backboard_get_thread

获取线程及其消息历史记录。

**参数:** - `thread_id`(字符串,必填):线程的 ID

### backboard_send_message

向线程发送消息并获取响应。

**参数:** - `thread_id`(字符串,必填):线程的 ID - `content`(字符串,必填):消息内容 - `memory`(字符串,可选):记忆模式 - "Auto"、"Readonly" 或 "off"(默认:"Auto")

### backboard_add_memory

为助手存储一个在对话间持久存在的记忆。

**参数:** - `assistant_id`(字符串,必填):助手的 ID - `content`(字符串,必填):要存储的记忆内容 - `metadata`(对象,可选):记忆的额外元数据

**示例:** ```json { "assistant_id": "asst_123", "content": "User prefers Python programming and dark mode interfaces", "metadata": {"category": "preferences"} } ```

### backboard_list_memories

列出助手的所有记忆。

**参数:** - `assistant_id`(字符串,必填):助手的 ID

### backboard_get_memory

获取特定的记忆。

**参数:** - `assistant_id`(字符串,必填):助手的 ID - `memory_id`(字符串,必填):记忆的 ID

### backboard_update_memory

更新现有记忆。

**参数:** - `assistant_id`(字符串,必填):助手的 ID - `memory_id`(字符串,必填):记忆的 ID - `content`(字符串,必填):记忆的新内容

### backboard_delete_memory

删除一个记忆。

**参数:** - `assistant_id`(字符串,必填):助手的 ID - `memory_id`(字符串,必填):要删除的记忆的 ID

### backboard_memory_stats

获取助手的记忆统计信息。

**参数:** - `assistant_id`(字符串,必填):助手的 ID

### backboard_upload_document

上传文档到助手或线程以进行 RAG(检索增强生成)。

**参数:** - `assistant_id`(字符串,可选):助手的 ID(使用此项或 thread_id) - `thread_id`(字符串,可选):线程的 ID(使用此项或 assistant_id) - `file_path`(字符串,必填):文档文件的路径

**支持的文件类型:** PDF、DOCX、XLSX、PPTX、TXT、CSV、MD、PY、JS、HTML、CSS、XML、JSON

### backboard_list_documents

列出助手或线程的文档。

**参数:** - `assistant_id`(字符串,可选):助手的 ID - `thread_id`(字符串,可选):线程的 ID

### backboard_document_status

检查上传文档的处理状态。

**参数:** - `document_id`(字符串,必填):文档的 ID

### backboard_delete_document

删除一个文档。

**参数:** - `document_id`(字符串,必填):要删除的文档的 ID

## 说明

当用户询问以下内容时:

### 记忆操作 - "Remember that..." 或 "Store this..." → 使用 `backboard_add_memory` - "What do you remember about..." → 使用 `backboard_list_memories` 或 `backboard_get_memory` - "Forget..." 或 "Delete memory..." → 使用 `backboard_delete_memory` - "Update my preference..." → 使用 `backboard_update_memory`

### 文档操作 - "Upload this document" 或 "Index this file" → 使用 `backboard_upload_document` - "What documents do I have?" → 使用 `backboard_list_documents` - "Is my document ready?" → 使用 `backboard_document_status`

### 助手管理 - "Create a new assistant" → 使用 `backboard_create_assistant` - "List my assistants" → 使用 `backboard_list_assistants` - "Delete assistant" → 使用 `backboard_delete_assistant`

### 对话线程 - "Start a new conversation" → 使用 `backboard_create_thread` - "Show conversation history" → 使用 `backboard_get_thread` - "Send message to thread" → 使用 `backboard_send_message`

### 一般准则 1. 始终与用户确认操作成功 2. 创建助手时,建议使用有意义的名称和系统提示 3. 对于文档上传,在尝试之前验证文件类型是否受支持 4. 使用记忆时,说明正在存储什么信息 5. 线程 ID 和助手 ID 应该被存储/跟踪以供用户上下文使用

## 示例

### 示例 1:存储用户偏好 - 用户:"Remember that I prefer dark mode and Python code examples" - 操作:调用 `backboard_add_memory`,内容为 "User prefers dark mode interfaces and Python code examples",元数据为 `{"category": "preferences"}` - 响应:"I've stored your preferences. You prefer dark mode and Python code examples."

### 示例 2:创建助手 - 用户:"Create a code review assistant" - 操作:调用 `backboard_create_assistant`,名称为 "Code Reviewer",system_prompt 为 "You are an expert code reviewer. Analyze code for bugs, performance issues, and best practices. Provide constructive feedback." - 响应:"Created your Code Reviewer assistant (ID: asst_xxx). It's ready to review code and provide feedback."

### 示例 3:上传并查询文档 - 用户:"Upload my project documentation and then tell me what it covers" - 操作 1:调用 `backboard_upload_document` 上传文件 - 操作 2:等待处理,使用 `backboard_document_status` 检查状态 - 操作 3:使用 `backboard_send_message` 并设置 memory="Auto" 来查询文档 - 响应:"I've uploaded and indexed your documentation. Based on the content, it covers..."

### 示例 4:启动线程对话 - 用户:"Start a new conversation with my support assistant" - 操作:调用 `backboard_create_thread` 并提供 assistant_id - 响应:"Started a new conversation thread (ID: thread_xxx). You can now send messages to your support assistant."

## 后端设置

此技能需要运行后端服务器。要启动:

1. 设置 `BACKBOARD_API_KEY` 环境变量 2. 导航到后端目录 3. 运行 `./start.sh`

后端将在 `http://localhost:5100` 上可用。

## API 端点参考

| 端点 | 方法 | 描述 | |----------|--------|-------------| | `/health` | GET | 健康检查 | | `/assistants` | GET, POST | 列出/创建助手 | | `/assistants/{id}` | GET, PATCH, DELETE | 获取/更新/删除助手 | | `/assistants/{id}/threads` | GET, POST | 列出/创建助手的线程 | | `/assistants/{id}/memory` | GET, POST | 列出/添加记忆 | | `/assistants/{id}/memory/{mid}` | GET, PATCH, DELETE | 获取/更新/删除记忆 | | `/assistants/{id}/memory/stats` | GET | 记忆统计 | | `/assistants/{id}/documents` | GET, POST | 列出/上传文档 | | `/threads` | GET | 列出所有线程 | | `/threads/{id}` | GET, DELETE | 获取/删除线程 | | `/threads/{id}/messages` | POST | 发送消息 | | `/threads/{id}/documents` | GET, POST | 列出/上传线程文档 | | `/documents/{id}/status` | GET | 文档处理状态 | | `/documents/{id}` | DELETE | 删除文档 |

更多产品