opboxDocs
Sign inBook a demo
DocsSkills & PromptsAI - Assistant

Saved Prompts (Skills)

A per-user library of reusable AI prompts - playbooks, frequently-used instructions, complex multi-step queries. Stored as Knowledge Base documents in a private "Skills" folder so they're full Tiptap rich text, searchable, organisable into subfolders, and editable in the KB.

Limit: 50 skills per user (counted across the entire Skills folder tree).

Where They Live

A "Skills" system folder is auto-created in your Knowledge Base on first KB visit (alongside the Transcripts folder). Each skill is a regular Document row inside that folder. You can:

  • Save new skills from the chat UI ("Save this prompt").
  • Browse, edit, and reorganise them as rich documents in the KB.
  • Create subfolders to organise skills by category.
  • Delete skills directly from the KB or via the API.

Endpoints

MethodEndpointDescription
GET/api/ai/skillsList skill documents from the Skills folder tree, newest first. Plain text extracted from structured JSON.
POST/api/ai/skillsCreate a skill in the Skills folder. JSON body with title and content. Title max 120 chars, content max 5000 chars. 50-skill limit enforced.
DELETE/api/ai/skills/:idDelete a skill (must live under the Skills folder tree in the current org).
POST/api/ai/skills/:idMark skill as used. JSON body action: "use". No-op, kept for API compatibility.

Discovery from the AI Side

Skills are also exposed to the AI assistant via two read-only tools:

ToolDescription
list_skillsList the user's skills with title and content snippet.
get_skillRetrieve a skill by ID.

This lets the AI suggest a saved skill ("you have a 'Weekly review' skill - want to run it?") or pull one in as context for a multi-step task.

Use Cases

Skill typeExample
Recurring report"Summarise all matters that closed this month, grouped by board"
Domain primer"You are a UK CSP analyst. Use Companies House conventions when discussing filings."
Compliance checklist"For this matter, verify: KYC complete, UBO declared, share register up to date."
Multi-step workflow"Find matters past their due date in the SLA-Premium board, draft a status update, attach to the matter."

API Examples

List

GET /api/ai/skills

Response:
[
  {
    "id": "cm...",
    "title": "Summarise matter progress",
    "content": "Give me a summary of the current matter including step status...",
    "createdAt": "2026-02-18T09:00:00.000Z"
  },
  {
    "id": "cm...",
    "title": "Weekly review",
    "content": "Summarise all active matters and flag anything overdue...",
    "createdAt": "2026-02-15T17:30:00.000Z"
  }
]

Create

POST /api/ai/skills
Content-Type: application/json

{
  "title": "Weekly review",
  "content": "Summarise all active matters by board, flag overdue, and propose top 3 priorities for the week."
}

The title is used as the KB document name. The content is stored as plain text (auto-converted to Tiptap structured JSON for storage so it's editable inline in the KB).

Delete

DELETE /api/ai/skills/:id

Hard-deletes the underlying KB document.

Storage Detail

Skills are not a separate model - they're regular Document rows. The "is this a skill?" predicate is "does it live under the Skills folder tree in the user's KB?". This means:

  • The 5000-char content limit applies on save via the API; manually editing in the KB lets you store more, though the AI may truncate when reading.
  • Subfolders inside Skills are honoured for organisation.
  • Skills inherit your normal KB permissions: only you can read/write your skills (they live in your private folder tree).
  • Backups of your KB include your skills.

See Also

We use cookies

Strictly necessary cookies keep you signed in and protect requests. We also use optional cookies for preferences and (when enabled) analytics. Learn more.