Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@theia/application-package

eclipse-theia40.3kEPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.01.67.0TypeScript support: included

Theia application package API.

readme



Theia Logo

Cloud & Desktop IDE Framework

PRs Welcome Build Status Publish VS Code Built-in Extensions Open questions Open bugs

Eclipse Theia is an extensible framework to develop full-fledged multi-language Cloud & Desktop IDEs and tools with state-of-the-art web technologies.

Theia

Website

Visit the Eclipse Theia website for more information and the Theia documentation.

Repositories

This is the main repository for the Eclipse Theia project, containing the sources of the Theia Platform. Please open generic discussions, bug reports and feature requests about Theia on this repository. The Theia project also includes additional repositories, e.g. for the artifacts building the Theia IDE and the Theia website. Please also see the overview of all Theia project repositories.

Releases

Scope

  • Support building browser-based and desktop IDEs and tools
  • Provide a highly flexible architecture for adopters
  • Support VS Code Extension protocol
  • Develop under vendor-neutral open-source governance

More details on the project goals are available on the Theia website.

Roadmap

See our roadmap for an overview about the current project goals and the upcoming releases.

Getting Started

Here you can find guides and examples for common scenarios to adopt Theia:

Contributing

Read below to learn how to take part in improving Theia:

Feedback

Read below how to engage with Theia community:

  • Join the discussion on GitHub.
  • Ask a question, request a new feature and file a bug with GitHub issues.
  • Vote on existing GitHub issues by reacting with a 👍. We regularly check issues with votes!
  • Star the repository to show your support.
  • Follow Theia on X.
  • Join the weekly developer call

Documentation

SBOM

To enhance supply chain security and offer users clear insight into project components, Eclipse Theia now generates a Software Bill of Materials (SBOM) for every release. These are published to the Eclipse Foundation SBOM registry, with access instructions and usage details available in this documentation.

License

Trademark

"Theia" is a trademark of the Eclipse Foundation. Learn More

changelog

Changelog

History

1.67.0 - 12/10/2025

  • [ai-anthropic] added opus 4.5 to default models #16656
  • [ai-anthropic, ai-core, ai-google, ai-openai] updated default models #16636
  • [ai-chat] clarified role of Orchestrator agent in Theia AI chat interactions #16663
  • [ai-chat-ui] ensured active session is recreated after deletion #16702 - Contributed on behalf of Lonti.com Pty Ltd
  • [ai-claude-code] added session forking support #16667
  • [ai-claude-code] migrated Claude Code to Theia native slash commands and modes #16541
  • [ai-codex] added codex as an agent #16484
  • [ai-codex] correctly asserted path for windows and linux tests #16620
  • [ai-core] enableAgent/disableAgent: added async/await #16599
  • [ai-core] enabled markdown syntax for prompt template files #16557
  • [ai-core] fixed duplicate command check #16718
  • [ai-core] handled undefined parameters for prompt template discard command #16706
  • [ai-core] made opus 4.5 default in model alliasses #16734
  • [ai-core] returned command by name if not found by ID #16614
  • [ai-google] updated @google/genai dependency, added thoughtSignature support and fixed content extraction #16664
  • [ai-ide] added GitHub slash commands #16704
  • [ai-ide] added remember command #16639
  • [ai-ide] clicking on a file in ai context does not open file #16468
  • [ai-ide] improved AI Agent Configuration view #16698
  • [ai-ide] made next replacer function default #16597
  • [ai-ide] updated command prompt template examples #16608
  • [ai-llamafile] updated llamafile model status for agent availability #16692
  • [ai-openai] recursively strictified tool call schemata #16553
  • [ai-terminal] fixed unresponsiveness in ask AI terminal assistant #16714
  • [application-package] bumped API compatibility to 1.106.1 #16655 - Contributed on behalf of STMicroelectronics
  • [ci] fixed check-new-packages workflow and checkPublish script #16650
  • [ci] migrated to npm trusted publishing (OIDC) and updated publishing workflow #16630
  • [ci] optimized test builds to avoid redundant executions #16552
  • [ci] set default values for scheduled publish-ci runs #16695
  • [core] added support for emojis in markdown renderers #16548
  • [core] fixed electron startup crash on wayland #16658
  • [core] fixed the issue with exclude pattern in user settings not merging with workspace settings #16483
  • [core] fixed workbench.startupEditor and scm.defaultViewMode reset behavior #16646
  • [core] improved error handling in catalog.json download script #16579 - contributed on behalf of STMicroelectronics
  • [core] improved menubar items active state handling on hover #16586 - contributed on behalf of STMicroelectronics
  • [core] improved typing related to globalThis object #16603
  • [core] npm upgrade #16516
  • [core] provided markdown and localizedMarkdown components #16470
  • [core] removed references to gitpod (now ona) #16610
  • [core] restored tree expansion state preservation in SourceTreeWidget #16654
  • [core] reverted "fix(core): restore tree expansion state preservation in SourceTreeWidget" #16672
  • [core] reverted to scrollIntoView #16532
  • [core] theia v1.66.0 released #16515
  • [core] updated nls.metadata for vscode API 1.106.1 and added update eslint localization check #16728 - contributed on behalf of STMicroelectronics
  • [core] updated package READMEs #16631
  • [core] updated translations for 'applyAll' and 'finished' in Chinese locale #16556
  • [core] used PreferenceService.get to merge agent settings from different scopes #16612
  • [core] used undefined-safe deep equality check in preference updates #16709
  • [customAgents] fixed default model for theia-dev #16680
  • [debug] added breakpoint actions to debug view #16700
  • [debug] added support for "lazy" debug variables #16681
  • [debug] added support for adding the current editor selection to watch #16567
  • [debug] added support for data breakpoints #16505
  • [debug] opened stack frame editor on tap #16519
  • [debug] variables made expandable when they should not #16684
  • [dev-container] basic devcontainer docker compose support #16577
  • [dev-container] fixed devContainer startup failure due to non-injectable logger #16678
  • [doc] added coding guideline for localizing rich content #16501
  • [doc] added i18n checklist item to PR template and review checklist #16611
  • [doc] updated publishing guide #16592 - Contributed on behalf of STMicroelectronics
  • [examples] fixed script parameters #16523
  • [filesystem] fixed undefined error on context menu upload files command #16600
  • [getting-started] enhanced localization of the package #16578
  • [metrics] fixed error after deleting node_modules folder - cannot resolve package @theia/<package> #16602
  • [monaco] quick command panel not closing when pressing escape fixed #16668
  • [notebook] "split editor" functionality for notebooks #16507
  • [playwright] missing tslib import in @theia/playwright #16670
  • [plugin] API evolution (proposed) to 1.106.1 #16626 - contributed on behalf of STMicroelectronics
  • [plugin] API evolution (public) to 1.106.1 #16625 - Contributed on behalf of STMicroelectronics
  • [plugin-ext] fixed incorrect argument passing to StatusBarEntry #16694
  • [plugin-ext] fixed issue with creating proper type instances in toSymbolInformation #16731
  • [preferences] fixed: align input heights in preferences UI #16733
  • [preferences] preference UI: subscribed directly to provider changes #16506
  • [prompts] added two agents that allow for an agentic flow #16473
  • [prompts] moved TheiaDev and TheiaDevCoder prompts to customAgents.yml #16711
  • [terminal] enhanced localization of the terminal package #16587
  • [terminal] new terminals were created in the panel of the clicked button #16538
  • [terminal] when the terminal was inputting with a Chinese input method, the text that had already been input was covered #16605
  • [terminal-manager] Adds new package providing a terminal manager widget to have multiple terminals within one view. Adds setting terminal.grouping.mode to switch between the old behavior and the new view. Default is the old behavior. #16604
  • [terminal-manager] enhanced localization of the terminal-manager package #16717
  • [terminal-manager] removed terminal flash animation on selection and cleaned up unused css rules #16715
  • [timeline] updated proposed.timeline API and theia timeline view implementation #16627 - Contributed on behalf of STMicroelectronics
  • [toolbar] improved icon picker dialog for adding toolbar items and updated @vscode/codicons #16629
  • [vsx-registry] used versioned id's for (un)installed and deployed plugins #16513
  • [workspace] do not copy preferences that are valid in folder scope #16622
  • [workspace] enhanced localization of the workspace package #16589

