Voice & Chat
A persistent conversation with an agent that can see your workspace — by voice or keyboard, same thread.
What problem this solves
Sometimes the question isn't "show me the board", it's "what did I leave unfinished on Pointr?" or "add 'test the export on real data' to FieldLog's backlog" — while you're walking. Chat answers those: the agent reads your projects, roadmaps, and activity through Mind's tools mid-conversation, and can write roadmap items when you ask.
Voice and text are the same conversation. Speak a question in the car, read the answer later at your desk, type the follow-up — one retained thread.
Before it works: two switches
- Mind setting
chat.enabled= true. If chat is off you'll see a note on the Conversations screen saying exactly that. Flip it in Mind's settings page. - The HTTPS address, for voice. Typed chat works on any
address; the microphone only exists on
https://hs.tail27f6d1.ts.net. Browsers withhold mic access from plain-HTTP pages — no setting overrides this.
http://100.88.227.62:5176. Same app, wrong door. A real
"microphone permission denied" means you (or iOS) declined the permission
prompt — check Settings → Safari (or the site permissions) and retry.
Talking: tap-to-talk, not open mic
The mic is push-to-start, not always-listening:
Replies are spoken with the device's own voices and stream as they're generated — you'll hear the first sentence while the rest is still being written. The speaker icon (top right of a conversation) mutes speech entirely; the stop button cancels a reply you don't want to wait through.
What the agent can actually do
Mid-turn, the agent calls Mind's tools. You'll see small tool notes appear in the thread as it works. Out of the box it can:
- Read — project context, files, specs, roadmaps, recent activity. "What changed this week?" is a read.
- Write roadmap items — "add X to Facet's backlog as P2"
lands as a real
ideadocument in Facet'sdocs/specs/.
It cannot run shell commands, queue autonomous work, or change settings
from chat — the allowed toolset is a Mind setting
(chat.tool_allowlist), deliberately conservative by default.
When you mention a project and the agent loads its context, the conversation binds to that project — you'll see its name appear under the conversation title, and later questions assume that project until you steer elsewhere.
Conversations persist
Each thread keeps its history (titled automatically from your first message) and survives restarts on both ends. Old threads stay useful — the agent carries a rolling summary, so a conversation you left three days ago still knows what you were doing. Start a New conversation when the topic genuinely changes; reuse an existing one when it's the same piece of work.
Gotchas
- First tap unlocks audio on iOS. Speech output starts with a user gesture; if a reply is silent, tap the speaker toggle off and on and send again.
- Interrupting is free. Barging in doesn't lose the reply — whatever was generated before you cut in is kept in the thread.
- Chat spends tokens. Turns run against the same subscription window as everything else (a small model by default). The window badge in the top bar is the same budget chat draws from.
- Long monologues finalize early. A long pause reads as "done speaking". For a multi-part request, keep talking steadily or send it in pieces — it's one thread; the agent keeps up.
Where to find this in the app
- Bottom bar — Chat, or
/chat - Mic + send + stop — composer at the bottom of any conversation
- Speech mute — speaker icon, top right of a conversation
- Enable/config — Mind settings:
chat.enabled,chat.model,chat.tool_allowlist