Skip to content

Releases: TeeJS/bedrock-panel

v0.9.4 — Electron 44 and AI Voice markdown

Choose a tag to compare

@TeeJS TeeJS released this 08 Sep 22:44

Electron 44 under the hood, markdown in AI Voice, and the old Open WebUI chat app retired.

AI Voice

  • Replies render as markdown. Headings, lists, tables, links, images, and inline code show properly instead of as raw symbols, using the same parser and sanitizer the old Open WebUI chat app used. Fenced code blocks keep the one-tap Copy button that hands back the exact text.
  • Your own turns stay raw text. They are mostly speech-to-text, so a stray * or # never restyles them.

Open WebUI chat app removed

The original per-page Open WebUI chat app is gone; AI Voice on the Open WebUI backend replaces it with streaming replies, conversation memory, a model picker, profiles, and knob ring feedback.

  • Existing pages migrate automatically on first launch: each becomes an AI Voice page on the Open WebUI backend. The first page's URL, API key, and model seed Settings → Auth if that was still blank; later pages keep their model as the page's pick.
  • Two things do not carry over: voice now runs through the Wyoming STT/TTS servers on Settings → TTS/STT rather than Open WebUI's own Whisper, and the knob gesture is tap-to-toggle rather than hold-to-talk.

Under the hood

  • Electron 44 (Chromium 152). The installer is about 10 MB larger because the graphics layer is now built into Electron rather than shipped as separate DLLs.
  • Builds on Node 26. The toolchain now supports Node 20 through 26 (yargs 17.7.3 fixes the Node 25.7/26 load failure in electron-builder's CLI).

v0.9.3 — Azure DevOps error details

Choose a tag to compare

@TeeJS TeeJS released this 08 Sep 18:07

Azure DevOps error details, and the GitHub page stops losing its session.

Azure DevOps app 1.0.4 (via app updates)

  • Error details button. When a request fails, a warning-triangle button appears in the app header. It opens a dialog with the failing data source, HTTP status, Azure DevOps error type, and request/activity ID, plus a Copy details button. Tokens, authorization headers, and request URLs are stripped from the copied text.
  • Work Items view fixed. Version 1.0.2 sent fields and $expand together, which Azure DevOps rejects, so the Work Items tab and work-item details never loaded. They do now.
  • Setup guide gains a troubleshooting section for organizations where only some projects fail.

Thanks to @markhollingworth-worthit for the app changes and the GitHub fixes below (#44).

GitHub page

  • The editor preview and the panel no longer fight over one session token. Each gets its own, so opening the page editor while the GitHub page is showing no longer breaks the panel with "session expired".
  • Returning to the GitHub page after the screensaver or another page now reloads it properly instead of showing "session expired".
  • Saving Settings while the GitHub page is showing no longer reloads the page.

Housekeeping

  • Community app READMEs and setup guides now say Bedrock Panel (via app updates).

Bedrock Panel v0.9.2 — open-quake is now Bedrock Panel

Choose a tag to compare

@TeeJS TeeJS released this 08 Sep 07:09

Bedrock Panel v0.9.2 — open-quake is now Bedrock Panel

Same project, same code, new name. Website: https://bedrockpanel.com · Discord: https://discord.gg/7F8DFMVQMv

What changes for you

  • The app, installer, Start-menu shortcut, and tray now say Bedrock Panel, with a new icon.
  • Downloads are bedrock-panel-setup.exe and bedrock-panel-portable.exe.
  • Upgrading is automatic. Install over your open-quake install: the old version is removed, and on first launch your settings, dashboard logins, and drop-in apps move from %APPDATA%\open-quake to %APPDATA%\bedrock-panel. Nothing to redo. (Upgrades keep the existing …\Programs\open-quake install folder unless you change it in the installer.)
  • Default folders renamed. Documents\OpenQuake Meetings becomes Documents\Bedrock Panel Meetings and Documents\OpenQuake Translations becomes Documents\Bedrock Panel Translations, moved once on first launch. Folders you set yourself in Settings are left exactly as they are.
  • Home Assistant busy sensor renamed. MQTT topics are now bedrock-panel/<host>/… and the entity is binary_sensor.bedrock_panel_busy. If you set this up on 0.9.0/0.9.1, the app clears the old binary_sensor.open_quake_busy discovery on its next connect; point any automation at the new entity.
  • Old TeeJS/open-quake GitHub links redirect to this repository.

open-quake v0.9.1 — MQTT Test connection fix

Choose a tag to compare

@TeeJS TeeJS released this 05 Sep 08:20

Fixed

  • Home Assistant (MQTT) Test connection button now performs a real connection test. It previously always reported "Failed / no response" even when the broker was reachable and the connection was fine.

open-quake v0.9.0 — Busy presence

Choose a tag to compare

@TeeJS TeeJS released this 05 Sep 03:37

open-quake v0.9.0 — Busy presence

Adds busy light functionality to meetings app

  • Kuando Busylight over USB, no vendor software
  • WLED lights over the network
  • Home Assistant — auto-creates binary_sensor.open_quake_busy over MQTT
  • Busy column on the meeting panel — Auto / Busy / Free / Custom, with a colour picker
  • Schedule — limit the light to chosen days and hours

Fixed: auto-record could miss a Zoom/Teams call, or keep recording after it ended, when another app also held the mic.

v0.8.4

Choose a tag to compare

@TeeJS TeeJS released this 01 Sep 02:16

Reliability

  • Crash-resistant startup. A HID enumeration error can no longer crash launch, and one device connector failing no longer prevents the other from starting.
  • Isolated panel boot. Meeting recorder, dictation, and slide capture now start independently — if one fails it degrades only that feature and raises a tray notice naming it, instead of silently taking the rest down with it.
  • Last-resort error handling. Added global crash backstops with sanitized logging and a controlled shutdown, so an unexpected fault is surfaced rather than swallowed.
  • Cleaner local server lifecycle. Shutdown/restart no longer leaks live connections or event streams, a failed port bind now recovers cleanly, and a port change notifies you (saved app data can appear under a new origin — it isn't deleted).
  • Page-switch fix. Removed dead code that was silently short-circuiting page switching, restoring music now-playing updates and GitHub capability gating.

v0.8.3

Choose a tag to compare

@TeeJS TeeJS released this 31 Aug 07:29

Drop-in apps

  • "Don't ask again" for executable code. The install/update/reinstall warning is now a proper dialog with a third choice: approve and stop asking for this app. Trusted apps update silently from then on; new apps always still ask. Trusted apps show a badge in the Installed list, with "Ask again about executable code" in the row menu to revoke.
  • App-OAuth panel slimmed down. A healthy connected account collapses to one line with a Manage expander (full controls return automatically for first connect, errors, or expired tokens). Apps that ship their own connect UI can set "oauth": { "selfManaged": true } to suppress the editor panel entirely.

Editor

  • Served-app management embeds auto-size to their content.
  • Long app descriptions clamp to the first sentence with a native more… expander.

v0.8.2

Choose a tag to compare

@TeeJS TeeJS released this 31 Aug 00:41

Drop-in app platform

  • Folder picker capability. A served drop-in that declares "hostCapabilities": ["pick-folder"] can ask the user to choose a directory via POST /app-host/pick-folder. The dialog is host-owned and directory-only; the app receives exactly the folder the user selected — nothing else. Same-origin gated per app, one dialog at a time, paths never in URLs or logs.
  • App-owned editor surfaces. A served drop-in can declare "editor": { "entry", "label" } to render its own management UI inside the Editor (sandboxed iframe on the loopback origin with _surface=editor and theme parameters — no Node, IPC, or preload access). Apps like Folder Sync manage their jobs from the desktop without app-specific editor code in the host.

Housekeeping

  • apps.json catch-up for the v0.8.1 developer-apps removal (the 0.8.1 binaries already shipped correct; this aligns the repository).

v0.8.1

Choose a tag to compare

@TeeJS TeeJS released this 30 Aug 05:27

Drop-in apps

  • Shared Home Assistant credentials. Drop-in server modules can now read the Settings → Auth HA connection via host.getHaAuth() — HA apps no longer ask for a URL/token per app, and the token still never reaches a panel page.
  • serverAutoStart manifest flag. Apps that run background work (schedules, timers) can opt in to have their server module loaded at host startup — and re-armed after install/update — instead of waiting for the first page visit.
  • Discover list fixes: long descriptions ellipsize with the full text on hover instead of pushing the Install button off-screen, and the Install/Installed/Update buttons are now one uniform, centered column.

Developer apps removed

  • The built-in HA Schedule, Agenda, and Events developer apps — and the "show developer apps" concept — are gone, replaced by drop-in versions. Pages still pointing at the old built-ins render blank; delete them and rebuild on the drop-ins.

Editor

  • Apps settings redesigned: one bounded app-management surface — search with a shown/hidden count, a two-column list with icons, descriptions, and Shown/Hidden switches, Show all / Hide all in the list header, and a direct "Manage drop-in apps →" link.
  • Sidebar: "Filter pages…" is now "Search pages…" and also searches Groups and Panes; a new Filter pulldown narrows the Pages list by type (Grids / Built-in apps / Drop-in apps / Dashboards) with a Reset button beside it.
  • Fixed: Auth-tab Refresh Configuration crashed with "Cannot read properties of undefined (reading 'length')" whenever the selected page had no tile grid (e.g. an HA Dashboard page).

open-quake v0.8.0 — Editor overhaul

Choose a tag to compare

@TeeJS TeeJS released this 29 Aug 17:41

The editor got a full usability pass: stronger hierarchy, progressive disclosure, and live previews. The panel UI is unchanged.

Settings

  • Settings now fill the window with a grouped vertical navigation (General / Device / Apps / Integrations / Automation); the sidebar collapses while open and the header button becomes "← Back to pages". Every page has a title, purpose line, and consistent sections.
  • Long help text collapses to one sentence with More… expanders throughout.
  • Clear save states ("All changes saved / Unsaved changes / Saving… / Unable to apply") and a Save & apply button.
  • Software: Run mode, Global shortcuts group, shortcut-conflict warnings, dependent fields hidden until enabled.
  • Theme: live preview, editable hex accent, reset, preset management.
  • Hardware: device-connected indicator, knob controls as a table with reset-to-defaults, percent sliders, "Store ring settings on device".
  • Monitor: state indicator + Enter Monitor mode button.
  • Apps: filter, visible/hidden counts, Show/Hide all — built-in apps only (drop-ins live on their own page).
  • Drop-in apps: sortable columns, Ready/Update/Error filters, last-check time, "N updates available" action.
  • Auth: one card per integration with status pills; disabled integrations collapse.

Page editors

  • Live previews: the real panel page, scaled — including the side button strip with your actual tiles (Music, clocks, and every app page).
  • Shared Page behavior card on every page: side button strip with inline placement/size, rotation, Jump-to-page shortcut with conflict warnings, Advanced settings; labeled Danger zone with delete confirmation.
  • Grid: layout section, warning when shrinking would drop tiles, contextual merge hint, proper empty state.
  • LucidType: sectioned form, mic test button with live level meter, endpoint Check connection.
  • AI Voice: Agent/Workspace/Profile/Permissions sections, short permission-mode labels with explanations, explicit full-auto warning.
  • GitHub: connected account name, Change account, owner/repository validation.
  • Sidebar: filter, page-type chips, HIDDEN badges, single + Add page menu, keyboard reordering (Alt+↑/↓).

Downloads

  • Release artifacts no longer carry the version in their filenames — grab open-quake-setup.exe (installer) or open-quake-portable.exe; the version lives in the release tag and the app's About/header.

One technical note worth knowing: served drop-in pages now allow embedding by local files only (frame-ancestors file: instead of 'none') so the editor can show live previews — remote sites still can't frame them.