Breaking Changes:

  • [ai-core] objects returned by AiSettingsService settings retrievals marked readonly. To mutate a settings object, make a copy. #16612
  • [core] CommonCommands has been extracted from common-frontend-contribution.ts into its own file common-commands.ts. This only affects code using deep imports: imports of CommonCommands from @theia/core/lib/browser/common-frontend-contribution should be updated to use the standard barrel export @theia/core/lib/browser instead.
  • [core] CommonMenus has been extracted from common-frontend-contribution.ts into its own file common-menus.ts. This only affects code using deep imports: imports of CommonMenus from @theia/core/lib/browser/common-frontend-contribution should be updated to use the standard barrel export @theia/core/lib/browser instead.
  • [core] moved CommonCommands to separate file #16522
  • [debug] DebugSessionManager.getFunctionBreakpoints(), DebugSessionManager.getInstructionBreakpoints(), and DebugSessionManager.getBreakpoints() no longer default to the current session when called without arguments. Callers that relied on the implicit default to currentSession must now pass this.currentSession explicitly. #16537
  • [debug] refactored some of the debug model elements as part of #16689:
    • added required id parameter to DebugStackFrame and DebugScope constructors
    • changed type of keys in the DebugThread._frames map from number to string
    • added required startFrame parameter to DebugThread.doUpdateFrames method
  • [debug] some of the fields and methods of DebugToolBar have been removed in #16719
  • [debug] moved Debug*Commands and DebugMenus to separate file #16700
  • [plugin-ext] $setBadge method removed from WebviewsMain interface and WebviewsMainImpl; badge-related fields removed from WebviewView interface and implementation; badge-related fields removed from PluginViewWidget; badge-related fields removed from WebviewWidget. Use the BadgeService instead of BadgeWidget interface implementation to show extension badges. #16518
  • [scm] ScmTabBarDecorator and bindings removed. ScmWidget now contributes badge decorations via the BadgeService. #16518

1.66.0 - 10/30/2025

  • [ai-anthropic] allowed configuring proxy settings #16453
  • [ai-anthropic] fixed Anthropic request errors when using parallel tool calls #16359
  • [ai-chat] enhanced localization of the ai-chat package #16409
  • [ai-chat] implemented chat session persistence #16486
  • [ai-chat] refined the description of agent delegate tool #16378
  • [ai-chat-ui] added mode support for chat agents #16489
  • [ai-chat-ui] enhanced localization of the ai-chat-ui package #16414
  • [ai-claude-code] added dedicated Claude Code API key preference #16508
  • [ai-claude-code] enhanced localization of the ai-claude-code package #16451
  • [ai-claude-code] migrated to claude agent sdk #16500
  • [ai-code-completion] enhanced localization of ai-code-completion #16416
  • [ai-core] added support for slash commands #16444
  • [ai-core] enhanced localization of the ai-core package #16350
  • [ai-editor] enhanced localization of ai-editor #16416
  • [ai-google] conditionally included tools in GoogleModel based on functionDeclarations length #16480
  • [ai-google] fixed google language model error for requests without tool functions #16380 - Contributed on behalf of Lonti.com Pty Ltd
  • [ai-ide] adapted workspace functions preferences #16452
  • [ai-ide] added GitHub agent #16374
  • [ai-ide] added initial project info agent (alpha) #16462
  • [ai-ide] added new content replacer strategy for coder edit mode #16322
  • [ai-ide] added orchestrator agent exclusion list #16510
  • [ai-ide] added support to suggest terminal command #16428
  • [ai-ide] enhanced localization of the ai-ide package #16426
  • [ai-ide] extracted task context prompt into separate agent #16393
  • [ai-ide] fixed two minor spelling/wording issues with the coder prompt #16402
  • [ai-ide] forbade meta comments in coder prompt #16331
  • [ai-ide] removed @theia/git dependency #16465
  • [ai-mcp] added option to run a resolve operation on mcp server start #16049
  • [ai-mcp] fixed preference categorization for MCP server preferences #16346
  • [ai-mcp-server] added .js extension to imports for ESM to allow usage in commonjs #16410 - Contributed by STMicroelectronics
  • [ai-openai] allowed configuring proxy settings #16453
  • [ai-openai] used OpenAI response API #16394
  • [ai-scanoss] fixed SCANOSS dialog expansion with long JSON content #16485
  • [ai-terminal] enhanced localization of ai-terminal #16416
  • [application-manager] resolved .node files in webpack backend config #16377
  • [application-package] bumped vscode API compatibility to 1.105.0 #16495
  • [ci] optimized CI build to avoid redundant executions #16457
  • [ci] updated license workflow and switched to nodejs wrapper #16456
  • [ci] updated publish-release workflow for release automation #16433 - Contributed on behalf of STMicroelectronics
  • [core] added symbol icon default colors #15860
  • [core] added z-index to dock layering style #16375
  • [core] ensured reveal scrolls to selected tree row #16463
  • [core] evaluated enablement and toggle state of command only once before showing context menu #16325 - Contributed on behalf of Lonti.com Pty Ltd
  • [core] evolved vscode API (public) to 1.105.0 #16476 - Contributed on behalf of STMicroelectronics
  • [core] fixed authentication service not reacting to session changes #16252
  • [core] fixed tooltip/hover service mouseOut for non-chromium browsers #16417
  • [core] fixed vscode plugin activation failed error when it uses an already existing key in its settings #16481
  • [core] improved default value and reset handling for preferences #16356
  • [core] prevented await identifiers #16404 - Contributed on behalf of STMicroelectronics
  • [core] showed hover tooltip immediately when clicking status bar item #16385
  • [core] updated toggle developer tools keyboard shortcut to avoid overlap #16488
  • [core] upgraded NPM #16357
  • [debug] added check for valid debug session #16330
  • [debug] added support for context menu in debug hover #16366
  • [debug] fixed Add to Watch command #16340
  • [debug] made reveal position smoother #16311 - Contributed on behalf of MVTec Software GmbH
  • [debug] retained session-bound metadata for disabled breakpoints #16361
  • [docs] added CLAUDE.md file #16458
  • [docs] published API documentation on GitHub Pages #16422
  • [docs] updated README.md #16353
  • [editor] fixed OutputWidget and MonacoEditor memory leak #16487 - Contributed by Hbb
  • [electron] updated electron to version 38.4.0 #16477
  • [filesystem] avoided trying to use watchman for file system watcher #16335 - contributed on behalf of STMicroelectronics
  • [notebook] used shared lodash.debounce import in notebook-editor-widget #16423
  • [playwright] added stability checks for TheiaMenuBar and TheiaMenu in Playwright tests #16455
  • [plugin] aligned module declaration for proposed.statusBarItemTooltip.d.ts #16396
  • [plugin] evolved vscode API (proposed) to 1.105.0 #16475 - Contributed on behalf of STMicroelectronics
  • [plugin] refactored local plugin readme resolution #16382
  • [plugin] removed deprecated WMIC and unmaintained ps-tree usage #16439
  • [plugin-ext] allowed VSCode extension to access files outside of the extension directory #16195
  • [plugin-ext] ensured output channel methods stay within this context #16420
  • [plugin-ext] implemented asynchronous tooltips #16364
  • [plugin-ext] used unversioned IDs for disabled extensions #16392
  • [preferences] avoided reporting misleading 'invalid scope' warning for excluded preferences #16332
  • [preferences] debounced updateInMemoryResources to reduce startup times #16440
  • [preferences] fixed missing commonly used settings section #16344
  • [preferences] renamed await to awaitAll for esbuild compatibility #16398 - Contributed on behalf of STMicroelectronics
  • [scanoss] fixed preference categorization for SCANOSS preferences #16346
  • [vsx-registry] fixed local plugin readme file resolution #16376
  • [workspace] added filename attribute to localization function #16482

