Fix code issues automatically with DeepCode AI Fix Suggestions

Fix the source code's security issues and quality flaws through an automated flow. DeepCode AI Fix Suggestions calculates the most suitable solution for your issues and applies it automatically.

Why use Fix Suggestions

Fix Suggestions combines the power of a thorough program analysis engine with the abilities of an in-house deep learning-based large language model. This merger allows for compiling large amounts of unstructured language information from open source code.

Two key features set Fix Suggestions apart. Firstly, it has a neural network trained on millions of lines of code, allowing for greater versatility and creativity. Secondly, the Snyk Code engine rigorously checks the network's suggestions, ensuring all automated fixes are small and targeted to each vulnerability or code issue.

What issues can you fix automatically

You can address various issues detected by the Snyk Code engine, both in terms of quality, promoting best code practices, and security vulnerabilities. DeepCode AI Fix currently does not support inter-file fixes.

How Fix Suggestions works

A representation of information flow involved in fixing one issue is presented in the table below.

Stage
Subsystem
Details

Code scan and discovery of issues

Static Code Analysis Engine

Corresponds to a normal flow of scanning the code from IDE.

Code preprocessing and minimization w.r.t. the data flow of the particular issue I\mathcal{I}

Static Code Analysis Engine

Data flow of I\mathcal{I} is analyzed and code is minimized, keeping the relevant context only.

Generating kk candidate fixes for the given issue I\mathcal{I}

Neural Network (Generative LLM)

Here, kk is an implementation parameter.

Candidate fixes ranking and self-assessment

Static Code Analysis Engine

Each of the k k fixes is assessed by the Code Engine, filtering out those rendering invalid code or failing to fix the issue (issue persists).

Returning the best candidate fix

The system has finished.

Requirements

  • Snyk Security - Code, Open Source Dependencies, IaC Configurations IDE Plugin. Available for IDE plugins that use Language Server, such as VS Code and Eclipse.

  • Available in the USA Multi-Tenant region (see available regions).

Language support

Fix Suggestions supports only Javascript.

Enable DeepCode AI Fix Suggestions

Enable DeepCode AI Fix Suggestions for your Organization in Snyk Web UI by navigating to Settings > Snyk Preview.

Enabling Snyk Code Fix Suggestions in Snyk Preview.
DeepCodeAI Fix Suggestions settings in Snyk Preview

Example: Fix code issue automatically

Consider the following scenario where hardcoded credentials are fixed using DeepCode AI Fix Suggestions.

Snyk highlights hardcoded credentials as a vulnerability by adding a Fix this issue element in the IDE.

Discovering a vulnerability in the code.
Discovering a vulnerability in the code

The issue is fixed by replacing the credentials with environment variables.

Fix applied with Snyk Code Fix.
Fix applied with DeepCode AI Fix

You can follow through the entire sequence in this short (12-second) video.

Fix hardcoded credentials with Snyk Code Fix.
Fix hardcoded credentials with DeepCode AI Fix

What data does DeepCode AI Fix Suggestions collect

The Large Language Model (LLM) is trained exclusively on public repositories with permissive licenses. If a repository's license changes after the initial scrape, it is immediately excluded from the training data. During the inference, DeepCode AI Fix Suggestions does not collect or send the client data to third parties.

The data collection process is thorough and includes the following:

  • Static analysis

  • Automated assessment of the suggested fix qualities

  • Partial in-house labeling by humans

The training data is ensured to be of the highest quality to optimize the performance of the LLM.

🔗See How Snyk handles your data.

Last updated

Was this helpful?

#4707: More info: Update pricing plans page

Change request updated