Skip to content

Releases: theboringhumane/theboringfloor

v0.3.24

Choose a tag to compare

@github-actions github-actions released this 03 Sep 04:18

Changelog

Features

  • b5a046d feat(build): add Windows support and refactor signal handling

Other

  • b5bd067 refactor: rename module and update references to theboringfloor

v0.3.23

Choose a tag to compare

@github-actions github-actions released this 03 Sep 03:53

Changelog

Features

  • 930107f feat(app): lease current backend at send and idle recap
  • a963fec feat(brand): add CLI, display, env, and dotdir names
  • e5ee1f0 feat(config): enhance theme directory migration and update tests
  • 16aec84 feat(config): implement home directory migration from ~/.theboringoffice to ~/.theboringfloor
  • bceb960 feat(config): store state in ~/.theboringfloor
  • 043db0c feat(install): ship theboringfloor binary with tbo shims
  • fb3143f feat(website): 302 /install.sh and /install.ps1 to GitHub main

Other

  • 0569b75 Refactor Hero component in website
  • 19fdc2c docs(website): rename product to theboringfloor
  • 6d23101 docs: rebrand product copy to theboringfloor
  • f013230 refactor: rename wire prefix and copy to theboringfloor

theboringoffice v0.3.22 — built-in browser first

Choose a tag to compare

@github-actions github-actions released this 02 Sep 14:34

Agents now get an explicit built-in-browser-first rule on both backends.

  • Use the office browser for every URL, including localhost and external pages.
  • open-browser shows a page, browser-screenshot captures it for the member, and browser-snapshot reads text/links for the agent.
  • browser-action remains mutating and permission-gated.
  • Agents must not launch Chrome, Chromium, Playwright, Puppeteer, terminal-browser, or another browser process unless the member explicitly asks for an external browser or the built-in path fails and the failure is explained.
  • The policy lives in both the first-turn runtime prompt and the canonical oikonomos charter, so it survives context compaction/reload.

Full Changelog: v0.3.21...v0.3.22

theboringoffice v0.3.21 — context recovery

Choose a tag to compare

@github-actions github-actions released this 02 Sep 14:16

The office can now give its boss recent chat context when compaction or a long session makes it lose the thread.

  • Context recovery tool: agents on both backends can emit ⟦recent-messages⟧ (default 20) or ⟦recent-messages: N⟧ (1..50). The marker is hidden, and the office sends a bounded synthetic transcript containing recent user, boss, and tool-output rows. Newest context is preserved; recovery-control noise cannot recursively reappear.
  • Post-bypass sends proven: successful ON/OFF/rapid transitions route ordinary text and attachments exactly once to the fresh backend. An unavailable generation now shows send failed: active backend unavailable instead of silently claiming success. OpenCode and real Claude candidate handoff tests both return replies after old-generation cleanup.
  • Changelog refresh: every static build fetches a fresh release list; the canonical changelog includes v0.3.20.
  • Interaction polish: right-panel tabs are clickable and terminal mouse/focus/capture behavior is hardened.

Full Changelog: v0.3.20...v0.3.21

theboringoffice v0.3.20 — bypass works on both backends

Choose a tag to compare

@github-actions github-actions released this 02 Sep 12:56

Bypass permissions now works end-to-end on both backends.

  • Reliable lifecycle: /bypass builds and starts the replacement before switching. The current backend remains usable during restart, the indicator reflects the active mode, failures retain the old backend, rapid toggles coalesce, stale results are ignored, and discarded candidates are stopped asynchronously.
  • OpenCode: bypass is a process-scoped OPENCODE_CONFIG_CONTENT override on the office-owned child. OFF strips inherited overrides. Project config, parent environment, and brain.json remain untouched. The serve reaper is the sole Wait owner.
  • Claude: --dangerously-skip-permissions propagates through initial Start, death respawn, NewOffice, SwapPrimary, and ReconnectMCP. CLI rejection is actionable.
  • Real provider proof: OpenCode created a file under bypass with zero permission events. Claude ON executed Write with zero EvPermission/can_use_tool; the OFF control prompted and completed after allow-once.

