AI Chat

Start a chat with the Temps assistant.

Changed on

The assistant runs on the AI gateway (an OpenRouter key is enough), has no sandbox, and acts with the calling user's own permissions: every tool call is replayed through the real router with their auth, and every change is a proposal the user confirms in the UI. When no provider is configured this answers 409 with setup_path, so the client can onboard instead of failing.

post/ai/assistant/conversations

Request

  • Base URL: /api (relative, and the document was published on a file host, not at the API’s origin)
  • URL: /api/ai/assistant/conversations
  • Auth: HTTP bearer

Request body

ai_modelstring nullable

Model id to start with; defaults to the provider's default model.

ai_providerstring nullable

An AI-gateway provider id (gateway_key:<id>). Defaults to the active OpenRouter key, then to the instance default. Host harnesses are rejected: the assistant has no sandbox.

project_idinteger nullable

A project the chat is about. The assistant is told which it is, so it needs no searching to resolve "my app". It is a default, not a limit, and grants nothing: the chat still acts with the user's own permissions.

Response

Conversation created

active_turn_idstring nullable
ai_modelstring required
ai_permission_modestring required
ai_providerstring required
ai_thinking_levelstring nullable
application_idinteger nullable
context_idstring required
context_typestring required
created_atstring required
focus_project_idinteger nullable

The project an assistant chat was started about, if any.

kindstring required

ai (a conversation with an AI harness) or terminal (an interactive shell in the workspace sandbox). Fixed at creation.

last_activity_atstring required
project_idinteger nullable
public_idstring required
statusstring required
titlestring nullable
turn_started_atstring nullable
turn_statusstring required

Server-authoritative lifecycle for the current/most recent turn.

Changes