2.10.0

opensandbox-group/OpenSandbox2.10.0Mar 5, 2026by hayescode

AI Summary

This update enhances the chat interface with new favorites management features, configurable settings, and internationalization support including Danish and Arabic translations.

Key Highlights

  • New favorites management system with deletion capabilities
  • Configurable state cookie lifetime via environment variable
  • Image preview support added to chat
  • Markdown rendering can now be disabled
  • Health endpoint added for container orchestration

New Features

  • Always show favorite messages button with empty state
  • Add starter categories for grouped starters
  • New option to disable rendering of user message markdown
  • Allow easy deletion of favorites
  • Add 'hidden' option for default_sidebar_state config
  • Make avatar size configurable via config.toml
  • Add selected option to commands for pre-selection
  • Add auto_collapse parameter to Step
  • Add /health endpoint for container orchestration
  • Add Danish (da-DK) translation
  • Add Arabic (ar-SA) translation
  • Image preview feature

Full Release Notes

## What's Changed
* feat: always show favorite messages button with empty state by @EyalAmitay in https://github.com/Chainlit/chainlit/pull/2769
* feat: Add starter categories for grouped starters by @EyalAmitay in https://github.com/Chainlit/chainlit/pull/2762
* feat: new option to disable rendering of user message markdown by @jfperusse in https://github.com/Chainlit/chainlit/pull/2726
* fix: reorder chat history sidebar after new message in existing chat by @hztBUAA in https://github.com/Chainlit/chainlit/pull/2795
* fix: use error detail for login credential error messages by @hztBUAA in https://github.com/Chainlit/chainlit/pull/2794
* feat: allow easy deletion of favorites by @eiseleMichael in https://github.com/Chainlit/chainlit/pull/2792
* fix: convert UUID fields to strings in _extract_feedback_dict_from_step_row by @jarvisrjz in https://github.com/Chainlit/chainlit/pull/2793
* feat: Make state cookie lifetime configurable via env var by @dokterbob in https://github.com/Chainlit/chainlit/pull/2788
* fix: preserve existing metadata when update_thread called without metadata parameter by @veeceey in https://github.com/Chainlit/chainlit/pull/2778
* fix: resets audio ui when permission is denied by @eiseleMichael in https://github.com/Chainlit/chainlit/pull/2771
* Add Danish (da-DK) translation by @mgquach in https://github.com/Chainlit/chainlit/pull/2780
* feat(i18n): add Arabic (ar-SA) translation by @bigdizaya in https://github.com/Chainlit/chainlit/pull/2782
* Fixed issue where sidebarinset expands beyond parent causing horizontal scroll by @Allaoua9 in https://github.com/Chainlit/chainlit/pull/2774
* feat (#1858), Implement settings change listener.  by @FosanzDev in https://github.com/Chainlit/chainlit/pull/2801
* add image preview by @Alex2251 in https://github.com/Chainlit/chainlit/pull/2783
* fix(data): prevent empty string from overwriting step content on upsert by @giulio-leone in https://github.com/Chainlit/chainlit/pull/2807
* feat: add selected option to commands for pre-selection by @Br1an67 in https://github.com/Chainlit/chainlit/pull/2817
* fix: use correct URL scheme when SSL is configured by @Br1an67 in https://github.com/Chainlit/chainlit/pull/2819
* feat: add auto_collapse parameter to Step by @Br1an67 in https://github.com/Chainlit/chainlit/pull/2818
* feat: add /health endpoint for container orchestration by @Br1an67 in https://github.com/Chainlit/chainlit/pull/2810
* feat: add "hidden" option for default_sidebar_state config by @Br1an67 in https://github.com/Chainlit/chainlit/pull/2814
* feat: make avatar size configurable via config.toml by @Br1an67 in https://github.com/Chainlit/chainlit/pull/2816
* chore:release by @hayescode in https://github.com/Chainlit/chainlit/pull/2826

## New Contributors
* @EyalAmitay made their first contribution in https://github.com/Chainlit/chainlit/pull/2769
* @hztBUAA made their first contribution in https://github.com/Chainlit/chainlit/pull/2795
* @jarvisrjz made their first contribution in https://github.com/Chainlit/chainlit/pull/2793
* @veeceey made their first contribution in https://github.com/Chainlit/chainlit/pull/2778
* @mgquach made their first contribution in https://github.com/Chainlit/chainlit/pull/2780
* @bigdizaya made their first contribution in https://github.com/Chainlit/chainlit/pull/2782
* @FosanzDev made their first contribution in https://github.com/Chainlit/chainlit/pull/2801
* @Alex2251 made their first contribution in https://github.com/Chainlit/chainlit/pull/2783
* @giulio-leone made their first contribution in https://github.com/Chainlit/chainlit/pull/2807
* @Br1an67 made their first contribution in https://github.com/Chainlit/chainlit/pull/2817

**Full Changelog**: https://github.com/Chainlit/chainlit/compare/2.9.6...2.10.0