Full Changelog: v0.3.19...v0.3.20

v0.3.19

Choose a tag to compare

@github-actions github-actions released this 02 Sep 10:00

Changelog

Other

  • 7706298 wave 103: fix typing animation hang after boss turn ends without text — tool-call-only turns (boss dispatches sub-agents with no plan text) left the boss-N typing placeholder Pending:true forever because maybeBossCompleted swallowed the completion and nothing else cleared it. OpenCode backend now emits a clearing EvChatBoss on session.idle for the primary (guarded against false mid-turn idles by checking textSess); Claude backend emits the same on the result event that pops the FIFO. The reducer's branch (c) learned to strip stale placeholders without appending an empty bubble when the clearing event arrives, making it a no-op on normal turns where streaming already stripped the placeholder.

v0.3.18

Choose a tag to compare

@theboringhumane theboringhumane released this 02 Sep 06:27

Fixes

  • Pasted images now survive for the assistant to read — the Claude backend wrote [attached file: "path"] text references to temp files that were cleaned up before the assistant could read them. Paste attachments are now persisted to a stable directory so the path reference remains valid after the send pipeline's cleanup pass.

  • Bypass permission mode no longer gets stuck on "restarting" — when a backend build result arrived with a stale transition ID, the bypass latch (bypassRestarting) was never cleared, permanently wedging future /bypass toggles. Both stale-transition guards now properly release the latch.

theboringoffice v0.3.17 — attachment routing after swaps

Choose a tag to compare

@github-actions github-actions released this 02 Sep 05:11

Fixes Markdown/code attachments after backend switches and bypass respawns.

  • Ordinary Enter now resolves the current backend when the send command executes. /backend and /bypass can no longer leave chat pointing at a stopped backend.
  • Backend generations transition accepting → draining → retired: new sends switch immediately, preaccepted sends may finish, and old teardown happens asynchronously without freezing the UI.
  • Claude stdin write failures return real errors instead of false success, so queued attachments remain retryable.
  • End-to-end app-to-wire tests cover OpenCode immediate sends, queued/reset retries, and replaced native Claude. Markdown and Go files are always quoted absolute path references; zero text media parts are emitted.

Full Changelog: v0.3.16...v0.3.17

theboringoffice v0.3.16 — attachments, themes, Windows

Choose a tag to compare

@github-actions github-actions released this 01 Sep 16:21

Three rough edges closed in one release.

  • Attachments no longer break Claude providers. OpenCode uploads only content-validated images and PDFs. Text, source, archives, and other files become safe absolute path references that the agent reads with its file tools. Spoofed media MIME falls back to a path reference. Native Claude now implements attachment sending instead of silently dropping files.
  • Themes are coherent again. The sidebar wrapper and PanelBox own one continuous per-theme background; ordinary chat, tool, output, roster, board, and picker text inherits it instead of drawing black/white rectangles. Active selections, diff tints, and terminal ANSI backgrounds remain semantic. Theme identity now invalidates the frame cache, including automatic light/dark switches.
  • Windows installer support. A PowerShell installer and Windows getting-started documentation are included.

Independent review caught and fixed a MIME-spoof bypass and missing-file transcript-count mismatch before release.

Full Changelog: v0.3.15...v0.3.16

v0.3.15

Choose a tag to compare

@github-actions github-actions released this 01 Sep 09:45

Changelog

Other

  • a0da7fb wave 99: panel elements inherit PanelBg — every styled span inside the sidebar panel now carries the PanelBg background instead of defaulting to the terminal bg. New OnPanel/OnPanelBold helpers + 8 Panel* style variants (PanelDim, PanelHeader, PanelAccent, PanelErr, PanelOK, PanelInfo, PanelTool, PanelWarn) in chrome/styles.go mirror the OnBar pattern; all 14 panel files updated to use them. No more visible background holes between PanelBox fill and element text.