Migration Toolkit for Applications 7.3

MTA Developer Lightspeed Guide

Using the Migration Toolkit for Applications Developer Lightspeed to modernize your applications

Red Hat Customer Content Services

Abstract

you can use Migration Toolkit for Applications (MTA) Developer Lightspeed for application modernization in your organization by running Artificial Intelligence-driven static code analysis for Java applications.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. We are beginning with these four terms: master, slave, blacklist, and whitelist. Because of the enormity of this endeavor, these changes will be implemented gradually over several upcoming releases. For more details, see our CTO Chris Wright’s message.

Chapter 1. Running an analysis and resolving issues

After you complete the configurations, the next step is running an analysis to identify the issues in the code and generate suggestions to address the issues. You can run an analysis by using MTA with Developer Lightspeed in the solution server mode or in the agent mode.

When you run an analysis using either mode, MTA with Developer Lightspeed automatically performs the following tasks:

  • Displays issues in all the files in your project in the Issues pane.
  • While generating suggestions to resolve issues, you can view the migration hints that explain the resolution and in which files the updates are applied.
  • Generates new files in Resolutions pane. These files have the updates to the code that resolves the issues detected in the current analysis. You can review the changes, apply, or revert the updates.

If you apply all the resolutions, MTA with Developer Lightspeed applies the changes and triggers another analysis to check if there are more issues.

1.1. Running an analysis by using solution server

Solution server uses Retrieval Augmented Generation (RAG) to generate a resolution based on a context. Solution server derives the context from rules and past changes to similar issues in the codebase of your organization and generates a prompt for your large language model (LLM). The LLM generates migration hints for the issues that it detects based on the contextual prompt.

An analysis completed by the solution server identifies the issues in the code. It displays the success metrics for incidents and issues. Success metrics indicate the confidence level in applying the code fix based on how many times the update was applied in past analysis.

Prerequisites

  • You installed the MTA distribution version 8.0.0 in your system.
  • You installed Jave 17+ and Maven 3.9.9+ in your system.
  • You installed the Migration Toolkit for Applications (MTA) extension version 8.0.0 in VS Code.
  • You installed the latest version of Language Support for Java™ by Red Hat extension in Visual Studio (VS) Code.
  • You opened a Java project in your VS Code workspace.
  • You configured an analysis profile on the Konveyor Analysis View page.

Procedure

  1. Verify that solution server is enabled in one of the following ways:

    1. Type Ctrl + Shift + P in VS Code search (Linux/Windows system) and Cmd + Shift + P for Mac to go to the command palette.
    2. Enter Preferences: Open User Settings (JSON) to open the settings.json file.
    3. Ensure that konveyor.solutionServer.enabled is set to true.

      OR

    4. Go to Extensions > MTA with Developer Lightspeed > settings
    5. Click the Solution Server:Enabled option to enable the server.
  2. Click the MTA with Developer Lightspeed extension and click Open Konveyor Analysis View.
  3. Select a profile for the analysis.
  4. Click Start to start the MTA RPC server.
  5. Click Run Analysis on the Konveyor Analysis View page.

To resolve the identified issues, see Applying resolutions after a solution server analysis.

1.2. Applying resolutions after a solution server analysis

When you use MTA with Developer Lightspeed to find a solution for the issues in your code, you first get a migration hint about what needs to be fixed to resolve the issues and the corresponding updates to your code in newly generated files. You can review the changes to the code in the new files and apply the resolutions.

MTA with Developer Lightspeed then triggers another round of analysis to check if more issues must be fixed in the code.

Prerequisites

  • You installed the MTA distribution version 8.0.0 in your system.
  • You installed Jave 17+ and Maven 3.9.9+ in your system.
  • You installed the Migration Toolkit for Applications (MTA) extension version 8.0.0 in VS Code.
  • You installed the latest version of Language Support for Java™ by Red Hat extension in Visual Studio (VS) Code.
  • You opened a Java project in your VS Code workspace.
  • You configured a profile on the Konveyor Analysis View page and ran an analysis.

Procedure

  1. Review the issues from the Analysis results space of the Konveyor view analysis page by the following tabs:

    1. All: lists all incidents identified in your project.
    2. Files: lists all the files in your project for which the analysis identified issues that must be resolved.
    3. Issues: lists all issues across different files in your project.
  2. Use the Category drop down to filter issues based on the how crucial the fix is for the target migration. You can filter mandatory, potential, and optional issues.
  3. Click Has Success Rate to check how many times the same issue resolution was accepted in previous analysis.
  4. Click the solution tool to trigger automated updates to your code. If you applied any category filter, code updates are made for all incidents, specific files, or specific issues based on the filter. MTA with Developer Lightspeed generates new files with the updated code.
  5. Review and (optionally) edit the code update in a diff or a merge view.
  6. Click Apply all in the Resolutions pane to permanently apply the changes to your code.

1.3. Running an analysis in agent mode

In the agent mode, MTA with Developer Lightspeed planning agent creates the context about an issue and picks a sub agent that is most suited to resolve the issue. The sub agent runs an automated analysis to detect issues and generate files with the updated resolutions in one stream.

You can review the updated files and approve or reject the changes to the code. The agent runs another automated analysis to detect new issues in the code or diagnostic issues that your tool may generate following a previous analysis. If you allow the process to continue, MTA with Developer Lightspeed runs the stream again and generates a new files with the latest updates.

When using the agent mode, you can reject the changes or discontinue the stream but cannot edit the updated files during the stream.

Prerequisites

  • You installed the MTA distribution version 8.0.0 in your system.
  • You installed Jave 17+ and Maven 3.9.9+ in your system.
  • You installed the Migration Toolkit for Applications (MTA) extension version 8.0.0 in VS Code.
  • You installed the latest version of Language Support for Java™ by Red Hat extension in Visual Studio (VS) Code.
  • You opened a Java project in your VS Code workspace.
  • You configured an analysis profile on the Konveyor Analysis View page.

Procedure

  1. Verify that agent mode is enabled in one of the following ways:

    1. Type Ctrl + Shift + P in VS Code search (Linux/Windows system) and Cmd + Shift + P for Mac to go to the command palette.
    2. Enter Preferences: Open User Settings (JSON) to open the settings.json file.
    3. Ensure that konveyor.kai.agentMode is set to true.

      OR

    4. Go to Extensions > MTA with Developer Lightspeed > settings
    5. Click the Agent Mode option to enable the server.
  2. Click the MTA with Developer Lightspeed extension and click Open Konveyor Analysis View.
  3. Select a profile for the analysis.
  4. Click Start to start the MTA RPC server.
  5. Click Run Analysis on the Konveyor Analysis View page. The Resolution Details tab opens where you can view the automated analysis that makes changes in applicable files.
  6. Click Review Changes option to open the editor that shows the diff view of the modified file.
  7. Review the changes and click Apply to update the file with all the changes or Reject to reject all changes. If you applied the changes, then MTA with Developer Lightspeed creates the updated file with code changes.
  8. Open Source Control to access the updated file.
  9. In the Resolution Details view, accept the proposal from MTA with Developer Lightspeed to make further changes. The stream of analysis repeats after which you can review and accept change. MTA with Developer Lightspeed creates the file with the code changes and the stream continues until you reject the proposal for further analysis.

Legal Notice

Copyright © 2025 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.