Product Workspaces
Circles
Social/direct chat bridge, avatar sync, SSO, and XRouter helper APIs.
Circles
Circles is Urmate’s social/direct messaging experience.
Routes
| Route | Purpose |
|---|---|
/dashboard/circles | Dashboard entry. |
/circles | Public/bridge route. |
/circles-app/[[...path]] | Mounted Circles app path. |
Important Files
| Path | Purpose |
|---|---|
lib/circles/sso.ts | SSO/session bridge. |
lib/circles/direct-chat.ts | Direct chat helpers. |
lib/circles/mysql.ts | MySQL/Grupo bridge. |
lib/circles/config.ts | Configuration. |
app/api/circles/session/route.ts | Session endpoint. |
app/api/circles/avatar/[userId]/route.ts | Avatar endpoint. |
app/api/circles/xrouter/* | AI helpers. |
APIs
| Endpoint | Purpose |
|---|---|
GET /api/circles/session | Current Urmate session for Circles. |
GET /api/circles/avatar/[userId] | Avatar sync endpoint. |
GET /api/circles/xrouter/catalog | Model/catalog for Circles AI. |
POST /api/circles/xrouter/chat | Chat through XRouter. |
POST /api/circles/xrouter/image | Image through XRouter. |
Integration Rules
- Urmate remains the source of truth for login/register.
- Avatar changes in Urmate should reflect in Circles.
- Instructor “message” actions should deep-link to Circles conversations.
- If Circles is on
circles.urmate.tech, keep auth bridge and cookie behavior consistent.

