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 assistantsystem_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 threadcontent(string, required): Message contentmemory(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 assistantcontent(string, required): Memory content to storemetadata(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 assistantmemory_id(string, required): ID of the memory
backboard_update_memory
Update an existing memory.
Parameters:
assistant_id(string, required): ID of the assistantmemory_id(string, required): ID of the memorycontent(string, required): New content for the memory
backboard_delete_memory
Delete a memory.
Parameters:
assistant_id(string, required): ID of the assistantmemory_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 assistantthread_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_memoriesorbackboard_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_memorywith 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_assistantwith 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_documentwith the file - Action 2: Wait for processing, check status with
backboard_document_status - Action 3: Use
backboard_send_messagewith 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_threadwith 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_KEYenvironment 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 |