Changelog

What shipped.

Every stable web and mobile release, in one place. This page is generated directly from GitHub Releases whenever the project ships.

View releases on GitHub
Showing 33 releases.
web
v0.10.0

v0.10.0 - native providers and Amazon Bedrock

GitHub

What's changed

  • Rebuilt model configuration around an explicit provider registry with native adapters for OpenAI, Anthropic, Google Gemini, Amazon Bedrock, and custom endpoints.
  • Added Bedrock model discovery and model-family routing across Anthropic Messages, OpenAI Responses, and OpenAI-compatible Chat Completions.
  • Unified provider validation across configuration saves, model discovery, health checks, title generation, and chat execution.
  • Made saved chat turns and active-stream ownership transactional, including persistence of partial assistant responses when a user stops generation.
  • Added configurable sidecar endpoints for self-hosted deployments and simplified web motion and navigation primitives.
  • Updated the default Compose app image to 0.10.0.

Upgrade note

Migration 0003 runs automatically on startup and preserves existing extra_body JSON as provider_options. Configurations recognized as OpenAI, Anthropic, or Google now use their native AI SDK adapters. Review advanced provider options after upgrading because native AI SDK options use camelCase keys rather than raw request-body fields.

Validation

  • npm run test (108 web tests)
  • npm run lint
  • npm run build
  • docker compose config --quiet
  • Production Playwright smoke with live Gemini streaming on the pull request, main, and recreated dev branch
  • Live Bedrock streaming through representative Anthropic Messages, OpenAI Responses, and Chat Completions models

Image

  • ghcr.io/yoloyash/overtchat-app:0.10.0
  • ghcr.io/yoloyash/overtchat-app:latest
  • Platforms: linux/amd64 and linux/arm64

Full Changelog: https://github.com/yoloyash/overtchat/compare/v0.9.11...v0.10.0

web
v0.9.11

v0.9.11 - interaction and motion polish

GitHub

What's changed

  • Standardized web motion with shared CSS duration, easing, surface, overlay, collapse, loader, and reduced-motion primitives.
  • Added typed route transitions and lightweight loading skeletons across chat, projects, settings, and the authenticated app.
  • Polished dialogs, drawers, menus, popovers, selects, toasts, controls, and chat affordances without animating streamed message tokens.
  • Improved chat composer autofocus, streaming scroll behavior, and the scroll-to-bottom affordance.
  • Updated the default Compose app image to 0.9.11.

Validation

  • npm run lint -w apps/web
  • npm run test -w apps/web (48 tests)
  • npm run build -w apps/web
  • Playwright motion coverage and live Gemini streaming smoke
  • docker compose config --quiet
web
v0.9.10

v0.9.10 - web toast notifications

GitHub

What's changed

  • Added a global Base UI toast layer for transient action feedback.
  • Surfaced previously silent mutation failures for chat rename, chat move, project updates, and model toggles.
  • Added success receipts for destructive/import/admin actions while preserving inline retry errors in dialogs and forms.
  • Centralized user-facing error extraction for more consistent feedback.

Validation

  • npm run lint -w apps/web --
  • npm run test -w apps/web --
  • npm run build -w apps/web --
mobile
mobile-v1.2.3

Mobile v1.2.3 - model picker parity

GitHub

Highlights

  • Aligned the mobile model picker with the web picker using compact icon-and-name rows.
  • Added shared SVG brand icons for configured models.
  • Bumped the Android release build to version 1.2.3.
web
v0.9.9

v0.9.9 - model picker parity

GitHub

Highlights

  • Aligned the web and mobile model pickers around compact icon-and-name rows.
  • Added shared brand icon rendering so model icons stay consistent across clients.
  • Simplified model picker lists by removing visible provider grouping and raw model metadata while preserving search matching.
mobile
mobile-v1.2.2

Mobile v1.2.2 - message editing fixes

GitHub

Mobile closed testing release.

Changes:

  • Preserve attachments when editing user messages, including removing individual attachments before resending.
  • Allow attachment-only messages to enter edit mode from the attachment chip.
  • Use a more familiar edit composer with clear Send and Cancel actions.
  • Fix the brief scroll-to-bottom jump when opening edit mode.
  • Bump mobile app version to 1.2.2 and Android versionCode to 8.

Install:

  • The AAB has been submitted to Google Play closed testing and is pending Google review.
  • The attached APK is available for sideload testing: overtchat-v1.2.2.apk.

APK digest: sha256:88a99f973b24fbfd80f60bc05187ccfb18663e870b62cd849d12a5d754e9513e

Full Changelog: https://github.com/yoloyash/overtchat/compare/mobile-v1.2.1...mobile-v1.2.2

web
v0.9.8

v0.9.8 - settings row and e2e hardening

GitHub