Breaking Changes:

  • [core] Listener.await has been renamed to Listener.awaitAll for better compatibility with esbuild. #16398 - Contributed on behalf of STMicroelectronics

1.65.0 - 9/26/2025

  • [ai-chat] cancelled incomplete requests on new request #16179
  • [ai-chat] deduplicated tools before sending llm request #16229
  • [ai-chat] enabled specifying original state in change sets #16067
  • [ai-chat] unified tool call result handling #16106
  • [ai-chat-ui] added chat input history with arrow key navigation #16174 - Contributed on behalf of STMicroelectronics
  • [ai-chat-ui] cancelled tool execution confirm dialogs when request was cancelled #16221
  • [ai-chat-ui] fix(chat): prevent prompt navigation when suggestion widget is visible #16224
  • [ai-chat-ui] fixed #16129 #16185
  • [ai-chat-ui] fixed arrow up/down only triggering prompt history if visual top/bottom line #16265
  • [ai-claude-code] initial Claude Code agent integration #16273
  • [ai-core] Also watch non-existent template directories #16251
  • [ai-google] improved error reporting for Google GenAI connector #16228
  • [ai-ide] added "find files" tool function #16250
  • [ai-ide] collapsed prompt fragment list 1st level by default #16202
  • [ai-ide] fixed show variables and functions only from selected prompt variants #15519
  • [ai-ide] improved getWorkspaceList to mark sub directories #16170
  • [ai-ide] refined app tester prompt #16147
  • [ai-ide] removed workspace directory structure function from default prompts #16171
  • [ai-mcp-server] added model context protocol server integration for theia #15832
  • [ai-openai] added info on bearer token #16307
  • [ai-openai] correctly handled reasoning output of openai/gpt-oss-120b #16282
  • [ai-openai] deployment configuration for Azure hosted models was added #16324
  • [ai-openai] updated OpenAI models, added gpt-5 #16169
  • [changelog] fixed changelog for 1.64.0 #16103
  • [changelog] updated changelog.md #16217
  • [core] added coding guidelines to project info #16318
  • [core] cleaned up emitters and dangling references when Theia DockPanel disposed #16317
  • [core] ended support for Node 18 and upgraded to node-gyp 11.x #16218 - Contributed on behalf of STMicroelectronics
  • [core] fixed api tests on windows #16050
  • [core] fixed missing filters in save as dialog #16247 - Contributed on behalf of MVTec Software GmbH
  • [core] fixed react warning for duplicate createroot calls on singleton reactdialogs #16306
  • [core] fixed test failures on Ubuntu with Node 22 #16272
  • [core] fixed: correctly handle plugin-icons during menu creation and use tooltip #16181
  • [core] localized property tooltips for tasks.json #16300
  • [core] new contribution point to modify the shell layout data #16242
  • [core] npm upgrade #16264
  • [core] Passed correct "effectiveMenuPath" to menu actions #16148 - Contributed on behalf of STMicroelectronics
  • [core] ran npm upgrade #15688
  • [core] replaced links in status bar items which provide markdown with safe commands #16182
  • [core] restored extracted widget to main window #15871 - contributed on behalf of STMicroelectronics
  • [core] Reverted "Ensure context menu arguments are propagated to submenus" #16139
  • [core] theia v1.64.0 released #16100
  • [core] translation update for version 1.65.0 #16329
  • [core] updated colors for editor gutter #16096
  • [debug] added evaluate in debug console command #16289
  • [debug] added Run to Cursor and Run to Line commands #16219
  • [debug] don't accept/cancel breakpoint editor while its suggest widget is visible #16285
  • [debug] Don't show inline stackframe pointer when line is empty #16308 - Contributed on behalf of MVTec Software GmbH
  • [debug] enhanced localization of the debug package #16305
  • [debug] fixed breakpoints being lost when editing source #16154
  • [debug] fixed enabling continue command if the debugger is active for pressing F5 #14641 - Contributed by MVTec Software GmbH
  • [debug] fixed line breakpoints not shifting if lines are inserted above #16183
  • [debug] fixed text misalignment caused by inline breakpoint decoration #16160
  • [debug] removed excessive spacing in breakpoint list #16173 - Contributed on behalf of STMicroelectronics
  • [debug] showed the error message when setting a variable fails #16235
  • [debug] supported copy value/copy as expression in debug console #16310
  • [editor] stored/restored navigation locations without warning #16207 - Contributed on behalf of STMicroelectronics
  • [ffmpeg] fixed ffmpeg cache write promise #16297
  • [getting-started] added a link to usage data & telemetry info #16184
  • [github] added sbom generation and upload workflow #16290
  • [monaco] fixed two dots in save as dialog #16299
  • [notebook] added support for vscode-notebook-cell uri's #16276
  • [plugin] added argument processor for plugin toolbar command arguments #16230
  • [plugin] new jupyter support and non chromium rendering fix #16243
  • [plugin-ext] added automatic ${viewId}.open command #16239
  • [plugin-ext] correctly supported shadow dom when forwarding links from webviews #16213
  • [plugin-ext] fixed error in previous PR #16178
  • [plugin-ext] fixed leak in status bar registry that caused memory leaks on item updates #16168
  • [plugin-ext] fixed missing new file entries from vscode extensions #16241 - Contributed on behalf of MVTec Software GmbH
  • [preferences] improved preferenceWidget state restoration on start and scope change #16078
  • [scripts] updated translation workflow to include common dirs #16328
  • [search-in-workspace] search in workspace / find in files functionality fixed in browser-only environment #16231
  • [task] enhanced localization of the task package #16286
  • [vscode] API evolution (public and proposed) to 1.104.0 #16281 - Contributed on behalf of STMicroelectronics

Breaking Changes:

  • [ai-ide]TaskContextFileStorageService.getStorageLocation and TaskContextFileStorageService.watchStorage modified to run synchronously, with corresponding change of signature. #16063
  • [core] Make Preferences available in the back end #16017 - Contributed on behalf of STMicroelectronics\ This PR allows to user default and user preferences in the back-end process. See Migration.md for breaking API changes
  • [workspace] WorkspaceService.reloadWindow now requires the workspace path string parameter #16238
  • [filesystem] browser-only: fixed Safari compatibility issues, refactored implementation to use OPFS API with web workers, implemented file watching, folder copying, file/folder download and upload capabilities with streaming support. OPFSFileSystemProvider rewritten, OPFSInitialization.getRootDirectory() signature changed. FileUploadService/FileDownloadService moved/renamed. See Migration.md for migration steps. #16187

