Skip to content

web: v0.23.0

Choose a tag to compare

@aryanranderiya aryanranderiya released this 26 Aug 17:22
d472e00

0.23.0 (2026-08-25)

Features

  • agent-first harness — deterministic e2e testing, direct agent invocation, and a leaner CI (#877) (16d7e7e)
  • agents: env-configurable custom dev LLM provider for cheap bulk testing (#891) (fc937af)
  • agents: harness reliability, HIL approval fixes, tool discovery, and the permissions + usage UX around them (#881) (dfe4de9)
  • analytics: unify PostHog identity on stable user IDs and add core event capture (#1007) (45e843d)
  • bots: iMessage platform via Photon/Spectrum with Pro gating (#1016) (8b054d9)
  • chat: remove composer char limit, paste-to-attachment, direct file uploads (#859) (9996471)
  • cli: ship gaia bridge inside the published CLI and rework the device pairing page (#1069) (1038371)
  • dev: flag-based dev auth bypass, real login by default (#883) (2c70109)
  • device-bridge: secure local MCP + filesystem bridge for GAIA (#857) (a1c8399)
  • devx: ci:local, ci:remote, pr:comments — agent-legible shipping gates (#1093) (efd45e0)
  • Extract PDF/DOCX/XLSX/PPTX/CSV locally via anydoc + pdf-inspector (#890) (e6c71c4)
  • free-tier usage caps + pro cost-based limits (#855) (606b495)
  • gmail: inbox summary tool, body normalization, and agent docs (#783) (0edf4a4)
  • hil: dynamic human-in-the-loop approvals for destructive tools (#856) (f63540f)
  • lints: baseline-free suppression governance — every suppression carries its why (#1066) (ccd693e)
  • mobile: unified streaming tool chain with subagent + HIL visibility, card contract sweep (#1098) (0924ce2)
  • observability: wide-event enforcement across all surfaces — evlog gates, Babel bots scanner, min-score rework, gate simplification (#884) (5040dca)
  • pricing: show platform icons inline in plan features and gate iMessage to Pro (#1059) (2889599)
  • pricing: yearly plan gives 2 months free instead of 3 (#921) (88c23ca)
  • web: founder's letter with early-bird discount offer (#1000) (6968a48)
  • web: revamp the marketing site — homepage, footer, navbar, pricing, and demos (#858) (ce8cc09)
  • workflows: explore workflows revamp — curated seed, custom icons, built-in cards (#1001) (2159fce)
  • workflows: structured workflow-creator pipeline + integration discovery (#852) (6a7d694)
  • workflows: workflow UX redesign and onboarding integration selection (#833) (174b1a0)

Bug Fixes

  • agents: root-cause fixes for Telegram reply quality, memory hygiene, executor grounding and bot sessions (#1094) (11995af)
  • api: drop removed ast aliases so config schema dump works on Python 3.12+ (#878) (beebc92)
  • api: gracefully handle Composio NotFoundError for unconnected accounts (#932) (4fa33a4)
  • bots: stop truncating replies and losing bubbles; one splitter for message breaks (#1051) (c542095)
  • chat: always surface LLM failures in the UI, and stop compounding retries (#1006) (4f6ae96)
  • imessage: show the number to text instead of an Apple-only deep link (#1046) (5587baa)
  • notifications: honour limit, drop phantom routes, unify the two hooks (#934) (c7f5915)
  • quality: repair lint errors blocking the PR quality gate (#870) (d4b5605)
  • security: remediate 192 of 196 Dependabot alerts (#860) (9984705)
  • security: remediate audited SSRF/IDOR/auth/webhook findings across the monorepo (#848) (13f36fc)
  • seo: single-brand titles, noindex utility pages, honest sitemap signals (#864) (4edde6d)
  • triggers: sync all trigger schemas and slugs with live Composio API (#1096) (88d9a76)
  • web,posthog: Prevent SecurityError from cross-origin status iframe (fd0b946)
  • web,posthog: Prevent SecurityError from cross-origin status iframe (#899) (073efea)
  • web: add iMessage to the Product nav dropdown (#1060) (dd6b19d)
  • web: address CodeRabbit feedback on IndexedDB degradation (6b6e7b4)
  • web: always render a workflow's chosen icon on cards (#1012) (a607efd)
  • web: canvas.md viewer hit double /api/v1 prefix and always 404'd (#1078) (bf070ad)
  • web: degrade IndexedDB layers to no-ops when the DB can't open (9a6ede3)
  • web: degrade IndexedDB layers to no-ops when the DB can't open (#892) (4fcdb8d)
  • web: drop non-first-party exceptions before error reporting (#893) (6994b30)
  • web: eliminate React #418 hydration mismatch in shared Navbar (#904) (1030089)
  • web: pin pnpm in the web Dockerfile via corepack (03a94d3)
  • web: pin pnpm in the web Dockerfile via corepack (#960) (7a4db17)
  • web: recover from stale-asset ChunkLoadError instead of leaving a broken route (#894) (fc4e03f)
  • web: stop the infinite RSC prefetch loop on prod landing pages (#1023) (c36ec1e)

Performance Improvements

  • cache: keep the prompt prefix stable so conversations actually hit the provider cache (#1025) (a44916d)
  • ci: PR gate 13.4m→8.9m; parallel gate-safe master docker phase; GHCR registry layer cache (#1064) (46b5ecc)
  • Docker layer cache moves from type=gha to GHCR type=registry (46b5ecc)

Reverts

  • .next/cache seeding into the docker-web context (9a49586 + (46b5ecc)