Omniscio documentation
Browse all documentation
  1. Getting Started18
  2. Sessions & Agents134
  3. Inbox & Notifications67
  4. Projects & Tasks98
  5. Automation & Scheduling78
  6. Knowledge & Memory28
  7. AI Features71
  8. Integrations106
  9. Plugins & Marketplace34
  10. Cloud & Teams53
  11. Settings & Customization69
  12. Account & Billing28
  13. Troubleshooting79
  14. CLI & API Reference27
  15. Legal & Policies5
  16. Uncategorised17

Custom CSS

You or your agent can write any CSS against the whole app and see it apply straight away — no restart. It lives in one file, and it is applied last, so it beats the app's own styling. If a stylesheet makes the app hard to use, three different actions will turn it off: a keyboard shortcut, a switch in Settings, or a command that works even when the screen is unusable.

What it is

Custom CSS lets you restyle Omniscio itself. Out of the box the app offers themes, which recolour a fixed list of colour variables. Custom CSS is the open-ended version of that: any CSS property, against any part of any screen — spacing, borders, rounding, hiding things, rearranging them.

That means you or your agent can make the app look and behave the way you want, rather than the way a fixed set of options allows. It is aimed at people who are comfortable with CSS, and at their agents, who can write it for them.

Two things worth knowing from the start:

  • Your CSS is applied after the app's own styling, so it wins. That is what makes it powerful, and it also means a mistake is very visible.
  • It can never load anything from the internet — no web images, no web fonts, no importing another stylesheet. Those references are removed automatically and the app tells you how many it removed. If one is hidden in a way the app cannot safely rewrite, the stylesheet is not applied at all and the card says why — safer than applying half of it.

Where to find it

Settings → Appearance → Custom CSS. The card holds a text box for your stylesheet, a Save & Apply button, an Undo button, an Edit the file button that opens the stylesheet in your own editor, an on/off switch, and a line telling you who last changed the styling and when.

Under the covers it is one file — styles/custom.css inside your Omniscio data folder (on Windows, %APPDATA%\omniscio\styles\custom.css). Editing that file directly, in any editor, has exactly the same effect as typing in the card. An empty file, or no file, simply means no custom CSS.

There is also a keyboard shortcut that toggles it on and off — Ctrl+Alt+Shift+C — and agents can reach everything through the app's own command line.

How it behaves

Type or paste your CSS and press Save & Apply. The change appears immediately, in every window you already have open — there is nothing to restart.

What you can target. The app's colour and spacing variables (the same ones a theme sets, named --accent, --color-surface-100 and so on) restyle the app everywhere when you set them on :root. Beyond that, every visible region of the app carries a stable name tag, and you can style one directly — the reply box, for example, is named session-input, so [data-ui-anchor="session-input"] { border-radius: 14px; } rounds off just that box. Plain selectors work too; there is no allow-list.

The one rule: session row height. To change how tall a session row is, set the variable --amc-session-row-height rather than restyling the row's height directly:

:root {
  --amc-session-row-height: 48px;
}

The list of sessions is drawn using only the rows you can currently see, and it works out where each one goes from a fixed estimate instead of measuring them. If your CSS makes a row taller without that estimate moving in step, rows land in slots of the wrong size: long lists overlap and clip as you scroll, with no error shown. --amc-session-row-height moves both halves together. If you restyle the row's height or padding directly instead, the app will warn you in the card — your CSS still applies, but long lists may misbehave.

When something goes wrong. Because your CSS is applied last, a bad rule can make the app look wrong very quickly. There are three ways off, in order of how broken the screen is: the Ctrl+Alt+Shift+C shortcut, the switch in the card, and — when the screen is too broken to click anything — starting the app with the --no-custom-css option, or turning it off from the command line. The app also starts with custom CSS off in Safe Mode.

Turning the layer off never deletes your stylesheet: the file is left exactly as it was, so you can fix it and switch it back on. The Undo button restores the version your last save replaced, so an experiment that goes wrong is one step away from the version that worked.

For agents

Everything the card does is available over the app's local command line, on http://127.0.0.1:19519, with the usual bearer token:

Call What it does
GET /custom-css The current stylesheet, whether it is live, who last changed it, and any warnings.
PUT /custom-css Replace the whole stylesheet. Body: {"text": "…"}.
POST /custom-css/undo Restore the version the last write replaced.
POST /custom-css/disable · POST /custom-css/enable The one-action escape, both directions.
GET /custom-css/anchors?q= Every name tag the app carries, so you can target a region by name instead of guessing it.

The settings key is customCssEnabled, and the launch flag that disables the layer before the first paint is --no-custom-css (the environment variable AMC_DISABLE_CUSTOM_CSS=1 does the same).

An agent session holds a scoped token and can write CSS with it — that is deliberate, because "let my agent customize the app" is the point of the feature. Every write is recorded against the session that made it and shown in the card. There is no approval prompt for a write; the safety net is the off switch and undo.

Related

If what you want is a different colour scheme rather than arbitrary styling, a custom theme is the simpler path — it fills in a fixed list of colours and the app applies them, and you can share a theme as a single file. Custom CSS composes with it: pick a theme, then layer your own CSS on top.

The rest of the appearance settings — text size, dark or light, motion and polish — live alongside it in Settings → Appearance, and are the right place to look before writing CSS to achieve the same thing.

Last verified 2026-10-12