Customizing the MOLTamp status line
The thin bar at the bottom of the window has more configurability than you think. Here is the complete reference.
Customizing the MOLTamp status line
The status line is the thin bar at the bottom of every MOLTamp window. By default it shows the active skin name, current working directory, and the version. Nothing fancy. But it is one of the most customizable single elements in MOLTamp and most users do not know it.
This post is the complete reference for the status line. What it shows by default, what it can show, how to customize it via skin CSS, and the keyboard shortcuts that hit it.
The default elements
In a fresh MOLTamp install, the status line shows (left to right):
- Skin chevrons (◀ ▶) — click to cycle through installed skins
- Active skin name — the id of the current skin
- Working directory — current cwd, shortened to
~/path/to/dir - Worktree indicator — appears only if you are inside a git worktree
- Layout name — appears when multiple layouts exist (e.g., "Skin Default", "Layout 2")
- Layout chevrons — cycle through saved layouts
That is the standard set. Most of it is interactive — you can click directly on these elements to do things. Right-click reveals additional menus.
The right-click menus
This is the part most users miss. Right-click any element in the status line and you get a context menu with relevant actions:
- Right-click the skin name → Open skin settings, next/previous skin
- Right-click the directory → Copy path, open in Finder
- Right-click the layout name → Open layout settings, rename, save as skin default (in dev mode), next/previous layout
The "Save as Skin Default" entry in the layout menu is the dev-mode workflow for updating built-in skin defaults — see the post on saving skin defaults for context.
Customizing the appearance
The status line is a regular DOM element and your skin CSS can target it. The class is .moltamp-statusbar. Some properties you can override:
.moltamp-statusbar {
/* Background color */
background: var(--c-chrome-bg);
/* Border on top */
border-top: 1px solid var(--c-chrome-border);
/* Height */
height: 26px;
/* Padding */
padding: 0 12px;
/* Font */
font-family: var(--font-mono);
font-size: 10px;
}
By default the status line picks up the chrome colors from your skin variables. You can override them specifically for the status line if you want it to look different from the rest of the chrome — for example, a brighter accent on the status line for visibility.
The dirty indicator
When your current layout has unsaved changes (you moved widgets around but did not save the layout), the layout name in the status line gets an asterisk: Skin Default* and a small "(unsaved)" label. Click "REVERT" to discard the changes or "SAVE" to commit them.
This is the same dirty-detection system that kicks in when you change colors or effects on a skin. The status line is your first signal that the workspace has been modified.
What I would change
Things I would add to the status line if I had time:
- A live agent state indicator — small dot that pulses when the active session has the agent thinking, glows green when complete, red on error
- Token count — for users with API access, show estimated tokens used in the current session
- Connection status — visible indicator when network is down (matters for tools that require API access)
- Active session count — small badge showing how many tabs/sessions are running
None of these exist yet. Some are on the roadmap. If you have a strong opinion on what should be there, the community Discord has a #feature-requests channel.
Hiding the status line
If you want maximum vertical space for the terminal and you do not care about the status line elements, you can hide it entirely. Settings → Layout → uncheck "Show status bar." Everything still works (the keyboard shortcuts still hit) but the bar disappears.
Most people leave it visible. The information density is low and the height (26 pixels) is small enough that it does not feel like wasted space.
The roadmap
The status line is one of the elements I want to make more configurable in a future version. The vision is something like a customizable "widget strip" — drag any widget into the status line, rearrange the elements, choose what shows on the left vs right vs center. For now it is the default elements with theme-level customization. Good enough for most use cases.
If you want to dig into the source, the status bar component lives in src/components/shell/StatusBar.tsx. It is one of the smaller, more readable files in the renderer.