Aqua 2024.2 Help

Use AI prompts to explain and refactor your code

Use pre-written prompts to explain code, refactor, and find problems in your code. Aqua provides project-specific context, such as the languages and technologies used in your project.

You can also define your own custom prompts and add them to the AI Actions menu.

Explain code

  1. Select a code fragment and right-click it to open the context menu.

    Alternatively, select a code fragment and press Alt+Enter.

  2. Select AI Actions and then Explain Code.

    AI Assistant actions - Explain Code

    The AI Assistant tool window will open to provide you with an explanation.

    Aqua AI Assistant explains code

    Click Attached elements to see the list of files that provided the necessary context for generating the answer.

    Attached files that were analyzed to generate the answer

Explain regex, cron expressions, and SQL queries

AI Assistant can explain regular expressions, SQL queries, cron expressions, and other injected fragments.

  1. Select a code fragment and right-click it to open the context menu.

    Alternatively, select a code fragment and press Alt+Enter.

  2. Select AI actions and then Explain code.

    AI Assistant will analyze and explain the fragment.

    Aqua: Regex explained with follow up questions

Suggest refactoring

  1. Select a code fragment and right-click it to open the context menu.

    Alternatively, select a code fragment and press Alt+Enter.

  2. Select AI Actions and then Suggest Refactoring.

    The AI chat will open to offer you refactoring suggestions.

    Aqua: AI Assistant suggests refactoring
  3. In the field with the refactored code, click Show Diff to open the diff viewer. To skip the diff viewing step, expand the list next to Show Diff and select Apply Immediately.

    In the diff viewer, use Unified or Two-Side view to review the suggested changes.

    Diff tab with refactored code
  4. If you like the result, click Accept in the gutter to move the selected AI-generated code snippets to the source file, or click Accept all to fully replace the originally selected code fragment. Otherwise, close the diff viewer to skip the suggested refactoring.

Find problems

  1. Select a code fragment and right-click it to open the context menu.

    Alternatively, select a code fragment and press Alt+Enter.

  2. Select AI Actions and then Find Problems.

    The AI chat will open to show the potential issues you may want to look into.

Explain runtime error

For runtime errors shown in the console, Aqua shows inlay hints, allowing you to get AI explanations for those errors.

  1. Click Explain with AI in the console.

    Explain with AI option in console

    The AI Assistant tool window will open to give you an explanation of the error and suggest a fix.

  2. If you want to use the suggested fix, click Insert Snippet at Caret in the field with the refactored code to put the AI-generated code into the editor.

Add your own prompts to prompts library

You can add your own prompts to the prompts library and use them via the AI Actions menu.

  1. Do one of the following:

    • Right-click anywhere in the editor to open the context menu, then go to AI Actions | Edit User Prompts.

    • Press Alt+Enter, select AI Actions, and click Add your prompts.

    • Press Ctrl+Alt+S to open settings and then select Tools | AI Assistant | Prompt Library.

  2. Click to create a new prompt.

    Aqua: User prompts library settings
  3. In the text field, write the prompt.

    If needed, click the $SELECTION variable to add a Markdown-formatted code block with current code selection and language name to the new prompt.

  4. Edit the new prompt name.

    Select the first checkbox if you want AI Assistant to wait for you to make additional input in the chat after invoking the prompt.

    Keep the second checkbox if you want your new prompt to be listed in the AI Actions menu.

    Aqua: Custom prompt parameters
  5. Click Apply.

Once you create a prompt, you can edit or delete it at any time.

You can also select a prompt from the list and move it up or down to change the order in which the prompts are displayed.

Last modified: 11 October 2024