Quack Docs
Core Workflow

Agents & Sessions

The mental model: workspace, chat, preset, and subagent.

Four terms, four different things. Mixing them up is the most common source of confusion.

Workspace

An open project folder. The top-level container — everything else (chats, colors, settings) is scoped to a workspace.

Chat (session)

One conversation, one transcript, saved to disk. A workspace can have any number of chats open at once, each independent of the others.

Preset (the "agent" you pick)

A reusable configuration applied to a chat: role, default model, effort level, extra instructions, output style, permission mode. Quack ships four — Milo (Builder, the default), Nora (Debugger), Vera (Reviewer), Lia (Companion — dialogue only, no edits) — and you can create your own. Picking a preset shapes how that chat behaves; it does not spawn an isolated process. See Custom Agents.

Subagent

A one-off, isolated dispatch inside a chat — you @-mention it in the composer, it runs its own sidechain with its own hidden tool calls, and it reports back a summary when done. Its inner steps don't clutter your main transcript; only a small chip shows, clickable if you want to inspect it. Subagents can't ask you questions directly — if one needs input, it says so in its report, and the parent chat surfaces the actual question to you.

Putting it together

One workspace can have many chats. Each chat runs under one preset at a time. A chat may delegate pieces of work to subagents without ever leaving its own transcript. And each chat is tied to one CLI backend (Claude Code or Codex) for its whole lifetime — switching backends means starting a new chat, since each CLI keeps its own session memory that doesn't transfer.

On this page

say quack to us