Skip to content

Houston Cloud v0.5.20

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 21 Jul 03:53
· 374 commits to main since this release

Houston v0.5.20

Features

  • feat(routines): chat-first redesign of the Routines tab
  • feat(catalog): add Kimi K3 (kimi-coding) by backporting the pi-ai 0.80.9 entry
  • feat(store): creator profiles - in-app editor, @handle pages, analytics, verified badges
  • feat(app): unified catalog search across integrations, AI hub, and skills
  • feat(ui): two-section catalog shell with unified search grammar
  • feat(providers): hide regional duplicate deployments from the catalog
  • feat(store): one-click Open in Houston install from the website
  • feat(analytics): instrument usage, permissions, org, AI hub, skills, cloud migration
  • feat(analytics): instrument feature-adoption gaps + model/provider on sends
  • feat(sentry): tag client events with their deployment (#991)
  • feat(dev): add pnpm dev:staging to run the desktop against remote staging (#994)
  • feat(app): send app-version header to the gateway + blocking required-update screen (#985)
  • feat(host): build identity on /v1/version + pod-level /activity busy probe (#984)
  • feat(chat): apply AI Mode changes to the running turn, like Claude Code's shift+tab
  • feat(files): transparent files panel + move-conflict dialog (#966)
  • feat(store): app parity wave - categories, integration filter, reporting, owner dashboard
  • feat(store): extract @houston/agentstore-client SDK and migrate both frontends
  • feat(teams): agent-centric Permissions, on-agent mount, and permission-aware agents (#954)
  • feat(teams): admin Permissions hub — People access lens + blocked-state deep links (#948)
  • feat(usage): split the Usage page into Compute usage / Model usage panes
  • feat(integrations): review and revoke always-allowed actions per agent (#942)
  • feat(integrations): surface connected-but-ungranted apps on the agent tab (#939)
  • feat(files): redesign the Files tab as a Drive-style card grid (#960)
  • feat(analytics): enable session recordings + heatmaps (masked)
  • feat(chat): add conversation map
  • feat(onboarding): email steps - floating brand marks, one clear final action
  • feat(onboarding): preselect the OS locale on the language gate
  • feat(chat): toast when a mode change lands on the next message
  • feat(usage): show time worked instead of engine up-time + chart legibility (#936)
  • feat(usage): split accounts into AI subscriptions and AI per token sections
  • feat(sentry): debuggable engine events — synthetic stacks, version tag, severity correctness (#937)
  • feat(ios): move auth to GCIP with Apple, Google, Microsoft, and email-code sign-in (#938)
  • feat(secrets): use gateway custody for managed agents (#899)
  • feat(usage): show how long agents ran (compute usage, hosted cloud) (#925)
  • feat(models): curate provider model lists via one shared visibility table (#928)
  • feat(create-agent): model picker in the Create-with-AI step (#927)
  • feat(usage): meter token spend locally for API-key providers with no usage API
  • feat(chat): preview + download files the agent created from chat (#923)
  • feat(onboarding): larger Gmail/Outlook rows on the connect-email step
  • feat(onboarding): centered pill-grid segment screen with skip + PostHog person property
  • feat(analytics): enable rage + dead click capture, fully masked
  • feat(engine): Sentry crash reporting for the TS engine (pods + desktop sidecar) (#907)
  • feat(onboarding): add reset segment setting
  • feat(onboarding): add segmentation screen
  • feat(website): unlisted bootcamp landing page at /bootcamp/ (#906)
  • feat: Admin > Agents drill-in to manage one agent's access in place
  • feat: visible workspace policy everywhere and a settings-style Admin page
  • feat: move org allowlists to an Admin page, keep Integrations personal
  • feat(dev): one pnpm dev — full local stack, multiplayer included (#900)
  • feat(migration): reconnect checklist from the legacy Composio consumer account (#895)
  • feat(local-model): share a tunnelled local model with your team (#860)
  • feat(auth): provider pill row + six-box pin input on the login screen
  • feat(design): visible sidebar selected state via sidebar-active token
  • feat(board): say Archive/Archived instead of Complete/Completed
  • feat: per-account provider usage page (top-level Usage view) (#890)

Fixes

  • fix(routines): adapt intake connect card to per-slug connect-flow states
  • fix(onboarding): migration-flow polish, durable onboarding-completed signal, deleted-account sign-out (#999)
  • fix(store-sync): skip an over-cap file instead of letting it block every sync pass (#989)
  • fix(runtime): size Claude context fill from per-request usage, not the turn aggregate (#988)
  • fix(sentry): stop expected operational failures from spamming error events (#986)
  • fix(runtime-client): retry transient object-store failures instead of failing hydrate/sync (#987)
  • fix(runtime-client): tolerate files vanishing mid-walk in syncBack (#983)
  • fix(host): cover all delivery paths of the recursive-watcher ENOENT race (#981)
  • fix(app): reconnect card for a disconnected local model + unknown-state polish (#980)
  • fix(local-model): connect directly when the deployment has no tunnel relay (#978)
  • fix(chat): unwedge the reconnect auto-continue from the send queue (#979)
  • fix(host): disconnect a terminally-rejected credential instead of retrying its dead refresh token forever (#977)
  • fix(skills): require a description before creating a skill from scratch (#976)
  • fix(app): keep the Codex sign-in relay off for a loopback hosted gateway (#955)
  • fix(website): unblock download gate and de-jank modal open (#975)
  • fix(providers): report unknown, not signed-out, when the engine is unreachable (#973)
  • fix(host): demote the Linux recursive-watcher ENOENT race to a warning (#970)
  • fix: stop a double-fired first send from losing a mission (#969)
  • fix(usage): only show the user's own agents, count messages not tasks (#967)
  • fix(onboarding): skip only on failure; the sent payoff says check your inbox
  • fix(onboarding): email mission runs in Autopilot; skip waits for the agent's reply
  • fix(providers): fail Codex sign-in port conflicts fast, loud, and localized (#945)
  • fix(e2e): conversation map spec earns its 3-moment minimum on the fake host
  • fix(agentstore): pin folder-entry timestamps — reproducible skill zips (#961)
  • fix(sentry): count orgs as users-affected, trim the runtime capture frame (#957)
  • fix(usage): hide system/ghost agents from the Time worked list (#956)
  • fix(analytics): admit detected_locale through the branch cleanProps filter
  • fix(chat): conversation map floats over the transcript + clean marker previews
  • fix(onboarding): ask the work-segment question at most once per user
  • fix(web): provider connect no longer reports success it did not earn
  • fix(auth): desktop Apple sign-in returns via gateway bridge + houston:// deep link
  • fix(app): paint cached mission cards on cold open while the pod wakes (#950)
  • fix(sentry): attach the synthetic stack as a thread, keep the message as the issue title (#949)
  • fix(design): floating surfaces are solid everywhere, no glass modals
  • fix(chat): approval card drops the technical param rows
  • fix(host): satisfy noUncheckedIndexedAccess in the provider-usage route test
  • fix(usage): Copilot usage no longer reads "sign in again" on a healthy connection
  • fix(onboarding): require initial email action
  • fix(chat): pin the agent's configured model on setup-chat kickoffs
  • fix(runtime): expire abandoned OAuth logins so they release the callback port (#932)
  • fix(settings): remove onboarding segment reset from production settings
  • fix(design): solid dialog + create-agent cards, no see-through surfaces
  • fix(e2e): scope usage-compute agent rows to the Running time section
  • fix(design): opaque floating surfaces on desktop (WebView2 backdrop-filter)
  • fix(chat): make pasted links readable inside the user message bubble
  • fix(usage): honest OpenRouter balance + "not metered yet" copy
  • fix(routines): stop cron routines vanishing after an edit (#924)
  • fix(fake-host): split the setup-runtime connect surface into gate + first-run slots
  • fix(e2e): onboarding connect spec survives the connected setup-runtime
  • fix(providers): live-verify a pasted API key before storing it
  • fix(web): make the engine gate reachability-only; onboarding owns connect
  • fix(chat): make the in-chat integration approval card work on hosted cloud + stop the footer overflowing (#919)
  • fix(fake-host): serve the /setup-runtime connect surface the WebApp gate probes
  • fix(web): point the standalone connect gate at /setup-runtime
  • fix(e2e): teach the fake host the /setup-runtime connect surface
  • fix(web): probe the host's /setup-runtime connect surface, not a flat /auth/status
  • fix(web): point the connect gate at the host's /setup-runtime surface
  • fix(providers): curate key-dashboard URLs for the remaining api-key providers
  • fix(providers): connect any pi api-key provider from the UI
  • fix(integrations): never mint a bare custom OAuth auth config (Meta Ads)
  • fix(onboarding): email test-send card shows only the option; Omitir actually skips
  • fix(app): paint sidebar needs-you badges through a pod cold start (#914)
  • fix(onboarding): drop the "Another provider" row from the connect-email step
  • fix: cloud-migration wizard recovery — keep the Settings retry after partial runs, escape hatch on errors (#908)
  • fix(anthropic): repair OAuth connect + credential lifecycle end to end (#910)
  • fix(app): keep cached mission cards painted while an asleep pod wakes (#911)
  • fix(ai-hub): stop curating OAuth providers' model lists — hub now matches the chat picker (#909)
  • fix(onboarding): adapt segmentation screen to current main after rebase
  • fix: cloud-migration backup fails on Windows with 'Acceso denegado (os error 5)' (#905)
  • fix(sidebar): stop agent list overflowing onto the user footer in short windows (#898)
  • fix(release): preserve Bun sidecar in Linux AppImage (#897)
  • fix(release): give vite build 4GB Node heap on low-RAM runners (#896)
  • fix(chat): stop hiding a reply whose text contains an auth code (HOU-734) (#885)
  • fix(migration): skip the empty Reconnect-your-apps step (#893)
  • fix(ui): keep the open chat panel mounted while its card is transiently absent (#891)

Docs

  • docs: record the catalog redesign in the knowledge base and inventory
  • docs(kb): document agentstore-client SDK, store parity features, deep-link install
  • docs(website): point developer docs at the real gateway, centralize the URL (#993)
  • docs(kb): drop retired theagentlibrary note from agent-store KB

CI & infra

  • ci(images): build engine-pod/agentstore on tag push, notify prod sepa… (#992)

Changes

  • refactor(files): flatten the Files tab onto the canvas (#1007)
  • test(e2e): update catalog specs for the unified catalog redesign
  • test(onboarding): skip-route assertion follows the failure-gated shouldOfferSkip
  • refactor(settings): drop the Connected accounts shortcut row (#947)
  • refactor(integrations): fold Settings > Connected accounts into the Integrations page (#941)
  • test(onboarding): update language-gate e2e to the preselect + Continue contract
  • test(web): approval e2e pins the card without param rows
  • test(onboarding): select required segment in e2e
  • refactor(usage): drop the billing sections' subtitles
  • test(fake-host): serve the pre-agent /setup-runtime/* connect surface
  • test(e2e): align onboarding specs with the segment gate and the welcome-less flow
  • perf(host): parallelize store hydration — cuts managed-pod wake by ~10s (#901)

Before you upgrade

  • Quit Houston before installing. macOS doesn't always replace a running app. If in doubt: rm -rf /Applications/Houston.app and drag the new copy in.

Full changelog: v0.5.6...cloud-v0.5.20