Text chat
Text chat is the quickest way to have a conversation with your delegate. Open the app and you’re ready — just type a message and get a response.

What you can do
Your delegate isn’t just a chatbot — it can take action on your behalf from a single message. Examples of what you can ask:
- Search the web — “What’s the latest news on…”
- Take notes — “Remember that my flight is on Friday at 9am”
- Look things up — “What did I tell you about the Henderson project?”
- Check your calendar — available when your calendar is connected via MCP (see Tools)
- Answer complex questions — for harder tasks, your delegate can bring in a more powerful reasoning process automatically, and will show you what it’s doing while it works
How to use it
- Open your Delegate app.
- Type your message in the text box at the bottom of the screen.
- Press Enter (or click Send).
- A working indicator remains visible while the model and any tools run; the completed reply then appears in the timeline.
When your delegate uses a tool (such as searching the web or reading your notes), you’ll see that activity appear inline in the conversation so you know what it’s doing.
Watching the same conversation from multiple tabs
You can open the app in several browser tabs at once — all tabs show the same conversation as it happens. This is handy if you want to monitor a long-running task from a second screen while continuing to chat in another tab.
Starting fresh
Use End conversation when you want an explicit semantic boundary. The next message starts a new technical conversation record, while earlier activity remains in the chronological relationship timeline.
POST /session/reset is a development and test control that clears in-progress singleton state. It is not the normal user-facing way to organise conversation history.
See also: Agents & policies, Tools.
Technical details
| Path | Type | Purpose |
|---|---|---|
/chat |
WebSocket | Real-time message channel between browser and server |
The browser opens a persistent WebSocket connection (a low-latency two-way pipe) to /chat. Messages are exchanged as JSON:
Client → server
{ "type": "chat.message", "content": "Hello!" }
Server → client
{ "type": "chat.working", "request_id": "..." }
{ "type": "chat.response", "content": "Hello!", "conversation_id": "..." }
{ "type": "chat.done", "request_id": "..." }
Responses use the OpenAI Responses API with previous_response_id and official context compaction. Tool calls emit additional events, and context usage, compaction, capsule refresh, and memory retrieval appear as expandable Inner Plane activity. The chat channel shares the same timeline, memory, continuity capsule, and tool registry as all other channels.
- Server handler:
src/session/chat.ts - Frontend:
client/index.html(plain HTML/JS)