v0.10.0

Prerelease

Put-away tabs

An ordinary tab you have not shown for longer than a set time closes into its Space's put-away list. This is on by default, at 12 hours. Set Put away unused tabs in Settings, under Interface, to Off, 1 hour, 12 hours, 1 day or 1 week. A tab from before the upgrade counts from the first start of this version.

  • The check runs at startup, on a Space switch before the Space is shown, and every five minutes.
  • Pinned tabs, Keep active tabs, a tab making sound and an Agent tab with an Agent attached are never put away. Neither are both tabs of a split, the tab Developer tools are attached to, a row being dragged or each Space's active tab.
  • The list keeps each tab's address, title, zoom and muting for 30 days. The History sheet shows it in a put away group at the top, and the Omnibar ranks it with History. Reopening one opens a new tab.
  • Clearing a Space's history over a time range clears what was put away in it. The list stays outside Sync, and a Private window puts nothing away.
  • The first time Omaweb puts a tab away, a notice says so once, with a way to the setting.

Tabs from Omarchy's menu

omaweb tabs --pick offers every Space's tabs to Omarchy 4's menu, omarchy-menu-select. Each row is the tab's title, with its host and Space under it. Choosing one selects the tab and brings the window forward. The README shows a line for bindings.lua and a row for omarchy-menu.jsonc that open it. Omaweb writes neither file.

omaweb tabs --all --json lists every Space's tabs in one answer, without Private windows. omaweb focus --raise brings the window forward, and a plain omaweb focus leaves it where it is.

Ask your agent

:ask <words> in the Omnibar's command scope hands the tab on show to your own agent. Omaweb opens your terminal through xdg-terminal-exec and runs the Agent command from Settings, claude by default. It passes one argument: a prompt that names the tab and holds your words. No shell reads the tab or the words. Omaweb still holds no model and no provider credentials.

  • Set Agent command in Settings, under agents. It is split like a command line, so claude --model sonnet works.
  • With Allow agents off, a question bar offers to turn it on, with Turn on and Not now. Turn on goes on with what you typed.
  • A missing agent or terminal ends in a notice that names the program.
  • A Private window does not list :ask.

Finnish

The whole interface is translated to Finnish. Omaweb loads the catalogue for the locale that LC_ALL, LC_MESSAGES or LANG names, and falls back to English. The Start page, the sidebar, the Omnibar, Settings, Site information, prompts, menus and notices all follow it.

Settings shows the locale in use under Interface, for example Suomi (fi_FI). Its note names the variable that chose it and the languages that ship. Command names are translated, but command identifiers, keys, logs and stored settings stay English.

Start page and Omnibar

The Start page and the Omnibar match the website.

  • The night road fills the page area only, centred on it, and never runs under the sidebar. The sidebar keeps its own fill over a Start page.
  • The field asks "Where to?", or "Where to? · opens in a new tab" for a new tab. The typed text has no glow and holds a contrast of at least 4.5:1 against the glass.
  • Every key in the chrome is drawn as the website's key cap: the Start page hint, the Key labels and the Shortcut sheet. Return, the arrows, Tab, Backspace, Delete, Shift and Space are symbols.
  • A hint row under the field names the keys to select and go, read from the key map. ? shortcuts stays at its right end.
  • A result row ends in a label for what Return does, such as Switch to Tab, Open or Search, and an arrow key cap. Another Space's name moves into that label.
  • The selected row is the accent at 14% over the panel, with an accent bar at its left edge.
  • Link hints look like the website's: an accent plate with the code in uppercase.
  • In a Space at rest, Escape hands the keyboard from the field to the browser, so the bare keys work. o, Primary+L or a click on the field give it back.

Fixes

  • After a switch to another Hyprland workspace and back, the page area could stay black. Omaweb makes the engine attach the page again when the window returns. In 50 returns on the machine that showed it, no frame was black. Until the page draws again, Omaweb covers it with its own colour for 400 ms at most. A page that draws all the time loses its picture for 50 to 100 ms on each return.
  • A page loading in a dark theme could flash one to four white frames. The view keeps the theme's colour, and a page with no background of its own gets its white from a page script.
  • When a tab that had been in a split before was paired again, the tab beside arrived without its nudge. The page on show was nudged from the wrong place too.
  • Letting go of a dragged sidebar row no longer selects its tab.

Full changelog: https://github.com/villekivela/omaweb/compare/v0.9.0...v0.10.0

This release on GitHub