Sessions and storage
A session is one conversation. The left-hand column lists them:
New session starts one, a click opens one, and each row reads the
first line of its first prompt with how many replies it has (or Streaming,
with an orange square, while one streams). The cross on a row deletes it, with
its stream and the pictures no other session still uses.

A session answers one reply at a time. Several sessions can stream at once when Parallel sessions is on (Settings): over the WebSocket they share one connection; over HTTP the browser carries five streams, agents included, and the rest wait. Each session is a separate conversation for the server too: its prompt state is retained and found by content, so going back to an older session resumes from the cache when the server still holds it (State that outlives its request).
What is kept, and where
Section titled “What is kept, and where”Everything the Playground keeps lives in this browser, for this origin; nothing is sent to the server for safekeeping.
| What | Where | Survives a reload |
|---|---|---|
| Chat sessions: every message, its reasoning, tool runs, figures and log, the workspace it is in | IndexedDB ignis-playground, collection chat-sessions |
yes |
| Workspaces: their names, and every file with every version and its author | same database, workspaces, and workspace-files/<id> for each one’s files |
yes; deleting a chat keeps its workspace, which goes only when you delete it |
| Decide’s decisions: drafts, evidence, answers | same database, decide-sessions |
yes |
| Image sessions and their steps | same database, image-sessions |
yes |
| Transcripts: each utterance’s text, times and speaker, the speakers’ names and the corrections, the context it is told, the suggestions and what became of them, how far the text model has checked it, the notes, the questions asked and their answers, never audio | same database, transcribe-sessions |
yes; a listening under way ends, its completed utterances kept |
| Pictures (sent in the chat, made, marked, a workspace’s), stored once by their SHA-256 and shared | same database, images and bytes |
yes; deleting a chat, an image session or a workspace frees only the pictures nothing else names |
| A workspace’s other bytes, such as a PDF’s, stored once | same database, blobs |
yes |
| The session that was open, per view | same database, active-session |
yes |
| The API key | localStorage ignis.apiKey |
yes |
| Parallel sessions, the HTTP transport | localStorage ignis.parallelSessions, ignis.httpTransport |
yes |
| The workspace panel, open or closed | localStorage ignis.workspacePanel |
yes |
| The Tavily key, memory notes, the image view’s “Enhance the prompt” | localStorage ignis.tavilyKey, ignis.memory, ignis.imageEnhance |
yes |
| The Transcribe view’s file pace, its silence, its Hold my mic, its notes’ kind and Keep updating, Suggest while listening | localStorage ignis.transcribeFilePace, ignis.transcribeSilence, ignis.transcribeHoldMic, ignis.transcribeNoteKind, ignis.transcribeNotesLive, ignis.transcribeSuggestions |
yes |
| Settings, tool switches, the prompt box, the Server view’s draft, the Monitor’s history | memory only | no |
A reply that was streaming when the page closed comes back stopped, with the text it had got; a tool call it left running is answered as stopped.
When the browser refuses the space, the session list says so in red and the page goes on without saving. The same happens when the Playground’s store has moved to a newer version (workspaces brought one) while another tab of the same origin still runs the older page: the list says another tab holds the store at an older version, and once that tab is closed a reload of this one reads the sessions back.
Read more
Section titled “Read more”- Chat: the session log at the foot of each session.
- KV cache and prompt reuse: what the server keeps of a conversation, and for how long.
