- Amazon Q Business - Workflow
- Amazon Q Business - Key Concepts
- Amazon Q Business - Subscription Tiers & Index Types
- Amazon Q Business - Service Quotas
- Amazon Q Business - Document Attributes
- Amazon Q Business - Setup
- Amazon Q Business - Identity Center Directory
- Amazon Q Business - Identity Center Integrated Application
- Amazon Q Business - Identity Federation Application
- Amazon Q Business - Data Sources Connectors
- Amazon Q Business - Enhance Application
- Amazon Q Business - Features
- Amazon Q Business - Security
- Amazon Q Business - Monitoring
- Amazon Q Business API Reference
- Amazon Q Business - API Overview
- Amazon Q Business - API References
- Amazon Q Business - Supported Actions
- Amazon Q Business - Supported Data Types
- Amazon Q Business - Common Parameters
- Amazon Q Business - Common Errors
- Amazon Q Developer User Guide
- Amazon Q Developer - Introduction
- Amazon Q Developer - Getting Started
- Amazon Q Developer - On AWS
- Amazon Q Developer - In IDE
- Amazon Q Developer - Command Line
- Amazon Q Developer - Customization
- Amazon Q Developer - Security
- Amazon Q Developer - Monitoring
- Amazon Q Developer - Supported Region & Service Rename
- Amazon Q Developer - Document History
Amazon Q Developer - In IDE
You can use Amazon Q Developer in IDEs to learn about AWS and get development assistance. It provides guidance and support in areas such as answering AWS development questions, generating and updating code, security scanning, and optimizing code.
Supported IDEs and Available Features
The following table describes the IDEs supported by Amazon Q and the availability and limitations of features in each IDE.
| IDE | Supported features |
|---|---|
| JetBrains IDEs | Chat Workspace context in chat Inline suggestions Agent for code transformation Agent for software development Security scanning Customizations |
| Visual Studio Code | Chat Workspace context in chat Inline suggestions Agent for code transformation Agent for software development Security scanning Customizations |
| Visual Studio | Chat Inline suggestions : C, C++, and C# Security scanning : C# |
| AWS coding environments | Inline suggestions |
Installing Amazon Q
To set up Amazon Q Developer in your integrated development environment (IDE), complete the following steps
Download Amazon Q
To get started, download the Amazon Q extension or plugin for your IDE:
- Download Amazon Q in Visual Studio Code
- Download Amazon Q in JetBrains IDEs
- Download Amazon Q in the AWS Toolkit for Visual Studio
Sign In Amazon Q
To sign in and authenticate, complete the following steps:
- Prerequisite: Choose a supported version of your IDE
- Authenticating in JetBrains IDEs
- Authenticating in Visual Studio Code
- Authenticating in Visual Studio
- Authenticate with IAM Principal
- Understanding AWS coding environments
Prerequisite
Amazon Q is available in Visual Studio Code as an extension, JetBrains as a plugin, and the AWS Toolkit for Visual Studio.
- The minimum version of Visual Studio Code supported by Amazon Q is 1.85.0.
- The minimum version of JetBrains IDEs supported by Amazon Q is 232.1. JetBrains versions 232, 233 and 241 are also supported.
- Only Visual Studio for Windows is supported by Amazon Q. The minimum version of Visual Studio supported is Visual Studio 2022 version 17.7. All Visual Studio 2022 editions are supported.
Authenticating In JetBrains IDEs
To authenticate Amazon Q Developer in JetBrains IDEs follow the steps mentioned below:
- Install the Amazon Q IDE plugin in your JetBrains IDE.
- Choose the Amazon Q icon in your IDE.
- Follow the instructions in your browser to authenticate with Builder ID.
- To begin using Amazon Q, choose the Amazon Q icon to chat with Amazon Q, or choose Amazon Q from the navigation bar at the bottom of your IDE.
Authenticating In VS Code
To authenticate Amazon Q Developer in VS Code follow the steps mentioned below:
- Install the Amazon Q IDE extension in VS Code.
- Choose the Amazon Q icon in your IDE.
- Follow the instructions in your browser to authenticate with Builder ID.
- To begin using Amazon Q, choose the Amazon Q icon to chat with Amazon Q, or choose Amazon Q from the navigation bar at the bottom of your IDE.
Authenticating In Visual Studio
To authenticate Amazon Q Developer in VS Code follow the steps mentioned below:
- Select the Amazon Q Developer radial in the Getting Started with AWS Toolkit connection UI to access authentication options.
- Click 'Sign up' or 'Sign in' in the 'I'm using Amazon Q Developer on my own' section to open the Log in with AWS Builder ID dialog.
- Choose the Proceed to Browser button to open the AWS Authorize request site in your default web browser.
- Follow the prompts in your web browser. You'll be notified when authorization is complete, then you can close the browser and return to Visual Studio.
Authenticate with IAM Principal
You can't use IAM credentials or roles to authenticate with Amazon Q Developer in the IDE. Instead, use credentials from IAM Identity Center or Builder ID.
Understanding AWS Coding Environments
To get the most out of Amazon Q Developer, subscribe to Pro and use it through the extension in Visual Studio, Visual Studio Code or the plugin in JetBrains.
Chatting about code
Start chatting with Amazon Q in your IDE by clicking the icon in JetBrains/VS Code or going to View > Amazon Q chat in Visual Studio. Then, enter your question. Amazon Q uses the current open file as context, including language and file path.
Chat commands
You can enter the following commands in the chat panel to access Amazon Q features, depending on your IDE.
- /transform: Use this command to update the code language version of an entire project.
- /dev: Use this command to get an implementation plan to develop a feature with Amazon Q
- /clear: Use this command to clear a current conversation.
- /help: Use this command to see an overview of what Amazon Q can and can't do, example questions, and quick commands.
Generating Inline Suggestions
Amazon Q provides real-time code recommendations as you write. It generates suggestions based on your existing code and comments, ranging from single line comments to fully formed functions. Simply start writing code, and Amazon Q will begin making suggestions based on your current and previous inputs.
Transforming your code
The Amazon Q Developer Agent upgrades your code language version in place, transforming modules in JetBrains and projects/workspaces in Visual Studio Code.
Step 1: Prerequisites
Make sure that the following prerequisites are met before you begin a Code Transformation job:
- Your project is a Java 8 or Java 11 project built on Maven.
- Your project successfully builds with Maven in your IDE. Amazon Q Developer Agent for code transformation supports Maven 3.8 or later.
- Your project source JDK is available locally and is the version of your source code.
- Your project builds in 55 minutes or less.
- Your project is configured correctly, and the correct JDK version is specified.
- Note that Amazon Q code transformation won't work if your project needs access to private network resources, such as a VPC or on-premise network.
- Your project doesn't use plugins that package languages other than Java in your Java project.
- Your local network allows uploads to Amazon S3 buckets that Amazon Q uses to transform your code.
- Your minimum compiler version for the maven-compiler-plugin is v13.13.0.
Step 2: Configure your project
To configure your project, use the following information for the IDE you're using.
In JetBrains: To configure your project in JetBrains, you might need to specify the following project and module settings.
- Project SDK: The JDK used to compile your project.
- Project language level: The Java version used in your project.
- Module SDK: The JDK used to compile your module.
- Module language level: The Java version used in your module.
- Maven Runner JRE: The JDK you build your module with.
IN VS Code: To configure your project in VS Code, your project must contain the following:
- A pom.xml file in the project root folder
- A .java file in the project directory
Step 3: Transform your code
Upgrade your code project or module in the following steps:
- Open the module and ensure a successful build.
- Click the Amazon Q logo and enter /transform in the chat panel.
- Choose the project to upgrade and click Transform.
- View progress on the Transformation details tab.
- Verify the upgraded code and view the diff.
- Accept changes by selecting updated files and clicking OK.
- View the transformation summary for details and next steps."
Developing software
Get started with the Agent for software development by opening a new or existing project and entering /dev in the Amazon Q chat panel. This opens a new chat tab where you can interact with the Agent to generate new code for your feature.
To work on a task with the Agent for software development in your IDE, complete the following steps.
- In your IDE, open a new or existing project or workspace where you want to develop features.
- Choose the Amazon Q icon to open the Amazon Q chat panel.
- Get code generated by Amazon Q by entering /dev in the chat panel, followed by a task description or issue to resolve. You can provide a brief overview or add more details, and Amazon Q will generate code based on your description and project code.
- A new tab opens. If you haven't already, enter a description of your task or issue.
- Amazon Q generates code for your task, providing a summary of the steps it's taking and the files it's using or updating. This process typically takes a few minutes.
- After Amazon Q generates code, it provides a list of files with proposed changes. Choose a file to view a file diff with the changes.
- To accept the changes and update your code, choose Insert code.
- After you've updated your code, Amazon Q prompts you to start working on a new task.
Scanning your code
Amazon Q helps improve code security and quality by scanning your codebase for vulnerabilities and issues. You can initiate a full scan or enable auto scans to detect issues as you code. When Amazon Q finds a problem, it provides a description and recommended fix, and sometimes even applies an automatic fix to update your code files.
Types of scans
The following are the types of security and quality issues Amazon Q detects.
- Code security scanning: Amazon Q Developer provides a range of security features to help improve the security and quality of your code. These features include code scanning for security vulnerabilities and quality issues, static application security testing (SAST), secrets detection, and code upgrades and recommendations. Additionally , Amazon Q Developer also scans infrastructure as code (IaC) for security vulnerabilities and policy violations.
- Code quality scanning: Amazon Q helps improve code quality by detecting issues that affect maintainability and efficiency. It generates findings on various quality issues, including performance, machine learning rules, and AWS best practices, to ensure your codebase meets quality and efficiency standards.
Supported languages
Amazon Q Developer provides support for a wide range of programming languages across its various features and capabilities.
Inline Suggestions Supported Languages
In terms of the quality of the training data, the programming languages with the most support are:
- Java
- Python
- JavaScript
- TypeScript
- C#
- Go
- PHP
- Rust
- Kotlin
- SQL
- C++
- C
The Infrastructure as Code (IaC) languages with the most support are:
- JSON (AWS CloudFormation)
- YAML (AWS CloudFormation)
- HCL (Terraform)
- CDK (Typescript, Python)
Amazon Q also supports code generation for:
- Ruby
- Shell
- Scala
Cose Transformation Supported Language
The Amazon Q Developer Agent for code transformation supports upgrading code from Java 8 or Java 11 to Java 17.
Security Scan Supported Language
Amazon Q security scans supports the following language versions:
- Java Java 17 and earlier
- JavaScript ECMAScript 2021 and earlier
- Python Python 3.11 and earlier, within the Python 3 series
- C# All versions (.NET 6.0 and later recommended)
- TypeScript All versions
- Ruby Ruby 2.7 and 3.2
- Go Go 1.18
- C C11 and earlier
- C++ C++17 and earlier
- PHP PHP 8.2 and earlier
- Kotlin Kotlin 2.0.0 and earlier
- Scala Scala 3.2.2 and earlier
- JSX React 17 and earlier
- Infrastructure as Code (IaC) languages
- AWS CloudFormation 2010-09-09
- Terraform 1.6.2 and earlier
- AWS CDK TypeScript and Python
Automatic code fixes are available for scans in the following languages and versions:
- Java Java 17 and earlier
- JavaScript ECMAScript 2021 and earlier
- Python Python 3.11 and earlier, within the Python 3 series
- C# All versions (.NET 6.0 and later recommended)
- TypeScript All versions
- Infrastructure as Code (IaC) languages
- AWS CloudFormation 2010-09-09
- Terraform 1.6.2 and earlier
- AWS CDK TypeScript and Python