Highlights

  • Balanced settings row label/control layout so helper text in General settings no longer makes controls look visually off-center.
  • Bumped the default compose app image to 0.9.8.
  • Hardened chat streaming so missing REDIS_URL disables resumable-stream buffering instead of breaking normal responses.
  • Made the web E2E smoke test retry-safe by resetting the test database before each attempt.

Validation

  • PR #60 Web E2E passed before merge.
  • PR #61 Web E2E passed before merge.
  • main Web E2E passed for the code-bearing E2E hardening commit.
  • dev was recreated from main and Web E2E passed on 53f65a6.
  • v0.9.8 Web E2E passed.
  • App image publish passed.

Image

  • ghcr.io/yoloyash/overtchat-app:0.9.8
  • ghcr.io/yoloyash/overtchat-app:latest
  • Digest: sha256:eb24add2ddfb786b2f043c2aa742b79fd3d595789c04285aea1d0e7395f19a40
  • Platforms: linux/amd64, linux/arm64
web
v0.9.7

v0.9.7 - settings consistency polish

GitHub

What's changed

  • Polishes the web settings experience with shared, container-aware settings rows and page headers.
  • Aligns settings actions, switches, save/cancel bars, destructive dialogs, and responsive behavior across General, Account, Data, Models, and Users.
  • Improves the admin model list layout so row actions stay docked at realistic settings-pane widths.
  • Replaces the Users native delete confirmation with a consistent destructive dialog.
  • Renames the visible "Stats for nerds" copy to "Message stats" while preserving the existing localStorage key.
  • Bumps the default compose app image to 0.9.7.

Validation

  • PR #59 Web E2E smoke passed before merge.
  • Web E2E smoke passed on main after merge.
  • dev was recreated from main and Web E2E smoke passed there too.
  • Web E2E smoke passed on v0.9.7.
  • App image published successfully for ghcr.io/yoloyash/overtchat-app:0.9.7 and latest.

Image

  • ghcr.io/yoloyash/overtchat-app:0.9.7
  • Digest: sha256:b63f0413e3d20013c1f65d7a3ee3051b8000b9920209d56e9477406b6369eee3
  • Platforms: linux/amd64, linux/arm64
web
v0.9.6

v0.9.6 - web message edit polish

GitHub

What's changed

  • Polishes the web user-message editing UI with a more familiar compose-like edit surface.
  • Replaces icon-only edit controls with clear Cancel and Send actions.
  • Disables Send until there is a real edit while still supporting attachment-only edited messages.
  • Fixes the accidental dark-mode textarea background inside the edit bubble.

Validation

  • PR #57 Web E2E smoke passed before merge.
  • Web E2E smoke passed on main after merge.
  • dev was recreated from main and Web E2E smoke passed there too.
  • App image published successfully for ghcr.io/yoloyash/overtchat-app:0.9.6 and latest.

Image

  • ghcr.io/yoloyash/overtchat-app:0.9.6
  • Digest: sha256:05c0147d0d022cb630a3b76070aa6d45704916946fd5703c2c952c411bf2f703
  • Platforms: linux/amd64, linux/arm64
web
v0.9.5

v0.9.5 - model settings UX refresh

GitHub

What's changed

  • Refreshes the web model settings editor with unified create/edit behavior and more polished settings rows.
  • Improves model discovery, manual model fallback handling, connection testing, and advanced prompt/request-body fields.
  • Updates the admin models list with search, clearer row layout, enabled controls, health checks, and explicit edit/delete actions.
  • Improves the compact web chat model picker with search for larger model lists and better selected/loading/empty states.

Validation

  • Web E2E smoke passed on main, dev, and v0.9.5.
  • App image published successfully for ghcr.io/yoloyash/overtchat-app:0.9.5 and latest.
web
v0.9.4

v0.9.4 - server-owned chat titles

GitHub

What's Changed

  • Moved web chat title generation into the server chat lifecycle, generated from the first persisted user message.
  • Removed the client-triggered title endpoint path and the first-message fallback write; null titles stay as Untitled until a generated title is persisted.
  • Kept delivery on ordinary chat-list invalidation, with browser tab title sync and local-only sidebar title reveal.
  • Tightened title persistence and added focused title helper tests.
  • Bumped the default app image tag in compose.yml to 0.9.4.

Validation

  • npm run test -w apps/web --
  • npm run lint -w apps/web --
  • npm run lint -w apps/mobile --
  • npm run build -w apps/web --
  • docker build -t overtchat:web-title-generation-check .
  • GitHub Web E2E Smoke passed on PR #54, main, and the v0.9.4 tag.
  • Build and publish app image passed for v0.9.4, publishing ghcr.io/yoloyash/overtchat-app:0.9.4 and latest.
mobile
mobile-v1.2.1

mobile-v1.2.1

