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+1–Cmd+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:
| Mode | Description | Slash Command |
|---|
| Document | Formatted markdown with rich text, headings, and code blocks | /render-document |
| Terminal Full | Full terminal-style output — every line, unstyled | /render-terminal |
| Terminal Summary | Terminal-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:
| Action | macOS | Windows / Linux |
|---|
| Scroll to top | Cmd+↑ | Ctrl+↑ |
| Scroll to bottom | Cmd+↓ | Ctrl+↓ |
| Jump to previous message | Option+↑ | Alt+↑ |
| Jump to next message | Option+↓ | Alt+↓ |
| Jump to previous user message | Option+Shift+↑ | Alt+Shift+↑ |
| Jump to next user message | Option+Shift+↓ | Alt+Shift+↓ |
| Select all messages | Cmd+A | Ctrl+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.
- Hover over an assistant message.
- Click the fork icon that appears in the message action bar.
- 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.
| Action | Shortcut |
|---|
| Send message | Enter |
| New line in composer | Shift+Enter |
| Show shortcuts help | ? (when input not focused) |