API Reference
Interactive REST API documentation auto-generated from the Agor daemon.
📚 Interactive API Docs
The Agor daemon serves live, interactive API documentation via Swagger UI:

Features:
- ✅ Always up-to-date - Generated from actual service definitions
- ✅ Try it out - Execute API calls directly from the browser
- ✅ Dark mode - Easy on the eyes
- ✅ Full schema - Request/response models for all endpoints
Quick Reference
Base URL
http://localhost:3030Authentication
Agor uses JWT-based authentication:
Authorization: Bearer <your-token>Getting a Bearer Token
Use the CLI to authenticate and retrieve a token:
agor loginYou’ll be prompted for your email and password. Your token is automatically saved to ~/.agor/cli-token and is valid for 7 days.
Using the token with cURL:
# 1. Get your token (already saved locally)
cat ~/.agor/cli-token
# 2. Use it in curl commands
curl -X GET http://localhost:3030/sessions \
-H "Authorization: Bearer <your-token>"Using the token in Swagger UI:
- Visit http://localhost:3030/docs/
- Click the “Authorize” button (🔒 icon in top-right)
- Paste your Bearer token in the input field
- Click “Authorize”
- Now all generated curl commands and “Try it out” buttons will automatically include your token
Anonymous Mode: For local development, anonymous authentication is enabled by default (no token required).
Core Services
/sessions- AI agent session management with genealogy (fork/spawn)/tasks- Work units within sessions tracking prompts and execution/messages- Conversation messages with streaming support/repos- Git repository management and worktree operations/boards- Spatial organization of sessions with zones and triggers/worktrees- Git worktree isolation for sessions/users- User account management and authentication/mcp-servers- Model Context Protocol server configurations
Response Format
All FeathersJS endpoints return data in this format:
// Single resource
{
data: { id: '...', ... }
}
// List of resources (paginated)
{
data: [{ id: '...', ... }],
total: 100,
limit: 50,
skip: 0
}RESTful Conventions
All services follow standard REST patterns:
GET /service- List items (paginated)GET /service/:id- Get single itemPOST /service- Create new itemPATCH /service/:id- Update item (partial)DELETE /service/:id- Delete item
WebSocket Events
Real-time updates via Socket.IO:
- WebSocket Events - Real-time event documentation
Source Code
For TypeScript type definitions and service implementations:
- TypeScript types:
packages/core/src/types - Service implementations:
apps/agor-daemon/src/services