Tools
This skill connects to a local Flask backend that wraps the Backboard SDK. The backend must be running on http://localhost:5100.
backboard_create_assistant
Create a new Backboard assistant with a name and system prompt.
Parameters:
name (string, required): Name of the assistant
system_prompt (string, required): System instructions for the assistant
Example:
{
"name": "Support Bot",
"system_prompt": "You are a helpful customer support assistant."
}
backboard_list_assistants
List all available Backboard assistants.
Parameters: None
backboard_get_assistant
Get details of a specific assistant.
Parameters:
assistant_id (string, required): ID of the assistant
backboard_delete_assistant
Delete an assistant.
Parameters:
assistant_id (string, required): ID of the assistant to delete
backboard_create_thread
Create a new conversation thread for an assistant.
Parameters:
assistant_id (string, required): ID of the assistant to create thread for
backboard_list_threads
List all conversation threads, optionally filtered by assistant.
Parameters:
assistant_id (string, optional): Filter threads by assistant ID
backboard_get_thread
Get a thread with its message history.
Parameters:
thread_id (string, required): ID of the thread
backboard_send_message
Send a message to a thread and get a response.
Parameters:
thread_id (string, required): ID of the thread
content (string, required): Message content
memory (string, optional): Memory mode - "Auto", "Readonly", or "off" (default: "Auto")
backboard_add_memory
Store a memory for an assistant that persists across conversations.
Parameters:
assistant_id (string, required): ID of the assistant
content (string, required): Memory content to store
metadata (object, optional): Additional metadata for the memory
Example:
{
"assistant_id": "asst_123",
"content": "User prefers Python programming and dark mode interfaces",
"metadata": {"category": "preferences"}
}
backboard_list_memories
List all memories for an assistant.
Parameters:
assistant_id (string, required): ID of the assistant
backboard_get_memory
Get a specific memory.
Parameters:
assistant_id (string, required): ID of the assistant
memory_id (string, required): ID of the memory
backboard_update_memory
Update an existing memory.
Parameters:
assistant_id (string, required): ID of the assistant
memory_id (string, required): ID of the memory
content (string, required): New content for the memory
backboard_delete_memory
Delete a memory.
Parameters:
assistant_id (string, required): ID of the assistant
memory_id (string, required): ID of the memory to delete
backboard_memory_stats
Get memory statistics for an assistant.
Parameters:
assistant_id (string, required): ID of the assistant
backboard_upload_document
Upload a document to an assistant or thread for RAG (Retrieval-Augmented Generation).
Parameters:
assistant_id (string, optional): ID of the assistant (use this OR thread_id)
thread_id (string, optional): ID of the thread (use this OR assistant_id)
file_path (string, required): Path to the document file
Supported file types: PDF, DOCX, XLSX, PPTX, TXT, CSV, MD, PY, JS, HTML, CSS, XML, JSON
backboard_list_documents
List documents for an assistant or thread.
Parameters:
assistant_id (string, optional): ID of the assistant
thread_id (string, optional): ID of the thread
backboard_document_status
Check the processing status of an uploaded document.
Parameters:
document_id (string, required): ID of the document
backboard_delete_document
Delete a document.
Parameters:
document_id (string, required): ID of the document to delete
Instructions
When the user asks about:
Memory Operations
- "Remember that..." or "Store this..." → Use
backboard_add_memory
- "What do you remember about..." → Use
backboard_list_memories or backboard_get_memory
- "Forget..." or "Delete memory..." → Use
backboard_delete_memory
- "Update my preference..." → Use
backboard_update_memory
Document Operations
- "Upload this document" or "Index this file" → Use
backboard_upload_document
- "What documents do I have?" → Use
backboard_list_documents
- "Is my document ready?" → Use
backboard_document_status
Assistant Management
- "Create a new assistant" → Use
backboard_create_assistant
- "List my assistants" → Use
backboard_list_assistants
- "Delete assistant" → Use
backboard_delete_assistant
Conversation Threading
- "Start a new conversation" → Use
backboard_create_thread
- "Show conversation history" → Use
backboard_get_thread
- "Send message to thread" → Use
backboard_send_message
General Guidelines
- Always confirm successful operations with the user
- When creating assistants, suggest meaningful names and system prompts
- For document uploads, verify the file type is supported before attempting
- When using memory, explain what information is being stored
- Thread IDs and assistant IDs should be stored/tracked for the user's context
Examples
Example 1: Store a User Preference
- User: "Remember that I prefer dark mode and Python code examples"
- Action: Call
backboard_add_memory with content "User prefers dark mode interfaces and Python code examples" and metadata {"category": "preferences"}
- Response: "I've stored your preferences. You prefer dark mode and Python code examples."
Example 2: Create an Assistant
- User: "Create a code review assistant"
- Action: Call
backboard_create_assistant with name "Code Reviewer" and system_prompt "You are an expert code reviewer. Analyze code for bugs, performance issues, and best practices. Provide constructive feedback."
- Response: "Created your Code Reviewer assistant (ID: asst_xxx). It's ready to review code and provide feedback."
Example 3: Upload and Query a Document
- User: "Upload my project documentation and then tell me what it covers"
- Action 1: Call
backboard_upload_document with the file
- Action 2: Wait for processing, check status with
backboard_document_status
- Action 3: Use
backboard_send_message with memory="Auto" to query about the document
- Response: "I've uploaded and indexed your documentation. Based on the content, it covers..."
Example 4: Start a Threaded Conversation
- User: "Start a new conversation with my support assistant"
- Action: Call
backboard_create_thread with the assistant_id
- Response: "Started a new conversation thread (ID: thread_xxx). You can now send messages to your support assistant."
Backend Setup
The skill requires a running backend server. To start:
- Set the
BACKBOARD_API_KEY environment variable
- Navigate to the backend directory
- Run
./start.sh
The backend will be available at http://localhost:5100.
API Endpoints Reference
| Endpoint |
Method |
Description |
/health |
GET |
Health check |
/assistants |
GET, POST |
List/create assistants |
/assistants/{id} |
GET, PATCH, DELETE |
Get/update/delete assistant |
/assistants/{id}/threads |
GET, POST |
List/create threads for assistant |
/assistants/{id}/memory |
GET, POST |
List/add memories |
/assistants/{id}/memory/{mid} |
GET, PATCH, DELETE |
Get/update/delete memory |
/assistants/{id}/memory/stats |
GET |
Memory statistics |
/assistants/{id}/documents |
GET, POST |
List/upload documents |
/threads |
GET |
List all threads |
/threads/{id} |
GET, DELETE |
Get/delete thread |
/threads/{id}/messages |
POST |
Send message |
/threads/{id}/documents |
GET, POST |
List/upload thread documents |
/documents/{id}/status |
GET |
Document processing status |
/documents/{id} |
DELETE |
Delete document |
1---2name: backboard3description: Integrate Backboard.io for assistants, threads, memories, and document RAG via a local backend on http://localhost:5100.4---5
6## Tools
7
8This skill connects to a local Flask backend that wraps the Backboard SDK. The backend must be running on `http://localhost:5100`.
9
10### backboard_create_assistant
11
12Create a new Backboard assistant with a name and system prompt.
13
14**Parameters:**
15- `name` (string, required): Name of the assistant
16- `system_prompt` (string, required): System instructions for the assistant
17
18**Example:**
19```json
20{
21 "name": "Support Bot",
22 "system_prompt": "You are a helpful customer support assistant."
23}
24```
25
26### backboard_list_assistants
27
28List all available Backboard assistants.
29
30**Parameters:** None
31
32### backboard_get_assistant
33
34Get details of a specific assistant.
35
36**Parameters:**
37- `assistant_id` (string, required): ID of the assistant
38
39### backboard_delete_assistant
40
41Delete an assistant.
42
43**Parameters:**
44- `assistant_id` (string, required): ID of the assistant to delete
45
46### backboard_create_thread
47
48Create a new conversation thread for an assistant.
49
50**Parameters:**
51- `assistant_id` (string, required): ID of the assistant to create thread for
52
53### backboard_list_threads
54
55List all conversation threads, optionally filtered by assistant.
56
57**Parameters:**
58- `assistant_id` (string, optional): Filter threads by assistant ID
59
60### backboard_get_thread
61
62Get a thread with its message history.
63
64**Parameters:**
65- `thread_id` (string, required): ID of the thread
66
67### backboard_send_message
68
69Send a message to a thread and get a response.
70
71**Parameters:**
72- `thread_id` (string, required): ID of the thread
73- `content` (string, required): Message content
74- `memory` (string, optional): Memory mode - "Auto", "Readonly", or "off" (default: "Auto")
75
76### backboard_add_memory
77
78Store a memory for an assistant that persists across conversations.
79
80**Parameters:**
81- `assistant_id` (string, required): ID of the assistant
82- `content` (string, required): Memory content to store
83- `metadata` (object, optional): Additional metadata for the memory
84
85**Example:**
86```json
87{
88 "assistant_id": "asst_123",
89 "content": "User prefers Python programming and dark mode interfaces",
90 "metadata": {"category": "preferences"}
91}
92```
93
94### backboard_list_memories
95
96List all memories for an assistant.
97
98**Parameters:**
99- `assistant_id` (string, required): ID of the assistant
100
101### backboard_get_memory
102
103Get a specific memory.
104
105**Parameters:**
106- `assistant_id` (string, required): ID of the assistant
107- `memory_id` (string, required): ID of the memory
108
109### backboard_update_memory
110
111Update an existing memory.
112
113**Parameters:**
114- `assistant_id` (string, required): ID of the assistant
115- `memory_id` (string, required): ID of the memory
116- `content` (string, required): New content for the memory
117
118### backboard_delete_memory
119
120Delete a memory.
121
122**Parameters:**
123- `assistant_id` (string, required): ID of the assistant
124- `memory_id` (string, required): ID of the memory to delete
125
126### backboard_memory_stats
127
128Get memory statistics for an assistant.
129
130**Parameters:**
131- `assistant_id` (string, required): ID of the assistant
132
133### backboard_upload_document
134
135Upload a document to an assistant or thread for RAG (Retrieval-Augmented Generation).
136
137**Parameters:**
138- `assistant_id` (string, optional): ID of the assistant (use this OR thread_id)
139- `thread_id` (string, optional): ID of the thread (use this OR assistant_id)
140- `file_path` (string, required): Path to the document file
141
142**Supported file types:** PDF, DOCX, XLSX, PPTX, TXT, CSV, MD, PY, JS, HTML, CSS, XML, JSON
143
144### backboard_list_documents
145
146List documents for an assistant or thread.
147
148**Parameters:**
149- `assistant_id` (string, optional): ID of the assistant
150- `thread_id` (string, optional): ID of the thread
151
152### backboard_document_status
153
154Check the processing status of an uploaded document.
155
156**Parameters:**
157- `document_id` (string, required): ID of the document
158
159### backboard_delete_document
160
161Delete a document.
162
163**Parameters:**
164- `document_id` (string, required): ID of the document to delete
165
166## Instructions
167
168When the user asks about:
169
170### Memory Operations
171- "Remember that..." or "Store this..." → Use `backboard_add_memory`
172- "What do you remember about..." → Use `backboard_list_memories` or `backboard_get_memory`
173- "Forget..." or "Delete memory..." → Use `backboard_delete_memory`
174- "Update my preference..." → Use `backboard_update_memory`
175
176### Document Operations
177- "Upload this document" or "Index this file" → Use `backboard_upload_document`
178- "What documents do I have?" → Use `backboard_list_documents`
179- "Is my document ready?" → Use `backboard_document_status`
180
181### Assistant Management
182- "Create a new assistant" → Use `backboard_create_assistant`
183- "List my assistants" → Use `backboard_list_assistants`
184- "Delete assistant" → Use `backboard_delete_assistant`
185
186### Conversation Threading
187- "Start a new conversation" → Use `backboard_create_thread`
188- "Show conversation history" → Use `backboard_get_thread`
189- "Send message to thread" → Use `backboard_send_message`
190
191### General Guidelines
1921. Always confirm successful operations with the user
1932. When creating assistants, suggest meaningful names and system prompts
1943. For document uploads, verify the file type is supported before attempting
1954. When using memory, explain what information is being stored
1965. Thread IDs and assistant IDs should be stored/tracked for the user's context
197
198## Examples
199
200### Example 1: Store a User Preference
201- User: "Remember that I prefer dark mode and Python code examples"
202- Action: Call `backboard_add_memory` with content "User prefers dark mode interfaces and Python code examples" and metadata `{"category": "preferences"}`
203- Response: "I've stored your preferences. You prefer dark mode and Python code examples."
204
205### Example 2: Create an Assistant
206- User: "Create a code review assistant"
207- Action: Call `backboard_create_assistant` with name "Code Reviewer" and system_prompt "You are an expert code reviewer. Analyze code for bugs, performance issues, and best practices. Provide constructive feedback."
208- Response: "Created your Code Reviewer assistant (ID: asst_xxx). It's ready to review code and provide feedback."
209
210### Example 3: Upload and Query a Document
211- User: "Upload my project documentation and then tell me what it covers"
212- Action 1: Call `backboard_upload_document` with the file
213- Action 2: Wait for processing, check status with `backboard_document_status`
214- Action 3: Use `backboard_send_message` with memory="Auto" to query about the document
215- Response: "I've uploaded and indexed your documentation. Based on the content, it covers..."
216
217### Example 4: Start a Threaded Conversation
218- User: "Start a new conversation with my support assistant"
219- Action: Call `backboard_create_thread` with the assistant_id
220- Response: "Started a new conversation thread (ID: thread_xxx). You can now send messages to your support assistant."
221
222## Backend Setup
223
224The skill requires a running backend server. To start:
225
2261. Set the `BACKBOARD_API_KEY` environment variable
2272. Navigate to the backend directory
2283. Run `./start.sh`
229
230The backend will be available at `http://localhost:5100`.
231
232## API Endpoints Reference
233
234| Endpoint | Method | Description |
235|----------|--------|-------------|
236| `/health` | GET | Health check |
237| `/assistants` | GET, POST | List/create assistants |
238| `/assistants/{id}` | GET, PATCH, DELETE | Get/update/delete assistant |
239| `/assistants/{id}/threads` | GET, POST | List/create threads for assistant |
240| `/assistants/{id}/memory` | GET, POST | List/add memories |
241| `/assistants/{id}/memory/{mid}` | GET, PATCH, DELETE | Get/update/delete memory |
242| `/assistants/{id}/memory/stats` | GET | Memory statistics |
243| `/assistants/{id}/documents` | GET, POST | List/upload documents |
244| `/threads` | GET | List all threads |
245| `/threads/{id}` | GET, DELETE | Get/delete thread |
246| `/threads/{id}/messages` | POST | Send message |
247| `/threads/{id}/documents` | GET, POST | List/upload thread documents |
248| `/documents/{id}/status` | GET | Document processing status |
249| `/documents/{id}` | DELETE | Delete document |