GitHub

Mobile closed testing release.

Changes:

  • Remove Android foreground service permissions from the mobile manifest.
  • Keep microphone and audio settings permissions for voice dictation.
  • Bump mobile app version to 1.2.1 and Android versionCode to 7.

The AAB has been submitted to Play closed testing. The attached APK is available for sideload testing.

web
v0.9.3

v0.9.3 - iOS PWA safe-area fix

GitHub

What's Changed

  • Fixed iOS standalone/PWA safe-area handling so the authenticated app header and mobile drawer render below the Dynamic Island/status area.
  • Added a focused regression test covering the app shell and mobile drawer safe-area hosts.
  • Bumped the default app image tag in compose.yml to 0.9.3.

Validation

  • Reproduced the bug on iPhone before the fix and verified the PR fixed it in iOS standalone/PWA mode.
  • npm run test -w apps/web -- lib/safe-area.test.ts
web
v0.9.2

v0.9.2 - model brand icons

GitHub

What's Changed

  • Added provider and model brand icons across model setup, model picker, settings, and stats surfaces.
  • Rendered brand icons as monochrome glyphs so they match the surrounding UI tone.
  • Bumped the default app image tag in compose.yml to 0.9.2.

Validation

  • npm run lint -w apps/web
  • npm run test -w apps/web
  • npm run build -w apps/web
  • GitHub Web E2E Smoke passed on PR #49, PR #50, main, and recreated dev.
web
v0.9.1

v0.9.1 — web scrollbar styling

GitHub

What's Changed

  • Standardized web scrollbar styling across browsers with theme-token colors and standard CSS scrollbar properties.
  • Kept high-contrast/forced-colors behavior on platform defaults.

Also Included

This release is cut from main and also includes already-merged housekeeping/docs/mobile changes since v0.9.0.

Validation

  • npm run test
  • npm run lint -w apps/web
  • npm run build -w apps/web
  • GitHub Web E2E Smoke checks passed on PR #47
mobile
mobile-v1.2.0

Mobile v1.2.0 — chain-of-thought activity block

GitHub

Cleaner thinking & web search

The model's reasoning and web searches now collapse into a single chain-of-thought block — one live status line ("Searching …" / "Thinking") that settles into a summary once done, over a tidy timeline of each step — instead of a stack of separate thinking and tool cards. This brings mobile to parity with the web app (#45).

  • One block, in order — interleaved reasoning + searches fold into a single collapsible timeline, broken only by the model's actual answer.
  • Live status — the header reflects what the model is doing right now and settles into "Searched the web" / "Thought for Ns" when finished.
  • Tap to expand — each step shows its thinking text or search results (with favicons); long result lists cap at 5 with a Show more toggle.

Install

  • Closed beta on Google Play — this build auto-submits to the testing track.
  • Sideload APK — attached to this release as `overtchat-v1.2.0.apk` (~129 MB universal APK; the Play install is smaller, split per-device).

Full Changelog: https://github.com/yoloyash/overtchat/compare/mobile-v1.1.0...mobile-v1.2.0

web
v0.8.0

v0.8.0 — thinking & web search activity block

GitHub

Web — v0.8.0

  • Reasoning and web search now collapse into one tidy activity block. Previously, when a model interleaved thinking with web searches, each piece rendered as its own standalone card — a tall, noisy stack of separate boxes. They're now folded into a single collapsible ChainOfThought block per run of work, the way modern chat apps present agentic activity.
  • One live status line. While the model works, the block shows a single status that reflects what it's doing right now — Thinking, Searching "<query>", Reading <domain> — then settles into a past-tense summary (Searched the web / Thought for Ns) when done. It stays collapsed during the turn; expand it only if you want the details.
  • A clean timeline when expanded. Each step is its own node on a left rail (reasoning / search / fetch), in the order it happened. Search results show as a bordered list of favicon · title · domain, capped to ~5 rows with the rest scrollable, so a multi-search turn no longer floods the page.
  • No more repeated "Searched the web" blocks. Multi-step tool calling emits blank text parts at step boundaries; these were splitting a single search run into several identical blocks. Contiguous tool activity now stays in one block.

Docker image: ghcr.io/yoloyash/overtchat-app:0.8.0 — same docker compose pull && docker compose up -d upgrade path.

Full Changelog: https://github.com/yoloyash/overtchat/compare/v0.7.6...v0.8.0

web
v0.7.6

v0.7.6 — surface mid-stream errors

GitHub

Web — v0.7.6

  • Mid-stream errors no longer vanish. When an upstream model server failed after it had already started streaming (e.g. a provider erroring out as it goes to emit a tool call), the turn died silently — you'd see the reasoning block, then nothing, then the copy/retry buttons, as if the model had simply stopped. The error is now surfaced in the UI with a retry, regardless of how far the response had streamed. Closes #40.
  • No more stranded half-answers. A turn that errored mid-stream was being persisted as a partial, reasoning-only message, so the dangling "Thought for Ns" block survived a page reload with no answer and no way to recover. Failed turns are now dropped instead of saved.

