v2.7.1
onyx-dot-app/onyxv2.7.1Jan 7, 2026by github-actions[bot]
AI Summary
The update focuses on backend architecture improvements, such as LiteLLM reasoning translation and OpenSearch schema integration, alongside UI refreshes for agent creation and image configuration.
Key Highlights
- LiteLLM reasoning_effort translation
- OpenSearch schema integration
- Refreshed agent creation page
- Image config backend
- Eval CLI tool
New Features
- LiteLLM integration
- OpenSearch schema
- Agent creation UI
- Image config
- Eval CLI
Full Release Notes
**Release notes**: https://docs.onyx.app/changelog ## What's Changed * refactor: let litellm handle translating reasoning_effort to anthropic thinking by @wenxi-onyx in https://github.com/onyx-dot-app/onyx/pull/7090 * feat(ux): include a copy button for chat stack traces by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7091 * fix: think tool newline unescaping by @rohoswagger in https://github.com/onyx-dot-app/onyx/pull/7086 * refactor: llm provider forms by @Weves in https://github.com/onyx-dot-app/onyx/pull/7006 * fix: get_tenant_users script invalid sql stmt by @wenxi-onyx in https://github.com/onyx-dot-app/onyx/pull/7097 * chore: Remove unused resources from model server by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7094 * fix: The update method for the new Vespa interface should correctly handle None chunk_count by @acaprau in https://github.com/onyx-dot-app/onyx/pull/7098 * chore(fe): make Text component default to span by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7096 * chore: docker compose no MCP server by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7100 * chore(fe): `Text` default span follow up by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7106 * chore: Fix Tests by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7107 * chore(fe): refresh chat Stack Trace button by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7092 * chore(docker): add healthchecks by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7089 * chore: Add opensearch-py 3.0.0 by @acaprau in https://github.com/onyx-dot-app/onyx/pull/7103 * chore(desktop): remove duplicate startup log, onyx-desktop by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7113 * chore(desktop): disable nightly builds by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7115 * refactor: Improve form field components by @raunakab in https://github.com/onyx-dot-app/onyx/pull/7104 * refactor(ux): Share Chat modal uses CopyIconButton by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7116 * chore(fe): fix some `Text` that should be `span`s by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7112 * perf: update web/STANDARDS.md + add standards to CLAUDE.md / AGENTS.md by @Weves in https://github.com/onyx-dot-app/onyx/pull/7039 * feat: add z indices for confirmation modal by @wenxi-onyx in https://github.com/onyx-dot-app/onyx/pull/7114 * fix: stop-generation for non-deep research by @rohoswagger in https://github.com/onyx-dot-app/onyx/pull/7045 * fix: rendering parallel research agents cleanly by @rohoswagger in https://github.com/onyx-dot-app/onyx/pull/7078 * fix: popover max height setting by @rohoswagger in https://github.com/onyx-dot-app/onyx/pull/7093 * chore(gha): ensure uv cache is pruned before upload by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7120 * fix: MIT integration tests by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7121 * chore: clean up stop signal redis fence by @rohoswagger in https://github.com/onyx-dot-app/onyx/pull/7119 * fix: stop-generation for deep research by @rohoswagger in https://github.com/onyx-dot-app/onyx/pull/7050 * chore: Add script to restart OpenSearch container by @acaprau in https://github.com/onyx-dot-app/onyx/pull/7110 * feat: Add OpenSearch schema by @acaprau in https://github.com/onyx-dot-app/onyx/pull/7118 * chore: prompts by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7108 * fix: gemini default location global by @wenxi-onyx in https://github.com/onyx-dot-app/onyx/pull/7124 * fix: persist onboarding flow until user explicitly finishes by @devin-ai-integration[bot] in https://github.com/onyx-dot-app/onyx/pull/7111 * chore(fe): baseline align inline code spans by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7128 * fix: suppress Jest act() warning spam in test output by @nmgarza5 in https://github.com/onyx-dot-app/onyx/pull/7127 * fix: reenable force search parameter by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7130 * refactor: onboarding forms by @Weves in https://github.com/onyx-dot-app/onyx/pull/7105 * fix: Remove Default Reminder by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7131 * fix: downgrade by @Weves in https://github.com/onyx-dot-app/onyx/pull/7132 * fix: lazy load tracing providers to avoid spamming logs when not configured by @wenxi-onyx in https://github.com/onyx-dot-app/onyx/pull/7134 * fix: make litellm testing script prettier by @wenxi-onyx in https://github.com/onyx-dot-app/onyx/pull/7136 * fix: openai provider identification on the admin panel by @Weves in https://github.com/onyx-dot-app/onyx/pull/7135 * feat: Refreshed agent creation page by @raunakab in https://github.com/onyx-dot-app/onyx/pull/6241 * Fix/input combobox dropdown by @Subash-Mohan in https://github.com/onyx-dot-app/onyx/pull/7015 * refactor(modals): All modals use new Modal component by @Subash-Mohan in https://github.com/onyx-dot-app/onyx/pull/6729 * Feat/image config backend by @Subash-Mohan in https://github.com/onyx-dot-app/onyx/pull/6961 * Update README.md by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7140 * Chat Flow Readme by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7142 * fix: prevent Slack federated search query multiplication by @nmgarza5 in https://github.com/onyx-dot-app/onyx/pull/7125 * fix(desktop): Disable reload on Mac by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7141 * feat: add auto LLM model updates from GitHub config by @Weves in https://github.com/onyx-dot-app/onyx/pull/6830 * feat(connectors): Add Deletion Popup by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7054 * fix: skip failing tests by @Weves in https://github.com/onyx-dot-app/onyx/pull/7152 * chore: fix linter issues by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7122 * fix: onboarding display by @Weves in https://github.com/onyx-dot-app/onyx/pull/7153 * feat(tools): extend open_url to handle indexed content urls by @jessicasingh7 in https://github.com/onyx-dot-app/onyx/pull/6822 * feat: add new models to cloud by @Weves in https://github.com/onyx-dot-app/onyx/pull/7149 * fix: when onboarding flow shows up by @Weves in https://github.com/onyx-dot-app/onyx/pull/7154 * fix: Duplicate model provider sections for unenriched LLM models by @nmgarza5 in https://github.com/onyx-dot-app/onyx/pull/7148 * refactor: White-labelling by @Subash-Mohan in https://github.com/onyx-dot-app/onyx/pull/6938 * fix: check stop signal during active streaming by @devin-ai-integration[bot] in https://github.com/onyx-dot-app/onyx/pull/7151 * feat: add tool call validation to eval cli by @rohoswagger in https://github.com/onyx-dot-app/onyx/pull/7144 * feat: running evals locally by @rohoswagger in https://github.com/onyx-dot-app/onyx/pull/7145 * perf(chat): consildate chat UI layout style by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7129 * fix: non-thinking responses not displaying until page refresh by @devin-ai-integration[bot] in https://github.com/onyx-dot-app/onyx/pull/7123 * perf(chat): memoize chat messages by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7157 * chore(fe): follow up fixes to #7129 by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7160 * chore(deps): bump qs from 6.14.0 to 6.14.1 in /web by @dependabot[bot] in https://github.com/onyx-dot-app/onyx/pull/7147 * refactor(whitespace): rm temporary react fragments by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7161 * chore(blame): introduce `.git-blame-ignore-revs` to ignore refactors by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7162 * Tests/theme by @Subash-Mohan in https://github.com/onyx-dot-app/onyx/pull/7163 * feat(config): Image generation frontend by @Subash-Mohan in https://github.com/onyx-dot-app/onyx/pull/7019 * feat(image-generation): e2e tests by @Subash-Mohan in https://github.com/onyx-dot-app/onyx/pull/7164 * chore(docker): publish inference_model_server port 9000 in dev by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7166 * fix: don't pass selected tab to connector specific config by @wenxi-onyx in https://github.com/onyx-dot-app/onyx/pull/7165 * fix(ollama): rm unsupported `tool_choice` option by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7156 * feat(opensearch): Add OpenSearch queries by @acaprau in https://github.com/onyx-dot-app/onyx/pull/7133 * fix(braintrust): Updating naming for metric by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7168 * chore: cleanup old LLM provider update mechanism by @Weves in https://github.com/onyx-dot-app/onyx/pull/7170 * chore(docker): .dockerignore /tests/ by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7172 * fix(braintrust): Fix Tenant ID to Token Association by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7173 * chore(playwright): prefer baseURL by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7171 * chore(deployments): prefer release environment by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/6997 * feat(opensearch): Add OpenSearch client by @acaprau in https://github.com/onyx-dot-app/onyx/pull/7137 * chore(opensearch): Add external dep tests for OpenSearchClient by @acaprau in https://github.com/onyx-dot-app/onyx/pull/7155 * chore(playwright): fix Exa configure tests by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7176 * fix(braintrust): Span Attributes Association by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7174 * New send message api by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7167 * chore: Plugin issue by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7179 * revert: "chore(pre-commit): run uv-sync in active venv" by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7178 * chore: spacing by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7183 * fix: regenerate models stuck in perma loading state by @Weves in https://github.com/onyx-dot-app/onyx/pull/7182 * feat: nonstreaming send chat message api by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7181 * feat: improve display for models that are no longer present by @Weves in https://github.com/onyx-dot-app/onyx/pull/7184 * feat: Easy send message nonstreaming by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7186 * chore(fe): improve human chat responsiveness by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7187 * chore(fe): rm unnecessary spacer from chat ui by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7189 * refactor(whitespace): rm react fragment by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7190 * chore(whitespace): ignore refactor rev by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7191 * feat: Deep Research Internal Search Tuning by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7193 * feat: cloud usage limits by @evan-onyx in https://github.com/onyx-dot-app/onyx/pull/7192 * chore: bump limits on cloud LLM usage by @evan-onyx in https://github.com/onyx-dot-app/onyx/pull/7195 * fix: llm usage tracking for dr by @evan-onyx in https://github.com/onyx-dot-app/onyx/pull/7196 * chore(fe): replace js isHovered with css hover effects by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7200 * feat: per-tenant usage limits by @evan-onyx in https://github.com/onyx-dot-app/onyx/pull/7197 * fix(braintrust): Implement actual TTFA Metric by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7169 * feat(braintrust): Cost Tracking by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7201 * fix(ui): Remove Open URL Filter for Agents by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7205 * fix(ui): Update coloring for Doc Set Tooltip by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7208 * feat(evals): set log level for eval runs to warning by @rohoswagger in https://github.com/onyx-dot-app/onyx/pull/7209 * feat(evals): multi-turn evals by @rohoswagger in https://github.com/onyx-dot-app/onyx/pull/7210 * feat: prompt cache 3 by @evan-onyx in https://github.com/onyx-dot-app/onyx/pull/6605 * chore(llm): Remove Claude Opus 3 by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7214 * fix(fe): chat input box spacing and sizing fixes by @nmgarza5 in https://github.com/onyx-dot-app/onyx/pull/7204 * fix(ui): Image Gen Tooltip for Agent Workflow by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7211 * fix(chat): Thinking in Regen Chat by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7213 * feat(api): Enhance API key handling and masking in image generation by @Subash-Mohan in https://github.com/onyx-dot-app/onyx/pull/7220 * seeds(config): image gen from llm providers by @Subash-Mohan in https://github.com/onyx-dot-app/onyx/pull/7198 * fix(open_url): Parse PDF files with Open URL Tool by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7219 * feat(image-generation): Add Azure OpenAI GPT image models by @Subash-Mohan in https://github.com/onyx-dot-app/onyx/pull/7224 * fix(projects): projct folder button not expandable by @Subash-Mohan in https://github.com/onyx-dot-app/onyx/pull/7223 * chore: add logs to tenant overrides by @evan-onyx in https://github.com/onyx-dot-app/onyx/pull/7215 * fix: json serialize tool calls and other types in prompt cache by @rohoswagger in https://github.com/onyx-dot-app/onyx/pull/7225 * fix(chat): Math Formatting by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7229 * chore(deps): bump aiohttp from 3.13.2 to 3.13.3 in /backend/requirements by @dependabot[bot] in https://github.com/onyx-dot-app/onyx/pull/7216 * chore(deps): bump pynacl from 1.6.1 to 1.6.2 in /backend/requirements by @dependabot[bot] in https://github.com/onyx-dot-app/onyx/pull/7228 * chore(devtools): ods with no args outputs help by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7230 * fix: sidebar button shifting on hover by @nmgarza5 in https://github.com/onyx-dot-app/onyx/pull/7234 * feat(opensearch): Add OpenSearch document index interface by @acaprau in https://github.com/onyx-dot-app/onyx/pull/7143 * fix: serper api key errors when adding by @Danelegend in https://github.com/onyx-dot-app/onyx/pull/7217 * fix(user): Block Malicious Accounts by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7235 * fix(chat): enable exclusion of failed chat sessions from api by @Danelegend in https://github.com/onyx-dot-app/onyx/pull/7233 * chore(whitespace): format pr-helm-chart-testing.yml by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7238 * chore(gha): pin uv version w/ chart-testing-action by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7239 * chore(gha): conditionally run zizmor by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7240 * chore(gha): skip all of zizmor when applicable by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7243 * chore(gha): paths-filter depends on actions/checkout by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7244 * fix(users): Multi-tenant signup by @justin-tahara in https://github.com/onyx-dot-app/onyx/pull/7237 * feat: Fix last cycle LLM did not return an answer by @yuhongsun96 in https://github.com/onyx-dot-app/onyx/pull/7254 * fix: don't pass tool_choice for mistral provider by @wenxi-onyx in https://github.com/onyx-dot-app/onyx/pull/7255 * chore(deployments): dont treat ad-hoc releases as dry-runs by @jmelahman in https://github.com/onyx-dot-app/onyx/pull/7256 ## New Contributors * @Danelegend made their first contribution in https://github.com/onyx-dot-app/onyx/pull/7217 **Full Changelog**: https://github.com/onyx-dot-app/onyx/compare/v2.6.0...v2.7.1