FixControl/Documentation

User Guide

Keyboard & command palette

Every shortcut and the Cmd-K palette in one page — reference for operators who live on the keyboard.

FixControl is built for operators on the keyboard. Every list page, every detail pane, and the global shell share one map. Press ? to open the live help dialog — it shows whatever is registered on the page you are on, so it's always honest. ? does not open help while you are typing in a field (a question mark is a normal character in a reply or a search box); click outside the field first, or use Open keyboard shortcuts in the command palette.

Global

KeysDoes
Cmd/Ctrl+KOpen the command palette (search, navigate, run actions).
Cmd/Ctrl+Shift+KOpen Command Center (the AI assistant).
?Open the live shortcut help dialog (not while typing in a field).
g then iGo to Issues.
g then mGo to Missions.
g then nGo to Inbox.
g then pGo to Patches.
g then wGo to Work sessions.
g then fGo to Follow-ups.
g then kGo to Knowledge.
g then aGo to Agents.
g then oGo to Orchestration & context.
g then rGo to Agent runs.
g then dGo to Dashboard.
g then sGo to Settings.

Press g, then the second key within about 1.5 seconds. g chords don't fire while you are typing in a field. On the Issues page, g o and g r mean something else (see below) and take precedence over the global ones.

Tables (every list page)

KeysDoes
j / kMove active row down / up (wraps at edges).
Shift+j / Shift+kPage-jump 10 rows (clamps at edges, doesn't wrap).
EnterOpen the active row (split pane on Issues, detail route elsewhere).
/Focus the search input in the table toolbar.
xToggle selection on the active row; sets the range anchor.
Shift+xRange-select from the anchor to the active row (Gmail-style, additive).
Cmd/Ctrl+ASelect every row on the visible page.
EscClear selection if any; otherwise blur the focused element.

Selection survives pagination, sort changes, and filter changes — refilter to narrow the visible set, keep ticking rows, and bulk-act on the union once you're done.

When the mouse hovers a row, the active-row marker syncs to it — so j/k after a hover continues from where you were looking.

Row actions (page-bound)

Each list page may bind extra single-key actions on the active row. The help dialog (?) lists the ones that the current page registered.

KeysPageDoes
aIssuesRun the row's primary action (open / approve / send).
fIssuesRun fix on the active row: in the list this is a quick trial run of the developer agent, without a mission or pull request (see Issues).
g then oIssuesOpen queue (clear bucket filter). Replaces the global "Go to Orchestration & context" on this page.
g then rIssuesReview bucket. Replaces the global "Go to Agent runs" on this page.

Page-bound row keys never fire while typing. To reach Orchestration or Agent runs from the Issues page, use the sidebar or the command palette. The Inbox has its own set of single-key actions — see Inbox → Keyboard shortcuts.

Detail pages

KeysDoes
[Previous item under the list filter+sort you came from.
]Next item under the same filter+sort.

The pager only renders when there is recorded list context. Open a detail directly (deep link, fresh tab) and the pager hides — there's nothing to step through. The recorded context survives a page reload because it lives in URL state on the list page; the detail route reads it back.

Split view (Issues, Patches, Inbox, Follow-ups)

Keys / gestureDoes
Drag dividerResize the split. Width is persisted per-operator.
Focus divider, ← / →Step the divider 16 px.
Focus divider, Shift + ←/→Step 64 px.
Focus divider, Home / EndSnap to max / min.

The split collapses on narrow viewports automatically. When the pane is collapsed, row activations route to the standalone detail page instead.

Command palette (Cmd/Ctrl+K)

The palette searches across navigation, queues, recent items, saved views, and actions — anything the page you are on registers shows up too.

  • Type to fuzzy-search; arrow keys move the highlight; Enter runs.
  • Navigation — "Go to Issues", "Go to Patches", "Go to Agent runs" and the other main pages, with their g chord shown where one exists.
  • Queues — for example "Issues — Review queue", "Issues — Critical only", "Patches — In review".
  • Recent items — issues and other items you opened recently, such as BIZ-29.
  • Saved views — every saved view by name.
  • System — "Open Command Center", "Open keyboard shortcuts", "Settings".
  • The palette resets its query on close — re-opening starts clean.

Issue actions in the palette

On the Issues page the palette offers actions for the active row only — the issue open in the split pane. With an active issue, for example BIZ-29, you get:

  • Approve BIZ-29 (also on the a key)
  • Run fix on BIZ-29 (also on the f key)
  • Reject BIZ-29
  • Mark BIZ-29 as duplicate
  • Open BIZ-29
  • Delete BIZ-29

Without an active row these actions are hidden. The palette does not create issues and does not act on a selection of several rows: use the bulk bar for Approve, Reject or Delete on selected rows (Delete only appears if your role may delete issues).

What's preserved across reloads

  • Table state — page, page size, sort, search, filters, view — lives in the URL, so reload restores exactly what you had.
  • Selection — survives pagination, sort, and filter changes; cleared by an explicit Esc, the bulk-bar Clear, or navigating away.
  • Split-pane width + open state — per-page, per-operator, persisted in your browser.
  • Saved views — per-tenant, shared across operators when marked shared.
  • Detail-pager context — the captured list filter rides along to the detail route, so [ / ] keep working after a reload of the detail page itself.

Cross-references

Anything unclear or wrong?Let us know →

FixControl is a trade name of FixControl B.V.