1.64.0 - 7/31/2025

  • [ai-chat] adapted the default of the summary agent to gtp-4o #16042
  • [ai-chat] added session cleanup to AgentDelegationTool #15996
  • [ai-chat] correctly handled stream responses #15942
  • [ai-chat] preserved delegation content #16066
  • [ai-chat] reduced formatter selection prompts for changeset elements #16094
  • [ai-chat-ui] fixed cancel on escape in chat input #16068
  • [ai-chat-ui] improved chatUI auto-scroll / scroll-lock consistency #15936
  • [ai-chat-ui] improved delegated content part styling #15956
  • [ai-chat-ui] renamed 'pin agent' to 'agent' to avoid confusion #16072
  • [ai-core] added AI model aliases and default models #15782
  • [ai-core] displayed warning when selected variant does not exist #15974
  • [ai-core] fixed startup crash when 'ai-chat' was not included #15902
  • [ai-ide] added functions for launch configuration #15941
  • [ai-ide] introduced puppeteer to manage the browser instance #15734
  • [ai-ide] put new prompt templates under MIT #16051
  • [ai-ide] promoted AI IDE features to beta #16058
  • [ai-ide] refined architect task context creation prompt #16059
  • [ai-ide] showed selected prompted variant if configured, showed default otherwise #15907
  • [ai-ide] updated toolProvider to handle cancellation #15951
  • [ai-ide] used the agent name that requested the tool call in the change set title #15952 - Contributed on behalf of Lonti.com Pty Lt
  • [ai-ollama] fixed crash in ollama language model #16091
  • [ai-ollama] used available parameter information from the provided tool description #15575
  • [application-package] bumped vscode API compatibility to 1.102.3 #16081 - Contributed on behalf of STMicroelectronics
  • [core] bumped cookie to 1.0.2 #16041 - contributed by STMicroelectronics
  • [core] bumped nyc to 17.1.0 #15989 - contributed by STMicroelectronics
  • [core] correctly detached from DOM in DynamicMenuWidget #16019
  • [core] enabled clicks inside interactive hover tooltips and opened tooltip on status-bar click #15971
  • [core] ensured double click on tab maximizes area #16079
  • [core] fix cannot drop explorer view files on AI chat input on Windows #15979 - contributed on behalf of Lonti.com Pty Ltd.
  • [core] fix: dynamicMenuWidget memory leak #15982 - contributed by Hbb
  • [core] fixed default locale issue #16093
  • [core] fixed memory leak in RenderedToolbarItemImpl #15949 - contributed on behalf of Lonti.com Pty Ltd
  • [core] fixed stale tree selection #15928
  • [core] fixed typeError in updateAutoSaveMode #15991
  • [core] reenabled deprecated paste command in electron #15918 - contributed on behalf of STMicroelectronics
  • [core] setting service gracefully handled ENOENT #15803
  • [core] translation update for version 1.64.0 #16099
  • [core] ui fixes (squashed) #15953
  • [doc] updated publishing guide documentation #15939
  • [editor] removed now unneeded EditorManager override #15934
  • [electron] updated to Electron 37.2.1 #15999
  • [monaco] ide cannot fully restore to the previous state after restarting #15898
  • [navigator] removed double-click handler that caused folders to auto-open #15869
  • [notebook] fixed usage of lodash debounce #16045
  • [playwright] exported terminal, monaco and welcome-view playwright utilities #16013
  • [playwright] made expectation independent from execution order #16047
  • [plugin-ext] implemented support for remote MCP server #16002
  • [remote] improved type safety of remote ssh config #15671
  • [remote] used environment variable instead of wmic to get remote architecture #16004
  • [remote] used node 22 for remote containers #15937
  • [scm] added the 3-way merge editor #15701
  • [scm] fixed minor issues with scroll sync #16038
  • [scm] set relative sizes for horizontal split panel #16036
  • [toolbar] fixed styling of main toolbar items so enabled items have a pointer cursor #15948 - contributed on behalf of Lonti.com Pty Ltd
  • [vsx-registry] disabled extension recommendations #15830
  • [vsx-registry] restored location for the clear all actions in vsx extension view #15923 - contributed on behalf of STMicroelectronics
  • [workflows] published next version once a week #15965

Breaking Changes:

  • [ai-core] extracts UI from @theia/ai-core and @theia/ai-mcp to @theia/ai-core-ui and @theia/ai-mcp-ui #16075.\ Include these new packages to restore the old behavior. Also moves the AI Enable preference to @theia/ai-ide and enables the AI features by default if @theia/ai-ide is not included.

1.63 - 6/26/2025

  • [ai-anthropic] implemented prompt caching for Anthropic #15731
  • [ai-anthropic] removed tool results from subsequential requests #15702
  • [ai-anthropic] reverted "fix: remove tool results from subsequential requests" #15721
  • [ai-anthropic] set opus 4 to 32000 max tokens #15788
  • [ai-chat] adapted all prompt ids to common schema #15880
  • [ai-chat] added async initialization to changesetfileelement #15761
  • [ai-chat] enabled agent-to-agent delegation via tool calls #15736
  • [ai-chat] filtered out error messages from the messages sent to the llm #15720
  • [ai-chat] fixed change set deletion #15759
  • [ai-chat] fixed pinning of the last mentioned agent rather than the first one #15777
  • [ai-chat] introduced tool call confirmation UI #15714
  • [ai-chat] removed requirement that agent has to be mentioned first #15854
  • [ai-chat] sanitized task context labels #15762
  • [ai-chat] provided a task context management / agent #15732
  • [ai-chat-ui] added chat retry button #15779
  • [ai-chat-ui] fixed chat input widget not tracking branches and pending state #15727
  • [ai-chat-ui] fixed difficulty to scroll up when auto scroll is enabled #15748
  • [ai-chat-ui] fixed paste handling in chat input #15766
  • [ai-chat-ui] fixed temporary scroll lock when user scrolls up in AI Chat #15683
  • [ai-chat-ui] fixed toolcall spinner #15757
  • [ai-chat-ui] showed active chat in chat dropdown #15723
  • [ai-chat-ui] started chat from task context #15700
  • [ai-chat-ui] supported instant request for chat initialized with task context and agent #15778
  • [ai-chat-ui] replaced YOLO terminology with "Always Allow" #15756
  • [ai-code-completion] added support for custom AI variables in code completion prompt #15681 - Contributed on behalf of Lonti.com Pty Ltd.
  • [ai-code-completion] fixed caching in code completion #15855
  • [ai-code-completion] worked on improving code completion #15715
  • [ai-core] added chat variable for all open editors #15775
  • [ai-core] added fall back to default prompts if selected does not exist #15879
  • [ai-core] AI features accessible when AI is not enabled #15780
  • [ai-core] allowed to increase the number of retries before failing #15730
  • [ai-core] allowed adding variants via files #15815
  • [ai-core] fixed bug that customizations are treated as variants #15846
  • [ai-core] handled toolCall errors gracefully instead of throwing #15800
  • [ai-core] implemented theia-ai agent completion notification #15816
  • [ai-core] improved image support for tool calls #15765
  • [ai-core] fixed prompt fragment view resetting custom prompt fragments #15852
  • [ai-editor] improved ask AI feature #15725
  • [ai-editor] refined inline Ask AI chat input appearance #15885
  • [ai-editor] started chat from editor context #15712
  • [ai-editor] used chatInputWidget in AskAI Input and fixed keyboard scrolling #15781
  • [ai-editor] streamlined ask AI commands and fixed send to AI chat error #15839
  • [ai-google] updated the Google AI SDK #15737
  • [ai-ide] added ai tools for write through file changes #15717
  • [ai-ide] consolidated coder prompts #15733
  • [ai-ide] fixed agent tree selection highlighting in AI configuration widget #15850
  • [ai-ide] fixed AI Configuration widget tab bar overflow #15739
  • [ai-ide] included the ai-ide stylesheet in the secondary window #15752
  • [ai-ide] introduced appTester agent via browser automation #15713
  • [ai-ide] made workspace functions token efficient #15703
  • [ai-ide] made workspace search function more efficient / use less tokens #15743
  • [ai-ide] moved AI configuration view to main #15726
  • [ai-ide] refined coder prompt #15774
  • [ai-ide] reminded coder to use file change functions #15848
  • [ai-ide] reorganized architect prompts #15859
  • [ai-ide] used relative path in search results in workspace function #15704
  • [ai-ide] workspace search function allowed specifying file extensions #15699
  • [ai-ollama] updated ollama version and supported newest features #15795
  • [ai-openai] made sure to add openai stream options only in streaming models #15706
  • [ai-openai] supported more than 10 tool calls via OpenAI SDK #15696
  • [application-package] bumped vscode API compatibility to 1.101.1 #15888 - contributed on behalf of STMicroelectronics
  • [core] cancelled hover preview on right mouse click #15826
  • [core] didn't focus window to reveal widget #15760
  • [core] didn't steal global focus for widget activation #15735
  • [core] fixed getMenuNode() for leaf nodes #15845 - contributed on behalf of STMicroelectronics
  • [core] fixed initial configuration of backend loggers #15705
  • [core] fixed problems with menu item 15828_menu_visibility #15856 - Contributed on behalf of STMicroelectronics
  • [core] fixed revealTab #15754
  • [core] listened for model will save events directly instead of registering a save participant #15787 - contributed on behalf of STMicroelectronics
  • [core] removed obsolete menu workaround #15753 - Contributed on behalf of STMicroelectronics
  • [core] returned undefined instead of throwing when getting non-existent menu #15792 - Contributed on behalf of STMicroelectronics
  • [core] sync selection if props change #15784
  • [core] theia 1.62.0 released #15679
  • [core] translation update for version 1.63.0 #15892
  • [core] updated electron to version 36.4.0 #15837 - contributed on behalf of STMicroelectronics
  • [core] Updated translations for version 1.62.0 #15678
  • [core] used Ctrl+Tab for tab switching on Mac #15763
  • [debug] enabled multiSelect for the debugBreakpointsWidget #15749
  • [doc] added (major) dependency update to publishing #15674
  • [editor] added missing NLS template item for format on save #15813
  • [electron-browser] fixed localization of files #15677
  • [filesystem] bumped multer version to 2.0.1 #15808 - contributed on behalf of STMicroelectronics
  • [filesystem] bumped multer version to 2.0.1 #15806 - Contributed on behalf of STMicroelectronics
  • [filesystem] bumped tar-fs to 3.0.9 on 1.61.1 #15805
  • [filesystem] deps: bumped tar-fs to 3.0.9 #15719 - contributed by STMicroelectronics
  • [general] updated project info with styling information #15722
  • [monaco] enacted code actions when change set file was created #15724
  • [monaco] fixed existence check when contributing monaco menu items #15746 - Contributed on behalf of STMicroelectronics
  • [playwright] avoided playwright tests depending on cwd #15676 - Contributed by MVTec Software GmbH
  • [playwright] fixed playwright tests on windows #15684 - Contributed by MVTec Software GmbH
  • [plugin] added support for the new vscode.lm.registerMcpServerDefinitionProvider API #15755
  • [plugin] supported encoding/decoding from workspace and while opening text documents #15873 - Contributed on behalf of STMicroelectronics
  • [project-info] added widgets, commands and toolbar to project info #15697
  • [scm] amended enablement/visibility checks for dirty diff widget toolbar actions #15851
  • [search-in-workspace] fixed bug with incorrect height calculation of the search field #15881
  • [toolbar] restored toolbar default items #15878

