Skip to content

HTTP і WebSocket API ​

Веб-інтерфейс робить усе через цей API, тож Crew можна скриптувати. Базовий URL: http://localhost:3000/api.

Агенти ​

МетодШляхЩо робить
GET/agentsСписок агентів з полями status, memoryCount і effectiveModel.
POST/agentsСтворює агента: { name, role?, personality?, systemPrompt?, model?, avatar? }
GET/agents/:idПовертає агента за id або за іменем.
PATCH/agents/:idЗмінює агента.
DELETE/agents/:idВидаляє агента разом із пам'яттю.
GET/agents/:id/exportЕкспорт у JSON.
POST/agents/importІмпорт з JSON.

Чат ​

МетодШляхЩо робить
POST/agents/:id/chatПриймає { text } і повертає підсумкову відповідь. Блокується, доки відповідь не готова.
GET/agents/:id/messages?channel=webПовертає історію.
DELETE/agents/:id/messagesОчищає веб-чат.
bash
curl -s localhost:3000/api/agents/Lena/chat \
  -H 'content-type: application/json' \
  -d '{"text":"Напиши хоку про SQLite"}' | jq -r .content

Пам'ять і теки ​

МетодШляхЩо робить
GET/agents/:id/memories?q=Список спогадів або пошук за q.
POST/agents/:id/memoriesДодає спогад: { content, type?, importance? }
DELETE/memories/:idВидаляє спогад.
GET/agents/:id/foldersСписок відкритих тек.
POST/agents/:id/foldersВідкриває теку: { path, mode: "ro" | "rw" }
DELETE/folders/:idЗакриває доступ до теки.

Система ​

GET /health, GET /status, GET /settings, PUT /settings, GET /templates, GET /tasks.

WebSocket на /ws ​

Щоб написати агентові, надішли:

json
{ "type": "chat", "agentId": "…", "text": "привіт!" }

У відповідь іде потік подій, і кожен підключений клієнт отримує їх усі:

ts
{ type: "status",  agentId, status: "idle" | "thinking" | "working" | "remembering" }
{ type: "token",   agentId, replyId, delta }
{ type: "tool",    agentId, replyId, name, args, result? }
{ type: "message", agentId, conversationId, message }
{ type: "memory",  agentId, memory }
{ type: "agents" }   // список змінився

MIT License