v1.0.0-alpha.8
Pre-release
Pre-release
What's Changed
- feat: add dynamic port allocation with preferred port fallback by @malhotra5 in #223
- docs: document dockerized dev setup as default by @rbren in #232
- Replace bundled backend with seeded default local backend by @rbren in #235
- fix automation script by @rbren in #237
- Show agent state emoji prefix in browser tab title by @rbren in #236
- Persist dev session API key to disk and re-seed default backend by @rbren in #240
- Mount dev:docker project path at /projects and auto-list it as a work… by @rbren in #241
- Revert "Mount dev:docker project path at /projects and auto-list it as a work…" by @rbren in #242
- Restore "Mount dev:docker project path at /projects and auto-list it as a work…" by @rbren in #243
- Refresh local-workspace git info every 10s by @rbren in #246
- feat: always request a git worktree when creating conversations by @rbren in #245
- Re-apply backend status dots, replace error page with manage modal, a… by @rbren in #249
- Hide integrations nav by @rbren in #248
- Remove Windows from CI test matrix by @rbren in #250
- fix how lookupsecrets are sent by @rbren in #244
- Fix/refresh convo list on create by @rbren in #251
- perf(frontend): shrink eager dev/prod graph with lazy boundaries (Tie… by @rbren in #238
- Fix conversation right pane clipping when divider dragged far right by @rbren in #256
- fix: pass container workspaces path as VITE_WORKING_DIR by @hieptl in #259
- fix(frontend): align nav link default text color with settings page nav by @hieptl in #261
- fix(frontend): always load public skills on global Skills page by @hieptl in #263
- Fix Vite build hygiene warnings by @neubig in #264
- fix(frontend): hide in-page settings navigation on desktop by @hieptl in #266
- fix(frontend): keep top padding constant between Conversations and Automations by @hieptl in #268
- Add multi-step onboarding modal by @rbren in #257
- Rearrange conversation right panel: tabs inside flush panel by @rbren in #269
- fix(home): show git repo picker on home when active backend is cloud by @rbren in #270
- fix(frontend): hide Code tab when active backend is local by @hieptl in #272
- add envrc to gitignore by @rbren in #274
- fix(agent-status): truncate status text instead of per-character wrap on small screens by @rbren in #276
- Add SELF_HOSTING.md: guide for hosting Agent Canvas on a VM by @rbren in #273
- fix(conversations): key per-conversation queries by active backend by @rbren in #275
- Lazily load conversation history: 50 most recent first, paginate on s… by @rbren in #252
- feat(sidebar): collapsible left-hand nav with icons + hover tooltips by @rbren in #279
- fix(ingress): handle socket errors so ECONNRESET can't crash the proxy by @rbren in #280
- feat(chat): add "upload as file" checkbox for attached images by @rbren in #282
- fix(chat): render InvokeSkill action/observation with skill name by @rbren in #283
- fix(changes): show placeholder instead of error toast when expanding a deleted file by @rbren in #285
- feat(chat): queue pending user messages with sending/error/retry states by @rbren in #281
- feat(files-tab): Files tab with diff + rich/plain file viewer, safe-HTML markdown by @rbren in #284
- feat(onboarding): update default model and starter prompt by @rbren in #286
- chore: bump default agent-server image tag to 1916bb4-python by @rbren in #287
- chore: address post-merge feedback on #284 + small code-review fixes by @rbren in #288
- chore(dev:docker): bump default agent-server tag to 0924962-python by @rbren in #289
- fix(frontend): keep outer container padding consistent across routes by @hieptl in #293
- fix: hide No conversations found when sidebar is collapsed by @hieptl in #295
- fix(frontend): show pointer cursor on NewConversationButton popover items by @hieptl in #297
- fix(frontend): cap modal height and scroll LLM settings internally by @hieptl in #299
- fix(frontend): animate sidebar min-width so expand transition is visible by @hieptl in #301
- fix(frontend): wrap description in badge to match LLM Settings styling by @hieptl in #303
- fix(frontend): persist app-level settings from /settings/app save flow by @hieptl in #304
- fix(frontend): make Add Workspace modal dynamic and host-aware by @hieptl in #306
- fix: improve right panel UX when unpinning active tab by @malhotra5 in #328
- fix: move TMUX_TMPDIR to /tmp to avoid socket errors on mounted volumes by @xingyaoww in #325
- fix(frontend): preserve per_turn_token when combining metrics from a dormant condenser LLM by @hieptl in #332
- fix: show folder name for local-only repos in git control bar by @VascoSch92 in #322
- fix(frontend): render full YAML metadata on the Skills page with search & filters by @hieptl in #336
- feat: update SDK to 1.22.0 and add CI version sync check by @malhotra5 in #333
- fix: use versioned release tags for agent-server Docker images by @malhotra5 in #338
- fix: correct Docker image tag format (remove v prefix) by @malhotra5 in #339
- fix: guard against null provider in useUrlSearch hook by @malhotra5 in #341
- Add session_start hook to run setup.sh automatically by @malhotra5 in #343
- Promote MCP to top-level nav with marketplace catalog by @rbren in #253
- fix(msw): use wildcard URL patterns to match absolute URLs by @malhotra5 in #344
- deps(deps): bump the tanstack group with 2 updates by @dependabot[bot] in #312
- deps(deps): bump i18next-http-backend from 3.0.6 to 4.0.0 in the i18next group by @dependabot[bot] in #313
- deps(deps-dev): bump @vercel/react-router from 1.2.6 to 1.3.0 in the react-router group by @dependabot[bot] in #314
- deps(deps): bump @microlink/react-json-view from 1.31.19 to 1.31.20 by @dependabot[bot] in #316
- deps(deps): bump axios from 1.15.2 to 1.16.0 by @dependabot[bot] in #317
- deps(deps): bump posthog-js from 1.372.5 to 1.372.6 by @dependabot[bot] in #318
- Remove OpenHands start and stop hooks by @malhotra5 in #345
- Show latest action summary on the active EventGroup card by @rbren in #347
- feat(markdown): render GitHub-style alert blockquotes by @rbren in #346
- fix: guard SdkSectionPage against schema responses missing
sectionsby @rbren in #350 - Pin dependency versions exactly by @rbren in #352
- fix(files-tab): default to Diff view when a workspace or repo is attached by @rbren in #349
- fix(chat): extend pending message watchdog to 2.5 minutes by @rbren in #353
- chore(eslint): migrate to flat config and bump to ESLint 9 by @rbren in #351
- feat(backends): remember most recent conversation per backend by @rbren in #354
- fix(event-group): show "4/5 actions completed" with spinner while running by @rbren in #355
- Revert "fix: show folder name for local-only repos in git control bar" by @rbren in #357
- chore: remove dead OSS-cleanup leftovers (~560 LoC) by @rbren in #290
- Add npm publish workflow and release infrastructure by @malhotra5 in #330
- feat: npm publish workflow with OIDC trusted publishing by @malhotra5 in #358
- fix(frontend): stop mutating cloud current_org_id on backend select by @hieptl in #359
- fix(frontend): stop tripping SaaS 500 on cloud conversation history by @hieptl in #360
- fix(frontend): read cloud VSCode URL from sandbox.exposed_urls by @hieptl in #361
- fix(frontend): translate MCP marketplace keys into all supported languages by @hieptl in #364
- fix(frontend): drop monorepo-era frontend/ and Poetry references from pre-commit by @hieptl in #366
- refactor(frontend): remove dead integrations page and third-party Git API layer by @hieptl in #367
- fix(frontend): drain in-flight setActive in backend-selector afterEach by @hieptl in #373
- Route agent-server calls through TypeScript client by @neubig in #278
- fix(frontend): use HTTPS instead of SSH for typescript-client git dep by @hieptl in #382
- Rename Integrations nav item to MCP Directory by @jpelletier1 in #371
- Add live Agent Server E2E framework by @xingyaoww in #195
- feat: Add OAuth 2.0 Device Flow authentication for OpenHands Cloud backends by @malhotra5 in #381
- feat: add LLM profiles API layer and React Query hooks by @malhotra5 in #387
- Fix MCP marketplace: deletes that duplicate, renames on every edit, Slack-twice, and Tavily that silently no-ops by @rbren in #388
- fix(vercel): force HTTPS for typescript-client git dep on Vercel by @rbren in #391
- feat: LLM profiles UI components, modals, and tests (PR B) by @malhotra5 in #389
- fix: also tag prerelease versions as latest on npm by @malhotra5 in #394
- feat: add Playwright visual snapshot testing infrastructure by @malhotra5 in #392
- Clarify Docker permission errors in dev script by @neubig in #403
- [codex] Fix automation agent-server auth by @neubig in #410
- fix(frontend): cap backend-health retries and persist failure state by @hieptl in #411
- fix(frontend): show folder name in repo button for non-git workspaces by @hieptl in #415
- fix: use wss:// for external hosts to fix Safari WebSocket connections by @jpshackelford in #413
- docs: add Windows Docker Bad Gateway guidance by @jamiechicago312 in #378
- fix: pre-bundle all dependencies to prevent Safari 504 errors by @jpshackelford in #414
- feat: collapse thinking and extended reasoning into collapsible sections by @xingyaoww in #409
- fix(frontend): stale backend health errors after recovery by @DevinVinson in #424
- fix: refine sidebar and home onboarding layout by @FraterCCCLXIII in #340
- feat(extensions): Extensions nav, unified card design, and UX polish across Skills & MCP by @FraterCCCLXIII in #386
- fix(frontend): remove stale MCP item from Settings sidebar by @hieptl in #427
- fix(frontend): prevent add custom server button from being shrunk by flex header by @hieptl in #429
- fix(frontend): stop skeleton from flashing on 10s background refetch by @hieptl in #431
- Fail fast when frontend dependencies are missing by @neubig in #404
- fix(frontend): allow chat column to shrink below content min-content by @hieptl in #435
- fix: restore data-testid="chat-interface" removed by #340 by @malhotra5 in #437
- test: add snapshot coverage for Automations, MCP, and Skills pages (#436) by @malhotra5 in #438
- [codex] Default user launchers to static frontend by @neubig in #434
- [codex] Fix static automation agent-server auth by @neubig in #442
- test(snapshot): batch 2 — secrets, verification/condenser, sidebar (12 tests, 12 baselines) by @malhotra5 in #441
- Run Docker dev server with host user and tmpfs home by @xingyaoww in #443
- test(snapshot): skills page loaded/search/filter states by @malhotra5 in #447
- Use ws for HTTP websocket targets by @xingyaoww in #453
- Add Docker projects workspace shortcut by @xingyaoww in #397
- test(snapshot): onboarding modal steps + sidebar new-conversation popover by @malhotra5 in #449
- feat: LLM profiles route integration (PR C) by @malhotra5 in #393
- feat(chat): add /model slash command for LLM profiles by @VascoSch92 in #418
- Fix Windows static asset serving by @neubig in #456
- chat: conversation UX polish (input controls, drawer state, ellipsis, git controls) by @FraterCCCLXIII in #455
- fix(frontend): sync status-label translations with shortened English copy by @hieptl in #460
- fix(frontend): localize ChatAddFileButton aria-label by @hieptl in #462
- fix(frontend): hide repo button on local backend in GitControlBar by @hieptl in #464
- fix(frontend): align sidebar conversation list loading skeleton with loaded card by @hieptl in #466
- fix(frontend): add cursor-pointer to sidebar Settings and onboarding Skip buttons by @hieptl in #469
- refactor(frontend): remove unused Recent Conversations section by @hieptl in #471
- fix: refresh stale visual snapshot baselines by @hieptl in #473
- fix(frontend): show full LLM model name on button and popover by @hieptl in #479
- Clean up dev stack process trees on shutdown by @xingyaoww in #475
- Fix static automation auth and switch LLM tool by @neubig in #474
- design: cool-grey palette, runtime theme switcher, and token-system cleanup by @FraterCCCLXIII in #458
- ci: store snapshot baselines as GitHub Actions artifacts instead of git by @malhotra5 in #482
- fix: normalize path separators in no-direct-agent-server-calls test (Windows CI fix) by @malhotra5 in #488
- ci: add resolution guidance to failing snapshot PR comment by @malhotra5 in #489
- chore: bump agent-server default to 1.22.1 by @hieptl in #477
- fix(skills): populate slash menu and skills modal by @VascoSch92 in #362
- fix: prevent snapshot CI runs from sending PostHog analytics events by @malhotra5 in #490
- ci: increase Playwright CI workers from 1 to 2 by @malhotra5 in #495
- test: rename sidebar nav label "New" → "Chats" to verify snapshot CI diff comment by @malhotra5 in #497
- feat(snapshot-ci): group PR comment snapshots by spec file by @malhotra5 in #499
- Proxy agent-server FastAPI docs (/docs, /redoc, /openapi.json) through the ingress by @tofarr in #501
- docs(readme): point users at the OpenAPI docs alongside the UI URL by @tofarr in #502
- feat(dev): surface dev-stack runtime services in agent system prompt by @tofarr in #503
- test(snapshot): changes tab diff viewer + backend management UI (6 tests) by @malhotra5 in #450
- perf(snapshots): skip retries on comparison pass + extract seedLocalStorage helper by @malhotra5 in #505
- docs: document API access rules (typescript-client + cloud proxy) by @malhotra5 in #506
- fix: route cloud runtime bash/file calls through cloud proxy by @malhotra5 in #507
- feat(frontend): add canvas_ui tool so the agent can drive the UI by @hieptl in #420
- feat(frontend): redesign home page as chat-first launcher with optional workspace/repo picker by @hieptl in #514
- fix(settings): layout, SDK save UX, extensions parity, secrets/MCP polish by @FraterCCCLXIII in #512
- Improve UI consistency: themes, tokens, chat chrome, and right-panel tabs by @FraterCCCLXIII in #508
- test(snapshots): fix docker-workspace-browser for chat-first home by @hieptl in #515
- fix(frontend): auto-focus chat input on mount by @hieptl in #518
- fix(frontend): right-align action buttons in modals/dialogs by @hieptl in #520
- feat(conversation-panel): persist filter-menu preferences in localStorage by @rbren in #510
- Rename PROJECT_PATH to PROJECTS_PATH by @enyst in #521
- fix(frontend): prevent LLM profile actions menu from being clipped by scroll container by @hieptl in #523
- refactor(onboarding): choose-agent branding, layout, and i18n by @FraterCCCLXIII in #524
- fix(frontend): align sidebar title with page title at top of layout by @hieptl in #527
- feat: enable sub-agent delegation via task_tool_set by @rbren in #509
- Tweak readme by @enyst in #528
- feat: enable paginated event loading for cloud mode by @xingyaoww in #407
- Clarify OpenHands backend login host by @xingyaoww in #423
- fix: clarify local llm profiles UI by @enyst in #534
- fix(dev-docker): allow exec on the home tmpfs so stdio MCP servers work by @tofarr in #535
- fix(frontend): keep backend tray popover open on icon left-click by @hieptl in #538
- fix(frontend): use SPA navigation for Start a conversation CTA by @hieptl in #540
- refactor(frontend): replace inline style props with Tailwind classes and design tokens by @hieptl in #542
- refactor(frontend): use cn utility for className composition in 21 components by @hieptl in #544
- fix(frontend): suppress Chrome DevTools .well-known probe 404 logs by @hieptl in #546
- chore: remove SaaS references from codebase by @hieptl in #548
- chore: remove unused shared UI components by @hieptl in #552
- chore: remove unused hooks by @hieptl in #555
- chore: remove unused feature components by @hieptl in #557
- fix: cloud conversation resume + archived/error sandbox states by @malhotra5 in #500
- chore: remove unused utility functions by @hieptl in #560
- chore: remove unused cloud auth API by @hieptl in #562
- chore: remove unused assets, env var, and obsolete script by @hieptl in #564
- chore: remove redundant styling assertions and assert semantic attrs instead by @hieptl in #566
- feat(sidebar): conversation list filters, grouping, and loading UX by @FraterCCCLXIII in #530
- fix(frontend): sort full visible list when ordering by Created by @hieptl in #573
- Update README.md: elevate dockerless installation and remove extraneous installation instructions by @rbren in #576
- refactor(frontend): rename top-level nav labels for clearer copy by @hieptl in #578
- docs: add Windows install workaround to README by @jamiechicago312 in #581
- Better default install instructions by @rbren in #585
- feat/fix(profiles): per-conversation /switch_llm in chat by @VascoSch92 in #575
- feat(automations): add logs modal to activity log items by @tofarr in #600
- Fix stale default-local session key after dev:docker restart by @jamiechicago312 in #607
- fix(dev:docker): container-safe automation paths, hostnames, and AGENT_SERVER_URL alias by @tofarr in #603
- fix: update 15 broken docsUrl links in MCP marketplace by @smolpaws in #608
- fix(dev:docker): use localhost for host-side AUTOMATION_AGENT_SERVER_URL; split sandbox URL by @tofarr in #609
- feat(frontend): edit local automations from the detail page by @hieptl in #611
- feat(frontend): edit automations from the list row kebab by @hieptl in #613
- fix(frontend): transparent background for automation detail prompt section by @hieptl in #615
- fix(frontend): align LLM profile switcher styling with Tools button by @hieptl in #617
- fix(frontend): restore hover highlight on automation KebabMenu items by @hieptl in #619
- fix(frontend): restore cursor-pointer on buttons after Tailwind v4 upgrade by @hieptl in #624
- feat(acp): Settings → Agent + onboarding + chat-UI gating for ACP-driven conversations by @simonrosenberg in #416
- ci(acp): autodetect drift between TS ACP_PROVIDERS mirror and SDK source by @simonrosenberg in #630
- fix(files-tab): restore static fileserver for rich file preview by @rbren in #632
- ci(snapshot-tests): support pull_request events from forks by @rbren in #633
- Add recommended automations and MCP marketplace setup flow by @neubig in #504
- Remove Docker dependency from dev workflow by @malhotra5 in #635
- feat: add agent delegation settings page by @xingyaoww in #483
- Update Slack MCP catalog entry by @enyst in #641
- fix: sync MCP marketplace with extensions catalog by @enyst in #645
- feat: add Docker CI to build all-in-one image with agent-server + automation + frontend by @malhotra5 in #634
- Add skills icon to "Skill Ready" toggle in chat by @VascoSch92 in #571
- fix(frontend): validate OH_AGENT_SERVER_LOCAL_PATH in dev-with-automation by @hieptl in #650
- fix(onboarding): registry-driven icon lookup for ACP provider tiles by @mvanhorn in #643
- Added pycache to gitignore by @tofarr in #664
- fix: use PostHog prod creds only for tagged Docker releases by @malhotra5 in #666
- fix(tests): fix two flaky CI tests on Windows by @malhotra5 in #667
- feat(acp): show ACP agent name on conversation cards by @simonrosenberg in #658
- fix: remove hardcoded /workspace/project fallbacks from useLocalGitInfo by @tofarr in #671
- chore: clean up MCP catalog assumptions by @enyst in #657
- fix(LLM profiles): stop LLM profile switch from reverting on conversation start and fix misleading API-key indicator for new profiles by @VascoSch92 in #648
- fix(ui): left navigation rail, mobile drawer, and responsive chrome by @FraterCCCLXIII in #623
- fix(frontend): portal ModalBackdrop to document.body by @hieptl in #688
- fix(frontend): align agent settings save button label with other settings pages by @hieptl in #691
- ci(deps): bump the actions group across 1 directory with 2 updates by @dependabot[bot] in #590
- feat: use async conversations and interrupt endpoint for local mode by @malhotra5 in #670
- chore: refresh stale 1.22.1 doc examples after agent-server bump to 1.23.0 by @hieptl in #694
- feat(frontend): persist local workspaces on the agent-server by @hieptl in #653
- fix(frontend): open ellipsis menu by ignoring trigger in click-outside by @hieptl in #696
- fix(settings): filter Autocomplete items when typing in settingsdropdown by @nehaprasad-dev in #683
- chore: localize hardcoded strings in BtwMessages by @hieptl in #702
- docs: add No Magic Strings rule to AGENTS.md by @hieptl in #704
- chore: change default model to MiniMax-M2.7 by @VascoSch92 in #697
- fix(frontend): drop low-contrast placeholders from LLM provider/model dropdowns by @hieptl in #706
- fix(frontend): make Skills page responsive on mobile and tablet widths by @hieptl in #710
- docs: DefenseClaw security governance integration guide by @rbren in #719
- fix(BM-001): auto-switch active backend on addBackend by @malhotra5 in #714
- feat(automations): add Download Tarball option to automation kebab menu by @tofarr in #725
- Add backend management specs and @SPEC annotations by @malhotra5 in #727
- fix(translations): add missing placeholders to zh-CN, zh-TW, ko-KR, tr by @VascoSch92 in #700
- feat(ui): restyle chat error banner and add connection retry by @FraterCCCLXIII in #726
- feat(skills): redesign available skills modal layout and grouping by @FraterCCCLXIII in #720
- feat(ui): modal polish — skills, hooks, tools, metrics, and conversation menu by @FraterCCCLXIII in #721
- chat: prevent typing indicator from overlapping last message by @rbren in #735
- fix: keep panel resize drag working over files iframes by @nehaprasad-dev in #729
- Add automation LLM profile controls by @neubig in #536
- Use SDK agent settings and model switch UI by @neubig in #457
- UI polish: Neo theme, form system, sidebar, and conversation list by @FraterCCCLXIII in #733
- Show agent-server version errors for workspaces by @neubig in #742
- Remove direct HttpClient usage from agent-server APIs by @neubig in #743
- Customize extensions UI and polish automations experience by @FraterCCCLXIII in #739
- fix(frontend): disable view toggle when no automations exist by @hieptl in #749
- fix(frontend): unify modal close button and title styling by @hieptl in #747
- fix(frontend): align Skills search input styling with MCP page by @hieptl in #752
- feat(chat): attachment UX, upload-as-file, and home/cloud submit fixes by @FraterCCCLXIII in #712
- fix: route cloud workspace-session through callCloudProxy to avoid CORS by @jamiechicago312 in #738
- fix: persist home-page prompt draft to sessionStorage by @tofarr in #668
- feat: execute git-info probe commands over bash-events WebSocket by @tofarr in #646
- fix(frontend): toast on run now success and failure (automation) by @hieptl in #759
- fix(frontend): stop frontend bash probes on cloud runtimes by @hieptl in #761
- fix(frontend): stop calling /api/auth/workspace-session on cloud backends by @hieptl in #763
- fix(frontend): keep composer pinned at the bottom on narrow viewports by @hieptl in #765
- fix(chat): enable git PR/push/pull on local without provider_tokens_set by @nehaprasad-dev in #722
- fix: pin openhands-sdk to the same version as other SDK packages by @tofarr in #772
- feat(acp): versioned ACP model picker + per-conversation agent chip by @simonrosenberg in #730
- chore: bump automation version to 1.0.0a5 by @malhotra5 in #774
- chore: bump version to 1.0.0-alpha.4 by @malhotra5 in #771
- refactor(acp): source ACP model lists from typescript-client (closes #740) by @simonrosenberg in #775
- fix: switch @openhands/typescript-client from git dep to npm registry by @malhotra5 in #779
- fix(docker): ensure
latesttag always points to latest stable release by @malhotra5 in #780 - fix(ci): publish directly with --tag latest to avoid OIDC dist-tag failure by @malhotra5 in #778
- fix: bump agent-server SDK to 1.23.1 by @malhotra5 in #782
- feat: bump @openhands/extensions to add github-repo-monitor and slack-channel-monitor workflows by @tofarr in #781
- fix: auto-clear backend health on successful conversation list fetch by @tofarr in #647
- chore: bump version to 1.0.0-alpha.5 by @malhotra5 in #789
- fix: include config/ in npm package files by @malhotra5 in #791
- fix: unify session and automation API keys into a single credential with consistent header by @malhotra5 in #681
- chore: bump version to 1.0.0-alpha.6 by @malhotra5 in #793
- fix: route LLM errors inline and keep conversation/server errors visible in the banner by @VascoSch92 in #787
- fix(frontend): hide Change Agent button on home page chat input by @hieptl in #798
- fix(skills): prefer frontmatter description over body content in slash command menu by @VascoSch92 in #673
- fix(frontend): disable Run Now when the automation is turned off by @hieptl in #800
- fix(frontend): render Settings icon as a link so it supports Open in new tab by @hieptl in #802
- perf(useLocalGitInfo): consolidate git probe into single bash round-trip by @tofarr in #792
- fix(frontend): refetch list on revisit so agent-created automations appear by @hieptl in #805
- fix: inject runtime session key into index.html for published binary by @chuckbutkus in #795
- docs: add Docker and NPM install instructions to README by @malhotra5 in #806
- chore: remove PR review GitHub Actions workflow by @xingyaoww in #814
- Add GitHub bug report issue template by @malhotra5 in #813
- fix(frontend): show local time on Pending run rows instead of Jan 1, 1970 (automations) by @hieptl in #812
- chore: bump version to 1.0.0-alpha.7 by @malhotra5 in #822
- fix(frontend): keep Activity Log in sync while a run is Pending/Running by @hieptl in #824
- fix: use backend registry apiKey for automation auth instead of build-time env var by @malhotra5 in #830
- feat: validate MCP server connectivity before saving (#785) by @tofarr in #816
- fix(skills): save disabled_skills when server omits the field by @tofarr in #837
- fix(frontend): scroll chat to bottom when a new prompt is submitted by @hieptl in #831
- fix(frontend): hide Start from a proven workflow on cloud backends by @hieptl in #852
- fix(frontend): serve favicon.svg as the app favicon via root links export by @hieptl in #854
- fix(frontend): add missing translations for MCP connection-test keys by @hieptl in #856
- fix(frontend): restore disabled Change Agent button on home page chat input by @hieptl in #858
- fix(frontend): stop fetching conversations for closed run-logs modals by @hieptl in #860
- fix: buildNpmScriptCommand always uses cmd.exe on Windows by @jamiechicago312 in #734
- fix(frontend): hide Planner tab on local backends by @hieptl in #861
- fix: truncate long conversation title on mobile to keep tab toggle visible by @tofarr in #867
- feat(acp): inline live model picker for ACP conversations (#769) by @simonrosenberg in #832
- refactor: update @openhands/extensions from MCP to integrations by @tofarr in #875
- ci: cache Playwright browsers and pin Node 24.15 across all workflows by @malhotra5 in #893
- feat: add mock-LLM E2E test infrastructure by @malhotra5 in #833
- fix: make load_public_skills default to true (opt-out) by @tofarr in #901
- feat(cli): add --info flag to show default stack versions and ports by @malhotra5 in #902
- fix: include tools/ in npm package files by @malhotra5 in #904
- mock-llm e2e: use bin/agent-canvas.mjs (production binary path) by @malhotra5 in #906
- feat: add release skill and create-release workflow by @malhotra5 in #900
- Make npm the default install path by @rbren in #897
- chore: bump version to 1.0.0-alpha.8 by @malhotra5 in #920
New Contributors
- @jpshackelford made their first contribution in #413
- @jamiechicago312 made their first contribution in #378
- @DevinVinson made their first contribution in #424
- @FraterCCCLXIII made their first contribution in #340
- @tofarr made their first contribution in #501
- @enyst made their first contribution in #521
- @smolpaws made their first contribution in #608
- @simonrosenberg made their first contribution in #416
- @mvanhorn made their first contribution in #643
- @nehaprasad-dev made their first contribution in #683
- @chuckbutkus made their first contribution in #795
Full Changelog: live-e2e-media...v1.0.0-alpha.8