Layouts
Rift Panel includes a layout system that lets you save, restore, and switch between panel arrangements. Use built-in presets for common configurations or create your own named layouts for project-specific workflows.
A layout is a serialized snapshot of the entire panel tree — every split direction, ratio, panel position, and session assignment. Layouts decouple your workspace arrangement from your sessions, so you can rearrange panels without losing running processes, or apply a familiar arrangement to a new set of sessions.
Workspace Presets
Rift Panel ships with four built-in presets accessible from the command palette (Ctrl+Shift+P) under the "Layout" category:
| Preset | Description |
|---|---|
| 1-up | A single panel filling the entire workspace. Ideal for focused, single-session work — reading long Claude Code responses or running a build. |
| 2-up | Two panels side by side in a 50/50 horizontal split. The most common layout for pairing a Claude Code session with a shell for testing. |
| 3-up | One large panel on the left (50% width) with two stacked panels on the right (each 50% height). Good for running an AI session alongside a shell and a log tail. |
| Quad | Four equal panels in a 2×2 grid. Suited for running multiple concurrent AI sessions — for example, Claude Code and Codex side by side with dedicated shells for each. |
Applying a preset replaces the current panel tree but does not close running sessions. Existing sessions are redistributed into the new panels in their original order. If the new layout has fewer panels than open sessions, excess sessions stack as tabs in the last panel.
Custom Layouts
Arrange your panels however you like, then save the configuration as a named layout. Open the command palette and run Layout: Save Current. Enter a descriptive name — for example, "Frontend + API + Logs" or "Code Review" — and the layout is stored for later use.
Custom layouts capture everything the presets do: split directions, nesting depth, and size ratios. They do not capture session content or working directories — only the structural arrangement of panels. This means you can apply the same layout to different projects without conflict.
To apply a saved layout, open the command palette and run Layout: Apply. A list of your saved layouts appears, sorted by most recently used. Select one to apply it immediately. You can also delete saved layouts from this list by pressing Delete on a highlighted entry.
Name your layouts after workflows rather than projects. A layout called "3-panel review" is reusable across any codebase, while "my-app layout" is not.
Restoring Layouts
Rift Panel persists the active workspace layout to localStorage using a schema-versioned format (currently schema v7). On every layout change — splits, resizes, panel closes — the workspace state is written to storage within a debounced 500ms window.
When Rift Panel launches, it reads the persisted state and rebuilds the panel tree exactly as it was. The restoration process works in two phases:
- Structure restoration — The panel tree (splits, directions, ratios) is reconstructed first. This happens synchronously and produces the visual layout within the first render frame.
- Session restoration — Each panel's session metadata (type, working directory, label) is used to spawn new PTY processes. Sessions are created in parallel to minimize startup time.
If the persisted state fails schema validation — for example, after an Rift Panel update changes the schema version — the app falls back to the default 1-up layout and logs a warning to the developer console. The invalid state is not deleted, so it can be inspected for debugging if needed.
Custom saved layouts are stored separately from the active workspace state. Even if the active layout resets due to a schema migration, your saved layout library is preserved.
Layout Tips
- Start with a preset, then adjust. It is faster to apply 2-up and tweak the split ratio than to build a layout from scratch with manual splits.
- Keep your primary AI session in the largest panel. Claude Code and Codex produce long outputs — giving them more horizontal and vertical space reduces scrolling.
- Use the quad layout for parallel experiments. When comparing approaches, run each in its own panel so you can see all outputs simultaneously without tab switching.
- Avoid deeply nested splits. More than three levels of nesting makes panels too small to be useful on most displays. If you need many panels, prefer a flatter arrangement with the quad preset as a starting point.
- Maximize for focus, then restore. Use Ctrl+Shift+M to temporarily maximize a panel when you need to concentrate on a single session. Your layout is preserved and restored when you un-maximize. See the Panels page for details.