1.62.0 - 5/28/2025

  • [ai-anthropic] added Claude 4 models #15640
  • [ai-chat] added logic to handle empty text response correctly #15638
  • [ai-chat] overloaded ChatToolRequest.handler #15655
  • [ai-chat-ui] added logic to hide suggestions from chat input for message editing #15617
  • [ai-chat-ui] fixed chat input field to show a vertical scroll bar if content overflows #15654
  • [ai-code-completion] introduced debounce for inline AI code completion #15619
  • [ai-core] added check for a valid LanguageModelStreamResponsePart #15653
  • [ai-core] added default context resolution for custom agents #15571
  • [ai-core] added new generic AI communication model #15409 - Contributed on behalf of STMicroelectronics
  • [ai-ide] added initial prompt for coder agent mode #15569
  • [ai-ide] added logic to open AI configuration view at bottom #15637
  • [ai-ide] added next prompt for architect #15649
  • [ai-ide] cleaned up next coder prompt #15634
  • [ai-ide] clarified resolution of context files for coder an architect #15579
  • [ai-ide] fixed a repetition in the coder prompt #15650
  • [ai-ide] improved file change set functions #15642
  • [ai-openai] added stream_options/include_usage only for openai models #15615
  • [ai-vercel-ai] clarified API key description for Vercel AI keys #15665
  • [ai-vercel-ai] introduced experimental generic LLM provider via Vercel AI #15482
  • [collaboration] updated OCT integration to v0.3 #15633
  • [core] added logic to close secondary windows on reload #15591 - Contributed on behalf of STMicroelectronics
  • [core] added logic to render groups correctly in "more" tab bar menu #15647 - Contributed on behalf of STMicroelectronics
  • [core] added logic to update tree upon becoming visible #15595 - Contributed on behalf of STMicroelectronics
  • [core] added logic to use pointer capture for split handle dragging #15643 - Contributed on behalf of STMicroelectronics
  • [core] added logic to use same autosave heuristic when closing widget #15502
  • [core] bumped dompurify to 3.2.4 #15564 - Contributed by STMicroelectronics
  • [core] cleaned up handling of "toggle maximized" #15547 - Contributed on behalf of STMicroelectronics
  • [core] improved handling of logging with proxies #15478
  • [core] made hover-service use platform showPopover() #15452
  • [debug] added logic to subscribe to decoration changes at initialization #15573 - Contributed by MVTec Software GmbH
  • [debug] allowed to see editor hovers while debugging #15609 - Contributed by MVTec Software GmbH
  • [dev-packages] fixed ssh terminals #15443
  • [editor] added logic to respect editor associations when opening diff-editors #15422
  • [editor] fixed "Show all opened editors" dropdown display by using correct icon class type #15624
  • [filesystem] bumped multer to 2.0.0 #15614 - Contributed by STMicroelectronics
  • [filesystem] bumped tar-fs to 3.0.8 #15562 - Contributed by STMicroelectronics
  • [notebook] made monaco commands available through command palette for notebook cells #15538
  • [playwright] improved playwright tests reliability #15446
  • [remote-wsl] added WSL remote support #15543
  • [vscode] bumped vscode API compatibility to 1.99.3 #15658
  • [vscode] added support for CommentAuthorInformation in CommentThread canreply #15598 - Contributed on behalf of STMicroelectronics
  • [vscode] added support for TerminalState shell property #15514 - Contributed on behalf of STMicroelectronics

Breaking Changes:

  • [core] refactored menu nodes #14676 - Contributed on behalf of STMicroelectronics
  • [ai-core] refactored prompt management and the agent registration interface #15632\ Check the PR for more information.
  • [ai-history] updated logic to use communication model in AI history #15540 - Contributed by STMicroelectronics\ This refactoring removes the communication recording service. Manual recording is no longer needed. When using the LanguageModelService, LLM interactions are automatically recorded into a communication model, which can be inspected in the history view.
  • [monaco] implemented "code actions on save" #15555 - Contributed on behalf of STMicroelectronics\ Replaced MonacoEditorModel.onWillSave "wait until event" event with registerWillSaveModelListener for simpler semantics. Also removed the EditorModelService.onWillSave as it's pure convenience and unused in framework code.

