Changelog

What's new in Houston

Every release. Plain language. What changed and how it affects you.

cloud-v0.5.43
August 4, 2026
Beta

Houston v0.5.43

Features

  • feat(website): bootcamp participation certificates — claim wizard, share pages, build-time PNGs (#1241)
  • feat(onboarding): show the Skip onboarding escape hatch from the very first screen (#1239)
  • feat: render HTML file previews as live pages in a sandboxed full-screen iframe (#1235)
  • feat(website): landing in en/es/pt with language switcher; fix download gate dropdowns (#1227)
  • feat(website): replace invite-code download gate with lead form, remove waitlist (#1215)
  • feat(providers): MiniMax token/coding plan support + pi 0.83.0 (HOU-1160, HOU-1150) (#1208)
  • feat(website): bootcamp 0a1 chapter videos per step (ES) + playlist note (EN) (#1213)
  • feat(website): From 0 to 1 bootcamp guide (EN + ES) (#1207)
  • feat(metrics): boot-span ledger + /metrics on the host, client UX perf spans (HOU-1011) (#1169)

Fixes

  • fix(chat): URLs render as underlined, shortened links, never pill bars (HOU-1152) (#1238)
  • fix(host): workspace listings survive files changing mid-walk (HOU-1176) (#1236)
  • fix(runtime): classify undici 'terminated' stream break as provider_internal (HOU-902) (#1218)
  • fix(runtime): OpenAI 'error occurred while processing your request' classifies as provider_internal (HOU-898) (#1219)
  • fix(auth): ChatGPT sign-in survives a lost engine login (HOU-1113) (#1223)
  • fix(runtime): Google 403 PERMISSION_DENIED classifies as unauthenticated (HOU-920) (#1220)
  • fix(runtime): Codex 'WebSocket closed ' classifies as provider_internal (HOU-848) (#1221)
  • fix(app,host): validate agent names before submit instead of raw errors (HOU-1166) (#1225)
  • fix(ci): staging builds stop writing to the production Agent Store (#1229)
  • fix(runtime): map and classify the live unknown provider-error families (HOU-1156) (#1224)
  • fix(auth): desktop Microsoft sign-in via GCIP-brokered loopback (HOU-1112) (#1228)
  • fix: stop spurious provider disconnects, misattributed reconnect cards, and dead-end composer (#1226)
  • fix(website): guide print view hides fixed site chrome (#1214)
  • fix(runtime): OpenRouter 'Provider finish_reason: error' classifies as provider_internal (HOU-930) (#1211)
  • fix(runtime): OpenAI out-of-tokens failures render the quota card, not the rate-limit card (HOU-1154) (#1210)
  • fix(providers): no spurious paste dialog when the Claude credential actually landed (HOU-1143) (#1212)
  • fix(app): agent tabs share one detail panel — hidden tab no longer stacks a second chat (HOU-1165) (#1209)
  • fix(integrations): type the OAuth-only connect refusal + friendly copy (HOU-1110) (#1200)
  • fix(app): gateway 'engine unavailable' 503 surfaces as an agent-waking notice, not a bug (HOU-1114) (#1203)
  • fix(chat): unknown picker models ride the wire pin verbatim, never dropped (HOU-1103) (#1197)
  • fix(metrics): app_to_board fires on the Everyone board; early spans survive session load (HOU-1011) (#1206)
  • fix(runtime): hold a pi turn's provider error until the prompt settles (HOU-1057) (#1204)
  • fix(runtime): refuse a served google 'API key' that is an OAuth token (HOU-1107) (#1198)

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: https://github.com/gethouston/houston/compare/cloud-v0.5.40...cloud-v0.5.43


Linear — cloud-v0.5.43

(no project)

  • HOU-1113 — Error connecting chatGPT
  • HOU-1199 — Files preview shows HTML as raw source instead of rendering it
  • HOU-1173 — Bootcamp participation certificates — claim/share/verify on gethouston.ai

AI Models

  • HOU-1103 — Error when using openAI model 🐛
  • HOU-1143 — Error after connecting anthropic 🐛
  • HOU-1160 — Add support for minimax token plan
  • HOU-1150 — Update Pi
  • HOU-930 — Houston bug: provider_error:unknown:openrouter - Provider finish_reason: error 🐛
  • HOU-1153 — Anthropic disconnects a lot 🐛
  • HOU-848 — Houston bug: provider_error:unknown:openai - WebSocket closed 1006 🐛
  • HOU-920 — Houston bug: provider_error:unknown:google - {"error":{"message":"{\n "error": {\n "code": 403,\n "message": "Your project has bee... 🐛
  • HOU-902 — Houston bug: provider_error:unknown:opencode-go - terminated 🐛
  • HOU-1156 — Creat a map of the errors that we have and make sure that all are clear for our users, but most importantly, for ourselves
  • HOU-1154 — OpenAI is showing "Alcanzaste el límite de velocidad" card when it should show a card saying that the user has no more tokens available
  • HOU-1107 — Served Google "API key" is an OAuth token: every Gemini turn 401s — 404 events / 110 users (HOUSTON-APP-4Y9) 🐛
  • HOU-1057 — False context length warning appears despite auto-compaction
  • HOU-898 — Houston bug: provider_error:unknown:openai - Codex error: An error occurred while processing your request. You can retry your request, or... 🐛

Agent Store

  • HOU-1114 — Error when loading an agent
  • HOU-1166 — Don't throw error when naming an agent

Backend

  • HOU-1112 — Can't login with microsoft
  • HOU-1176 — User bug
  • HOU-1169 — Control plane should converge the warm-node balloon Deployment to gateway-config/engine-image

Chat Experience

  • HOU-1165 — Fix chat breaking 🐛

Integrations

  • HOU-1110 — Fix highlevel integration 🐛
  • HOU-1116 — Can't connect X integration
  • HOU-1152 — Showing URLs as buttons is broken, maybe we should just show them as "links", underline them and also shorten them (look how slack does it) 🐛

Landing

  • HOU-1168 — Change how download the app works
  • HOU-1177 — Landing page in Spanish and Portuguese with language switcher
  • HOU-1178 — Download gate: country-code menu scroll broken on landing, country picker should match our UI

Performance

  • HOU-1011 — Add prometheus-compatible endpoints for performance analytics

Skills

  • HOU-1027 — Org skills store: org storage is the single source of truth

WhatsApp draft

🚀 Nueva versión de Houston!
✅ Error when using openAI model
✅ Error when loading an agent
✅ Fix highlevel integration
✅ Can't connect X integration
✅ Fix chat breaking
✅ Error after connecting anthropic
✅ Add support for minimax token plan
✅ Update Pi
✅ Houston bug: provider_error:unknown:openrouter - Provider finish_reason: error
✅ Change how download the app works
✅ Anthropic disconnects a lot
✅ Landing page in Spanish and Portuguese with language switcher
✅ Download gate: country-code menu scroll broken on landing, country picker should match our UI
✅ Can't login with microsoft
✅ Don't throw error when naming an agent
✅ Houston bug: provider_error:unknown:openai - WebSocket closed 1006
✅ Houston bug: provider_error:unknown:google - {"error":{"message":"{\n \"error\": {\n \"code\": 403,\n \"message\": \"Your project has bee...
✅ Error connecting chatGPT
✅ Houston bug: provider_error:unknown:opencode-go - terminated
✅ Files preview shows HTML as raw source instead of rendering it
✅ User bug
✅ Showing URLs as buttons is broken, maybe we should just show them as "links", underline them and also shorten them (look how slack does it)
✅ Bootcamp participation certificates — claim/share/verify on gethouston.ai
✅ Control plane should converge the warm-node balloon Deployment to gateway-config/engine-image
✅ Creat a map of the errors that we have and make sure that all are clear for our users, but most importantly, for ourselves
✅ OpenAI is showing "Alcanzaste el límite de velocidad" card when it should show a card saying that the user has no more tokens available
✅ Served Google "API key" is an OAuth token: every Gemini turn 401s — 404 events / 110 users (HOUSTON-APP-4Y9)
✅ False context length warning appears despite auto-compaction
✅ Org skills store: org storage is the single source of truth
✅ Add prometheus-compatible endpoints for performance analytics
✅ Houston bug: provider_error:unknown:openai - Codex error: An error occurred while processing your request. You can retry your request, or...
Gracias a todos los que reportaron 🙌

Notify reporters (then clear the Notify pending label):

  • HOU-1103 → ⚠️ no phone on issue
  • HOU-1110 → ⚠️ no phone on issue
  • HOU-1165 → ⚠️ no phone on issue
  • HOU-1143 → ⚠️ no phone on issue
  • HOU-930 → ⚠️ no phone on issue
  • HOU-1153 → ⚠️ no phone on issue
  • HOU-848 → ⚠️ no phone on issue
  • HOU-920 → ⚠️ no phone on issue
  • HOU-902 → ⚠️ no phone on issue
  • HOU-1152 → ⚠️ no phone on issue
  • HOU-1107 → ⚠️ no phone on issue
  • HOU-898 → ⚠️ no phone on issue
cloud-v0.5.40
August 1, 2026
Beta

Houston v0.5.40

Features

  • feat: add global skip-onboarding escape hatch to first-run flow (#1201)

Fixes

  • fix(providers): pin the Claude sign-in child's cwd so the CLI's shell probe can't self-filter (#1199)
  • fix(sentry): demote tauri-plugin-updater error logs to breadcrumbs (HOU-1104) (#1194)
  • fix(web): transient session-refresh failure reads as connectivity, not a 401 auth error (HOU-1106) (#1196)

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: https://github.com/gethouston/houston/compare/cloud-v0.5.39...cloud-v0.5.40


Linear — cloud-v0.5.40

(no project)

  • HOU-1106 — Wake-from-sleep 401 storm: transient session-refresh failure surfaces as "invalid or expired token" red toasts + Sentry noise (HOUSTON-APP-515)
  • HOU-1118 — Onboarding: global Skip onboarding escape hatch
  • HOU-1104 — Updater poll failures flood Sentry: "update endpoint did not respond with a successful status code" (HOUSTON-APP-14)

WhatsApp draft

🚀 Nueva versión de Houston!
✅ Wake-from-sleep 401 storm: transient session-refresh failure surfaces as "invalid or expired token" red toasts + Sentry noise (HOUSTON-APP-515)
✅ Onboarding: global Skip onboarding escape hatch
✅ Updater poll failures flood Sentry: "update endpoint did not respond with a successful status code" (HOUSTON-APP-14)
Gracias a todos los que reportaron 🙌
cloud-v0.5.39
August 1, 2026
Beta

Houston v0.5.39

Features

  • feat(teams): invite inbox — invitee-side accept/decline for pending org invites (#1193)

Fixes

  • fix(auth): close sign-out/re-login lifecycle races on desktop (#1192)
  • fix(store): one identity control in the web nav — kill the duplicate avatar (#1190)

CI & infra

  • ci(store): gate the agentstore image build on the site's full dep closure (#1191)
  • ci(store): ship agents.gethouston.ai on the ship train (#1189)

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: https://github.com/gethouston/houston/compare/cloud-v0.5.38...cloud-v0.5.39


Linear — cloud-v0.5.39

(no project)

  • HOU-1098 — Desktop: after sign-out, re-login impossible until app restart; logout can fail to persist
  • HOU-1099 — Team invites dead-end for existing accounts: no accept endpoint or invitee UI
  • HOU-1100 — Invite email link app.gethouston.ai served Site Not Found (custom domain never bound)

WhatsApp draft

🚀 Nueva versión de Houston!
✅ Desktop: after sign-out, re-login impossible until app restart; logout can fail to persist
✅ Team invites dead-end for existing accounts: no accept endpoint or invitee UI
✅ Invite email link app.gethouston.ai served Site Not Found (custom domain never bound)
Gracias a todos los que reportaron 🙌
cloud-v0.5.38
August 1, 2026
Beta

Houston v0.5.38

Features

  • feat(teams): live space list + member-visibility fixes from Felipe's Jul 31 round (#1188)
  • feat(store): store redesign — shared screens, one profile page, sharing, listing editor, hosted install (#1186)
  • feat: personal-only AI accounts in team spaces (HOU-976) (#1187)

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: https://github.com/gethouston/houston/compare/cloud-v0.5.37...cloud-v0.5.38


Linear — cloud-v0.5.38

(no project)

  • HOU-1095 — New org must appear in the switcher without relaunching the app
  • HOU-1096 — Rename Create team to Create organization (en/es/pt)
  • HOU-1094 — Member-added email: existing users get no notification when added to an org

Multiplayer

  • HOU-976 — Design: per-person vs team accounts for integrations and AI (both, with a resolution rule)

WhatsApp draft

🚀 Nueva versión de Houston!
✅ Design: per-person vs team accounts for integrations and AI (both, with a resolution rule)
✅ New org must appear in the switcher without relaunching the app
✅ Rename Create team to Create organization (en/es/pt)
✅ Member-added email: existing users get no notification when added to an org
Gracias a todos los que reportaron 🙌
cloud-v0.5.37
August 1, 2026
Beta

Houston v0.5.37

Features

  • feat(store): Agent Store redesign — shared web/app screens, one profile page, Drive-style sharing, listing editor, one-click hosted install (#1186)
  • feat: personal-only AI accounts in team spaces (HOU-976) (#1187)
  • feat: themed boot splash, Guide me in Settings, icon-only bell, Everyone-first scope, drop unread dot (#1175)
  • feat(missions): user-driven Done, card confetti, mandatory follow-ups, archived UX (#1173)
  • feat(web): responsive mobile layout for the shared shell (HOU-1014) (#1157)
  • feat(integrations): add custom integration goes straight to the setup chat (#1171)
  • feat(chat): custom integration actions brand the mission log (HOU-1049) (#1167)
  • feat(chat): web + Python activity indicators in the process header (HOU-1048) (#1163)
  • feat(skills): global Skills manager in the sidebar (HOU-792) (#1128)

Fixes

  • fix(docker): copy patches/ into root-context images so pnpm install survives patchedDependencies (#1185)
  • fix(integrations): setup research is invisible and fast - temp dir, batched fetches, add once (HOU-1083 follow-up) (#1184)
  • fix(integrations): custom POSTs survive mixed undici stacks, manual add returns, deterministic discovery (HOU-1083) (#1182)
  • fix(web): no gateway calls without a session; web account-switch resets caches (HOU-1014) (#1183)
  • fix(chat): hard-wrapped URL labels render inline, not as a clipped pill (HOU-1071) (#1179)
  • fix(app): offline gateway bursts surface one connectivity toast, not red bug toasts + Sentry noise (HOU-1085) (#1181)
  • fix(providers): api-key providers reconnect via the key dialog; classify NVIDIA/Qwen auth rejections (HOU-1077) (#1178)
  • fix(skills): share to workspace reaches the real workspace; local rows drop copy checkboxes (HOU-1027) (#1172)
  • fix(web): cloud web boots to sign-in; skip pre-auth language/agreement gates (HOU-1014) (#1174)
  • fix(auth): fall back to the device-code sign-in when the Codex loopback can't run (HOU-1063) (#1168)
  • fix(integrations): custom action transport failures surface their real cause (HOU-1052) (#1162)
  • fix(chat): keep the mission log live when tools follow streamed narration (HOU-1047) (#1161)
  • fix(chat): agent-only markdown at a chat-tuned scale; user messages verbatim (HOU-1051) (#1164)
  • fix(chat): suggestion pill click prefills the composer instead of sending (HOU-1050) (#1160)

CI & infra

  • ci(web): preview web app bakes the staging gateway (#1177)
  • ci(web): deploy the webapp from the cloud-v channel; staging tracks main (#1165)

Changes

  • perf(e2e): parallelize the UI suite with per-worker fake hosts (HOU-1072) (#1166)

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: https://github.com/gethouston/houston/compare/cloud-v0.5.35...cloud-v0.5.37


Linear — cloud-v0.5.37

(no project)

  • HOU-1072 — Improve e2e test performance
  • HOU-1022 — Design a beautiful loading screen
  • HOU-1064 — Model selection is global per agent — changing the model in one mission changes it for all missions
  • HOU-1065 — New agent defaults to Anthropic Sonnet even when Anthropic is not connected — first message always fails
  • HOU-1073 — Managed cloud: Anthropic org credential killed by a second rotator — every NEW agent pod 401s while the UI says connected
  • HOU-1080 — Every new mission opens in Ask First mode (drop Planner default + per-agent mode memory)
  • HOU-1083 — Fix actions discovery when manually adding custom integrations
  • HOU-1085 — Offline gateway bursts surface as red bug toasts + Sentry noise (list_project_files: Load failed)
  • HOU-1071 — Fix link looking weird
  • HOU-1014 — Verify app web is working

AI Models

  • HOU-1077 — Nvidia and Qwen not working 🐛

Activity

  • HOU-1043 — The Archived button should be primary and should be clear how to return to the main menu

Chat Experience

  • HOU-1047 — When OpenAI does async stuff (e.g. connect to anakin.io) it shows the loading element in the chat instead of showing the activity, even if it is browsing the web, which SHOULD be something. The loading is ONLY if there's no connection with the model or regular wait times
  • HOU-1051 — We shouldn't render the markdown from the user, only the one from the agent
  • HOU-1050 — On the suggestions thing, on click it shouldn't send the message but put it as text in the chat input
  • HOU-1049 — For the custom integrations also use this in the chat experience, maybe the name of the integration and a 🛠️ icon
  • HOU-1048 — On the activity from the model it'll be great if we can show stuff like if the model is on the internet (they are curling stuff from there) and if the model for example is using python. Use an UI similar to the integrations, so find a logo and make look pretty. On the internet part, it'll be good if it is something like "(logo) Browsing the web - anakin.io"

Global Interfaces & Components

  • HOU-1044 — The navbar should be reduced: compress the guide me and notifications to be icon only. Change the order of the teams members filter (default to everyone)

Integrations

  • HOU-980 — Custom integrations should be working properly and should be fully tested
  • HOU-1052 — Having an issue with anakin.io custom integration, this is what Houston agent said:

Multiplayer

  • HOU-976 — Design: per-person vs team accounts for integrations and AI (both, with a resolution rule)

Onboarding

  • HOU-1063 — OpenAI not connecting during onboarding 🐛

Skills

  • HOU-1033 — [cloud] Gateway: /v1/orgs/:org/skills CRUD + Pg metadata + role enforcement
  • HOU-1032 — [cloud] Pod-store: org-shared prefix read routes for engine pods
  • HOU-1027 — Org skills store: org storage is the single source of truth
  • HOU-792 — Custom skills are transferable to other agents (they are saved at the org level rather than the agent level)

WhatsApp draft

🚀 Nueva versión de Houston!
✅ When OpenAI does async stuff (e.g. connect to anakin.io) it shows the loading element in the chat instead of showing the activity, even if it is browsing the web, which SHOULD be something. The loading is ONLY if there's no connection with the model or regular wait times
✅ Improve e2e test performance
✅ The Archived button should be primary and should be clear how to return to the main menu
✅ Custom integrations should be working properly and should be fully tested
✅ Design a beautiful loading screen
✅ The navbar should be reduced: compress the guide me and notifications to be icon only. Change the order of the teams members filter (default to everyone)
✅ Model selection is global per agent — changing the model in one mission changes it for all missions
✅ New agent defaults to Anthropic Sonnet even when Anthropic is not connected — first message always fails
✅ Managed cloud: Anthropic org credential killed by a second rotator — every NEW agent pod 401s while the UI says connected
✅ Every new mission opens in Ask First mode (drop Planner default + per-agent mode memory)
✅ Nvidia and Qwen not working
✅ Fix actions discovery when manually adding custom integrations
✅ Offline gateway bursts surface as red bug toasts + Sentry noise (list_project_files: Load failed)
✅ Fix link looking weird
✅ OpenAI not connecting during onboarding
✅ Having an issue with anakin.io custom integration, this is what Houston agent said:
✅ We shouldn't render the markdown from the user, only the one from the agent
✅ On the suggestions thing, on click it shouldn't send the message but put it as text in the chat input
✅ For the custom integrations also use this in the chat experience, maybe the name of the integration and a 🛠️ icon
✅ On the activity from the model it'll be great if we can show stuff like if the model is on the internet (they are curling stuff from there) and if the model for example is using python. Use an UI similar to the integrations, so find a logo and make look pretty. On the internet part, it'll be good if it is something like "(logo) Browsing the web - anakin.io"
✅ [cloud] Gateway: /v1/orgs/:org/skills CRUD + Pg metadata + role enforcement
✅ [cloud] Pod-store: org-shared prefix read routes for engine pods
✅ Org skills store: org storage is the single source of truth
✅ Verify app web is working
✅ Design: per-person vs team accounts for integrations and AI (both, with a resolution rule)
✅ Custom skills are transferable to other agents (they are saved at the org level rather than the agent level)
Gracias a todos los que reportaron 🙌

Notify reporters (then clear the Notify pending label):

  • HOU-1077 → ⚠️ no phone on issue
  • HOU-1063 → ⚠️ no phone on issue
cloud-v0.5.35
July 30, 2026
Beta

Houston v0.5.35

Features

  • feat(integrations): custom integrations — manual add form, detail card, per-agent routing (HOU-980) (#1151)
  • feat(files): Drive-style redesign of the Files tab (#1156)
  • feat: show provider usage on AI Models cards; Usage screen becomes Time worked
  • feat: consolidate Usage, Permissions and Admin under Settings

Fixes

  • fix(auth): stop Codex sign-in retries from colliding with Houston's own 1455 listeners (#1158)
  • fix(integrations): fall back to a collectible scheme when Composio's advertised managed app is gone (HOU-1020) (#1155)
  • fix(runtime): classify Copilot's 'not available for integrator' 400 as model_unavailable (#1153)
  • fix(runtime): classify pi 0.82 'Provider is not configured' as no-credentials (HOU-956) (#1154)
  • fix(runtime): classify opencode 'Streaming response failed' as provider_internal (HOU-929) (#1152)
  • fix(ci): schedule the daily cut so it actually fires ~07:05 Bogota (HOU-1013) (#1150)

Changes

  • style(agent): archived toggle becomes a floating outline icon button over the board

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: https://github.com/gethouston/houston/compare/cloud-v0.5.34...cloud-v0.5.35


Linear — cloud-v0.5.35

(no project)

  • HOU-1040 — Codex/OpenAI sign-in retries fail with "sign-in port busy" — Houston collides with its own 1455 listeners
  • HOU-1020 — Fix composio integrations 🐛

AI Models

  • HOU-929 — Houston bug: provider_error:unknown:opencode - Streaming response failed 🐛
  • HOU-956 — Houston bug: provider_error:unknown:google - Provider is not configured: google 🐛
  • HOU-977 — Houston bug: provider_error:unknown:github-copilot - 400: {"message":"The requested model is not available for integrator "vscode-chat"... 🐛

Admin, Settings & Permissions

  • HOU-788 — Integrate Permissions, Usage, Admin, Settings only under Settings section
  • HOU-789 — There shouldn't be a separated "Usage" screen for the AI Models usage. Instead, the cards that show the usage should be how the cards are shown for the connected models in the AI Models tab
  • HOU-790 — Usage for compute should be something like "Time worked" rather than the compute usage which sounds more technical

Backend

  • HOU-1013 — Move the cronjob that starts the deployment of the draft to 7am instead of 8:30am

Files

  • HOU-1025 — Files: Drive-style redesign (full width, minimal toolbar, borderless list, click-to-preview, checkboxes)

Integrations

  • HOU-980 — Custom integrations should be working properly and should be fully tested

WhatsApp draft

🚀 Nueva versión de Houston!
✅ Integrate Permissions, Usage, Admin, Settings only under Settings section
✅ There shouldn't be a separated "Usage" screen for the AI Models usage. Instead, the cards that show the usage should be how the cards are shown for the connected models in the AI Models tab
✅ Usage for compute should be something like "Time worked" rather than the compute usage which sounds more technical
✅ Move the cronjob that starts the deployment of the draft to 7am instead of 8:30am
✅ Houston bug: provider_error:unknown:opencode - Streaming response failed
✅ Houston bug: provider_error:unknown:google - Provider is not configured: google
✅ Houston bug: provider_error:unknown:github-copilot - 400: {"message":"The requested model is not available for integrator \"vscode-chat\"...
✅ Files: Drive-style redesign (full width, minimal toolbar, borderless list, click-to-preview, checkboxes)
✅ Custom integrations should be working properly and should be fully tested
✅ Codex/OpenAI sign-in retries fail with "sign-in port busy" — Houston collides with its own 1455 listeners
✅ Fix composio integrations
Gracias a todos los que reportaron 🙌

Notify reporters (then clear the Notify pending label):

  • HOU-929 → ⚠️ no phone on issue
  • HOU-956 → ⚠️ no phone on issue
  • HOU-977 → ⚠️ no phone on issue
  • HOU-1020 → ⚠️ no phone on issue
cloud-v0.5.34
July 29, 2026
Beta

Houston v0.5.34

Features

  • feat(chat): guarantee the plan approval card; trim it to two choices
  • feat(integrations): connect multiple accounts per app (HOU-901) (#1126)
  • feat(chat): plan card joins the card family; finishing offers follow-ups
  • feat(files): improve Files browser UI (#1142)
  • feat(agent): reorder tabs, fold Permissions into Settings, Archived becomes a toolbar toggle
  • feat(chat): collapsible interaction cards + compact plan approval
  • feat(chat): offer clickable next-step bubbles when a mission finishes
  • feat(catalog): always-visible clear X on catalog search and clear after install
  • feat(skills): unify the chat skills picker with the Skills tab rows
  • feat(chat): make the integration connect card state its action clearly

Fixes

  • fix(website): hero fold fills the viewport in browsers with minimal chrome (#1146)
  • fix(runtime-client): defuse WebKit's duplicate fetch-body error surface (HOU-1007) (#1145)
  • fix(runtime): carry conversation context across the pi ⇄ Claude backend switch (HOU-951) (#1124)
  • fix(runtime): surface the skills index to the Claude backend — Anthropic skill turns ran blind (HOU-894) (#1127)
  • fix(board): never let a login race or one sick agent blank the mission board (#1138)
  • fix(board): don't let Space from inner controls close the mission rename editor (#1130)
  • fix(agents): remount agent view on switch and guard selection races
  • fix(runtime): bound integration tool results — a 1 MB Gmail fetch killed every trigger run (HOU-893) (#1121)
  • fix(chat): allow video and audio attachments in the composer (HOU-971) (#1125)
  • fix(sidebar): make agent rename discoverable and non-lossy
  • fix: solo chats keep classic presentation in multiplayer (HOU-969) (#1132)

Changes

  • perf(shell): perceived zero-second navigation between screens
  • perf(search): stream bounded mission-search scans instead of full-transcript waves (#1133)

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: https://github.com/gethouston/houston/compare/cloud-v0.5.33...cloud-v0.5.34


Linear — cloud-v0.5.34

AI Models

  • HOU-951 — If an user is with gemini and wants to continue the conversation with anthropic, claude says "it is a new conversation". We're not moving this correctly between Pi and antrhopic I think 🐛
  • HOU-925 — Update Pi

Activity

  • HOU-932 — Renaming missions doesn't allow adding a space, it closes the change of the mission
  • HOU-941 — Searching for a mission is taking +15 seconds
  • HOU-981 — Missions are sometimes when I login not seeing them

Admin, Settings & Permissions

  • HOU-818 — Bug report cannot be sent from Settings 🐛

Agent Store

  • HOU-983 — Agent Store

Backend

  • HOU-1007 — Desktop: stackless "Load failed" unhandled rejection + error toast when the global events stream drops (WebKit double-report)
  • HOU-1004 — Prod nodes exhaust inotify watch budget (ENOSPC) — engine pods crash-loop, users see all-routes "Load failed"
  • HOU-978 — User can't install Houston in Windows 🐛

Chat Experience

  • HOU-831 — Improve approval card from an integration in coworker mode
  • HOU-762 — The skills from the chat should have the same look and feel as the skills page. They should use the same component so that if we change one, we change both
  • HOU-763 — The skills in there should also have a searchbar, so probably we should use the catalog component, but not for installing, but just for using the skills so we ensure the experience is the same
  • HOU-764 — Skills in the modal should be ordered alphabetically
  • HOU-773 — When the chat goes to "Done", instead of doing a generic question inside the chat, but suggested actions in bubbles that are clickable so people can continue with other stuff
  • HOU-974 — ask_user cards should be collapsable so that the user is able to read the chat (this is an issue specially with plan mode). Also, I don't think the plan should be on the card, that'll just create a gigantic plan. We need to find a better UX for this 🐛
  • HOU-766 — Improve the experience when the Plan is done and the AI is ready to execute. Benchmark how others handle this. What if the plan is big?

Files

  • HOU-971 — When an user tries to upload a heavy file like a video it says something like "some files couldn't be uploaded" 🐛
  • HOU-970 — Improve Files UI

Global Interfaces & Components

  • HOU-812 — The catalog should have a functionality of that when something is installed the searchbar is cleaned AND should always have an X to close that
  • HOU-975 — Agents can't be renamed!
  • HOU-814 — Reorder the tabs to be (1) Activity, (2) Settings, (3) Integrations, (4) Routines, (5) Files. Permissions should be inside agent settings and archived should be a binder button somewhere instead of a tab
  • HOU-816 — Sometimes when changing from an agent to another the missions and files from the prior one stay in there. So we're having refreshing issues.
  • HOU-813 — User should feel that the loading time of a screen is 0 seconds. E.g. when moving from one screen to another (like mission control to integrations) loading time should be 0 seconds. How can we do this? Maybe caching? Optimistic loading? etc

Integrations

  • HOU-901 — Allow users to connect multiple profiles into each integration

Local Models

  • HOU-805 — It is not working on windows. Test, debug, and fix.

Multiplayer

  • HOU-969 — For the chat in multiplayer we need to change the UI of the chat from when it is just a sinlge person and multiple person

Performance

  • HOU-894 — Fix that is taking a lot of time with skills and they are not being completed

Triggers

  • HOU-893 — It is not working. Debug why and fix.

WhatsApp draft

🚀 Nueva versión de Houston!
✅ For the chat in multiplayer we need to change the UI of the chat from when it is just a sinlge person and multiple person
✅ The catalog should have a functionality of that when something is installed the searchbar is cleaned AND should always have an X to close that
✅ Improve approval card from an integration in coworker mode
✅ Agents can't be renamed!
✅ The skills from the chat should have the same look and feel as the skills page. They should use the same component so that if we change one, we change both
✅ The skills in there should also have a searchbar, so probably we should use the catalog component, but not for installing, but just for using the skills so we ensure the experience is the same
✅ Skills in the modal should be ordered alphabetically
✅ When an user tries to upload a heavy file like a video it says something like "some files couldn't be uploaded"
✅ When the chat goes to "Done", instead of doing a generic question inside the chat, but suggested actions in bubbles that are clickable so people can continue with other stuff
✅ Reorder the tabs to be (1) Activity, (2) Settings, (3) Integrations, (4) Routines, (5) Files. Permissions should be inside agent settings and archived should be a binder button somewhere instead of a tab
✅ ask_user cards should be collapsable so that the user is able to read the chat (this is an issue specially with plan mode). Also, I don't think the plan should be on the card, that'll just create a gigantic plan. We need to find a better UX for this
✅ Improve the experience when the Plan is done and the AI is ready to execute. Benchmark how others handle this. What if the plan is big?
✅ Improve Files UI
✅ Renaming missions doesn't allow adding a space, it closes the change of the mission
✅ Searching for a mission is taking +15 seconds
✅ Missions are sometimes when I login not seeing them
✅ Fix that is taking a lot of time with skills and they are not being completed
✅ If an user is with gemini and wants to continue the conversation with anthropic, claude says "it is a new conversation". We're not moving this correctly between Pi and antrhopic I think
✅ Desktop: stackless "Load failed" unhandled rejection + error toast when the global events stream drops (WebKit double-report)
✅ Sometimes when changing from an agent to another the missions and files from the prior one stay in there. So we're having refreshing issues.
✅ User should feel that the loading time of a screen is 0 seconds. E.g. when moving from one screen to another (like mission control to integrations) loading time should be 0 seconds. How can we do this? Maybe caching? Optimistic loading? etc
✅ Prod nodes exhaust inotify watch budget (ENOSPC) — engine pods crash-loop, users see all-routes "Load failed"
✅ Agent Store
✅ User can't install Houston in Windows
✅ Update Pi
✅ Allow users to connect multiple profiles into each integration
✅ It is not working. Debug why and fix.
✅ Bug report cannot be sent from Settings
✅ It is not working on windows. Test, debug, and fix.
Gracias a todos los que reportaron 🙌

Notify reporters (then clear the Notify pending label):

  • HOU-971 → ⚠️ no phone on issue
  • HOU-974 → ⚠️ no phone on issue
  • HOU-951 → ⚠️ no phone on issue
  • HOU-978 → ⚠️ no phone on issue
  • HOU-818 → +32475407080, +573042508033
cloud-v0.5.33
July 28, 2026
Beta

Houston v0.5.33

Features

  • feat(skills): build and edit custom skills in a persistent agent chat (HOU-791) (#1084)
  • feat(settings): hide the API keys row — the Agents API surface is the Routines tab for now (HOU-806) (#1119)
  • feat(landing): black-and-white system — statement hero, alternating bands, live previews (#1117)
  • feat: set your own name and photo (Settings > Profile)
  • feat: header notifications bell; drop the shared-agent chat banner
  • feat: WhatsApp-group sender presentation in shared chats
  • feat: @mentions in shared chats + relevance-scoped notifications
  • feat: learnings carry provenance (person + mission)
  • feat: every chat turn shows its sender in multiplayer
  • feat: mission-card face stacks show every human, with the landing anatomy

Fixes

  • fix: team-space provider statuses tell the truth in every surface
  • fix(release): channel-aware changelog range + draft-aware Slack link (HOU-972) (#1123)
  • fix: honest guidance when a user lacks access to an agent's integrations
  • fix(web): webhook-key mint routed to the gateway + dev GW_PUBLIC_BASE_URL (HOU-807) (#1114)
  • fix: boundary scanner no longer reads string contents as imports
  • fix: backfill the GCIP account record's photo/name at sign-in
  • fix(app): mint each cloud space its own Claude token family, exclusive handoff (HOU-954) (#1112)
  • fix(runtime): unbreak the engine bundle — drop the serve.ts import cycle (HOU-952) (#1108)
  • fix(host): tolerate a BOM in .houston docs and fail-isolate the scheduler sweep (#1107)
  • fix(runtime): report a provider-revoked served token to the control plane (HOU-952) (#1106)

Changes

  • refactor: group-chat bubbles match the reference anatomy

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: https://github.com/gethouston/houston/compare/cloud-v0.5.29...cloud-v0.5.33


Linear — cloud-v0.5.33

(no project)

  • HOU-953 — Scheduler wedged by BOM in routines.json — one unparseable agent file stops every routine
  • HOU-954 — Fix claude credentials
  • HOU-952 — Revoked Anthropic token is served as healthy: 3.9k failed turns across 58 users (HOUSTON-APP-4YA)
  • HOU-950 — Claude subscription silently disconnects: gateway accepts a dead OAuth snapshot, then deletes it on first serve
  • HOU-949 — Update pi

Agents API

  • HOU-807 — Test that is working and debug
  • HOU-806 — Remove this from the agents settings screen, it should be only in Routines for now. Just delete the UI.

Backend

  • HOU-972 — Review if the release notes are accurate and improve them if we're not. Diagnose and fix (probably it is a skill inside the repo?)

Landing

  • HOU-948 — Landing: cinematic motion pass (wewillfancy direction) — same content, revolutionary feel

Multiplayer

  • HOU-947 — Mission cards: multi-person face stacks + avatar overlap fix
  • HOU-943 — Chat: show who sent every message
  • HOU-946 — Learnings: provenance (person + mission)
  • HOU-944 — Chat: @mentions of teammates
  • HOU-945 — Relevance-scoped notifications
  • HOU-960 — Chat: WhatsApp-group sender presentation
  • HOU-963 — Header notifications bell replaces Share; drop shared-agent chat banner
  • HOU-979 — Team space AI providers: picker empty, hub lies Connected, reconnect card never clears

Skills

  • HOU-791 — Implement custom skills

WhatsApp draft

🚀 Nueva versión de Houston!
✅ Scheduler wedged by BOM in routines.json — one unparseable agent file stops every routine
✅ Mission cards: multi-person face stacks + avatar overlap fix
✅ Chat: show who sent every message
✅ Learnings: provenance (person + mission)
✅ Chat: @mentions of teammates
✅ Relevance-scoped notifications
✅ Chat: WhatsApp-group sender presentation
✅ Header notifications bell replaces Share; drop shared-agent chat banner
✅ Landing: cinematic motion pass (wewillfancy direction) — same content, revolutionary feel
✅ Review if the release notes are accurate and improve them if we're not. Diagnose and fix (probably it is a skill inside the repo?)
✅ Team space AI providers: picker empty, hub lies Connected, reconnect card never clears
✅ Fix claude credentials
✅ Revoked Anthropic token is served as healthy: 3.9k failed turns across 58 users (HOUSTON-APP-4YA)
✅ Claude subscription silently disconnects: gateway accepts a dead OAuth snapshot, then deletes it on first serve
✅ Update pi
✅ Test that is working and debug
✅ Remove this from the agents settings screen, it should be only in Routines for now. Just delete the UI.
✅ Implement custom skills
Gracias a todos los que reportaron 🙌
cloud-v0.5.29
July 27, 2026
Beta

Houston v0.5.29

Features

  • feat(landing): @mentions, Features section, auto-rotating switchers
  • feat(landing): free tier for three, hero share preview, full cleanup
  • feat(landing): v4 final round — cloud hero, category copy, nav rework
  • feat(prototype): sky-2 hero + cool blue palette
  • feat(prototype): round 9 — expert-per-job column, richer agent views, FAQ accordions
  • feat(prototype): round 8 — agent column switcher + feature views, inline
  • feat(prototype): round 7 — screen-per-section polish, inline
  • feat(prototype): round 6 — clear statements + app screens, built inline
  • feat: broken connections recover in place, not in a special section (HOU-847 follow-up)
  • feat(prototype): occupied-board hero — the multiplayer fold
  • feat(prototype): first-principles refactor — ivory, visual-first, 245 words
  • feat: merge the connect flow into the row as one card (HOU-847 follow-up)
  • feat(prototype): multiplayer-led story on Houston monochrome (HOU-918 round 2)
  • feat(prototype): Mercury-look skin for the landing (HOU-918, do not deploy)
  • feat: polish the integrations connect flow (HOU-847)
  • feat(models): add Claude Opus 5 (HOU-912) (#1090)
  • feat(app): instant setup-mission hello while the pod warms (HOU-867) (#1081)
  • feat: landing polish — exact-app preview, compact how-it-works, 8-agent grid
  • feat: richer skills.sh preview modal with category, apps, and instructions (#1092)
  • feat(agents): remove the Connect (public API) section from Agent Settings (HOU-806) (#1075)
  • feat: update pi (Earendil) dependencies 0.80.6 → 0.82.0 (HOU-891) (#1083)
  • feat: show a skill's connected apps across the skill surfaces (#1091)
  • feat: make notifications discoverable — contextual ask, honest settings, catch-net (HOU-879)
  • feat: landing v3 — original sections, copy, and animations on the light theme
  • feat: render skill icons with the flat 2D Fluent emoji variant (#1087)
  • feat: astronaut one-liners on the thinking indicator (HOU-910)
  • feat: human labels for every Houston tool in the mission log (HOU-888)
  • feat: icon-first mission status, no prefix (HOU-888)
  • feat: landing v2 — monochrome editorial restyle with true-to-app preview
  • feat(files): upload complete folders from the Files tab (HOU-889) (#1077)
  • feat(ci): sign Windows MSI via Azure Artifact Signing to clear SmartScreen (#1082)
  • feat: branded mission status while an app action runs (HOU-888)
  • feat: rebuild landing page — Night Launch design on a single token layer
  • feat: one card system — branded ask_user replaces the approval gate (HOU-885)
  • feat(teams): teammate names and avatars from the gateway profile source
  • feat: agent design process — DESIGN.md + frontend-design/design-review skills
  • feat: visual regression suite + design-token hex cleanup
  • feat: ask_user defaults to options; honest optionless placeholder (HOU-880)
  • feat: forward composerOverrideMode through the board panel (HOU-870)
  • feat: interaction cards replace the composer, free-text escape on every step (HOU-870)
  • feat: integration approvals become a plain confirmation card (HOU-869)
  • feat: make display name optional in the creator profile forms (#1064)
  • feat(migration): emoji space-invaders + progress screen polish (#1063)
  • feat: rename Coworker mode to Ask first
  • feat: run read-only integration actions without the approval card
  • feat(chat): upload whole folders as chat attachments (HOU-808) (#1045)
  • feat: label Linear issues at the cut, not just at publish (#1049)
  • feat: presence-style status dot on catalog rows (#1040)
  • feat: sign-in referral panel reads Coming soon; localize panel strings (#1039)
  • feat: Linear release stamp on cloud train publish (#1038)
  • feat(store): starter-agent publish pipeline, admin grant UI, docs and i18n cleanup
  • feat(integrations): turn the catalog spotlight into a "Most used" section
  • feat(analytics): stamp the display name as a person property on sign-in
  • feat(analytics): emit user_signed_up on first sign-in of a new GCIP account
  • feat(providers): 2026-07 catalog QA sweep + Gemini 3.6 Flash / 3.5 Flash-Lite
  • feat(analytics): emit $ai_generation per model turn to light up the AI Usage dashboard
  • 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(website): mobile excellence pass
  • fix(landing): footer + resources cleanup
  • fix(landing): drop the per-OS line from the pricing card
  • fix(prototype): let the hero sky breathe
  • fix(prototype): hero readability + transparent nav
  • fix(prototype): hero headline joins the content grid
  • fix: restore Windows download path for non-Windows visitors
  • fix(runtime): resume a renamed agent's conversations — relocate the transcript, retry fresh as last resort (HOU-892) (#1094)
  • fix: harden the bug-report path and the Settings workspace gate
  • fix: move how-it-works heading into the left column
  • fix(HOU-892): routines incident — stale Claude-credential overwrite guard + idempotent Composio disconnect (#1079)
  • fix(runtime): paragraph break between a turn's streamed text blocks (HOU-857) (#1076)
  • fix(board): never paint the previous agent's missions on switch (HOU-858) (#1078)
  • fix(host): accept a nonce-matched re-send of the running turn instead of 409 (HOU-807) (#1085)
  • fix(teams): first prod test round - identity reset, in-place switch, per-space provider state
  • fix(release): stamp the whole train in Linear; clean up superseded drafts (#1074)
  • fix(teams): bridge team spaces into the switcher; invite follow-through; spaces e2e
  • fix(teams): personal space never offers a broken invite flow
  • fix(auth): register the houston:// scheme at runtime on Windows
  • fix: surface the real cause when a creator profile save or photo upload fails (#1062)
  • fix(i18n): translate the pre-auth sign-in screen (es/pt)
  • fix(analytics): let session replay start by not disabling flags
  • fix(providers): report a provider connected only when it can actually serve a turn (#1054)
  • fix(credentials): make the desktop reconcile a fill-only push so it cannot revoke the token family (HOU-855) (#1056)
  • fix(runtime): show the connect card in Autopilot mode (HOU-853) (#1055)
  • fix(chat): flush a stranded reconnect auto-continue with a history-probe watchdog (HOU-849) (#1052)
  • fix(integrations): serve the secure credential card through the per-agent surface so managed-cloud saves stop 404ing (HOU-823) (#1053)
  • fix(app): accept the Claude sign-in code when the browser hand-off is blocked (HOU-839) (#1043)
  • fix: keep the open chat when clicking outside the board panel (#1048)
  • fix(teams): resume abandoned agent moves so a wedged move can't brick the agent (HOU-817) (#1044)
  • fix(ci): green-main guard must ignore the cut's own failed runs
  • fix(host): stop exhausting the Linux inotify watch budget (HOU-841) (#1042)
  • fix(ci): surface GitHub's rejection message in the cut token probe
  • fix(ci): tokenless checkout + API-validated PAT for the daily cut
  • fix: show the full email on the sign-in continue button (#1041)
  • fix: never sign users out on secure-storage read faults (#1037)
  • fix(integrations): platform-correct custom-secret file permissions
  • fix(integrations): never dead-end the secure credential save on schemeless specs
  • fix(host): quiesce of an absent runtime is a no-op, not a launcher sleep error
  • fix(analytics): identify the person before emitting user_signed_up
  • fix(providers): route Copilot Business connects through github.com
  • fix(providers): drop the two Cloudflare providers from the catalog
  • fix(runtime): classify no-credit provider errors as quota_exhausted
  • fix(host): quiesce the agent runtime before a rename so the old name cannot resurrect
  • fix(host): serve the Rust-era agent color so migrated agents keep their colors
  • fix(integrations): pin Composio tool version to latest on search + execute
  • fix(chat): block image attachments when the active model has no vision
  • fix(host): no-auth Composio toolkits are not connectable apps (#1012)
  • fix(chat): render URL-labeled links inline instead of a clipped black pill
  • fix(app): repair Linux AppImage sign-in end to end (#1019)
  • fix(providers): friendly toast for a GitHub account without Copilot access (#1017)
  • fix(providers): verify Google keys against the models list and surface typed connect errors (#1016)
  • fix(providers): repair the Windows shell env for Claude sign-in and turns (#1014)
  • fix(app): guard agent-JSON reads against wrong top-level container shape (#1013)
  • fix(website): download buttons serve the newest cloud prerelease (#1009)
  • 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: add the app node:test suite to the test-commands table
  • docs: KB reflects composer-replacing interaction stepper (HOU-870)
  • docs(kb): drop the resolved sign-in-screen i18n follow-up note
  • 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: retrigger
  • ci: retrigger
  • ci: raise the web job timeout to 30m — the e2e suite outgrew 20m
  • ci(train): publishing the cloud draft ships the whole train
  • ci(images): publish the served /v1/catalog as an engine-pod-catalog artifact
  • ci(release): cut the cloud release automatically each weekday morning
  • ci(release): build a staging-gateway QA DMG for every cloud release
  • ci(website): pass POSTHOG_KEY to the site build and fail loudly when absent
  • ci(images): build engine-pod/agentstore on tag push, notify prod sepa… (#992)

Changes

  • test(runtime): pin the mid-turn Mode-pill hot-swap on the Claude SDK backend (HOU-776) (#1080)
  • test: notification body-key cases follow the branded-question model (HOU-885)
  • test: prove the Always-allow circle end-to-end through the dispatch route
  • perf(chat): open chats on the transcript tail + scroll-up lazy-load (HOU-819) (#1051)
  • style(chat): drop the amber triangle chip from the attachment-rejection dialog
  • test(routines): adapt stale e2e specs to the chat-first Routines redesign (#1010)
  • 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: https://github.com/gethouston/houston/compare/v0.5.6...cloud-v0.5.29


Linear — cloud-v0.5.29

(no project)

  • HOU-900 — Landing v2: monochrome editorial restyle (no space bg, no orange, real-app mockup)
  • HOU-908 — Landing v3: original sections/copy/animations on the light monochrome theme
  • HOU-913 — Landing polish: exact-app preview, compact how-it-works layout, 8 agents + store tile
  • HOU-919 — Landing: no Windows download path from non-Windows browsers (per-OS triggers lost in v3)
  • HOU-918 — PROTOTYPE (do not merge): Mercury-look landing for Mercury CTO review
  • HOU-933 — Landing: free tier up to 3 members + OG hero preview + Mercury/dead-code cleanup
  • HOU-940 — Landing: @mentions in chats, Features section (2 parts), auto-rotating switchers
  • HOU-934 — Website: migrate Resources subpages (guides, vision, changelog) to the v4 design system + shared navbar
  • HOU-935 — Website: mobile excellence pass across landing + migrated subpages

AI Models

  • HOU-891 — Update Pi
  • HOU-912 — Add support for Opus 5
  • HOU-776 — Anthropic: Models should be able to change from Coworker, Planner, and Autopilot modes while they are responding (hot-swap) like it works in Pi

Agents API

  • HOU-806 — Remove this from the agents settings screen, it should be only in Routines for now. Just delete the UI.

Backend

  • HOU-897 — Alert when a woken engine hydrates 0 objects for an agent the gateway knows
  • HOU-896 — Roll guard: never recycle an engine pod whose data has not reached the pod-store
  • HOU-895 — Gateway self-heal: re-seed known agents into a blank engine instead of eternal 404s

Chat Experience

  • HOU-888 — We have a "Mission in progress" that has a ":" and that changes with the detail of what we're doing. When we're using an integration, we probably have also the logo. It'll be amazing to show the logo and the name of the integration instead of doing the generic integration execute
  • HOU-910 — Astronaut loading phrases: the pulsing helmet cycles ~50 fun space one-liners
  • HOU-879 — Desktop notifications when a mission needs you or finishes
  • HOU-939 — Context window of a chat is not correct. E.g. Opus 4.8 should be 1M, we're allowing 250K
  • HOU-937 — Agent responses are appearing in one long paragraph instead of clean sentences
  • HOU-936 — Uploaded files are not "landing" in the agent's workspace
  • HOU-857 — Fix response streaming

Files

  • HOU-889 — On the files tab, users should be able to upload complete folders

Integrations

  • HOU-847 — While integrations are being connected they show an ugly experience on the integrations tabs, improve it

Multiplayer

  • HOU-903 — Sign-out does not reset in-memory state: next account renders the previous account's world
  • HOU-904 — Entering a team on a billing-off gateway throws the red bug toast (billing 503 not degraded)
  • HOU-905 — Create-team from Settings leaves the user in Settings: no navigation into the new team
  • HOU-906 — Provider connections from the personal space render inside a team after a space switch
  • HOU-907 — Space switch shows a blocking loading screen: should be a seamless in-place transition

Performance

  • HOU-858 — Fix chat loading
  • HOU-867 — Fix agent creation

Scheduled

  • HOU-892 — Review that routines are working properly

Skills

  • HOU-793 — Skills icons should be 2D
  • HOU-794 — Nice to show the apps connected to that skill (for custom Houston skills)
  • HOU-795 — Add more info from skill.sh into the skill information modal

WhatsApp draft

🚀 Nueva versión de Houston!
✅ On the files tab, users should be able to upload complete folders
✅ Landing v2: monochrome editorial restyle (no space bg, no orange, real-app mockup)
✅ Skills icons should be 2D
✅ Sign-out does not reset in-memory state: next account renders the previous account's world
✅ Entering a team on a billing-off gateway throws the red bug toast (billing 503 not degraded)
✅ Create-team from Settings leaves the user in Settings: no navigation into the new team
✅ Provider connections from the personal space render inside a team after a space switch
✅ Space switch shows a blocking loading screen: should be a seamless in-place transition
✅ Landing v3: original sections/copy/animations on the light monochrome theme
✅ Nice to show the apps connected to that skill (for custom Houston skills)
✅ Update Pi
✅ Add more info from skill.sh into the skill information modal
✅ Fix chat loading
✅ Landing polish: exact-app preview, compact how-it-works layout, 8 agents + store tile
✅ We have a "Mission in progress" that has a ":" and that changes with the detail of what we're doing. When we're using an integration, we probably have also the logo. It'll be amazing to show the logo and the name of the integration instead of doing the generic integration execute
✅ Astronaut loading phrases: the pulsing helmet cycles ~50 fun space one-liners
✅ Desktop notifications when a mission needs you or finishes
✅ While integrations are being connected they show an ugly experience on the integrations tabs, improve it
✅ Landing: no Windows download path from non-Windows browsers (per-OS triggers lost in v3)
✅ PROTOTYPE (do not merge): Mercury-look landing for Mercury CTO review
✅ Landing: free tier up to 3 members + OG hero preview + Mercury/dead-code cleanup
✅ Landing: @mentions in chats, Features section (2 parts), auto-rotating switchers
✅ Website: migrate Resources subpages (guides, vision, changelog) to the v4 design system + shared navbar
✅ Website: mobile excellence pass across landing + migrated subpages
✅ Context window of a chat is not correct. E.g. Opus 4.8 should be 1M, we're allowing 250K
✅ Agent responses are appearing in one long paragraph instead of clean sentences
✅ Uploaded files are not "landing" in the agent's workspace
✅ Add support for Opus 5
✅ Alert when a woken engine hydrates 0 objects for an agent the gateway knows
✅ Roll guard: never recycle an engine pod whose data has not reached the pod-store
✅ Gateway self-heal: re-seed known agents into a blank engine instead of eternal 404s
✅ Review that routines are working properly
✅ Fix agent creation
✅ Fix response streaming
✅ Remove this from the agents settings screen, it should be only in Routines for now. Just delete the UI.
✅ Anthropic: Models should be able to change from Coworker, Planner, and Autopilot modes while they are responding (hot-swap) like it works in Pi
Gracias a todos los que reportaron 🙌
cloud-v0.5.28
July 24, 2026
Beta

Houston v0.5.28

Features

  • feat(ci): sign Windows MSI via Azure Artifact Signing to clear SmartScreen (#1082)
  • feat: rebuild landing page — Night Launch design on a single token layer
  • feat: one card system — branded ask_user replaces the approval gate (HOU-885)
  • feat(teams): teammate names and avatars from the gateway profile source
  • feat: agent design process — DESIGN.md + frontend-design/design-review skills
  • feat: visual regression suite + design-token hex cleanup
  • feat: ask_user defaults to options; honest optionless placeholder (HOU-880)
  • feat: forward composerOverrideMode through the board panel (HOU-870)
  • feat: interaction cards replace the composer, free-text escape on every step (HOU-870)
  • feat: integration approvals become a plain confirmation card (HOU-869)
  • feat: make display name optional in the creator profile forms (#1064)
  • feat(migration): emoji space-invaders + progress screen polish (#1063)
  • feat: rename Coworker mode to Ask first
  • feat: run read-only integration actions without the approval card
  • feat(chat): upload whole folders as chat attachments (HOU-808) (#1045)
  • feat: label Linear issues at the cut, not just at publish (#1049)
  • feat: presence-style status dot on catalog rows (#1040)
  • feat: sign-in referral panel reads Coming soon; localize panel strings (#1039)
  • feat: Linear release stamp on cloud train publish (#1038)
  • feat(store): starter-agent publish pipeline, admin grant UI, docs and i18n cleanup
  • feat(integrations): turn the catalog spotlight into a "Most used" section
  • feat(analytics): stamp the display name as a person property on sign-in
  • feat(analytics): emit user_signed_up on first sign-in of a new GCIP account
  • feat(providers): 2026-07 catalog QA sweep + Gemini 3.6 Flash / 3.5 Flash-Lite
  • feat(analytics): emit $ai_generation per model turn to light up the AI Usage dashboard
  • 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(release): stamp the whole train in Linear; clean up superseded drafts (#1074)
  • fix(teams): bridge team spaces into the switcher; invite follow-through; spaces e2e
  • fix(teams): personal space never offers a broken invite flow
  • fix(auth): register the houston:// scheme at runtime on Windows
  • fix: surface the real cause when a creator profile save or photo upload fails (#1062)
  • fix(i18n): translate the pre-auth sign-in screen (es/pt)
  • fix(analytics): let session replay start by not disabling flags
  • fix(providers): report a provider connected only when it can actually serve a turn (#1054)
  • fix(credentials): make the desktop reconcile a fill-only push so it cannot revoke the token family (HOU-855) (#1056)
  • fix(runtime): show the connect card in Autopilot mode (HOU-853) (#1055)
  • fix(chat): flush a stranded reconnect auto-continue with a history-probe watchdog (HOU-849) (#1052)
  • fix(integrations): serve the secure credential card through the per-agent surface so managed-cloud saves stop 404ing (HOU-823) (#1053)
  • fix(app): accept the Claude sign-in code when the browser hand-off is blocked (HOU-839) (#1043)
  • fix: keep the open chat when clicking outside the board panel (#1048)
  • fix(teams): resume abandoned agent moves so a wedged move can't brick the agent (HOU-817) (#1044)
  • fix(ci): green-main guard must ignore the cut's own failed runs
  • fix(host): stop exhausting the Linux inotify watch budget (HOU-841) (#1042)
  • fix(ci): surface GitHub's rejection message in the cut token probe
  • fix(ci): tokenless checkout + API-validated PAT for the daily cut
  • fix: show the full email on the sign-in continue button (#1041)
  • fix: never sign users out on secure-storage read faults (#1037)
  • fix(integrations): platform-correct custom-secret file permissions
  • fix(integrations): never dead-end the secure credential save on schemeless specs
  • fix(host): quiesce of an absent runtime is a no-op, not a launcher sleep error
  • fix(analytics): identify the person before emitting user_signed_up
  • fix(providers): route Copilot Business connects through github.com
  • fix(providers): drop the two Cloudflare providers from the catalog
  • fix(runtime): classify no-credit provider errors as quota_exhausted
  • fix(host): quiesce the agent runtime before a rename so the old name cannot resurrect
  • fix(host): serve the Rust-era agent color so migrated agents keep their colors
  • fix(integrations): pin Composio tool version to latest on search + execute
  • fix(chat): block image attachments when the active model has no vision
  • fix(host): no-auth Composio toolkits are not connectable apps (#1012)
  • fix(chat): render URL-labeled links inline instead of a clipped black pill
  • fix(app): repair Linux AppImage sign-in end to end (#1019)
  • fix(providers): friendly toast for a GitHub account without Copilot access (#1017)
  • fix(providers): verify Google keys against the models list and surface typed connect errors (#1016)
  • fix(providers): repair the Windows shell env for Claude sign-in and turns (#1014)
  • fix(app): guard agent-JSON reads against wrong top-level container shape (#1013)
  • fix(website): download buttons serve the newest cloud prerelease (#1009)
  • 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: add the app node:test suite to the test-commands table
  • docs: KB reflects composer-replacing interaction stepper (HOU-870)
  • docs(kb): drop the resolved sign-in-screen i18n follow-up note
  • 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: retrigger
  • ci: raise the web job timeout to 30m — the e2e suite outgrew 20m
  • ci(train): publishing the cloud draft ships the whole train
  • ci(images): publish the served /v1/catalog as an engine-pod-catalog artifact
  • ci(release): cut the cloud release automatically each weekday morning
  • ci(release): build a staging-gateway QA DMG for every cloud release
  • ci(website): pass POSTHOG_KEY to the site build and fail loudly when absent
  • ci(images): build engine-pod/agentstore on tag push, notify prod sepa… (#992)

Changes

  • test: notification body-key cases follow the branded-question model (HOU-885)
  • test: prove the Always-allow circle end-to-end through the dispatch route
  • perf(chat): open chats on the transcript tail + scroll-up lazy-load (HOU-819) (#1051)
  • style(chat): drop the amber triangle chip from the attachment-rejection dialog
  • test(routines): adapt stale e2e specs to the chat-first Routines redesign (#1010)
  • 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: https://github.com/gethouston/houston/compare/v0.5.6...cloud-v0.5.28


Linear — cloud-v0.5.28

(no project)

  • HOU-819 — Chats hang for a while before opening or accepting input 🐛
  • HOU-883 — Design QA gates: Playwright visual regression suite + token-contract hex cleanup
  • HOU-882 — Design process infrastructure: DESIGN.md, frontend-design + design-review skills, mandatory UI workflow
  • HOU-884 — Landing page rebuild on design tokens (warm editorial direction)
  • HOU-830 — Suggestion: surface the most popular integrations first, full list alphabetical 🐛
  • HOU-829 — Reconnect to Anthropic error after update: Claude sign-in failed (exit 1) on Windows 🐛

AI Models

  • HOU-839 — Anthropic new update that requires typing a code breaks our OAuth
  • HOU-855 — Desktop credential reconcile clobbers the gateway's rotated Anthropic token, revoking the whole family
  • HOU-856 — Gateway cannot refresh GitHub Copilot: cloud Copilot breaks ~25 minutes after connect

Agent Store

  • HOU-864 — I couldn't add any picture to my profile in the agent store
  • HOU-868 — Agent Store profile: only the handle is required, everything else optional
  • HOU-865 — I clicked saved for my profile and it said "You profile could not be saved"

Analytics

  • HOU-755 — Track AI models providers, both usage and when people connect to it. Let's find a way to track if people are creating accounts with them from houston! (like a create account button maybe?)
  • HOU-754 — Feature adoption instrumentation
  • HOU-753 — Slack notification when a new user signs up
  • HOU-752 — Visible warning when the PostHog key is missing on the website

Automations

  • HOU-810 — Every time an user creates an account in Houston, we should be notified via Slack

Backend

  • HOU-800 — Load testing on staging

Chat Experience

  • HOU-849 — Fix autocontinue conversation after reconnect
  • HOU-853 — Show connection card in autopilot mode
  • HOU-846 — Coworker mode it is unusable with integrations
  • HOU-845 — Change the name of the "Cowork" mode to something like Ask permissions or something that is more clear that that's the difference
  • HOU-869 — Integration approvals are permission jargon; replace with a plain confirmation card (Do it / Not now)
  • HOU-870 — Interaction cards: free-text input on every card and replace the chat composer while a card is pending
  • HOU-880 — ask_user questions must offer options by default; optionless card shows wrong placeholder
  • HOU-885 — One card system: integration confirmations are branded ask_user questions; approval gate removed
  • HOU-850 — Only show available models in chat

Files

  • HOU-808 — Being able to upload folders of files - +57 317 8950374 🐛

Global Interfaces & Components

  • HOU-815 — Have persistent login

Integrations

  • HOU-826 — LinkedIn integration can't publish: connector sends a retired API version (426 NONEXISTENT_VERSION) 🐛
  • HOU-823 — Tally integration cannot be connected directly 🐛

Migration

  • HOU-737 — Have a micro game in there

Multiplayer

  • HOU-817 — App unusable: starting a mission fails (error ccd6598049884b2897e97937d6dd1ea3) 🐛
  • HOU-824 — Inviting teammates to a team fails 🐛
  • HOU-871 — The overall multiplayer experience was created, but has never been tried nor tested we should make sure it is working and it makes sense
  • HOU-881 — Space switcher never lists teams: the adapter never fetches the /v1/workspaces bridge
  • HOU-875 — After creating a team you land in an empty space with no pointer to invite people
  • HOU-878 — E2E cannot express team spaces: fake-host spaces arming + coverage for the personal/team gating
  • HOU-876 — Teammate names and avatars are stubbed: initials only across mission attribution and rosters
  • HOU-877 — Gateway org-write store errors panic into opaque 500s (no error code)
  • HOU-874 — Team invites send no email: the invitee never learns they were invited
  • HOU-825 — Creating a new team fails (error f4d2e5e0f8d441d0869f53b3afe06a0d) 🐛

Onboarding

  • HOU-756 — Onboarding is only in english 🐛
  • HOU-757 — Windows login is not working 🐛
  • HOU-758 — Apple login is not working 🐛

WhatsApp draft

🚀 Nueva versión de Houston!
✅ Being able to upload folders of files - +57 317 8950374
✅ App unusable: starting a mission fails (error ccd6598049884b2897e97937d6dd1ea3)
✅ Anthropic new update that requires typing a code breaks our OAuth
✅ Fix autocontinue conversation after reconnect
✅ Show connection card in autopilot mode
✅ Desktop credential reconcile clobbers the gateway's rotated Anthropic token, revoking the whole family
✅ Chats hang for a while before opening or accepting input
✅ I couldn't add any picture to my profile in the agent store
✅ Have a micro game in there
✅ Agent Store profile: only the handle is required, everything else optional
✅ Onboarding is only in english
✅ Windows login is not working
✅ Inviting teammates to a team fails
✅ The overall multiplayer experience was created, but has never been tried nor tested we should make sure it is working and it makes sense
✅ Space switcher never lists teams: the adapter never fetches the /v1/workspaces bridge
✅ After creating a team you land in an empty space with no pointer to invite people
✅ E2E cannot express team spaces: fake-host spaces arming + coverage for the personal/team gating
✅ Teammate names and avatars are stubbed: initials only across mission attribution and rosters
✅ Design QA gates: Playwright visual regression suite + token-contract hex cleanup
✅ Design process infrastructure: DESIGN.md, frontend-design + design-review skills, mandatory UI workflow
✅ Landing page rebuild on design tokens (warm editorial direction)
✅ Coworker mode it is unusable with integrations
✅ Change the name of the "Cowork" mode to something like Ask permissions or something that is more clear that that's the difference
✅ Integration approvals are permission jargon; replace with a plain confirmation card (Do it / Not now)
✅ Interaction cards: free-text input on every card and replace the chat composer while a card is pending
✅ ask_user questions must offer options by default; optionless card shows wrong placeholder
✅ One card system: integration confirmations are branded ask_user questions; approval gate removed
✅ Gateway org-write store errors panic into opaque 500s (no error code)
✅ Team invites send no email: the invitee never learns they were invited
✅ I clicked saved for my profile and it said "You profile could not be saved"
✅ Gateway cannot refresh GitHub Copilot: cloud Copilot breaks ~25 minutes after connect
✅ Only show available models in chat
✅ Suggestion: surface the most popular integrations first, full list alphabetical
✅ Reconnect to Anthropic error after update: Claude sign-in failed (exit 1) on Windows
✅ LinkedIn integration can't publish: connector sends a retired API version (426 NONEXISTENT_VERSION)
✅ Creating a new team fails (error f4d2e5e0f8d441d0869f53b3afe06a0d)
✅ Tally integration cannot be connected directly
✅ Have persistent login
✅ Every time an user creates an account in Houston, we should be notified via Slack
✅ Load testing on staging
✅ Apple login is not working
✅ Track AI models providers, both usage and when people connect to it. Let's find a way to track if people are creating accounts with them from houston! (like a create account button maybe?)
✅ Feature adoption instrumentation
✅ Slack notification when a new user signs up
✅ Visible warning when the PostHog key is missing on the website
Gracias a todos los que reportaron 🙌

Notify reporters (then clear the Notify pending label):

  • HOU-808 → ⚠️ no phone on issue
  • HOU-817 → +32475407080, +573042508033
  • HOU-819 → +573227231739, +573183977808, +573503983550
  • HOU-756 → ⚠️ no phone on issue
  • HOU-757 → ⚠️ no phone on issue
  • HOU-824 → +32475407080, +573042508033
  • HOU-830 → +5216121521166
  • HOU-829 → +573506535829
  • HOU-826 → +5115534105446
  • HOU-825 → +32475407080, +573042508033
  • HOU-823 → +573142934127
  • HOU-758 → ⚠️ no phone on issue
cloud-v0.5.24
July 23, 2026
Beta

Houston v0.5.24

Features

  • feat: presence-style status dot on catalog rows (#1040)
  • feat: sign-in referral panel reads Coming soon; localize panel strings (#1039)
  • feat: Linear release stamp on cloud train publish (#1038)
  • feat(store): starter-agent publish pipeline, admin grant UI, docs and i18n cleanup
  • feat(integrations): turn the catalog spotlight into a "Most used" section
  • feat(analytics): stamp the display name as a person property on sign-in
  • feat(analytics): emit user_signed_up on first sign-in of a new GCIP account
  • feat(providers): 2026-07 catalog QA sweep + Gemini 3.6 Flash / 3.5 Flash-Lite
  • feat(analytics): emit $ai_generation per model turn to light up the AI Usage dashboard
  • 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(ci): green-main guard must ignore the cut's own failed runs
  • fix(host): stop exhausting the Linux inotify watch budget (HOU-841) (#1042)
  • fix(ci): surface GitHub's rejection message in the cut token probe
  • fix(ci): tokenless checkout + API-validated PAT for the daily cut
  • fix: show the full email on the sign-in continue button (#1041)
  • fix: never sign users out on secure-storage read faults (#1037)
  • fix(integrations): platform-correct custom-secret file permissions
  • fix(integrations): never dead-end the secure credential save on schemeless specs
  • fix(host): quiesce of an absent runtime is a no-op, not a launcher sleep error
  • fix(analytics): identify the person before emitting user_signed_up
  • fix(providers): route Copilot Business connects through github.com
  • fix(providers): drop the two Cloudflare providers from the catalog
  • fix(runtime): classify no-credit provider errors as quota_exhausted
  • fix(host): quiesce the agent runtime before a rename so the old name cannot resurrect
  • fix(host): serve the Rust-era agent color so migrated agents keep their colors
  • fix(integrations): pin Composio tool version to latest on search + execute
  • fix(chat): block image attachments when the active model has no vision
  • fix(host): no-auth Composio toolkits are not connectable apps (#1012)
  • fix(chat): render URL-labeled links inline instead of a clipped black pill
  • fix(app): repair Linux AppImage sign-in end to end (#1019)
  • fix(providers): friendly toast for a GitHub account without Copilot access (#1017)
  • fix(providers): verify Google keys against the models list and surface typed connect errors (#1016)
  • fix(providers): repair the Windows shell env for Claude sign-in and turns (#1014)
  • fix(app): guard agent-JSON reads against wrong top-level container shape (#1013)
  • fix(website): download buttons serve the newest cloud prerelease (#1009)
  • 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(train): publishing the cloud draft ships the whole train
  • ci(images): publish the served /v1/catalog as an engine-pod-catalog artifact
  • ci(release): cut the cloud release automatically each weekday morning
  • ci(release): build a staging-gateway QA DMG for every cloud release
  • ci(website): pass POSTHOG_KEY to the site build and fail loudly when absent
  • ci(images): build engine-pod/agentstore on tag push, notify prod sepa… (#992)

Changes

  • style(chat): drop the amber triangle chip from the attachment-rejection dialog
  • test(routines): adapt stale e2e specs to the chat-first Routines redesign (#1010)
  • 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: https://github.com/gethouston/houston/compare/v0.5.6...cloud-v0.5.24


Linear — cloud-v0.5.24

(no project)

  • HOU-841 — File watcher limit

WhatsApp draft

🚀 Nueva versión de Houston!
✅ File watcher limit
Gracias a todos los que reportaron 🙌
v0.4.29
July 21, 2026

Houston 0.4.29

New

  • Houston Cloud is here (early beta) — and this app can take you there. This update adds an in-app upgrade to Houston Cloud: hosted agents that keep working even when your computer is off. Your agents and data are imported automatically; after upgrading you'll sign in and reconnect your integrations. No rush — start it whenever you want from "Migrate to cloud" in the sidebar. This is the final planned update of the classic desktop line; new features ship in Houston Cloud.

Fixes

  • Updates now work behind antivirus and corporate proxies that inspect HTTPS. Houston now trusts your operating system's certificate store, so "failed to check for updates" errors on machines with TLS-inspecting software are gone — and the cloud upgrade download works there too.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed, so Windows SmartScreen may warn on a fresh install.
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.
cloud-v0.5.21
July 21, 2026
Beta

Houston v0.5.21

Features

  • feat(analytics): emit $ai_generation per model turn to light up the AI Usage dashboard
  • 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(providers): friendly toast for a GitHub account without Copilot access (#1017)
  • fix(providers): verify Google keys against the models list and surface typed connect errors (#1016)
  • fix(providers): repair the Windows shell env for Claude sign-in and turns (#1014)
  • fix(app): guard agent-JSON reads against wrong top-level container shape (#1013)
  • fix(website): download buttons serve the newest cloud prerelease (#1009)
  • 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(website): pass POSTHOG_KEY to the site build and fail loudly when absent
  • ci(images): build engine-pod/agentstore on tag push, notify prod sepa… (#992)

Changes

  • test(routines): adapt stale e2e specs to the chat-first Routines redesign (#1010)
  • 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: https://github.com/gethouston/houston/compare/v0.5.6...cloud-v0.5.21

cloud-v0.5.20
July 21, 2026
Beta

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: https://github.com/gethouston/houston/compare/v0.5.6...cloud-v0.5.20

cloud-v0.5.19
July 20, 2026
Beta

Houston v0.5.19

Features

  • 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(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(website): point developer docs at the real gateway, centralize the URL (#993)
  • docs(kb): drop retired theagentlibrary note from agent-store KB

Changes

  • 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: https://github.com/gethouston/houston/compare/v0.5.6...cloud-v0.5.19

cloud-latest
July 20, 2026
Beta

Machine-managed rolling release: hosts the current cloud channel's updater manifest (latest-cloud.json). Cloud desktop apps poll this fixed tag for auto-updates. Do not edit or delete — it is rewritten on every cloud-v* publish by the cloud-updater-manifest workflow.

v0.4.28
July 16, 2026

Houston 0.4.28

Fixes

  • GPT-5.6 models can use their code tool again. Missions where Sol, Terra, or Luna tried to run code failed with an error. A missing piece now ships with the app on Mac and Windows, so those missions complete normally.
  • Commands show up while they run. When an agent on a GPT model runs a command, the mission log now shows it in progress instead of only showing the result at the end.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed, so Windows SmartScreen may warn on a fresh install.
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.
v0.4.27
July 9, 2026

Houston 0.4.27

Models

  • GPT-5.6 Sol, Terra, and Luna are in the model picker. OpenAI's newest family, released July 9. Pick them per agent or per mission.
  • All three unlock the new "max" reasoning level. The deepest thinking OpenAI offers, for the hardest problems.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed, so Windows SmartScreen may warn on a fresh install.
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.
v0.4.26
July 1, 2026

Houston 0.4.26

Models

  • Claude Sonnet 5 runs with a full 1M context window. That is a full million tokens of context on every message, so long missions hold much more of their history.
  • Fable 5 is in the model picker. Pick it per agent or per mission.

Now in your language

  • The new-agent store speaks Spanish and Portuguese. The built-in agents and the model picker inside the store now follow your app language, so the whole store reads in Spanish or Portuguese.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed, so Windows SmartScreen may warn on a fresh install.
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.
v0.4.25
June 30, 2026

Houston 0.4.25

New models

  • Claude Sonnet 5. Anthropic's newest Sonnet is now in the chat model picker. It brings stronger agentic coding and tool use. Pick it per agent or per mission.
  • More OpenAI Codex models. The Codex picker now lists three more models so you can match the model to the job:
    • GPT-5.4, a strong model for everyday coding.
    • GPT-5.4-Mini, small, fast, and cost-efficient for simpler tasks.
    • GPT-5.3-Codex-Spark, an ultra-fast coding model.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed, so Windows SmartScreen may warn on a fresh install.
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.
v0.4.24
June 26, 2026

Houston 0.4.24

Added

  • Easier routine scheduling. Weekly schedules are now a simple multi-day preset, and the schedule form uses a friendly clock picker instead of making you type time values by hand.
  • Clearer context in chat. The context indicator is now a quieter hover ring, so you can see the signal when you need it without adding more noise to the chat screen.
  • Sign in without leaving Houston. You can now sign in right inside the app with Google, a one-time email code, or your Microsoft account, instead of bouncing out to a browser to finish.
  • Agent Settings in one place. The agent's settings tab now has a Settings section where you can rename an agent and reach its card actions, instead of hunting through a menu.
  • Find a timezone by typing. The routines timezone control is now a searchable picker. Type a city or region instead of scrolling a long list.

Improved

  • Less visual noise while Houston works. The blinking loading helmet is gone, mission logs start collapsed, and Houston surfaces only the live action unless you want more detail.
  • More consistent cards. Chat, integration, and context cards now share the same shape and behavior, so actions feel more predictable across the app.
  • Simpler effort control. The effort button now cycles through levels with an icon that matches the selected level.
  • One timezone for routines. Routine schedules now use one account-wide timezone instead of per-routine overrides, which makes scheduled behavior easier to reason about.
  • Houston opens ready to go. Once your agents finish loading, Houston selects one for you instead of leaving the screen empty.

Fixed

  • Claude session limits are labeled correctly. If Claude hits its 5-hour session limit, Houston now shows a session-limit card instead of a misleading rate-limit message.
  • OpenAI Codex usage limits are labeled correctly. When Codex runs out of its usage allowance, Houston now shows a clear quota card, including when it resets, instead of a generic error.
  • Routines no longer disappear. A single routine with an unusual character used to make the whole list fail to load. Houston now recovers your routines and keeps them instead of clearing the list.
  • Houston opens reliably after relaunching. A startup hang could leave Houston running with no window. The main window now appears normally.
  • The model picker only lists models you can use. A model that was not available to select no longer appears in the chat model picker.
  • App connections update immediately. When a connected app is already linked, Houston now flips Connect to connected instead of leaving the screen stale.
  • Chat errors stay where they happened. An error no longer jumps to the bottom of the conversation and separates itself from the message it belongs to.
  • Skill detail loading is clearer. Skill cards disable and show progress while their detail view is loading.
  • Routines fire on time after your Mac sleeps. Scheduled routines could run late or be skipped if your Mac slept, overnight or with the lid closed. They now keep accurate time and catch up as soon as your Mac wakes.
  • Fewer false errors from Codex. Brief reconnect blips while OpenAI Codex is working no longer flash up as errors.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed, so Windows SmartScreen may warn on a fresh install.
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.
v0.4.23
June 12, 2026

Houston 0.4.23

A reliability release. Connecting apps no longer hangs, skills keep working after they move or get renamed, and a few things that used to break now recover on their own. Plus a quick way to act on a whole board column at once. Drop-in on top of 0.4.22, no breaking changes.

Added

  • Act on a whole column at once. Each board column header now has a menu with "Select all in column," so you can move or update every card in a stage without clicking them one by one.

Fixed

  • Connecting an app no longer hangs. Signing in to a connected app could stall for over five minutes with no sign of life. It now finishes quickly or tells you clearly what to do, instead of freezing.
  • More connection links just work. Some apps hand back a plain web address when you connect them. Houston now accepts that and carries on.
  • Adding a skill from a pasted command or link. Paste a full command or a web address and Houston works out the right skill to add, and clearly refuses genuine nonsense instead of failing in a confusing way.
  • Renamed or moved skills keep working. A skill that was renamed or moved used to quietly disappear. Houston now finds it by its folder, so it keeps showing up.
  • A damaged scheduled-tasks list repairs itself. One bad entry used to break your whole list of scheduled tasks. Houston now fixes it and keeps the rest.
  • A brief hiccup no longer drops your chat. A momentary blip between Houston and its engine could show "Load failed." It now retries quietly and recovers.
  • Steadier first-run setup. Creating your default workspace on first launch is now safe to retry, so a hiccup during setup can't leave you stuck or duplicated.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed, so Windows SmartScreen may warn on a fresh install.
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.
v0.4.22
June 11, 2026

Houston 0.4.22

A release about choice and recovery. Switch the AI behind a chat without starting over, give each scheduled task its own brain, and get clearer prompts when a provider needs you to reconnect. Drop-in on top of 0.4.21, no breaking changes.

Added

  • Switch the AI mid-conversation. You can move a live chat to a different AI provider at any time without losing the thread. Houston carries your conversation over to the new provider: the full history when it fits, or a short summary (with your go-ahead) when it does not. Handy when one provider runs out of credit, or you just want a second opinion partway through.
  • Each scheduled task can pick its own AI. Routines can now choose their own provider, model, and effort level instead of always inheriting the agent's default. Pin a faster, cheaper model for a routine check-in, or a higher-effort one for the heavy weekly job. Leave it untouched and it keeps following the agent.

Fixed

  • Houston picks the AI you actually use. Agents with no provider set used to fall back to Claude, which failed if you only use OpenAI. Houston now falls back to your last-used or only connected provider, so agents from the Store, scheduled tasks, and quick sends all start on the right AI.
  • A clear reconnect prompt for OpenAI. When OpenAI ends your login session on their side, the chat showed a red border but no way to fix it, and any hint vanished on reload. Now you get the same inline reconnect button Claude already had, and it sticks around until you reconnect.
  • Clearer messages when Claude is rate-limited. A Claude "too many requests" response used to show up as an unknown error with a "Report bug" button, sometimes doubled. It now reads correctly as a temporary rate limit, shown just once.
  • Your own message shows in the mission card. Starting a task from a skill used to show a raw behind-the-scenes marker instead of what you wrote. The mission card now shows your message.
  • Tool steps no longer take over the chat. A long list of an agent's tool steps could expand and crowd out the conversation. That panel is now capped, so the chat stays readable.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed (SignPath integration still pending), so Windows SmartScreen may warn on a fresh install.
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.
v0.4.21
June 10, 2026

Houston 0.4.21

A reliability release. A more reliable Stop button, installed skills show up, and a few provider papercuts are gone. Drop-in on top of 0.4.20, no breaking changes.

Changed

  • Latest Claude Code under the hood. Houston now bundles the newest version of Claude Code that powers your Claude agents, so they run on Anthropic's most recent fixes and improvements.

Fixed

  • More reliable Stop button. The Stop button already worked, but in some cases an agent could keep going in the background, especially when it had started subagents or other helper tasks. Stop now reliably halts the agent and everything it started, even mid-thought or right after you send a message. While an agent is working, the send button also shows a clear stop icon, so you always know how to halt it.
  • Agents with a lot of context start again on Windows. A busy agent that had built up a large amount of memory and notes could fail to start on Windows. That is fixed, so even your most-used agents launch normally.
  • Installed skills show up. A skill you install now appears for your agent right away and stays in sync if the agent later updates it. This was most noticeable on Windows, where installed skills could stay hidden.
  • The Connect prompt only shows where it belongs. A "Connect Claude" button used to appear in chats that do not use Claude, like an OpenAI chat, and stick around. Now a reconnect prompt only ever shows for the provider that chat actually uses.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed (SignPath integration still pending), so Windows SmartScreen may warn on a fresh install.
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.
v0.4.20
June 9, 2026

Houston 0.4.20

Claude Fable 5, Anthropic's most capable model, is now a pick for your agents. Plus a simpler way to set custom routine schedules and a couple of chat fixes. Drop-in on top of 0.4.19, no breaking changes.

Added

  • Claude Fable 5. Fable 5 is Anthropic's most capable model, and you can now choose it for any agent from the model picker. It is the strongest option for hard, multi-step work. One thing to know about cost: Fable 5 uses about twice the credits of Opus 4.8 per run, so reach for it when a task really calls for it and keep Opus 4.8 or Sonnet 4.6 for everyday work.
  • Simpler custom routine schedules. Setting a custom schedule is now a plain "Repeat every N minutes, hours, days, weeks, or months" picker instead of anything cron-shaped. Choose weeks and you get a day-of-week selector with Every day, Weekdays, and Weekends shortcuts. Choose months and you pick the day of the month. The plain-language summary updates as you go, so you always see exactly when the routine will run.
  • Routines now speak Spanish and Portuguese. The Routines tab, the schedule builder, run history, and the plain-language schedule summaries are all translated, so routines read in your language from end to end.

Changed

  • Clearer model descriptions. Every Claude model in the picker now has a refreshed one-line description, so the trade-off between speed, capability, and cost reads at a glance.

Fixed

  • Links in chat are clickable. A plain web address an agent writes in chat now opens in your browser with a single click, no copy and paste.
  • Codex no longer interrupts during a web search. Fixed an error that could break a Codex chat while it was searching the web.
  • No more flashing Claude sign-in dialog on desktop. A sign-in dialog meant for the web and mobile apps used to flash on screen and dismiss itself when you connected Claude on desktop. It no longer appears there.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed (SignPath integration still pending), so Windows SmartScreen may warn on a fresh install.
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.

Known limitations

  • Fable 5 costs more credits. It uses roughly twice the credits of Opus 4.8 per run. The model picker flags this, but it is worth knowing before you switch every agent over.
v0.4.19
June 6, 2026

Houston 0.4.19

More control over how your routines use chats, update notes in your own language, and a reliability pass so Houston opens cleanly and the right things take you to the right place.

Added

  • Choose how each routine uses chats. When you set up a routine, pick whether every run keeps going in one ongoing chat or starts a fresh chat each time, so the history matches how you think about that task.
  • Update notes in your language. The "update available" card now shows what is new in English, Spanish, or Portuguese, matching the language you use Houston in.

Changed

  • Mission Control matches your boards exactly. Mission Control now uses the same cards and behavior as each agent's board, so what you see lines up everywhere.

Fixed

  • Houston opens even when a workspace is slow to load. The app no longer gets stuck on a blank window at startup if one workspace takes a while to respond.
  • Routine notifications take you to the right chat. Clicking a routine's "finished" notification now opens that routine's chat instead of a generic view.
  • Smoother mission dragging. Dragging mission cards now shows the same cursor on every system and no longer underlines the card title mid-drag.
  • Clearer "connect" prompt. The "Waiting for you to connect" note for an integration now appears at the end of the agent's message, where you are already looking.
  • Problem reports catch more (behind the scenes). Some errors from Houston's screen were being dropped before they reached us. They now get reported so we can fix them faster. Nothing for you to do.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed (SignPath integration still pending), so Windows SmartScreen may warn on a fresh install.
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.
v0.4.18
June 4, 2026

Houston 0.4.18

New ways to organize your missions, clearer scheduling and integrations, and a reliability pass so problems actually get reported when something goes wrong.

Added

  • Drag and drop missions between columns. Rearrange mission cards across your board columns by dragging them, so the board matches how you actually work.
  • Friendlier schedule picker. Setting a custom schedule for a routine now uses a simple interval picker instead of raw cron-style entry.
  • Search highlights in archived missions. When you search archived missions, the matching words are now highlighted so the result is easy to spot.

Changed

  • Clearer integration cards. An integration that still needs you to sign in now says "Waiting for you to connect," so the next step is obvious.
  • Formatted update notes. The "update available" dialog now renders these release notes with proper formatting instead of raw text.
  • Clearer problem reports. When Houston hits an error, the follow-up message now says "report sent" with a short reference code. Tap Copy to grab it and send it our way so we can pin down exactly what happened.

Fixed

  • Routines run on the day you picked. A weekly routine now fires on the correct day of the week instead of being off by a day.
  • Mission Control matches your boards. The chats and missions shown in Mission Control now line up with what is on each agent's board.
  • Routine editor stays correct when you switch agents. Opening the routine editor after switching agents no longer shows leftover settings from the previous agent.
  • Archived mission search lines up. The archived-mission search now sits and behaves consistently with the rest of the board.
  • Problem reports carry the real details (behind the scenes). We fixed our build pipeline so crash reports point at the actual place a problem happened instead of unreadable scrambled code, and so problems in Houston's background engine get reported too. Nothing for you to do.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed (SignPath integration still pending), so Windows SmartScreen may warn on a fresh install.
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.
v0.4.17
June 3, 2026

Houston 0.4.17

Long conversations now keep themselves tidy on their own, your language choice sticks per workspace, and you can search inside archived missions, plus a few routine and connection fixes.

Added

  • Conversations that keep going. When a chat gets close to full, Houston now compacts it automatically so the conversation can continue without losing the thread or making you start over.
  • Your language stays put. The interface language you pick is now remembered for each workspace, so it stays the way you set it next time you open Houston.
  • Search your archived missions. The Archived tab now has a search box, so you can quickly find a finished mission instead of scrolling.

Fixed

  • One ongoing chat per routine. A scheduled routine now keeps a single conversation across its runs, instead of starting a brand new chat every time it runs.
  • Custom schedules are kept. Editing a routine no longer resets a custom schedule back to Daily.
  • Connected apps show the right state. A connected app like Gmail or Slack no longer gets stuck saying "Connecting." The live status and the reconnect button now work independently.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed (SignPath integration still pending).
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.
v0.4.16
June 2, 2026

Houston 0.4.16

Archive missions you have finished, manage your connected apps without leaving Houston, and keep an eye on how full each conversation is getting, plus a round of chat and routine reliability fixes.

Added

  • Archive missions. Select one or more missions on the board and move them to the new Archived tab, so the board only shows what you are actively working on. Archived missions stay available and can be brought back anytime.
  • Manage connected apps in-app. Reconnect or disconnect a connected app, like Gmail or Slack, right from Houston, without going elsewhere to fix a broken connection.
  • Conversation length indicator. The chat composer now shows how full the current conversation is getting, so you know when it is a good time to start a fresh chat for the best results.

Fixed

  • Switching conversations is reliable. Messages no longer duplicate or linger from the previous chat when you move between conversations, including conversations started by a routine.
  • Two routines at the same time both run. If you schedule two routines for the same moment, both now run instead of only one.
  • The model picker shows live status. Sign-in status updates the instant a provider connects or disconnects, so the picker always reflects what is actually connected.
  • Claude Opus 4.8 on its highest effort setting. Fixed an issue that could stop Opus 4.8 from running at its extra-high effort level.
  • Recover from a stuck chat. If a chat got stuck mid-activity, Houston now repairs it on its own instead of staying frozen.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed (SignPath integration still pending).
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.
v0.4.15
June 1, 2026

Houston 0.4.15

Adds Claude's newest model and a more flexible OpenAI sign-in flow, plus a round of fixes for renaming agents and recovering from corrupt history.

Added

  • Claude Opus 4.8. Anthropic's newest Opus is available wherever you pick a Claude model, for both new chats and existing agents.
  • OpenAI device-code sign-in. Signing in to OpenAI now works in setups where Houston cannot open a browser for you, such as a remote engine, the web app, or a headless server. Houston shows a short code and a URL; open the URL on any device, paste the code, and you are signed in.

Fixed

  • Renaming an agent or workspace works for every edge case. Renames that only change capitalization (for example, "Sales" to "sales") or that keep the same name go through cleanly now. The agent's folder location also stays in sync after a rename, so reveal-in-File-Manager and similar actions point at the right folder.
  • Recover from a corrupt routine history. If a saved routine run history gets damaged, Houston now repairs it on its own so the routine can run again instead of getting stuck.
  • Translated session-finished notification. The desktop notification that fires when an agent finishes its work now appears in your language.

Before you upgrade

  • Mac: quit Houston before installing. macOS does not always replace a running app cleanly. If in doubt, remove /Applications/Houston.app and drag the new copy in.
  • Windows x64: auto-update from 0.4.7 or later pulls you forward automatically. The MSI is still not OS-code-signed (SignPath integration still pending).
  • Windows ARM64: there is no auto-update path from an emulated x64 install. Download the ARM64 MSI manually, uninstall the x64 build first, then install the ARM64 one.