Docker image: ghcr.io/yoloyash/overtchat-app:0.7.6 — same docker compose pull && docker compose up -d upgrade path.

Full Changelog: https://github.com/yoloyash/overtchat/compare/v0.7.5...v0.7.6

web
v0.7.5

v0.7.5 — image attachment fixes

GitHub

Web — v0.7.5

Two user-reported image-attachment bugs in the composer, fixed end to end (#39):

  • Pasted images silently dropped. The attachment chip only appeared after the upload finished, so paste-then-Enter (or sending a bare image with no text) would no-op while the upload was still in flight — the message just vanished with no feedback. Attachments now show a thumbnail the instant you paste or pick, with a spinner while uploading, and a failed upload surfaces the actual server reason (e.g. "File exceeds 20MB") instead of silently failing.
  • Editing a message lost its image. Edits sent only the text, so the server re-saved the turn without the attachment. Edit now preserves attachments and lets you remove them individually.

Uploads also run per-file and concurrently now — one failure no longer takes down the whole batch.

Fixes

  • Flaky docker build. A build-time SQLite lock race could intermittently fail the image build; the migration/client init no longer contends on the DB during build.

Internals

  • Bumped GitHub Actions runtimes across the CI workflows.

Docker image: ghcr.io/yoloyash/overtchat-app:0.7.5 — same docker compose pull && docker compose up -d upgrade path.

Full Changelog: https://github.com/yoloyash/overtchat/compare/v0.7.4...v0.7.5

web
v0.7.3

v0.7.3

GitHub

Bugfix release for the web app.\n\n- Fix assistant/model response text continuing to use the fixed serif font after selecting a different interface font in Settings.\n- Keep only the overtchat wordmark on the fixed brand font; app UI and content now follow the selected font.\n\nFixes #29 and #32.

mobile
mobile-v1.1.0

Mobile v1.1.0 — interface font picker

GitHub

Pick your interface font

Settings → Font now lets you choose the body/UI typeface, per device. Headings and code are unaffected.

  • 5 options: Inter, Roboto, Plus Jakarta Sans (default), Geist, IBM Plex Sans.
  • Per-device, no account state — the choice is stored on the device (expo-secure-store), so it follows the install, not the login. Brings mobile to parity with the web font picker (#27).
  • Each option previews in its own typeface in the list.

Install

  • Closed beta on Google Play — this build auto-submits to the testing track.
  • Sideload APK — attached to this release as overtchat-v1.1.0.apk (~123 MB universal APK; the Play install is smaller, split per-device).

Full Changelog: https://github.com/yoloyash/overtchat/compare/mobile-v1.0.0...mobile-v1.1.0

web
v0.7.2

v0.7.2

GitHub

You can now change the interface font in Settings → General. Picked something you like? It sticks around per browser.

Also in this release

  • E2E smoke tests are now running in CI so regressions get caught before merge.

Docker image: ghcr.io/yoloyash/overtchat-app:0.7.2

Full Changelog: https://github.com/yoloyash/overtchat/compare/v0.7.1...v0.7.2

web
v0.7.1

v0.7.1 — mobile launch + resumable streams

GitHub

Mobile launch — Android client now in closed beta

First public release of overtchat for Android. Same chat surface, same model picker, same uploads / voice / web search you have on web. Bring your own server: enter a URL on first launch and you're in.

  • Closed beta on Google Play — submitted for review. Open an issue to request a slot in the meantime.
  • Sideload APK — attached to this release as overtchat-preview.apk (~122 MB).

Web — v0.7.1

  • Resumable streams. A tiny Redis sidecar buffers in-flight tokens so a page reload mid-reply no longer drops you.
  • Lazy stream-context init so docker build doesn't need REDIS_URL at build time.
  • Docker image: ghcr.io/yoloyash/overtchat-app:0.7.1. Same docker compose pull && docker compose up -d upgrade path.

Fixes

  • /settings/data page was missing from every Docker image since the monorepo migration — overly broad **/data glob in .dockerignore. Closes #20.

Internals

  • Workspace gets a packages/shared for theme tokens, fonts, and cross-target types shared between web and mobile.
  • New mobile-eas.yml workflow: tag mobile-v* to trigger an EAS Android build.

Full Changelog: https://github.com/yoloyash/overtchat/compare/v0.6.0...v0.7.1

web
v0.6.0

v0.6.0

GitHub

What's Changed

Full Changelog: https://github.com/yoloyash/overtchat/compare/v0.5.2...v0.6.0