1.61.0 - 4/29/2025

  • [ai-anthropic] fix: do not set anthropic tool choice without tools #15329
  • [ai-chat] correctly returned tool input when creating the message #15451
  • [ai-chat] enhanced streaming content parsing for incomplete response content matches #15387
  • [ai-chat] added agent prompt suggestions & chat summary #15427
  • [ai-chat] added customizable welcome message #15316
  • [ai-chat] collapsed label from right & no printed   #15344
  • [ai-chat] fixed context menu paste #15222
  • [ai-chat] fixed space issue after variables and agent label in chat view #15491
  • [ai-chat] improved style of code blocks in modern theme #15351
  • [ai-chat] introduced editable chat requests #15479
  • [ai-chat] made private functions and injections protected in chatviewtreewidget to make them overridable #15297 - Contributed by MVTec Software GmbH
  • [ai-chat] removed outline in the chat session settings editor #15356
  • [ai-chat] consolidated widget labels #15304
  • [ai-chat] fixed communication recording in orchestrator #15328
  • [ai-code-completion] fixed typo in code completion prompt #15383
  • [ai-code-completion] provided range to completion item to allow for correct inline display #15398
  • [ai-code-completion] turned automatic inline code completion off by default #15333
  • [ai-core] added shortcut for adding the current file to the ai chat context #15252
  • [ai-core] fixed response content in language model utility #15377
  • [ai-core] made parameters in ToolRequest mandatory #15288
  • [ai-core] resolved unresolved variables to empty string #15463
  • [ai-core] white label prompt templates #15322 - Contributed by MVTec Software GmbH
  • [ai-core] added initial support for tracking token usage #15378
  • [ai-core] allowed project specific prompt additions #15236
  • [ai-core] allowed workspace specific custom agents #15457
  • [ai-core] ensured all tool providers bound to self #15330
  • [ai-google] added gemini flash 2.5 to default models #15487
  • [ai-google] added native gemini provider #15334
  • [ai-history] more legible history entries #15483
  • [ai-ide] added a new tool which allows to list and run tasks #15504
  • [ai-ide] added a suggestion to architect to summarize the current session and continue with coder #15512
  • [ai-ide] added project info prompt fragment #15449
  • [ai-ide] clarified replace function description #15442
  • [ai-ide] fixed getFileDiagnostics waits forever #15305
  • [ai-ide] minor improvements mcp view #15364
  • [ai-ide] modified link in AI chat instructions to show AI settings directly #15326
  • [ai-ide] refined ai setting descriptions #15250
  • [ai-ide] refined coder prompt #15358
  • [ai-ide] used camelCase in React SVG #15367
  • [ai-ide, ai-mcp] added MCP Server config view to AI Configuration #15280
  • [ai-mcp] allowed to add all MCP functions via prompt fragment #15270
  • [ai-ollama] fixed Ollama regression in Theia 1.60 #15476
  • [ai-openai] added gpt-4.1 models to the list of default models #15465
  • [ai-scanoss] fixed scanoss button/icon in chat ui #15339
  • [api-samples] used ElectronConnectionHandler to connect updater services #15430
  • [application-package] bumped VS Code API version to 1.98.2 #15341 - Contributed on behalf of STMicroelectronics
  • [console] added missing editor dependency to console #15354
  • [console] waited for async creation of debug console widget #15388 - Contributed on behalf of STMicroelectronics
  • [core] clarified error for multiple occurrences during replace #15481
  • [core] did not re-export the configuration folder as env variable #15376
  • [core] fixed resolve from root #15331
  • [core] fixed switching the localization language back to the default #15445
  • [core] hid overflow in view container headers #15321 - contributed on behalf of STMicroelectronics
  • [core] hide overflow on sidebar-toolbar #15492 - contributed on behalf of STMicroelectronics
  • [core] limited the width of tab-bar rows to 100% of parent #15260 - contributed on behalf of STMicroelectronics
  • [core] made icons right-aligned #15373 - contributed on behalf of STMicroelectronics
  • [core] made preventTabbingOutsideDialog more easily overridable #15460
  • [core] relayout dock panel when breadcrumbs became active #15342 - contributed on behalf of STMicroelectronics
  • [core] removed es6-promise & setImmediate #15436 - webperf contribution
  • [core] reverted #15331 to fix webviews #15421 - Contributed on behalf of STMicroelectronics
  • [core] set selection upon editor navigation only after editor was fully visible #15302 - contributed on behalf of STMicroelectronics
  • [core] theia 1.60.0 release #15385
  • [core] translation update for version 1.60.0 #15382 - triggered by @sgraband
  • [core] used fixed version 1.5.5 of perfect-scrollbar #15279 - contributed on behalf of STMicroelectronics
  • [debug] fixed breakpoint editor shrinking in size #15515
  • [debug] reacted to editor model changing #15509
  • [debug] used editor widget as key for debug editor models #15516 - contributed on behalf of STMicroelectronics
  • [dev-container] added DOCKER_HOST support to devcontainer #15350
  • [docs] fixed broken links in documentation #15454
  • [getting-started] added news section with AI to welcome page #15269
  • [monaco] avoided double registration of sticky scroll toggle #15366
  • [monaco] disposed of child instantiation services in MonacoEditor #15246
  • [monaco] ensured valid editor was constructed before attempting to use editor services #15238
  • [monaco] fixed autocomplete content in chat view #15240
  • [monaco] fixed issue with dirty state not correctly set when save operation is canceled #15310
  • [monaco] passed multiple classnames as array of strings #15244
  • [monaco] show context menu for editor minimap #15220
  • [monaco] used simpleMonacoEditor for most inline editors #15389
  • [notebook] fixed cell editor and notebook output selection #15384
  • [plugin] made diagnosticcollection iterable #15361 - contributed on behalf of STMicroelectronics
  • [plugin] removed proposed API createFileSystemWatcher #15265 - contributed on behalf of STMicroelectronics
  • [plugin] renamed authenticationForceNewSessionOptions #15264 - contributed on behalf of STMicroelectronics
  • [plugin] supported sourceControlResourceGroup optional contextValue #15219 - contributed on behalf of STMicroelectronics
  • [plugin-ext] implemented the registerDiffInformationCommand to address issue #14144 #15406
  • [plugin-ext] prevented plugin localization errors #15268
  • [preferences] explicitly set scrolling element to avoid document scroll #15315
  • [preferences] fixed issue where minimums of 0 for number preferences were ignored #15230
  • [remote] basic ssh_config support #15499
  • [scm] updated dirty diff when editor became visible #15505 - Contributed on behalf of STMicroelectronics
  • [search-in-workspace] fixed SiW height mismatch #15287
  • [task] only called resolve() on tasks that have no execution #15480 - contributed on behalf of STMicroelectronics
  • [terminal] added terminal via "+" in terminal tool bar #15470
  • [test] updated deprecated xterm dependency #15523 - contributed on behalf of STMicroelectronics

Breaking Changes:

  • [core] allow to disable plugins. The PR includes a couple of renamings: HostedPluginDeployerHandler => PluginDeployerHandlerImpl and PluginServerHandler => PluginServerImpl. Also removed the ability of HostedPluginProcess to add extra deployed plugins. #15205 - contributed on behalf of STMicroelectronics
  • [core] removed version fix of @types/express-serve-static-core to 5.0.4. Adopters might need to do this as well if they run into typing issues. #15415
  • [git] stop publishing the @theia/git extension. This extension has been deprecated for a long time. Please use the built-in VS Code Git extension instead, which offers the same feature set. #15471

