HTTP
GET /health
Returns server status.
GET /providers
Lists available providers and their capabilities.
POST /chat
Send chat messages to a provider. Streams SSE by default.
Request body:
Example:
POST /completions
Return a one-shot completion for an editor buffer.
POST /inline-edit
Return replacement text for a selected range.
GET /sessions
Lists all active sessions.
GET /sessions/:id
Get a single session by ID.
DELETE /sessions/:id
Delete a session and free its resources.
SSE Events
When streaming fromPOST /chat, the server emits data: lines containing one of these
event objects:
Example stream:
WebSocket
Connect to:ready message first:
Session Messages
| Client message | Purpose | |---|---|---| |session.create | Create a git-backed agent session |
| session.open | Reopen an existing session |
| chat.turn | Run an agent turn in the session worktree |
| run.cancel | Cancel an active session run |
| changes.status | Read changed files |
| changes.accept_all | Apply all agent changes to the repo |
| changes.discard_all | Drop all agent changes |
| changes.accept_file | Apply one changed file |
| changes.discard_file | Drop one changed file |