openloomi-api
The openloomi-api skill provides comprehensive documentation for the OpenLoomi backend API, covering thirteen modules including authentication, user management, chat operations, messaging, file storage, integrations with platforms like Slack and Discord, RAG capabilities, AI functions, analytics, and billing. Use this skill when implementing server-side functionality, integrating third-party services, handling user authentication, managing files or messages, or configuring workspace features within the OpenLoomi platform.
git clone --depth 1 https://github.com/melandlabs/openloomi /tmp/openloomi-api && cp -r /tmp/openloomi-api/skills/openloomi-api ~/.claude/skills/openloomi-apiSKILL.md
> **Note:** If you haven't downloaded or installed openloomi yet, please refer to [Getting Started](https://openloomi.ai/docs/getting-started) for installation instructions.
# OpenLoomi API Documentation
## API Modules
### Module Overview
| Module | Base Path | Description |
|--------|-----------|-------------|
| **Auth** | `/api/auth/*`, `/api/remote-auth/*` | OAuth, login, register |
| **User** | `/api/user/*` | User identity and entitlements |
| **Chat** | `/api/chat/*` (app routes) | Chat/Character CRUD |
| **Messages** | `/api/messages/*` | Message sending and sync |
| **Files** | `/api/files/*` | File storage and upload |
| **Storage** | `/api/storage/*` | Session and disk management |
| **Integrations** | `/api/integrations/*`, `/api/*/callback` | Slack, Discord, X, etc. |
| **RAG** | `/api/rag/*` | Retrieval-augmented generation |
| **Workspace** | `/api/workspace/*` | Artifacts and skills |
| **Native** | `/api/native/*` | Native agent operations |
| **AI** | `/api/ai/*` | LLM, embeddings, images, audio |
| **Insights** | `/api/insights/*`, `/api/chat-insights/*` | Analytics and insights |
| **Billing** | `/api/billing/*` | Billing ledger |
---
## Endpoints Reference
### Auth Module (`/api/auth/*`, `/api/remote-auth/*`)
| Method | Endpoint | Description |
|--------|----------|-------------|
| POST | `/api/auth/poll-[provider]` | Poll OAuth status |
| POST | `/api/auth/set-token` | Set auth token |
| POST | `/api/auth/clear-auth-cookie` | Clear session |
| POST | `/api/remote-auth/login` | Login with email/password |
| POST | `/api/remote-auth/register` | Register new user |
| POST | `/api/remote-auth/oauth/[provider]` | OAuth exchange |
| POST | `/api/remote-auth/oauth/[provider]/exchange` | OAuth code exchange |
| POST | `/api/remote-auth/refresh` | Refresh token |
| GET | `/api/remote-auth/user` | Get current user |
| PUT | `/api/remote-auth/user` | Update user info |
| GET | `/api/remote-auth/subscription` | Get subscription info |
#### Login Example
```bash
curl -X POST https://app.openloomi.ai/api/remote-auth/login \
-H "Content-Type: application/json" \
-d '{"email":"user@example.com","password":"password123"}'
```
Response:
```json
{
"user": { "id": "user_xxx", "email": "user@example.com", "name": "User" },
"token": "eyJhbG..."
}
```
### User Module (`/api/user/*`)
| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | `/api/user/identity` | Get user identity |
| PUT | `/api/user/identity` | Update identity |
| PUT | `/api/user/password` | Change password |
| GET | `/api/user/entitlements` | Get user entitlements |
### Messages Module (`/api/messages/*`)
| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | `/api/messages` | List messages |
| POST | `/api/messages` | Send message |
| GET | `/api/messages/sync` | Sync messages |
| GET | `/api/messages/check` | Check message status |
| GET | `/api/messages/raw` | Get raw message |
### Files Module (`/api/files/*`)
| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | `/api/files/list` | List files |
| GET | `/api/files/[id]` | Get file by ID |
| POST | `/api/files/upload` | Upload file |
| POST | `/api/files/save` | Save file |
| GET | `/api/files/usage` | Get storage usage |
| GET | `/api/files/insights/download` | Download insights file |
| POST | `/api/files/insights/save` | Save insights |
### Storage Module (`/api/storage/*`)
| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | `/api/storage/disk-usage` | Get disk usage |
| POST | `/api/storage/cleanup` | Cleanup storage |
| GET | `/api/storage/sessions` | List sessions |
| GET | `/api/storage/sessions/[taskId]` | Get session by task ID |
| DELETE | `/api/storage/sessions/[taskId]` | Delete session |
### Integrations Module (`/api/integrations/*`)
| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | `/api/integrations/accounts` | List connected accounts |
| GET | `/api/integrations/slack/oauth/start` | Start Slack OAuth |
| GET | `/api/integrations/slack/oauth/exchange` | Exchange Slack OAuth code |
| GET | `/api/integrations/discord/oauth/start` | Start Discord OAuth |
| GET | `/api/integrations/discord/oauth/exchange` | Exchange Discord OAuth code |
| GET | `/api/integrations/x/oauth/start` | Start X OAuth |
### OAuth Callbacks (Various Platforms)
| Method | Endpoint | Platform |
|--------|----------|----------|
| GET | `/api/slack/callback` | Slack |
| GET | `/api/discord/callback` | Discord |
| GET | `/api/auth/callback/github` | GitHub |
| GET | `/api/auth/callback/google` | Google |
| POST | `/api/feishu/listener/init` | Feishu |
| POST | `/api/dingtalk/listener/init` | DingTalk |
| POST | `/api/qqbot/listener/init` | QQ Bot |
| POST | `/api/weixin/listener/init` | WeChat |
| POST | `/api/telegram/user-listener/init` | Telegram |
| POST | `/api/whatsapp/register-socket` | WhatsApp |
| POST | `/api/imessage/init-self-listener` | iMessage |
### RAG Module (`/api/rag/*`)
| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | `/api/rag/search` | Search documents |
| GET | `/api/rag/stats` | Get RAG statistics |
| GET | `/api/rag/documents` | List documents |
| GET | `/api/rag/documents/[documentId]` | Get document |
| GET | `/api/rag/documents/[documentId]/binary` | Get document binary |
| DELETE | `/api/rag/documents/[documentId]` | Delete document |
| POST | `/api/rag/upload` | Upload document |
| POST | `/api/rag/upload/init` | Initialize upload |
| POST | `/api/rag/upload/chunk` | Upload chunk |
| POST | `/api/rag/upload/complete` | Complete upload |
| POST | `/api/rag/upload/async` | Async upload |
| GET | `/api/rag/upload/async/status` | Check async upload status |
### Workspace Module (`/api/workspace/*`)
| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | `/api/workspace/artifacts` | List artifacts |
| GET | `/api/workspace/files` | List filesBrowser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction.
Drive a native macOS app via the cua-driver CLI (default) or MCP server — snapshot its AX tree, click/type/scroll by element_index, verify via re-snapshot. Use when the user asks you to operate, drive, automate, or perform a GUI task in a real macOS application on the host (e.g. "open a file in TextEdit", "navigate to /Applications in Finder", "click the Save button in Numbers").
Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files). Triggers include: any mention of "Word doc", "word document", ".docx", or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx files, inserting or replacing images in documents, performing find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a "report", "memo", "letter", "template", or similar deliverable as a Word or .docx file, use this skill. Do NOT use for PDFs, spreadsheets, Google Docs, or general coding tasks unrelated to document generation.
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.
openloomi Connectors tools - manage platform integrations (OAuth connections, list accounts, check status). Triggers: connect platform, integration status, list accounts, disconnect
Use this when users ask about openloomi features, capabilities, or how to use it. Examples: 'openloomi 怎么用', '你能做什么', 'What can you do?', 'How does openloomi work?', 'Tell me about openloomi features', 'What platforms does openloomi support?', 'How do I use scheduled tasks?', 'What is Insights system?', 'How do I connect Telegram?', 'How to create automation?', '什么是 openloomi 事件?
openloomi Memory tools - search memory files, knowledge base, and chat insights. Triggers: memory search, knowledge base, documents, insights
Use this skill whenever the user wants to do anything with PDF files. This includes reading or extracting text/tables from PDFs, combining or merging multiple PDFs into one, splitting PDFs apart, rotating pages, adding watermarks, creating new PDFs, filling PDF forms, encrypting/decrypting PDFs, extracting images, and OCR on scanned PDFs to make them searchable. If the user mentions a .pdf file or asks to produce one, use this skill.