1.60.0 - 04/03/2025

  • [ai] add dummy preference descriptions to open AI config widget #15166
  • [ai] add function to retrieve diagnostics #14974
  • [ai] add gpt-4.5-preview as a default model #15090
  • [ai] add MCP Server config view to AI Configuration #15280
  • [ai] add native gemini provider #15334
  • [ai] add schema for agent settings #15175
  • [ai] allow project specific prompt additions #15236
  • [ai] allow to add all MCP functions via prompt fragment #15270
  • [ai] chore(chat): minor chat style improvements #15112
  • [ai] chore(chat): pass pinned agent in frontend chat service #15070
  • [ai] chore: improve style of code blocks in modern theme #15351
  • [ai] chore: remove outline in the chat session settings editor #15356
  • [ai] consider TerminalLinkProvider contributions recursively #15177
  • [ai] consolidate widget labels #15304
  • [ai] fix(ai-chat): add space after all autocompletions in AI chat #15052
  • [ai] fix: Pin node-abi version to 3.x due to Node.js 22+ requirement in 4.x #15212
  • [ai] fix: autocomplete content in chat view #15240
  • [ai] fix: communication recording in Orchestrator #15328
  • [ai] fix: do not set anthropic tool choice without tools #15329
  • [ai] fix: fix response content in language model utility #15377
  • [ai] fix: getFileDiagnostics waits forever #15305
  • [ai] fix: prevent autocompletion from triggering incorrectly within words #15030
  • [ai] fix(chat): fix context menu paste #15222
  • [ai] feat(chat): add customizable welcome message #15316
  • [ai] feat(chat): introduce LLM-based chat naming and last interaction date #15116
  • [ai] fix: ensure that the dirty state is correctly set even when the current save operation is canceled (#15308). #15310
  • [ai] initialize AIActivationService from preferences #15044 - Contributed by MVTec Software GmbH
  • [ai] make parameters in ToolRequest mandatory #15288
  • [ai] make private functions and injections protected in ChatViewTreeWidget to make them overridable #15297 - Contributed by MVTec Software GmbH
  • [ai] modify link in AI chat instructions to show AI settings directly #15326
  • [ai] put all prompts under MIT license #15159
  • [ai] refine AI setting descriptions #15250
  • [ai] refine coder prompt #15358
  • [ai] set correct defaults for max tokens for anthropic models #15198
  • [ai] set z-index of hovers to 1000 #15172
  • [ai] show news section with AI on welcome page #15269
  • [ai] turn automatic inline code completion off by default #15333
  • [ai] use camelCase in React SVG #15367
  • [ai] add shortcut for adding the current file to the AI chat context #15252
  • [ai] add variable completion for {{}} syntax in prompttemplate #15026
  • [console] fix: add missing editor dependency to console #15354
  • [core] do not re-export the configuration folder as env variable #15376
  • [core] fix resolve from root #15331
  • [core] fixed node-abi version to 3.x due to Node.js 22+ requirement in 4.x #15212
  • [core] hide overflow in view container headers #15321 - Contributed on behalf of STMicroelectronics
  • [core] limit the width of tab-bar rows to 100% of parent #15260 - Contributed on behalf of STMicroelectronics
  • [core] made icons right-aligned #15373 - Contributed on behalf of STMicroelectronics
  • [core] relayout dock panel when breadcrumbs become active #15342 - Contributed on behalf of STMicroelectronics
  • [core] set z-index of hovers to 1000 #15172
  • [core] sync theia dark/light theme with electron nativeTheme setting #15037 - Contributed by MVTec Software GmbH
  • [core] use fixed version 1.5.5 of perfect-scrollbar #15279 - Contributed on behalf of STMicroelectronics
  • [debug] expand local variables by default #15017 - Contributed by MVTec Software GmbH
  • [debug] fix: clipping issue in debug hover (#15086) #15154
  • [debug] fix: store original handle of debug adapter config #15149
  • [debug] improve displaying inline frame decorator #15097 - Contributed by MVTec Software GmbH
  • [dev] chore: use shared packages in src-gen #15185 - Contributed on behalf of STMicroelectronics
  • [dev] improve error handling on optional dependencies #14943
  • [filesystem] don't stop watching folder because of dropped events. #15111 - Contributed on behalf of STMicroelectronics
  • [memory-inspector] style: inputselect of memory inspector ui enhanced #15032
  • [monaco] dispose of child instantiation services in MonacoEditor #15246
  • [monaco] ensure valid editor constructed before attempting to use editor services #15238
  • [monaco] ensure word-wrap respected when diff editors side by side #15161
  • [monaco] handle visibility changes for diff editors #15189
  • [monaco] set selection upon editor navigation only after editor is fully visible #15302 - Contributed on behalf of STMicroelectronics
  • [monaco] show context menu for editor minimap #15220
  • [monaco] workspace Symbols: pass multiple classnames as array of strings #15244
  • [notebook] fix: ensure NOTEBOOK_CELL_TYPE context key is set during initialization #15182
  • [playwright] don't open context menu on Playwright explorer selection #15143
  • [playwright] suggestion to fix missing lib folder in playwright package #15122
  • [plugin] improve plugin package localization #15142
  • [plugin] prevent plugin localization errors #15268
  • [plugin] support "Save As" for custom editors #14972
  • [preferences] ensure correct node expansion with short trailing sections #15005
  • [preferences] explicitely set scrolling element to avoid document scroll #15315
  • [preferences] fix issue where minimums of 0 for number preferences are ignored #15230
  • [output] fix: manage channel addition without show usage #15101 - Contributed by STMicroelectronics
  • [search] fix SiW height mismatch #15287
  • [terminal] add commandsToSkipShell preference for plugin support #15099
  • [vscode] bump VS Code API version to 1.98.2 #15341 - Contributed on behalf of STMicroelectronics
  • [vscode] make DiagnosticCollection iterable #15361 - Contributed on behalf of STMicroelectronics
  • [vscode] remove duplicate declaration for DocumentDropEdit #15126 - Contributed on behalf of STMicroelectronics
  • [vscode] rename AuthenticationForceNewSessionOptions #15264 - Contributed on behalf of STMicroelectronics
  • [vscode] selection properties are now readonly #15141 - Contributed on behalf of STMicroelectronics
  • [vscode] support keepWhitespace in SnippetTextEdit and insertSnippet #15176 - Contributed on behalf of STMicroelectronics
  • [vscode] support SourceControlResourceGroup optional contextValue #15219 - Contributed on behalf of STMicroelectronics
  • [vscode] support command workbench.extensions.command.installFromVSIX #15179 - Contributed on behalf of STMicroelectronics

Breaking Changes:

  • [core] fixed version @types/express to ^4.17.21 and @types/express-serve-static-core to 5.0.4. This might be required for adopters as well if they run into typing issues. #15147
  • [core] migration from deprecated phosphorJs to actively maintained fork Lumino #14320 - Contributed on behalf of STMicroelectronics Adopters importing @phosphor packages now need to import from @lumino. CSS selectors refering to .p- classes now need to refer to .lm- classes. There are also minor code adaptations, for example now using iconClass instead of icon in Lumino commands.
  • [core] Refactor menu nodes #14676 - Contributed on behalf of STMicroelectronics

Breaking Changes:

  • [ai-chat] ParsedChatRequest.variables is now ResolvedAIVariable[] instead of a Map<string, AIVariable> #15196
  • [ai-chat] ChatRequestParser.parseChatRequest is now asynchronous and expects an additional ChatContext parameter #15196

1.59.0 - 02/27/2025

  • [ai] added claude sonnet 3.7 to default models #15023
  • [ai] added contextsummary variable to ai system #14971
  • [ai] aligned ai chat toggle keybinding with vs code on macos #14850
  • [ai] allowed multiple replacements in coder function #14934
  • [ai] allowed to close chats again #14992
  • [ai] chore: used fileservice.exist instead of trying to read the file #14849
  • [ai] chore(chat): moved chat window to the right by default #14970
  • [ai] consolidated the variables we provided in the chat #15021
  • [ai] corrected description in workspace agent functions #14898
  • [ai] correctly set the systempromptid in custom agents #14988
  • [ai] feat(ai): enabled context variables for chat requests #14787
  • [ai] fixed autocompletion for functions in chat input #14838
  • [ai] fixed: provided open handler for quick file open #15003
  • [ai] fixed(chat): avoided file suggestions on colons #14965
  • [ai] fixed(chat): improved variable autocompletion #15018
  • [ai] fixed(chat): prevented duplicate context element entries #14979
  • [ai] fixed(chat): prevented focus outline color of ai chat #15020
  • [ai] fixed closing changesets #14994
  • [ai] fixed structured output dispatch and settings #14811
  • [ai] fixed tool call prompt text replacement #14830
  • [ai] fixed tool calling string in messages #14906
  • [ai] fixed: quick input hover initialization #15064
  • [ai] instructed coder to use replace when search and replace failed #15061
  • [ai] implemented asynch iterator for open ai stream #14920
  • [ai] improved integration between variableregistry and ai variableservice #14827
  • [ai] introduced ai-ide package and moved ai configuration view #14948
  • [ai] labeled ai as alpha #14968
  • [ai] localized theia ai strings #14857
  • [ai] made dependency on monaco explicit #14907
  • [ai] made universal default prompt plain #15007
  • [ai] made new code completion prompt default and turned on inline by default #14822
  • [ai] pinned chat agent #14716
  • [ai] refined coder prompt #14887
  • [ai] refined search-replace prompt default of coder and made it default #14870
  • [ai] refined system message settings #14877
  • [ai] refactored chat agents into separate ide package #14852
  • [ai] removed aieditormanager #14912
  • [ai] renamed workspace agent to architect #14963
  • [ai] set o1 to stream by default #14947
  • [ai] streamlined the agent code #14859
  • [ai] supported anyof in function parameters #15012
  • [ai] updated chatmodel naming #14913
  • [ai] updated default openai models #14808
  • [ai] used content from monacoworkspaceservice for ai getfilecontent #14885
  • [application-manager] used default import of fix-path package #14812
  • [ci] fixed next build #14981
  • [console] fixed: console text model used the language id #14854
  • [core] added commands to toggle left and right panel #15041
  • [core] fixed: removed files in editor tab when deleted #14990
  • [core] fixed problems related with menu bar updates on focus change #14959 - Contributed on behalf of STMicroelectronics
  • [core] made context element mandatory when showing a context menu #14982 - Contributed on behalf of STMicroelectronics
  • [core] only sent visibility change notification when the visibility actually changed #15040 - Contributed by STMicroelectronics
  • [core] streamlined logging api #14861
  • [core] supported manual override of text blocks #14712
  • [debug] fixed: handled the breakpoint update event for id:0 #14866
  • [debug] fixed: no watch evaluation if no current stack frame #14874
  • [debug] fixed: warned user before starting the same debug session multiple times #14862
  • [debug] handled the case where the editor model was set to null #15013 - Contributed on behalf of STMicroelectronics
  • [dev-container] devcontainer: added ability to use localenv for containerenv property #14821
  • [dev-container] devcontainer: added simple containerenv contribution #14816
  • [dev-container] fixed recent workspace tracking for devcontainer workspaces #14925
  • [dev-packages] fixed webpack watching #14844
  • [doc] updated build command in publishing.md #14798
  • [doc] updated mcp readme with autostart option #15046
  • [filesystem] deprioritized file resource resolver to avoid resolution delays #14917
  • [monaco] chore: updated vscode-oniguruma+vscode-textmate #14848
  • [monaco] did not create a model reference for inline editors #14942 - Contributed on behalf of STMicroelectronics
  • [monaco] emptied hidden editors #14909 - Contributed on behalf of STMicroelectronics
  • [monaco] fixed: contenthoverwidget respected theia styles #14836
  • [monaco] fixed monaco editor localization #15016
  • [monaco] fixed monaco model reference creation #14957
  • [notebook] added an error for when a notebook editor was opened with a non existing file #14891
  • [notebook] fixed new notebook cell editor outline and width with open right sidebar #14800
  • [notebook] fixed notebook widget disposal #14964
  • [plugin] added missing vs code json schemas #14864
  • [plugin] passed code action provider metadata to editor #14991 - Contributed on behalf of STMicroelectronics
  • [plugin] refreshed root when change notification had no items #14868
  • [plugin] sent plugin logs to the frontend #14908
  • [plugin] supported snippet file edits #15066
  • [scm] used diffeditor diffnavigator to navigate diffs #14889
  • [terminal] fixed: exited shell process on terminal close #14823
  • [vscode] bumped vs code api version #15069 - Contributed on behalf of STMicroelectronics
  • [vscode] introduced the commentingrange type #15015 - Contributed on behalf of STMicroelectronics
  • [vscode] made public the documentpaste proposed api #14953 - Contributed on behalf of STMicroelectronics
  • [vscode] shellexecution updated with undefined command #15047 - Contributed on behalf of STMicroelectronics

Breaking Changes:

  • [ai] refined system message settings #14877
  • [ai-chat] changed chat api by removing chatsetchangedeleteevent, updating changeset interface with added ondidchange event and dispose method (renamed accept to apply and discard to revert), modified changesetelement and changesetimpl accordingly #14910
  • [ai-chat] abstractchatagent updated getsystemmessagedescription to require a context parameter #14930
  • [ai-core] chatmodel interface was updated to include context and promptservice was updated with an optional context argument in getprompt #14930
  • [ai-ide] content-replacer.ts moved from ai-ide/src/browser/ to core/src/common/ #14930
  • [ai-scanoss] scanossdialog constructor accepted an array of results instead of a single result #14930
  • [core] a context html element became mandatory when showing a context menu #14982 - Contributed on behalf of STMicroelectronics
  • [core] adjusted binding of named ilogger injections and instructed removal of duplicate ilogger bindings on ambiguous match errors
  • [core] streamlined logging api #14861
  • [core] made context element mandatory when showing a context menu #14982 - Contributed on behalf of STMicroelectronics
  • [debug] fixed: handled the breakpoint update event for id:0 #14866

1.58.0 - 01/30/2025

  • [ai] added 'required' property to tool call parameters #14673
  • [ai] added change set support in chat input and chat model #14750
  • [ai] added logic to allow passing context to tool calls #14751
  • [ai] added logic to allow to auto-start MCP servers on frontend start-up #14736
  • [ai] added logic to override change elements on additional changes #14792
  • [ai] added Ollama LLM provider tools support #14623
  • [ai] added search and replace function to coder #14774
  • [ai] added support for Azure OpenAI #14722
  • [ai] added support for change sets via tool functions #14715
  • [ai] added tool support for anthropic streaming #14758
  • [ai] changed trigger of inline suggestion keybinding to Ctrl+Alt+Space #14669
  • [ai] improved behavior of AI Changeset diff editor #14786 - Contributed on behalf of STMicroelectronics
  • [ai] improved cancel logic in openAi model #14713
  • [ai] improved cancellation token handling in chat model #14644
  • [ai] improved performance in AI request logging #14769
  • [ai] updated logic to allow filerting backticks in AI code completion #14777
  • [ai] updated logic to consistently handle OpenAI models not supporting system messages instead of using dedicated O1 chat agent #14681
  • [ai] updated logic to manage AI bindings separately per connection #14760
  • [ai] updated logic to not let ai chat submit empty messages #14771
  • [ai] updated logic to register tool functions of mcp servers again after restart of the frontend #14723
  • [ai] updated logic to show diff on click in ChangeSets #14784
  • [application-manager] fixed error caused by bundling scanoss #14650
  • [application-manager] improved bundling for hoisted dependencies #14708
  • [console] fixed console scrolling #14748
  • [core] added support for dragging files in browser #14756
  • [core] fixed dragging file from outside the workspace #14746
  • [core] fixed override of default key bindings #14668
  • [core] fixed workbench.action.files.newUntitledFile command #14754
  • [core] fixed z-index overlay issue in dock panels #14695
  • [core] updated build scripts to use npm instead of yarn to build Theia #14481 - Contributed on behalf of STMicroelectronics
  • [core] updated keytar and drivelist #14306
  • [core] updated logic to prevent tabbing outside of dialog overlay #14647
  • [debug] added jump to cursor option to context menu #14594 - Contributed by MVTec Software GmbH
  • [debug] fixed updating breakpoints when debugging starts #14645 - Contributed by MVTec Software GmbH
  • [dev-container] updated logic to show more dev container info in title bar #14571
  • [electron] bumped fix-path to ^4.0.0 to avoid cross-env <6.0.6 #14781 - Contributed on behalf of STMicroelectronics
  • [filesystem] added support for vscode file system provider scheme #14778
  • [filesystem] fixed error handling in OPFSFileSystemProvider #14790
  • [filesystem] fixed file data streaming for http polling #14659
  • [getting-started] updated labels to mark DevContainers in recent workspaces #14595
  • [git] added deprecation warning to theia/git readme #14646
  • [monaco] updated monaco-editor-core to 1.96.3 #14737 - Contributed on behalf of STMicroelectronics
  • [notebook] fixed execute cell and below for last cell #14795
  • [notebook] fixed issue with deleted cells when talking to output webview #14649
  • [notebook] fixed race condition for outputs #14789
  • [plugin] added support for property Text in DocumentDropOrPasteEditKind #14605 - Contributed on behalf of STMicroelectronics
  • [plugin] stubbed TerminalCompletionProvider proposed API #14719 - Contributed on behalf of STMicroelectronics
  • [plugin] updated code to properly mark chat and language model APIs as stubbed #14734 - Contributed on behalf of STMicroelectronics
  • [plugin] updated code to provide node-pty package for plugins #14720
  • [plugin] updated logic to include ignored files in vscode.workspace.findFiles #14365
  • [plugin] updated logic to only call refresh on given elements given by plugin #14697 - Contributed on behalf of STMicroelectronics
  • [process] updated node-pty to 1.1.0-beta27 #14677 - Contributed on behalf of STMicroelectronics
  • [scanoss] fixed scanoss error on Windows #14653
  • [secondary-window] improved README of secondary window package #14691 - Contributed on behalf of STMicroelectronics
  • [task] added task related context keys #14757
  • [vsx-registry] added logic to load plugin readme from file system #14699