Skip to main content

Chat & Conversations

Fabriqa organizes work into chats within a workspace. Each chat is an isolated conversation with its own history, context, and output. This page covers how to create, navigate, and control chats efficiently.

Chat Tabs

Each workspace can have multiple chats open simultaneously as tabs across the top of the window.
  • Cmd+N — create a new chat in the current workspace.
  • Cmd+Shift+N — create a new chat linked to a git worktree (opens mode picker).
  • Cmd+W — close the active tab.
  • Cmd+1Cmd+9 — jump directly to any tab by position.
Tabs can be dragged to reorder them. Each tab maintains its own draft input independently.

View Modes

Fabriqa offers three ways to render chat output. Toggle between them with Cmd+Shift+M (cycles through all three) or use slash commands:
ModeDescriptionSlash Command
DocumentFormatted markdown with rich text, headings, and code blocks/render-document
Terminal FullFull terminal-style output — every line, unstyled/render-terminal
Terminal SummaryTerminal-style output, collapsed for readability/cycle-view
The selected mode is a global app setting that applies to all chat windows. Switch it at any time without losing conversation history.

Message Navigation

Navigate within a conversation entirely from the keyboard — no scrolling required:
ActionmacOSWindows / Linux
Scroll to topCmd+↑Ctrl+↑
Scroll to bottomCmd+↓Ctrl+↓
Jump to previous messageOption+↑Alt+↑
Jump to next messageOption+↓Alt+↓
Jump to previous user messageOption+Shift+↑Alt+Shift+↑
Jump to next user messageOption+Shift+↓Alt+Shift+↓
Select all messagesCmd+ACtrl+A
Navigation shortcuts activate when the chat input is not focused. Click on the message area or press Escape to blur the input first.

Forking Conversations

Fork a conversation to branch from any previous assistant message and explore an alternative path without losing the original thread.
  1. Hover over an assistant message.
  2. Click the fork icon that appears in the message action bar.
  3. A new tab opens with the conversation history up to that point, ready for a new prompt.
The original conversation is unchanged. Forks are listed as separate chat tabs.

Queue While Streaming

You don’t need to wait for a response to finish before sending your next message. Type your follow-up in the composer while a response is still streaming and press Enter — Fabriqa queues it and executes it automatically when the current response completes. This is useful for chaining instructions: “now add tests”, “now update the README”, etc.

Cancel and Steer

To stop an in-progress response:
  • Press Esc Esc (double Escape) — the streaming stops immediately.
  • Or type /cancel in the composer.
After cancelling, the partial response stays in the conversation. You can then send a corrected or refined instruction.

Sticky User Message Strip

A pinned header strip shows the most recent user instruction at the top of the chat view while the assistant is responding. This helps you keep track of what you asked, especially during long agentic runs with many tool calls.

Thinking and Plan Blocks

When the active model uses extended thinking or proposes a plan before executing:
  • Thinking blocks are displayed inline with a collapsible toggle. Expand to see the model’s reasoning process.
  • Plan blocks show the proposed list of steps with Approve and Reject controls. Approving a plan lets the agent proceed; rejecting lets you redirect.

Send and Input Controls

ActionShortcut
Send messageEnter
New line in composerShift+Enter
Show shortcuts help? (when input not focused)